Merge branch 'upstream' into tizen
authorANZ1217 <chihun.jeong@samsung.com>
Tue, 16 Jan 2024 08:53:14 +0000 (17:53 +0900)
committerANZ1217 <chihun.jeong@samsung.com>
Tue, 16 Jan 2024 08:53:14 +0000 (17:53 +0900)
Change-Id: I42d85a08a6a8438cbdaae0be87bef1aa957b6ed2

738 files changed:
ABOUT-NLS
COPYING
ChangeLog
Makefile.am
Makefile.in
README
Tools.mk
aclocal.m4
conf.d/05-reset-dirs-sample.conf [new file with mode: 0644]
conf.d/09-autohint-if-no-hinting.conf [new file with mode: 0644]
conf.d/10-autohint.conf
conf.d/10-hinting-full.conf
conf.d/10-hinting-medium.conf
conf.d/10-hinting-none.conf
conf.d/10-hinting-slight.conf
conf.d/10-no-antialias.conf [new file with mode: 0644]
conf.d/10-no-sub-pixel.conf [deleted file]
conf.d/10-scale-bitmap-fonts.conf
conf.d/10-sub-pixel-bgr.conf
conf.d/10-sub-pixel-none.conf [new file with mode: 0644]
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/10-yes-antialias.conf [new file with mode: 0644]
conf.d/11-lcdfilter-default.conf
conf.d/11-lcdfilter-legacy.conf
conf.d/11-lcdfilter-light.conf
conf.d/20-unhint-small-vera.conf
conf.d/25-unhint-nonlatin.conf
conf.d/30-metric-aliases.conf
conf.d/35-lang-normalize.conf [new file with mode: 0644]
conf.d/40-nonlatin.conf
conf.d/45-generic.conf
conf.d/45-latin.conf
conf.d/48-spacing.conf [new file with mode: 0644]
conf.d/49-sansserif.conf
conf.d/50-user.conf
conf.d/51-local.conf
conf.d/60-generic.conf
conf.d/60-latin.conf
conf.d/65-fonts-persian.conf
conf.d/65-khmer.conf
conf.d/65-nonlatin.conf
conf.d/69-unifont.conf
conf.d/70-no-bitmaps.conf
conf.d/70-yes-bitmaps.conf
conf.d/80-delicious.conf
conf.d/90-synthetic.conf
conf.d/Makefile.am
conf.d/Makefile.in
conf.d/README
conf.d/README.in
conf.d/link_confs.py [new file with mode: 0644]
conf.d/meson.build [new file with mode: 0644]
conf.d/write-35-lang-normalize-conf.py [new file with mode: 0755]
config.guess
config.h.in
config.rpath
config.sub
configure
configure.ac
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/FcConfigFileInfoIterGet.3
doc/FcConfigFileInfoIterInit.3
doc/FcConfigFileInfoIterNext.3
doc/FcConfigFilename.3
doc/FcConfigGetBlanks.3
doc/FcConfigGetCache.3
doc/FcConfigGetCacheDirs.3
doc/FcConfigGetConfigDirs.3
doc/FcConfigGetConfigFiles.3
doc/FcConfigGetCurrent.3
doc/FcConfigGetFilename.3 [new file with mode: 0644]
doc/FcConfigGetFontDirs.3
doc/FcConfigGetFonts.3
doc/FcConfigGetRescanInterval.3
doc/FcConfigGetSysRoot.3
doc/FcConfigHome.3
doc/FcConfigParseAndLoad.3
doc/FcConfigParseAndLoadFromMemory.3
doc/FcConfigReference.3
doc/FcConfigSetCurrent.3
doc/FcConfigSetRescanInterval.3
doc/FcConfigSetSysRoot.3
doc/FcConfigSubstitute.3
doc/FcConfigSubstituteWithPat.3
doc/FcConfigUptoDate.3
doc/FcDefaultSubstitute.3
doc/FcDirCacheClean.3
doc/FcDirCacheCreateUUID.3
doc/FcDirCacheDeleteUUID.3
doc/FcDirCacheLoad.3
doc/FcDirCacheLoadFile.3
doc/FcDirCacheRead.3
doc/FcDirCacheRescan.3
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/FcFreeTypeQueryAll.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
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/FcNameGetConstantFor.3 [new file with mode: 0644]
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/FcPatternFindIter.3
doc/FcPatternFormat.3
doc/FcPatternGet-Type.3
doc/FcPatternGet.3
doc/FcPatternGetWithBinding.3
doc/FcPatternHash.3
doc/FcPatternIterEqual.3
doc/FcPatternIterGetObject.3
doc/FcPatternIterGetValue.3
doc/FcPatternIterIsValid.3
doc/FcPatternIterNext.3
doc/FcPatternIterStart.3
doc/FcPatternIterValueCount.3
doc/FcPatternObjectCount.3
doc/FcPatternPrint.3
doc/FcPatternReference.3
doc/FcPatternRemove.3
doc/FcRangeCopy.3
doc/FcRangeCreateDouble.3
doc/FcRangeCreateInteger.3
doc/FcRangeDestroy.3
doc/FcRangeGetDouble.3
doc/FcStrBasename.3
doc/FcStrBuildFilename.3 [new file with mode: 0644]
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
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
doc/FcWeightFromOpenTypeDouble.3
doc/FcWeightToOpenType.3
doc/FcWeightToOpenTypeDouble.3
doc/Makefile.am
doc/Makefile.in
doc/confdir.sgml.in
doc/edit-sgml.c [deleted file]
doc/edit-sgml.py [new file with mode: 0755]
doc/extract-man-list.py [new file with mode: 0755]
doc/fcatomic.fncs
doc/fcatomic.sgml [deleted file]
doc/fcblanks.fncs
doc/fcblanks.sgml [deleted file]
doc/fccache.fncs
doc/fccache.sgml [deleted file]
doc/fccharset.fncs
doc/fccharset.sgml [deleted file]
doc/fcconfig.fncs
doc/fcconfig.sgml [deleted file]
doc/fcconstant.fncs
doc/fcconstant.sgml [deleted file]
doc/fcdircache.fncs
doc/fcdircache.sgml [deleted file]
doc/fcfile.fncs
doc/fcfile.sgml [deleted file]
doc/fcfontset.fncs
doc/fcfontset.sgml [deleted file]
doc/fcformat.fncs
doc/fcformat.sgml [deleted file]
doc/fcfreetype.fncs
doc/fcfreetype.sgml [deleted file]
doc/fcinit.fncs
doc/fcinit.sgml [deleted file]
doc/fclangset.fncs
doc/fclangset.sgml [deleted file]
doc/fcmatrix.fncs
doc/fcmatrix.sgml [deleted file]
doc/fcobjectset.fncs
doc/fcobjectset.sgml [deleted file]
doc/fcobjecttype.fncs
doc/fcobjecttype.sgml [deleted file]
doc/fcpattern.fncs
doc/fcpattern.sgml [deleted file]
doc/fcrange.fncs
doc/fcrange.sgml [deleted file]
doc/fcstring.fncs
doc/fcstring.sgml [deleted file]
doc/fcstrset.fncs
doc/fcstrset.sgml [deleted file]
doc/fcvalue.fncs
doc/fcvalue.sgml [deleted file]
doc/fcweight.fncs
doc/fcweight.sgml [deleted file]
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/fcconfigfileinfoiterget.html
doc/fontconfig-devel/fcconfigfileinfoiterinit.html
doc/fontconfig-devel/fcconfigfileinfoiternext.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/fcconfiggetfilename.html [new file with mode: 0644]
doc/fontconfig-devel/fcconfiggetfontdirs.html
doc/fontconfig-devel/fcconfiggetfonts.html
doc/fontconfig-devel/fcconfiggetrescaninterval.html
doc/fontconfig-devel/fcconfiggetsysroot.html
doc/fontconfig-devel/fcconfighome.html
doc/fontconfig-devel/fcconfigparseandload.html
doc/fontconfig-devel/fcconfigparseandloadfrommemory.html
doc/fontconfig-devel/fcconfigreference.html
doc/fontconfig-devel/fcconfigsetcurrent.html
doc/fontconfig-devel/fcconfigsetrescaninterval.html
doc/fontconfig-devel/fcconfigsetsysroot.html
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/fcdircachecreateuuid.html
doc/fontconfig-devel/fcdircachedeleteuuid.html
doc/fontconfig-devel/fcdircacheload.html
doc/fontconfig-devel/fcdircacheloadfile.html
doc/fontconfig-devel/fcdircacheread.html
doc/fontconfig-devel/fcdircacherescan.html
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/fcfreetypequeryall.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
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/fcnamegetconstantfor.html [new file with mode: 0644]
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/fcpatternfinditer.html
doc/fontconfig-devel/fcpatternformat.html
doc/fontconfig-devel/fcpatternget-type.html
doc/fontconfig-devel/fcpatternget.html
doc/fontconfig-devel/fcpatterngetwithbinding.html
doc/fontconfig-devel/fcpatternhash.html
doc/fontconfig-devel/fcpatterniterequal.html
doc/fontconfig-devel/fcpatternitergetobject.html
doc/fontconfig-devel/fcpatternitergetvalue.html
doc/fontconfig-devel/fcpatterniterisvalid.html
doc/fontconfig-devel/fcpatterniternext.html
doc/fontconfig-devel/fcpatterniterstart.html
doc/fontconfig-devel/fcpatternitervaluecount.html
doc/fontconfig-devel/fcpatternobjectcount.html
doc/fontconfig-devel/fcpatternprint.html
doc/fontconfig-devel/fcpatternreference.html
doc/fontconfig-devel/fcpatternremove.html
doc/fontconfig-devel/fcrangecopy.html
doc/fontconfig-devel/fcrangecreatedouble.html
doc/fontconfig-devel/fcrangecreateinteger.html
doc/fontconfig-devel/fcrangedestroy.html
doc/fontconfig-devel/fcrangegetdouble.html
doc/fontconfig-devel/fcstrbasename.html
doc/fontconfig-devel/fcstrbuildfilename.html [new file with mode: 0644]
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
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
doc/fontconfig-devel/fcweightfromopentypedouble.html
doc/fontconfig-devel/fcweighttoopentype.html
doc/fontconfig-devel/fcweighttoopentypedouble.html
doc/fontconfig-devel/ln12.html
doc/fontconfig-devel/t1.html
doc/fontconfig-devel/x103.html
doc/fontconfig-devel/x19.html
doc/fontconfig-devel/x31.html
doc/fontconfig-user.html
doc/fontconfig-user.pdf
doc/fontconfig-user.sgml
doc/fontconfig-user.txt
doc/fonts-conf.5
doc/func.sgml
doc/meson.build [new file with mode: 0644]
doc/run-quiet.py [new file with mode: 0755]
fc-cache/Makefile.in
fc-cache/fc-cache.c
fc-cache/fc-cache.sgml
fc-cache/meson.build [new file with mode: 0644]
fc-case/CaseFolding.txt
fc-case/Makefile.in
fc-case/fc-case.c [deleted file]
fc-case/fc-case.py [new file with mode: 0755]
fc-case/fccase.h
fc-case/meson.build [new file with mode: 0644]
fc-cat/Makefile.in
fc-cat/fc-cat.c
fc-cat/fc-cat.sgml
fc-cat/meson.build [new file with mode: 0644]
fc-conflist/Makefile.in
fc-conflist/fc-conflist.1
fc-conflist/fc-conflist.c
fc-conflist/fc-conflist.sgml
fc-conflist/meson.build [new file with mode: 0644]
fc-lang/Makefile.am
fc-lang/Makefile.in
fc-lang/README
fc-lang/brx.orth
fc-lang/ee.orth
fc-lang/fc-lang.c [deleted file]
fc-lang/fc-lang.py [new file with mode: 0755]
fc-lang/fclang.h
fc-lang/ie.orth
fc-lang/meson.build [new file with mode: 0644]
fc-lang/ne.orth
fc-lang/nr.orth
fc-lang/nso.orth
fc-lang/pa_pk.orth
fc-lang/sat.orth
fc-lang/ss.orth
fc-lang/st.orth
fc-list/Makefile.in
fc-list/fc-list.c
fc-list/fc-list.sgml
fc-list/meson.build [new file with mode: 0644]
fc-match/Makefile.in
fc-match/fc-match.1
fc-match/fc-match.c
fc-match/fc-match.sgml
fc-match/meson.build [new file with mode: 0644]
fc-pattern/Makefile.in
fc-pattern/fc-pattern.c
fc-pattern/fc-pattern.sgml
fc-pattern/meson.build [new file with mode: 0644]
fc-query/Makefile.in
fc-query/fc-query.1
fc-query/fc-query.c
fc-query/fc-query.sgml
fc-query/meson.build [new file with mode: 0644]
fc-scan/Makefile.in
fc-scan/fc-scan.c
fc-scan/fc-scan.sgml
fc-scan/meson.build [new file with mode: 0644]
fc-validate/Makefile.in
fc-validate/fc-validate.1
fc-validate/fc-validate.c
fc-validate/fc-validate.sgml
fc-validate/meson.build [new file with mode: 0644]
fontconfig.spec [deleted file]
fontconfig.spec.in [deleted file]
fontconfig/Makefile.am
fontconfig/Makefile.in
fontconfig/fontconfig.h
fonts.conf.in
fonts.dtd
its/Makefile.am
its/Makefile.in
its/fontconfig.its
its/fontconfig.loc
its/meson.build [new file with mode: 0644]
ltmain.sh
m4/libtool.m4
m4/ltversion.m4
meson-cc-tests/flexible-array-member-test.c [new file with mode: 0644]
meson-cc-tests/gperf.txt [new file with mode: 0644]
meson-cc-tests/intel-atomic-primitives-test.c [new file with mode: 0644]
meson-cc-tests/solaris-atomic-operations.c [new file with mode: 0644]
meson-cc-tests/stdatomic-primitives-test.c [new file with mode: 0644]
meson.build [new file with mode: 0644]
meson_options.txt [new file with mode: 0644]
po-conf/LINGUAS
po-conf/Makefile.in.in
po-conf/Makevars
po-conf/POTFILES.in
po-conf/fontconfig-conf.pot
po-conf/ka.gmo [new file with mode: 0644]
po-conf/ka.po [new file with mode: 0644]
po-conf/meson.build [new file with mode: 0644]
po-conf/zh_CN.gmo
po-conf/zh_CN.po
po/LINGUAS
po/Makefile.in.in
po/Makevars
po/fontconfig.pot
po/ka.gmo [new file with mode: 0644]
po/ka.po [new file with mode: 0644]
po/meson.build [new file with mode: 0644]
po/zh_CN.gmo
po/zh_CN.po
src/Makefile.am
src/Makefile.in
src/cutout.py [new file with mode: 0644]
src/fcatomic.c
src/fcatomic.h
src/fccache.c
src/fccfg.c
src/fccharset.c
src/fccompat.c
src/fcdefault.c
src/fcdir.c
src/fcformat.c
src/fcfoundry.h [new file with mode: 0644]
src/fcfreetype.c
src/fcfs.c
src/fchash.c
src/fcinit.c
src/fcint.h
src/fclang.c
src/fclist.c
src/fcmatch.c
src/fcmd5.h [new file with mode: 0644]
src/fcname.c
src/fcobjs.h
src/fcpat.c
src/fcptrlist.c
src/fcrange.c
src/fcserialize.c
src/fcstat.c
src/fcstdint.h
src/fcstdint.h.in [new file with mode: 0644]
src/fcstr.c
src/fcweight.c
src/fcwindows.h
src/fcxml.c
src/fontconfig.def.in [new file with mode: 0644]
src/ftglue.c
src/makealias.py [new file with mode: 0755]
src/meson.build [new file with mode: 0644]
subprojects/expat.wrap [new file with mode: 0644]
subprojects/freetype2.wrap [new file with mode: 0644]
subprojects/gperf.wrap [new file with mode: 0644]
subprojects/libpng.wrap [new file with mode: 0644]
subprojects/zlib.wrap [new file with mode: 0644]
test/Makefile.am
test/Makefile.in
test/fonts.conf.in
test/meson.build [new file with mode: 0644]
test/run-test-conf.sh
test/run-test.sh
test/test-45-generic.json [new file with mode: 0644]
test/test-60-generic.json [new file with mode: 0644]
test/test-bz106632.c
test/test-bz1744377.c [new file with mode: 0644]
test/test-conf.c
test/test-crbug1004254.c [new file with mode: 0644]
test/test-d1f48f11.c [new file with mode: 0644]
test/test-family-matching.c [new file with mode: 0644]
test/test-hash.c [deleted file]
test/test-issue-286.json [new file with mode: 0644]
test/test-issue107.c [new file with mode: 0644]
test/test-issue110.c [new file with mode: 0644]
test/test-issue180.c [new file with mode: 0644]
test/test-migration.c
test/test-name-parse.c
test/test-pthread.c
test/test-style-match.json [new file with mode: 0644]
test/wrapper-script.sh [new file with mode: 0755]

index 3cc8286..1551426 100644 (file)
--- a/ABOUT-NLS
+++ b/ABOUT-NLS
@@ -205,7 +205,7 @@ translation percentage of at least 50%.
      grub               |                                         []        |
      gsasl              |                                                   |
      gss                |                                                   |
-     gst-plugins-bad    |                          []                    [] |
+     gst-plugins-bad    |                                                [] |
      gst-plugins-base   |                          []             []     [] |
      gst-plugins-good   |                          []             []     [] |
      gst-plugins-ugly   |                          []             []     [] |
@@ -231,6 +231,7 @@ translation percentage of at least 50%.
      jwhois             |                                                   |
      kbd                |                                                [] |
      klavaro            |          []              [] []          []     [] |
+     latrine            |                                                   |
      ld                 |                          []                       |
      leafpad            |                       [] []             []     [] |
      libc               |                          []             []     [] |
@@ -261,7 +262,6 @@ translation percentage of at least 50%.
      opcodes            |                                                   |
      parted             |                                                [] |
      pies               |                                                   |
-     pnmixer            |                                                   |
      popt               |                                                [] |
      procps-ng          |                                                   |
      procps-ng-man      |                                                   |
@@ -276,11 +276,11 @@ translation percentage of at least 50%.
      rpm                |                                                   |
      rush               |                                                   |
      sarg               |                                                   |
-     sed                |                []        []             []     [] |
+     sed                |                []                       []     [] |
      sharutils          |                                                [] |
      shishi             |                                                   |
      skribilo           |                                                   |
-     solfege            |                                         []     [] |
+     solfege            |                                                [] |
      solfege-manual     |                                                   |
      spotmachine        |                                                   |
      sudo               |                                         []     [] |
@@ -288,7 +288,7 @@ translation percentage of at least 50%.
      sysstat            |                                                [] |
      tar                |                          []             []     [] |
      texinfo            |                                         []     [] |
-     texinfo_document   |                                         []     [] |
+     texinfo_document   |                                         []        |
      tigervnc           |                          []                       |
      tin                |                                                   |
      tin-man            |                                                   |
@@ -310,9 +310,9 @@ translation percentage of at least 50%.
      xkeyboard-config   |                          []             []     [] |
                         +---------------------------------------------------+
                           af am an ar as ast az be bg bn bn_IN bs ca crh cs
-                           4  0  2  5  3 11   0  8 25  3   3    1 55  4  74
+                           4  0  2  5  3 11   0  8 23  3   3    1 54  4  73
 
-                          da  de  el en en_GB en_ZA eo es et eu fa fi  fr 
+                          da  de  el en en_GB en_ZA eo es et eu fa fi  fr
                         +--------------------------------------------------+
      a2ps               | []  []  []     []         [] [] []       []  []  |
      aegis              | []  []                       []              []  |
@@ -324,7 +324,7 @@ translation percentage of at least 50%.
      bison              | []  []  []                [] [] []       []  []  |
      bison-runtime      | []  []  []                [] [] []       []  []  |
      buzztrax           | []  []                                   []  []  |
-     ccd2cue            | []  []                    []                 []  |
+     ccd2cue            | []  []                                       []  |
      ccide              | []  []                    [] []          []  []  |
      cflow              | []  []                    []             []  []  |
      clisp              | []  []     []                []              []  |
@@ -355,7 +355,7 @@ translation percentage of at least 50%.
      gas                |                              []          []  []  |
      gawk               | []  []                       []          []  []  |
      gcal               | []  []                       []              []  |
-     gcc                |     []                                           |
+     gcc                |     []                       []                  |
      gdbm               | []  []                    []             []  []  |
      gettext-examples   | []  []  []                [] []          []  []  |
      gettext-runtime    | []  []                    [] []          []  []  |
@@ -377,7 +377,7 @@ translation percentage of at least 50%.
      grub               | []  []                       []          []  []  |
      gsasl              | []  []                    []             []  []  |
      gss                | []  []                    []             []  []  |
-     gst-plugins-bad    | []  []                                       []  |
+     gst-plugins-bad    | []  []                                           |
      gst-plugins-base   | []  []  []                   []          []  []  |
      gst-plugins-good   | []  []  []                   []    []    []  []  |
      gst-plugins-ugly   | []  []  []                [] []    []    []  []  |
@@ -403,6 +403,7 @@ translation percentage of at least 50%.
      jwhois             |     []                    [] []          []  []  |
      kbd                | []  []  []                [] []              []  |
      klavaro            | []  []  []                [] []    []        []  |
+     latrine            | []  ()                    []             []      |
      ld                 | []                           []          []  []  |
      leafpad            | []  []  []                [] []    []    []  []  |
      libc               | []  []                       []          []  []  |
@@ -433,7 +434,6 @@ translation percentage of at least 50%.
      opcodes            | []  []                       []          []  []  |
      parted             | []  []                                       []  |
      pies               |     []                                           |
-     pnmixer            |     []                                       []  |
      popt               | []  []                    [] []          []  []  |
      procps-ng          |     []                                       []  |
      procps-ng-man      |     []                                       []  |
@@ -451,10 +451,10 @@ translation percentage of at least 50%.
      sed                | []  []  []                [] [] []       []  []  |
      sharutils          |     []                    []    []           []  |
      shishi             |     []                                   []  []  |
-     skribilo           | []                           []              []  |
+     skribilo           | []                                           []  |
      solfege            | []  []                    [] [] []    [] []  []  |
      solfege-manual     |     []                    [] [] []           []  |
-     spotmachine        | []  []                    []             []  []  |
+     spotmachine        | []  []                    []             []      |
      sudo               | []  []                    [] []          []  []  |
      sudoers            | []  []  []                []             []  []  |
      sysstat            | []  []                    [] []          []  []  |
@@ -471,7 +471,7 @@ translation percentage of at least 50%.
      vice               | ()  ()                                       ()  |
      vmm                |     []                                   []      |
      vorbis-tools       | []  []                    []                 []  |
-     wastesedge         | []                                               |
+     wastesedge         | []                                           ()  |
      wcd                |     []                    [] []          []      |
      wcd-man            |     []                                           |
      wdiff              | []  []                    [] [] []       []  []  |
@@ -481,8 +481,8 @@ translation percentage of at least 50%.
      xdg-user-dirs      | []  []  []                [] [] [] [] [] []  []  |
      xkeyboard-config   | []  []  []                [] []          []  []  |
                         +--------------------------------------------------+
-                          da  de  el en en_GB en_ZA eo es et eu fa fi  fr 
-                          119 131 32  1   6     0   94 95 22 13  4 102 139
+                          da  de  el en en_GB en_ZA eo es et eu fa fi  fr
+                          120 130 32  1   6     0   94 95 22 13  4 103 136
 
                           ga gd gl gu he hi hr hu hy ia id is it ja ka kk
                         +-------------------------------------------------+
@@ -490,7 +490,7 @@ translation percentage of at least 50%.
      aegis              |                                     []          |
      anubis             |                   [] []       []    []          |
      aspell             | []                []          []    [] []       |
-     bash               |                      []       []    [] []       |
+     bash               |                               []    [] []       |
      bfd                |                               []       []       |
      binutils           |                               []    [] []       |
      bison              |                   []                            |
@@ -500,7 +500,7 @@ translation percentage of at least 50%.
      ccide              |                   [] []                         |
      cflow              | []                []          []                |
      clisp              |                                                 |
-     coreutils          |                      []                []       |
+     coreutils          |                      []             [] []       |
      cpio               | []                [] []       []    [] []       |
      cppi               |       []          [] []             [] []       |
      cpplib             |                               []       []       |
@@ -516,7 +516,7 @@ translation percentage of at least 50%.
      doodle             | []                                  []          |
      dos2unix           |                      []                []       |
      dos2unix-man       |                                                 |
-     e2fsprogs          |                      []       []                |
+     e2fsprogs          |                               []                |
      enscript           | []                []          []                |
      exif               |       []          []          [] [] [] []       |
      fetchmail          |                               []    [] []       |
@@ -536,7 +536,7 @@ translation percentage of at least 50%.
      glunarclock        | []    []          [] []       []    []          |
      gnubiff            |                      []       []    ()          |
      gnubik             |       []          []                []          |
-     gnucash            |          () () ()    ()             ()          |
+     gnucash            |          () () ()    ()             () []       |
      gnuchess           |                                                 |
      gnulib             | []    []             []             [] []       |
      gnunet             |                                                 |
@@ -549,7 +549,7 @@ translation percentage of at least 50%.
      grub               |       []             []             []          |
      gsasl              | []                [] []       []    []          |
      gss                | []                [] []       []    []          |
-     gst-plugins-bad    |                   [] []       []                |
+     gst-plugins-bad    |                      []                         |
      gst-plugins-base   |       []          [] []       []                |
      gst-plugins-good   |       []          [] []       []    [] []       |
      gst-plugins-ugly   |       []          [] []       []    [] []       |
@@ -575,6 +575,7 @@ translation percentage of at least 50%.
      jwhois             |       []             []       []    []          |
      kbd                |                      []       []    []          |
      klavaro            |       []          [] []             []       [] |
+     latrine            |                      []                         |
      ld                 | []                            []    [] []       |
      leafpad            | []    []    []    [] []       []    [] ()       |
      libc               |       []          []          []    [] []       |
@@ -601,11 +602,10 @@ translation percentage of at least 50%.
      minicom            |                      []       []       []       |
      mkisofs            |                               []    []          |
      myserver           |                                     []          |
-     nano               | []    []          [] []             [] []       |
+     nano               | []    []             []             [] []       |
      opcodes            | []                            []    []          |
-     parted             |       []             []       []    [] []       |
+     parted             |       []                      []    [] []       |
      pies               |                                                 |
-     pnmixer            |                   []                []          |
      popt               | []    [] []       [] []    [] [] [] [] []       |
      procps-ng          |                                                 |
      procps-ng-man      |                                                 |
@@ -629,10 +629,10 @@ translation percentage of at least 50%.
      spotmachine        |                                                 |
      sudo               |       []          []                [] []       |
      sudoers            |                   []                [] []       |
-     sysstat            |                   [] []       []       []       |
+     sysstat            |                      []       []       []       |
      tar                | []                [] []       []    [] []       |
      texinfo            |                   []          []    []          |
-     texinfo_document   |                   [] []             []          |
+     texinfo_document   |                      []             []          |
      tigervnc           |                                                 |
      tin                |                                                 |
      tin-man            |                                                 |
@@ -643,20 +643,20 @@ translation percentage of at least 50%.
      vice               |                      ()             ()          |
      vmm                |                                                 |
      vorbis-tools       |                   []          []                |
-     wastesedge         |                                     []          |
+     wastesedge         |                                     ()          |
      wcd                |                                                 |
      wcd-man            |                                                 |
      wdiff              |       []             []             []          |
-     wget               |                   [] []             [] []       |
+     wget               |                      []             [] []       |
      wyslij-po          |       []          []          []                |
      xboard             |                                                 |
      xdg-user-dirs      | [] [] [] [] [] [] [] []    [] [] [] [] []    [] |
-     xkeyboard-config   |       []          [] []       []    [] []       |
+     xkeyboard-config   |       []             []       []    [] []       |
                         +-------------------------------------------------+
                           ga gd gl gu he hi hr hu hy ia id is it ja ka kk
-                          35  2 47  4  8  2 60 71  2  6 81 11 87 57  0  3
+                          35  2 47  4  8  2 53 69  2  6 80 11 86 58  0  3
 
-                          kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl 
+                          kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl
                         +--------------------------------------------------+
      a2ps               |                                  []          []  |
      aegis              |                                              []  |
@@ -690,7 +690,7 @@ translation percentage of at least 50%.
      dos2unix-man       |                                              []  |
      e2fsprogs          |                                              []  |
      enscript           |                                              []  |
-     exif               |    []             []                         []  |
+     exif               |                   []                         []  |
      fetchmail          |                                              []  |
      findutils          |                                        []    []  |
      flex               |                                              []  |
@@ -702,7 +702,7 @@ translation percentage of at least 50%.
      gcc                |                                                  |
      gdbm               |                                                  |
      gettext-examples   |          []       []             [] [] []    []  |
-     gettext-runtime    |    []                                  []    []  |
+     gettext-runtime    |    []                                        []  |
      gettext-tools      |    []                                            |
      gjay               |                                                  |
      glunarclock        |                   []                         []  |
@@ -721,11 +721,11 @@ translation percentage of at least 50%.
      grub               |                []                      []    []  |
      gsasl              |                                              []  |
      gss                |                                                  |
-     gst-plugins-bad    |                   []                   []    []  |
+     gst-plugins-bad    |                                        []    []  |
      gst-plugins-base   |                   []                   []    []  |
      gst-plugins-good   |                [] []                   []    []  |
      gst-plugins-ugly   |                   []             [] [] []    []  |
-     gstreamer          |                []                      []    []  |
+     gstreamer          |                []                            []  |
      gtick              |                                              []  |
      gtkam              |                                        []    []  |
      gtkspell           |          []    [] []       []    []    []    []  |
@@ -747,6 +747,7 @@ translation percentage of at least 50%.
      jwhois             |                   []                         []  |
      kbd                |                                              []  |
      klavaro            |                                        []    []  |
+     latrine            |                                                  |
      ld                 |                                                  |
      leafpad            |    []    []    [] []                         []  |
      libc               |    []                                        []  |
@@ -775,9 +776,8 @@ translation percentage of at least 50%.
      myserver           |                                                  |
      nano               |                                  []    []    []  |
      opcodes            |                                              []  |
-     parted             |    []                                        []  |
+     parted             |                                              []  |
      pies               |                                                  |
-     pnmixer            |                                              []  |
      popt               | [] []             []                   []    []  |
      procps-ng          |                                                  |
      procps-ng-man      |                                                  |
@@ -799,8 +799,8 @@ translation percentage of at least 50%.
      solfege            |                                        []    []  |
      solfege-manual     |                                              []  |
      spotmachine        |                                              []  |
-     sudo               |    []                                  []    []  |
-     sudoers            |    []                                  []    []  |
+     sudo               |                                        []    []  |
+     sudoers            |                                        []    []  |
      sysstat            |                                        []    []  |
      tar                |          []                            []    []  |
      texinfo            |                                              []  |
@@ -825,524 +825,524 @@ translation percentage of at least 50%.
      xdg-user-dirs      | [] [] [] []    [] [] [] []    []       []    []  |
      xkeyboard-config   |    []          []                            []  |
                         +--------------------------------------------------+
-                          kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl 
-                           5 15  4  6  0 13 23  3  3  3  4 11  2 42  1 125
+                          kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl
+                           5 11  4  6  0 13 22  3  3  3  4 11  2 40  1 124
 
-                          nn or pa pl  ps pt pt_BR ro ru rw sk sl sq sr 
-                        +------------------------------------------------+
-     a2ps               |          []     []  []   [] []       []    []  |
-     aegis              |                     []      []                 |
-     anubis             |          []                 []             []  |
-     aspell             |          []         []   [] []    [] []    []  |
-     bash               |          []         []      []    [] []    []  |
-     bfd                |                             []             []  |
-     binutils           |                             []             []  |
-     bison              |          []         []                     []  |
-     bison-runtime      |          []     []  []   [] []       [] [] []  |
-     buzztrax           |                     []                         |
-     ccd2cue            |                     []                     []  |
-     ccide              |          []                 []             []  |
-     cflow              |          []         []                     []  |
-     clisp              |                             []                 |
-     coreutils          |          []                 []       []    []  |
-     cpio               |          []                 []             []  |
-     cppi               |          []         []                     []  |
-     cpplib             |                     []      []             []  |
-     cryptsetup         |          []         []                     []  |
-     datamash           |                     []                     []  |
-     denemo             |                                                |
-     dfarc              |          []         []                     []  |
-     dialog             |          []         []   [] []    [] []    []  |
-     dico               |          []                                    |
-     diffutils          |          []         []                     []  |
-     dink               |                                                |
-     direvent           |          []         []                     []  |
-     doodle             |                                         [] []  |
-     dos2unix           |          []         []      []             []  |
-     dos2unix-man       |          []         []                         |
-     e2fsprogs          |          []                                    |
-     enscript           |          []         []   [] []       []    []  |
-     exif               |          []         []   [] []    []       []  |
-     fetchmail          |          []                 []          []     |
-     findutils          |          []         []      []    [] []    []  |
-     flex               |          []         []   [] []             []  |
-     freedink           |          []         []      []       []    []  |
-     fusionforge        |                                                |
-     gas                |                                                |
-     gawk               |          []                                    |
-     gcal               |                                                |
-     gcc                |                                                |
-     gdbm               |          []         []                     []  |
-     gettext-examples   |          []     []  []   [] []    [] []    []  |
-     gettext-runtime    | []       []     []  []   [] []    [] []    []  |
-     gettext-tools      |          []         []   [] []    [] []    []  |
-     gjay               |                                            []  |
-     glunarclock        |          []         []   []       [] []    []  |
-     gnubiff            |                                            []  |
-     gnubik             |          []         []               []    []  |
-     gnucash            |          ()     ()  ()   () ()             []  |
-     gnuchess           |                     []                     []  |
-     gnulib             |          []         []      []       []    []  |
-     gnunet             |                                                |
-     gnunet-gtk         |                                                |
-     gold               |                                                |
-     gphoto2            |          []         []   [] []             []  |
-     gprof              |                     []   [] []             []  |
-     gramadoir          |                                   []       []  |
-     grep               |          []         []      []    [] []    []  |
-     grub               |          []         []      []       []    []  |
-     gsasl              |          []                       []       []  |
-     gss                |          []              []       []       []  |
-     gst-plugins-bad    |          []         []      []    []       []  |
-     gst-plugins-base   |          []         []      []    [] []    []  |
-     gst-plugins-good   |          []         []   [] []    [] []    []  |
-     gst-plugins-ugly   |          []         []   [] []    [] []    []  |
-     gstreamer          |          []         []   [] []    [] []    []  |
-     gtick              |          []         []      []    []       []  |
-     gtkam              |       [] []         []      []    []       []  |
-     gtkspell           |          []     []  []   [] []    [] [] [] []  |
-     guix               |                                                |
-     guix-packages      |                                                |
-     gutenprint         |                                   [] []        |
-     hello              |          []         []      []    [] []    []  |
-     help2man           |          []         []      []             []  |
-     help2man-texi      |          []                                    |
-     hylafax            |                                                |
-     idutils            |          []                 []             []  |
-     iso_15924          |          []     ()       [] []       []    []  |
-     iso_3166           | [] [] [] []     ()  []   [] [] [] [] [] [] []  |
-     iso_3166_2         |          []     ()                         []  |
-     iso_4217           | []       []     ()       [] [] []    []    []  |
-     iso_639            |    [] [] []     ()       [] [] [] [] []    []  |
-     iso_639_3          |       []        ()                             |
-     iso_639_5          |                 ()                         []  |
-     jwhois             |          []         []   []                []  |
-     kbd                |          []                 []                 |
-     klavaro            |       [] []         []      []       []        |
-     ld                 |                                                |
-     leafpad            | []       []     []  []      []    [] []    []  |
-     libc               |          []                 []    []           |
-     libexif            |          []         ()            []           |
-     libextractor       |          []                                    |
-     libgnutls          |          []                                    |
-     libgphoto2         |          []                                    |
-     libgphoto2_port    |          []         []      []    []       []  |
-     libgsasl           |          []              []       []       []  |
-     libiconv           |          []         []            [] []    []  |
-     libidn             |          []         []                     []  |
-     liferea            |          []     []  []   [] ()    []    []     |
-     lilypond           |                                                |
-     lordsawar          |                                                |
-     lprng              |          []                                    |
-     lynx               |                     []      []                 |
-     m4                 |          []         []   [] []             []  |
-     mailfromd          |          []                                    |
-     mailutils          |          []                                    |
-     make               |          []         []      []                 |
-     man-db             |          []                 []             []  |
-     man-db-manpages    |          []                 []             []  |
-     midi-instruments   |          []     []  []   [] []    [] []    []  |
-     minicom            |          []         []   [] []                 |
-     mkisofs            |          []                 []             []  |
-     myserver           |                                      []    []  |
-     nano               |          []         []   [] []       []    []  |
-     opcodes            |                                                |
-     parted             |          []         []      []    [] []    []  |
-     pies               |          []                                    |
-     pnmixer            |                             []                 |
-     popt               |          []     []  []      []       []    []  |
-     procps-ng          |          []                                    |
-     procps-ng-man      |          []                                    |
-     psmisc             |          []         []      []             []  |
-     pspp               |          []                 []                 |
-     pushover           |                                                |
-     pwdutils           |          []                                    |
-     pyspread           | []                  []                         |
-     radius             |          []                 []                 |
-     recode             |          []     []  []   [] []    [] []    []  |
-     recutils           |                     []                     []  |
-     rpm                |          []                                    |
-     rush               |          []         []                     []  |
-     sarg               |                     []      []                 |
-     sed                |          []     []  []   [] []    [] []    []  |
-     sharutils          |          []         []                     []  |
-     shishi             |          []                                []  |
-     skribilo           |                                            []  |
-     solfege            |          []         []      []                 |
-     solfege-manual     |          []         []                         |
-     spotmachine        |                     []                     []  |
-     sudo               |          []         []      []    [] []    []  |
-     sudoers            |          []         []               []    []  |
-     sysstat            |          []         []      []    []       []  |
-     tar                |          []         []      []       []    []  |
-     texinfo            |          []         []      []                 |
-     texinfo_document   |          []         []                         |
-     tigervnc           |                     []      []             []  |
-     tin                |                             []                 |
-     tin-man            |                                                |
-     tracgoogleappsa... |          []         []      []             []  |
-     trader             |                             []             []  |
-     util-linux         |          []         []                         |
-     ve                 |          []         []                     []  |
-     vice               |                                                |
-     vmm                |                                                |
-     vorbis-tools       |          []                          []    []  |
-     wastesedge         |                                                |
-     wcd                |                                                |
-     wcd-man            |                                                |
-     wdiff              |          []         []      []       []    []  |
-     wget               |          []         []      []    []       []  |
-     wyslij-po          | []       []         []                     []  |
-     xboard             |          []                 []             []  |
-     xdg-user-dirs      | [] [] [] []  [] []  []   [] []    [] [] [] []  |
-     xkeyboard-config   |          []         []      []       []        |
-                        +------------------------------------------------+
-                          nn or pa pl  ps pt pt_BR ro ru rw sk sl sq sr 
-                           7  3  6 114  1 12  88   32 82  3 40 45  7 101
+                          nn or os pa pl  ps pt pt_BR ro ru rw sk sl sq sr
+                        +--------------------------------------------------+
+     a2ps               |             []     []  []   [] []       []    [] |
+     aegis              |                        []      []                |
+     anubis             |             []                 []             [] |
+     aspell             |             []         []   [] []    [] []    [] |
+     bash               |             []                 []    [] []    [] |
+     bfd                |                                []                |
+     binutils           |                                []             [] |
+     bison              |             []         []                     [] |
+     bison-runtime      |             []     []  []   [] []       [] [] [] |
+     buzztrax           |                                                  |
+     ccd2cue            |                        []                        |
+     ccide              |             []                 []             [] |
+     cflow              |             []                                [] |
+     clisp              |                                []                |
+     coreutils          |             []                 []       []    [] |
+     cpio               |             []                 []             [] |
+     cppi               |             []         []                     [] |
+     cpplib             |                        []      []             [] |
+     cryptsetup         |             []                                [] |
+     datamash           |                        []                     [] |
+     denemo             |                                                  |
+     dfarc              |             []         []                     [] |
+     dialog             |             []         []   [] []    [] []    [] |
+     dico               |             []                                   |
+     diffutils          |             []                                [] |
+     dink               |                                                  |
+     direvent           |             []         []                        |
+     doodle             |                                            [] [] |
+     dos2unix           |             []         []      []             [] |
+     dos2unix-man       |             []         []                        |
+     e2fsprogs          |             []                                   |
+     enscript           |             []         []   [] []       []    [] |
+     exif               |             []         []   [] []    []       [] |
+     fetchmail          |             []                 []          []    |
+     findutils          |             []         []      []       []    [] |
+     flex               |             []         []   [] []             [] |
+     freedink           |             []         []      []       []    [] |
+     fusionforge        |                                                  |
+     gas                |                                                  |
+     gawk               |             []                                   |
+     gcal               |                                                  |
+     gcc                |                                                  |
+     gdbm               |             []         []                     [] |
+     gettext-examples   |             []     []  []   [] []    [] []    [] |
+     gettext-runtime    | []          []     []  []   [] []    [] []    [] |
+     gettext-tools      |             []         []   [] []    [] []    [] |
+     gjay               |                                               [] |
+     glunarclock        |             []         []   []       [] []    [] |
+     gnubiff            |                                               [] |
+     gnubik             |             []         []               []    [] |
+     gnucash            |             ()         ()   () ()             [] |
+     gnuchess           |                        []                     [] |
+     gnulib             |             []         []      []       []    [] |
+     gnunet             |                                                  |
+     gnunet-gtk         |                                                  |
+     gold               |                                                  |
+     gphoto2            |             []         []   [] []             [] |
+     gprof              |                        []   [] []             [] |
+     gramadoir          |                                      []       [] |
+     grep               |             []         []      []    [] []    [] |
+     grub               |             []         []      []       []    [] |
+     gsasl              |             []                       []       [] |
+     gss                |             []              []       []       [] |
+     gst-plugins-bad    |             []         []      []             [] |
+     gst-plugins-base   |             []         []      []    [] []    [] |
+     gst-plugins-good   |             []         []   [] []    [] []    [] |
+     gst-plugins-ugly   |             []         []   [] []    [] []    [] |
+     gstreamer          |             []         []   [] []    [] []    [] |
+     gtick              |             []         []      []    []       [] |
+     gtkam              |          [] []         []      []    []       [] |
+     gtkspell           |             []     []  []   [] []    [] [] [] [] |
+     guix               |                                                  |
+     guix-packages      |                                                  |
+     gutenprint         |                                      [] []       |
+     hello              |             []         []      []    [] []    [] |
+     help2man           |             []         []      []             [] |
+     help2man-texi      |             []                                   |
+     hylafax            |                                                  |
+     idutils            |             []                 []             [] |
+     iso_15924          |             []     ()       [] []       []    [] |
+     iso_3166           | [] []    [] []     ()  []   [] [] [] [] [] [] [] |
+     iso_3166_2         |             []     ()                         [] |
+     iso_4217           | []          []     ()       [] [] []    []    [] |
+     iso_639            |    []    [] []     ()       [] [] [] [] []    [] |
+     iso_639_3          |          []        ()                            |
+     iso_639_5          |                    ()                         [] |
+     jwhois             |             []         []   []                [] |
+     kbd                |             []                 []                |
+     klavaro            |          [] []         []      []       []       |
+     latrine            |                        []                        |
+     ld                 |                                                  |
+     leafpad            | []    []    []     []  []      []    [] []    [] |
+     libc               |             []                 []    []          |
+     libexif            |             []         ()            []          |
+     libextractor       |             []                                   |
+     libgnutls          |             []                                   |
+     libgphoto2         |             []                                   |
+     libgphoto2_port    |             []         []      []    []       [] |
+     libgsasl           |             []              []       []       [] |
+     libiconv           |             []         []            [] []    [] |
+     libidn             |             []         []                     [] |
+     liferea            |             []     []  []   [] ()    []    []    |
+     lilypond           |                                                  |
+     lordsawar          |                                                  |
+     lprng              |             []                                   |
+     lynx               |                        []      []                |
+     m4                 |             []         []   [] []             [] |
+     mailfromd          |             []                                   |
+     mailutils          |             []                                   |
+     make               |             []         []      []                |
+     man-db             |             []                 []             [] |
+     man-db-manpages    |             []                 []             [] |
+     midi-instruments   |             []     []  []   [] []    [] []    [] |
+     minicom            |             []         []   [] []                |
+     mkisofs            |             []                 []             [] |
+     myserver           |                                         []    [] |
+     nano               |             []         []   [] []       []    [] |
+     opcodes            |                                                  |
+     parted             |             []         []      []    [] []    [] |
+     pies               |             []                                   |
+     popt               |             []     []  []      []       []    [] |
+     procps-ng          |             []                                   |
+     procps-ng-man      |             []                                   |
+     psmisc             |             []         []      []             [] |
+     pspp               |             []                 []                |
+     pushover           |                                                  |
+     pwdutils           |             []                                   |
+     pyspread           | []                     []                        |
+     radius             |             []                 []                |
+     recode             |             []     []  []   [] []    [] []    [] |
+     recutils           |                                               [] |
+     rpm                |             []                                   |
+     rush               |             []         []                     [] |
+     sarg               |                        []      []                |
+     sed                |             []     []  []   [] []    [] []    [] |
+     sharutils          |             []         []                     [] |
+     shishi             |             []                                [] |
+     skribilo           |                                                  |
+     solfege            |             []         []      []                |
+     solfege-manual     |             []         []                        |
+     spotmachine        |                        []                     [] |
+     sudo               |             []         []      []    [] []    [] |
+     sudoers            |             []         []               []    [] |
+     sysstat            |             []         []      []    []       [] |
+     tar                |             []         []      []       []    [] |
+     texinfo            |             []         []      []                |
+     texinfo_document   |             []         []                        |
+     tigervnc           |                        []                        |
+     tin                |                                []                |
+     tin-man            |                                                  |
+     tracgoogleappsa... |             []         []      []             [] |
+     trader             |                                []                |
+     util-linux         |             []         []                        |
+     ve                 |             []         []                     [] |
+     vice               |                                                  |
+     vmm                |                                                  |
+     vorbis-tools       |             []                          []    [] |
+     wastesedge         |                                                  |
+     wcd                |                                                  |
+     wcd-man            |                                                  |
+     wdiff              |             []         []      []       []    [] |
+     wget               |             []         []      []    []          |
+     wyslij-po          | []          []         []                     [] |
+     xboard             |             []                 []             [] |
+     xdg-user-dirs      | [] []    [] []  [] []  []   [] []    [] [] [] [] |
+     xkeyboard-config   |             []         []      []       []       |
+                        +--------------------------------------------------+
+                          nn or os pa pl  ps pt pt_BR ro ru rw sk sl sq sr
+                           7  3  1  6 114  1 12  83   32 80  3 38 45  7 94
 
-                          sv  sw ta te tg th tr uk  ur vi  wa wo zh_CN
-                        +----------------------------------------------+
-     a2ps               | []              [] [] []     []              |
-     aegis              |                              []              |
-     anubis             | []                 [] []     []              |
-     aspell             | []                    []     []  []     []   |
-     bash               | []                    []     []         []   |
-     bfd                | []                    []     []              |
-     binutils           | []                    []     []              |
-     bison              | []                    []     []         []   |
-     bison-runtime      | []              [] [] []     []         []   |
-     buzztrax           | []                           []         []   |
-     ccd2cue            |                       []     []         []   |
-     ccide              | []                    []     []         []   |
-     cflow              | []                    []     []         []   |
-     clisp              |                                              |
-     coreutils          | []                    []     []              |
-     cpio               | []                 [] []     []         []   |
-     cppi               | []                    []     []         []   |
-     cpplib             | []                 [] []     []         []   |
-     cryptsetup         |                       []     []         []   |
-     datamash           | []                    []     []              |
-     denemo             |                                         []   |
-     dfarc              | []                           []              |
-     dialog             | []  []          []           []  []     []   |
-     dico               |                       []                     |
-     diffutils          | []                 [] []     []         []   |
-     dink               | []                                           |
-     direvent           |                       []     []              |
-     doodle             | []                           []              |
-     dos2unix           | []                    []     []         []   |
-     dos2unix-man       | []                    []                []   |
-     e2fsprogs          | []                    []     []         []   |
-     enscript           | []                 [] []     []              |
-     exif               | []                 [] []     []         []   |
-     fetchmail          | []                 []        []         []   |
-     findutils          | []                 [] []     []         []   |
-     flex               | []                 []        []         []   |
-     freedink           | []              []           []              |
-     fusionforge        |                                              |
-     gas                |                       []                     |
-     gawk               | []                           []         []   |
-     gcal               | []                 []                   []   |
-     gcc                | []                                           |
-     gdbm               |                       []     []              |
-     gettext-examples   | []                 [] []     []         []   |
-     gettext-runtime    | []                 [] []     []         []   |
-     gettext-tools      | []                 [] []     []         []   |
-     gjay               |                 []           []         []   |
-     glunarclock        | []                           []  []     []   |
-     gnubiff            | []                           []              |
-     gnubik             | []                    []     []         []   |
-     gnucash            |        () ()              () ()         []   |
-     gnuchess           |                       []     []         []   |
-     gnulib             | []                    []     []         []   |
-     gnunet             |                                              |
-     gnunet-gtk         |                                              |
-     gold               |                       []     []              |
-     gphoto2            | []                    []     []         []   |
-     gprof              | []                 [] []     []              |
-     gramadoir          | []                           []         []   |
-     grep               | []              []    []     []         []   |
-     grub               | []                 [] []     []              |
-     gsasl              | []                    []     []         []   |
-     gss                | []                           []         []   |
-     gst-plugins-bad    | []                 [] []     []         []   |
-     gst-plugins-base   | []                 [] []     []         []   |
-     gst-plugins-good   | []                 [] []     []         []   |
-     gst-plugins-ugly   | []                 [] []     []         []   |
-     gstreamer          | []                 [] []     []         []   |
-     gtick              |                       []     []         []   |
-     gtkam              | []                    []     []         []   |
-     gtkspell           | []              [] [] []     []  []     []   |
-     guix               |                                              |
-     guix-packages      |                                              |
-     gutenprint         |                    [] []     []         []   |
-     hello              | []              [] [] []     []         []   |
-     help2man           |                       []     []         []   |
-     help2man-texi      |                       []                     |
-     hylafax            |                              []              |
-     idutils            |                       []     []         []   |
-     iso_15924          | []              () [] []     ()         []   |
-     iso_3166           | []        []    () [] []     ()  []     []   |
-     iso_3166_2         |                 () [] []     ()         []   |
-     iso_4217           | []              () [] []     ()         []   |
-     iso_639            | []     [] []    () [] []     ()  []     []   |
-     iso_639_3          |        []       () [] []     ()              |
-     iso_639_5          |                 ()    []     ()              |
-     jwhois             | []                 []        []         []   |
-     kbd                | []                    []     []         []   |
-     klavaro            | []                    []  [] []     []  []   |
-     ld                 | []                 [] []     []         []   |
-     leafpad            | []              [] [] []     []         []   |
-     libc               | []                 [] []     []         []   |
-     libexif            | []                           []         ()   |
-     libextractor       |                       []     []              |
-     libgnutls          | []                    []     []         []   |
-     libgphoto2         | []                    []     []              |
-     libgphoto2_port    | []                    []     []         []   |
-     libgsasl           | []                    []     []         []   |
-     libiconv           | []                    []     []  []     []   |
-     libidn             | ()                    []     []         []   |
-     liferea            | []                 [] []     []         []   |
-     lilypond           |                              []              |
-     lordsawar          |                                              |
-     lprng              |                              []              |
-     lynx               | []                 [] []     []              |
-     m4                 | []                           []         []   |
-     mailfromd          |                       []     []              |
-     mailutils          |                              []              |
-     make               | []                    []     []         []   |
-     man-db             | []                           []         []   |
-     man-db-manpages    | []                                      []   |
-     midi-instruments   | []              [] [] []     []         []   |
-     minicom            | []                           []              |
-     mkisofs            |                       []     []         []   |
-     myserver           |                              []              |
-     nano               | []                    []     []         []   |
-     opcodes            |                       []     []         []   |
-     parted             | []                 [] []     []         []   |
-     pies               |                       []     []              |
-     pnmixer            |                       []     []         []   |
-     popt               | []     []       [] [] []     []         []   |
-     procps-ng          |                       []     []              |
-     procps-ng-man      |                       []                     |
-     psmisc             | []                    []     []         []   |
-     pspp               |                    [] []                []   |
-     pushover           | []                                           |
-     pwdutils           | []                           []              |
-     pyspread           |                       []                     |
-     radius             |                       []     []              |
-     recode             | []                 []        []         []   |
-     recutils           | []                    []     []              |
-     rpm                | []                    []     []         []   |
-     rush               |                       []     []              |
-     sarg               |                                              |
-     sed                | []                 [] []     []         []   |
-     sharutils          | []                    []     []         []   |
-     shishi             |                              []         []   |
-     skribilo           | []                    []                     |
-     solfege            | []                 []        []         []   |
-     solfege-manual     |                    []                        |
-     spotmachine        | []                    []     []              |
-     sudo               | []                 [] []     []         []   |
-     sudoers            | []                    []     []         []   |
-     sysstat            | []                 [] []     []         []   |
-     tar                | []                 [] []     []         []   |
-     texinfo            |                    [] []     []              |
-     texinfo_document   |                       []                     |
-     tigervnc           | []                    []                []   |
-     tin                |                                         []   |
-     tin-man            |                                              |
-     tracgoogleappsa... | []              []    []     []         []   |
-     trader             | []                                           |
-     util-linux         | []                    []     []         []   |
-     ve                 | []                    []     []         []   |
-     vice               | ()                 ()                        |
-     vmm                |                                              |
-     vorbis-tools       | []                           []              |
-     wastesedge         |                                              |
-     wcd                |                       []     []         []   |
-     wcd-man            |                       []                     |
-     wdiff              | []                    []     []         []   |
-     wget               |                       []     []         []   |
-     wyslij-po          |                       []     []              |
-     xboard             |                       []                []   |
-     xdg-user-dirs      | []     [] []    [] [] []     []         []   |
-     xkeyboard-config   | []                 [] []     []              |
-                        +----------------------------------------------+
-                          sv  sw ta te tg th tr uk  ur vi  wa wo zh_CN
-                          106  1  4  3  0 13 51 115  1 125  7  1  100 
+                          sv sw ta te tg th tr uk  ur vi  wa wo zh_CN zh_HK
+                        +---------------------------------------------------+
+     a2ps               | []             [] [] []     []                    |
+     aegis              |                             []                    |
+     anubis             | []                [] []     []                    |
+     aspell             |                      []     []  []     []         |
+     bash               | []                   []     []         []         |
+     bfd                |                      []     []                    |
+     binutils           | []                   []     []                    |
+     bison              | []                   []     []         []         |
+     bison-runtime      | []             [] [] []     []         []         |
+     buzztrax           | []                          []         []         |
+     ccd2cue            |                      []     []         []         |
+     ccide              | []                   []     []         []         |
+     cflow              | []                   []     []         []         |
+     clisp              |                                                   |
+     coreutils          | []                   []     []         []         |
+     cpio               | []                [] []     []         []         |
+     cppi               | []                   []     []         []         |
+     cpplib             | []                [] []     []         []         |
+     cryptsetup         |                      []     []         []         |
+     datamash           | []                   []     []                    |
+     denemo             |                                                   |
+     dfarc              |                             []                    |
+     dialog             | [] []          []           []  []     []         |
+     dico               |                      []                           |
+     diffutils          | []                [] []     []         []         |
+     dink               |                                                   |
+     direvent           |                      []     []                    |
+     doodle             | []                          []                    |
+     dos2unix           | []                   []     []         []         |
+     dos2unix-man       | []                   []                []         |
+     e2fsprogs          | []                   []     []         []         |
+     enscript           | []                [] []     []                    |
+     exif               | []                [] []     []         []         |
+     fetchmail          | []                []        []         []         |
+     findutils          | []                [] []     []         []         |
+     flex               | []                []        []         []         |
+     freedink           |                []           []                    |
+     fusionforge        |                                                   |
+     gas                |                      []                           |
+     gawk               | []                          []                    |
+     gcal               | []                []                              |
+     gcc                | []                                     []         |
+     gdbm               |                      []     []                    |
+     gettext-examples   | []                [] []     []         []    []   |
+     gettext-runtime    | []                [] []     []         []    []   |
+     gettext-tools      | []                [] []     []         []         |
+     gjay               |                []           []                    |
+     glunarclock        | []                          []  []     []         |
+     gnubiff            | []                          []                    |
+     gnubik             | []                   []     []         []         |
+     gnucash            |       () ()              () ()         []         |
+     gnuchess           |                      []     []                    |
+     gnulib             | []                   []     []         []         |
+     gnunet             |                                                   |
+     gnunet-gtk         |                                                   |
+     gold               |                      []     []                    |
+     gphoto2            | []                   []     []         []         |
+     gprof              | []                [] []     []                    |
+     gramadoir          | []                          []         []         |
+     grep               | []             []    []     []         []         |
+     grub               | []                [] []     []                    |
+     gsasl              | []                   []     []         []         |
+     gss                | []                          []         []         |
+     gst-plugins-bad    | []                   []     []         []         |
+     gst-plugins-base   | []                [] []     []         []         |
+     gst-plugins-good   | []                [] []     []         []         |
+     gst-plugins-ugly   | []                [] []     []         []         |
+     gstreamer          | []                [] []     []         []         |
+     gtick              |                      []     []         []         |
+     gtkam              | []                   []     []         []         |
+     gtkspell           | []             [] [] []     []  []     []    []   |
+     guix               |                             []                    |
+     guix-packages      |                                                   |
+     gutenprint         |                   [] []     []         []         |
+     hello              | []             [] [] []     []         []         |
+     help2man           |                      []     []         []         |
+     help2man-texi      |                      []                           |
+     hylafax            |                             []                    |
+     idutils            |                      []     []         []         |
+     iso_15924          | []             () [] []     ()         []         |
+     iso_3166           | []       []    () [] []     ()  []     []    []   |
+     iso_3166_2         |                () [] []     ()         []         |
+     iso_4217           | []             () [] []     ()         []    []   |
+     iso_639            | []    [] []    () [] []     ()  []     []    []   |
+     iso_639_3          |       []       () [] []     ()                    |
+     iso_639_5          |                ()    []     ()                    |
+     jwhois             | []                []        []         []         |
+     kbd                |                      []     []         []         |
+     klavaro            | []                   []  [] []     []  []         |
+     latrine            |                             []         []         |
+     ld                 | []                [] []     []         []         |
+     leafpad            | []             [] [] []     []         []         |
+     libc               | []                [] []     []         []         |
+     libexif            |                             []         ()         |
+     libextractor       |                      []     []                    |
+     libgnutls          | []                   []     []         []         |
+     libgphoto2         |                      []     []                    |
+     libgphoto2_port    | []                   []     []         []         |
+     libgsasl           | []                   []     []         []         |
+     libiconv           | []                   []     []  []     []         |
+     libidn             | ()                   []     []         []         |
+     liferea            | []                [] []     []         []         |
+     lilypond           |                             []                    |
+     lordsawar          |                                                   |
+     lprng              |                             []                    |
+     lynx               | []                [] []     []                    |
+     m4                 | []                          []         []         |
+     mailfromd          |                      []     []                    |
+     mailutils          |                             []                    |
+     make               | []                   []     []         []         |
+     man-db             |                             []         []         |
+     man-db-manpages    |                                        []         |
+     midi-instruments   | []             [] [] []     []         []         |
+     minicom            | []                          []                    |
+     mkisofs            |                      []     []         []         |
+     myserver           |                             []                    |
+     nano               | []                   []     []         []         |
+     opcodes            |                      []     []         []         |
+     parted             | []                [] []     []         []         |
+     pies               |                      []     []                    |
+     popt               | []    []       [] [] []     []         []         |
+     procps-ng          |                      []     []                    |
+     procps-ng-man      |                      []                           |
+     psmisc             | []                   []     []         []         |
+     pspp               |                   [] []                []         |
+     pushover           | []                                                |
+     pwdutils           | []                          []                    |
+     pyspread           |                      []                           |
+     radius             |                      []     []                    |
+     recode             | []                []        []         []         |
+     recutils           | []                   []     []                    |
+     rpm                | []                   []     []         []         |
+     rush               |                      []     []                    |
+     sarg               |                                                   |
+     sed                | []                [] []     []         []         |
+     sharutils          |                      []     []         []         |
+     shishi             |                             []         []         |
+     skribilo           | []                                                |
+     solfege            |                   []        []         []         |
+     solfege-manual     |                   []                              |
+     spotmachine        | []                   []     []                    |
+     sudo               |                   [] []     []         []         |
+     sudoers            |                      []     []         []         |
+     sysstat            | []                [] []     []         []         |
+     tar                | []                [] []     []         []         |
+     texinfo            |                   [] []     []                    |
+     texinfo_document   |                      []                           |
+     tigervnc           | []                   []                           |
+     tin                |                                        []         |
+     tin-man            |                                                   |
+     tracgoogleappsa... | []             []    []     []         []         |
+     trader             | []                                                |
+     util-linux         |                      []     []         []         |
+     ve                 | []                   []     []         []         |
+     vice               | ()                ()                              |
+     vmm                |                                                   |
+     vorbis-tools       | []                          []                    |
+     wastesedge         |                                                   |
+     wcd                |                      []     []         []         |
+     wcd-man            |                      []                           |
+     wdiff              | []                   []     []         []         |
+     wget               |                      []     []         []         |
+     wyslij-po          |                      []     []                    |
+     xboard             |                      []                           |
+     xdg-user-dirs      | []    [] []    [] [] []     []         []    []   |
+     xkeyboard-config   | []                [] []     []                    |
+                        +---------------------------------------------------+
+                          sv sw ta te tg th tr uk  ur vi  wa wo zh_CN zh_HK
+                          91  1  4  3  0 13 50 113  1 126  7  1  95     7
 
-                          zh_HK zh_TW
-                        +-------------+
-     a2ps               |             | 30
-     aegis              |             |  9
-     anubis             |             | 19
-     aspell             |             | 29
-     bash               |        []   | 23
-     bfd                |             | 11
-     binutils           |             | 12
-     bison              |        []   | 18
-     bison-runtime      |        []   | 38
-     buzztrax           |             |  9
-     ccd2cue            |             | 10
-     ccide              |             | 17
-     cflow              |             | 16
-     clisp              |             | 10
-     coreutils          |             | 18
-     cpio               |             | 20
-     cppi               |             | 17
-     cpplib             |        []   | 19
-     cryptsetup         |             | 14
-     datamash           |             | 11
-     denemo             |             |  5
-     dfarc              |             | 17
-     dialog             |        []   | 42
-     dico               |             |  6
-     diffutils          |             | 22
-     dink               |             | 10
-     direvent           |             | 11
-     doodle             |             | 12
-     dos2unix           |        []   | 18
-     dos2unix-man       |             |  9
-     e2fsprogs          |             | 15
-     enscript           |             | 21
-     exif               |             | 27
-     fetchmail          |             | 19
-     findutils          |             | 29
-     flex               |        []   | 19
-     freedink           |             | 24
-     fusionforge        |             |  3
-     gas                |             |  5
-     gawk               |             | 13
-     gcal               |             |  8
-     gcc                |             |  2
-     gdbm               |             | 10
-     gettext-examples   |  []    []   | 40
-     gettext-runtime    |  []    []   | 35
-     gettext-tools      |        []   | 24
-     gjay               |             |  9
-     glunarclock        |        []   | 27
-     gnubiff            |             |  9
-     gnubik             |             | 19
-     gnucash            |        ()   |  6
-     gnuchess           |             | 11
-     gnulib             |             | 23
-     gnunet             |             |  1
-     gnunet-gtk         |             |  1
-     gold               |             |  7
-     gphoto2            |        []   | 19
-     gprof              |             | 21
-     gramadoir          |             | 14
-     grep               |        []   | 31
-     grub               |             | 21
-     gsasl              |        []   | 19
-     gss                |             | 17
-     gst-plugins-bad    |             | 21
-     gst-plugins-base   |             | 27
-     gst-plugins-good   |             | 32
-     gst-plugins-ugly   |             | 34
-     gstreamer          |        []   | 32
-     gtick              |             | 19
-     gtkam              |             | 24
-     gtkspell           |  []    []   | 48
-     guix               |             |  2
-     guix-packages      |             |  0
-     gutenprint         |             | 15
-     hello              |        []   | 30
-     help2man           |             | 18
-     help2man-texi      |             |  5
-     hylafax            |             |  5
-     idutils            |             | 14
-     iso_15924          |        []   | 23
-     iso_3166           |  []    []   | 58
-     iso_3166_2         |             |  9
-     iso_4217           |  []    []   | 28
-     iso_639            |  []    []   | 46
-     iso_639_3          |             | 10
-     iso_639_5          |             |  2
-     jwhois             |        []   | 20
-     kbd                |             | 17
-     klavaro            |             | 30
-     ld                 |        []   | 15
-     leafpad            |        []   | 39
-     libc               |        []   | 24
-     libexif            |             | 10
-     libextractor       |             |  5
-     libgnutls          |             | 13
-     libgphoto2         |             | 10
-     libgphoto2_port    |        []   | 19
-     libgsasl           |             | 18
-     libiconv           |        []   | 29
-     libidn             |             | 17
-     liferea            |             | 29
-     lilypond           |             | 11
-     lordsawar          |             |  3
-     lprng              |             |  3
-     lynx               |             | 19
-     m4                 |        []   | 22
-     mailfromd          |             |  4
-     mailutils          |             |  6
-     make               |             | 19
-     man-db             |             | 15
-     man-db-manpages    |             | 10
-     midi-instruments   |        []   | 43
-     minicom            |        []   | 17
-     mkisofs            |             | 13
-     myserver           |             |  9
-     nano               |        []   | 30
-     opcodes            |             | 12
-     parted             |        []   | 23
-     pies               |             |  4
-     pnmixer            |             |  9
-     popt               |        []   | 36
-     procps-ng          |             |  5
-     procps-ng-man      |             |  4
-     psmisc             |        []   | 22
-     pspp               |             | 13
-     pushover           |             |  6
-     pwdutils           |             |  8
-     pyspread           |             |  6
-     radius             |             |  9
-     recode             |             | 31
-     recutils           |             | 10
-     rpm                |        []   | 13
-     rush               |             | 10
-     sarg               |             |  4
-     sed                |        []   | 35
-     sharutils          |             | 13
-     shishi             |             |  7
-     skribilo           |             |  7
-     solfege            |             | 21
-     solfege-manual     |             |  9
-     spotmachine        |             | 11
-     sudo               |             | 26
-     sudoers            |             | 22
-     sysstat            |             | 23
-     tar                |        []   | 30
-     texinfo            |             | 17
-     texinfo_document   |             | 13
-     tigervnc           |             | 14
-     tin                |        []   |  7
-     tin-man            |             |  1
-     tracgoogleappsa... |        []   | 22
-     trader             |             | 12
-     util-linux         |             | 13
-     ve                 |             | 14
-     vice               |             |  1
-     vmm                |             |  3
-     vorbis-tools       |             | 13
-     wastesedge         |             |  3
-     wcd                |             |  8
-     wcd-man            |             |  3
-     wdiff              |        []   | 23
-     wget               |             | 21
-     wyslij-po          |             | 14
-     xboard             |             | 10
-     xdg-user-dirs      |  []    []   | 68
-     xkeyboard-config   |        []   | 28
-                        +-------------+
-       89 teams           zh_HK zh_TW
-      166 domains           7    42    2809
+                          zh_TW
+                        +-------+
+     a2ps               |       | 30
+     aegis              |       |  9
+     anubis             |       | 19
+     aspell             |       | 28
+     bash               |  []   | 21
+     bfd                |       |  9
+     binutils           |       | 12
+     bison              |  []   | 18
+     bison-runtime      |  []   | 38
+     buzztrax           |       |  8
+     ccd2cue            |       |  8
+     ccide              |       | 17
+     cflow              |       | 15
+     clisp              |       | 10
+     coreutils          |       | 20
+     cpio               |       | 20
+     cppi               |       | 17
+     cpplib             |  []   | 19
+     cryptsetup         |       | 13
+     datamash           |       | 11
+     denemo             |       |  4
+     dfarc              |       | 16
+     dialog             |  []   | 42
+     dico               |       |  6
+     diffutils          |       | 21
+     dink               |       |  9
+     direvent           |       | 10
+     doodle             |       | 12
+     dos2unix           |  []   | 18
+     dos2unix-man       |       |  9
+     e2fsprogs          |       | 14
+     enscript           |       | 21
+     exif               |       | 26
+     fetchmail          |       | 19
+     findutils          |       | 28
+     flex               |  []   | 19
+     freedink           |       | 23
+     fusionforge        |       |  3
+     gas                |       |  5
+     gawk               |       | 12
+     gcal               |       |  7
+     gcc                |       |  4
+     gdbm               |       | 10
+     gettext-examples   |  []   | 40
+     gettext-runtime    |  []   | 34
+     gettext-tools      |  []   | 24
+     gjay               |       |  8
+     glunarclock        |  []   | 27
+     gnubiff            |       |  9
+     gnubik             |       | 19
+     gnucash            |  ()   |  7
+     gnuchess           |       | 10
+     gnulib             |       | 23
+     gnunet             |       |  1
+     gnunet-gtk         |       |  1
+     gold               |       |  7
+     gphoto2            |  []   | 19
+     gprof              |       | 21
+     gramadoir          |       | 14
+     grep               |  []   | 31
+     grub               |       | 21
+     gsasl              |  []   | 19
+     gss                |       | 17
+     gst-plugins-bad    |       | 14
+     gst-plugins-base   |       | 27
+     gst-plugins-good   |       | 32
+     gst-plugins-ugly   |       | 34
+     gstreamer          |  []   | 31
+     gtick              |       | 19
+     gtkam              |       | 24
+     gtkspell           |  []   | 48
+     guix               |       |  3
+     guix-packages      |       |  0
+     gutenprint         |       | 15
+     hello              |  []   | 30
+     help2man           |       | 18
+     help2man-texi      |       |  5
+     hylafax            |       |  5
+     idutils            |       | 14
+     iso_15924          |  []   | 23
+     iso_3166           |  []   | 58
+     iso_3166_2         |       |  9
+     iso_4217           |  []   | 28
+     iso_639            |  []   | 46
+     iso_639_3          |       | 10
+     iso_639_5          |       |  2
+     jwhois             |  []   | 20
+     kbd                |       | 16
+     klavaro            |       | 30
+     latrine            |       |  7
+     ld                 |  []   | 15
+     leafpad            |  []   | 40
+     libc               |  []   | 24
+     libexif            |       |  9
+     libextractor       |       |  5
+     libgnutls          |       | 13
+     libgphoto2         |       |  9
+     libgphoto2_port    |  []   | 19
+     libgsasl           |       | 18
+     libiconv           |  []   | 29
+     libidn             |       | 17
+     liferea            |       | 29
+     lilypond           |       | 11
+     lordsawar          |       |  3
+     lprng              |       |  3
+     lynx               |       | 19
+     m4                 |  []   | 22
+     mailfromd          |       |  4
+     mailutils          |       |  6
+     make               |       | 19
+     man-db             |       | 14
+     man-db-manpages    |       |  9
+     midi-instruments   |  []   | 43
+     minicom            |  []   | 17
+     mkisofs            |       | 13
+     myserver           |       |  9
+     nano               |  []   | 29
+     opcodes            |       | 12
+     parted             |  []   | 21
+     pies               |       |  4
+     popt               |  []   | 36
+     procps-ng          |       |  5
+     procps-ng-man      |       |  4
+     psmisc             |  []   | 22
+     pspp               |       | 13
+     pushover           |       |  6
+     pwdutils           |       |  8
+     pyspread           |       |  6
+     radius             |       |  9
+     recode             |       | 31
+     recutils           |       |  9
+     rpm                |  []   | 13
+     rush               |       | 10
+     sarg               |       |  4
+     sed                |  []   | 34
+     sharutils          |       | 12
+     shishi             |       |  7
+     skribilo           |       |  4
+     solfege            |       | 19
+     solfege-manual     |       |  9
+     spotmachine        |       | 10
+     sudo               |       | 24
+     sudoers            |       | 20
+     sysstat            |       | 22
+     tar                |  []   | 30
+     texinfo            |       | 17
+     texinfo_document   |       | 11
+     tigervnc           |       | 11
+     tin                |  []   |  7
+     tin-man            |       |  1
+     tracgoogleappsa... |  []   | 22
+     trader             |       | 11
+     util-linux         |       | 12
+     ve                 |       | 14
+     vice               |       |  1
+     vmm                |       |  3
+     vorbis-tools       |       | 13
+     wastesedge         |       |  2
+     wcd                |       |  8
+     wcd-man            |       |  3
+     wdiff              |  []   | 23
+     wget               |       | 19
+     wyslij-po          |       | 14
+     xboard             |       |  9
+     xdg-user-dirs      |  []   | 68
+     xkeyboard-config   |  []   | 27
+                        +-------+
+       90 teams           zh_TW
+      166 domains          42    2748
 
    Some counters in the preceding matrix are higher than the number of
 visible blocks let us expect.  This is because a few extra PO files are
diff --git a/COPYING b/COPYING
index 66392b1..cd5fca1 100644 (file)
--- a/COPYING
+++ b/COPYING
@@ -2,8 +2,9 @@ fontconfig/COPYING
 
 Copyright © 2000,2001,2002,2003,2004,2006,2007 Keith Packard
 Copyright © 2005 Patrick Lam
+Copyright © 2007 Dwayne Bailey and Translate.org.za
 Copyright © 2009 Roozbeh Pournader
-Copyright © 2008,2009 Red Hat, Inc.
+Copyright © 2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020 Red Hat, Inc.
 Copyright © 2008 Danilo Šegan
 Copyright © 2012 Google, Inc.
 
@@ -26,3 +27,174 @@ 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.
 
+
+--------------------------------------------------------------------------------
+fontconfig/fc-case/CaseFolding.txt
+
+© 2019 Unicode®, Inc.
+Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
+For terms of use, see http://www.unicode.org/terms_of_use.html
+
+
+--------------------------------------------------------------------------------
+fontconfig/src/fcatomic.h
+
+/*
+ * Mutex operations.  Originally copied from HarfBuzz.
+ *
+ * Copyright © 2007  Chris Wilson
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2011,2012,2013  Google, Inc.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
+ *
+ * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+ * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * Contributor(s):
+ *     Chris Wilson <chris@chris-wilson.co.uk>
+ * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
+ */
+
+
+--------------------------------------------------------------------------------
+fontconfig/src/fcfoundry.h
+
+/*
+  Copyright © 2002-2003 by Juliusz Chroboczek
+
+  Permission is hereby granted, free of charge, to any person obtaining a copy
+  of this software and associated documentation files (the "Software"), to deal
+  in the Software without restriction, including without limitation the rights
+  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+  copies of the Software, and to permit persons to whom the Software is
+  furnished to do so, subject to the following conditions:
+
+  The above copyright notice and this permission notice shall be included in
+  all copies or substantial portions of the Software.
+
+  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+  THE SOFTWARE.
+*/
+
+
+--------------------------------------------------------------------------------
+fontconfig/src/fcmd5.h
+
+/*
+ * This code implements the MD5 message-digest algorithm.
+ * The algorithm is due to Ron Rivest.  This code was
+ * written by Colin Plumb in 1993, no copyright is claimed.
+ * This code is in the public domain; do with it what you wish.
+ *
+ * Equivalent code is available from RSA Data Security, Inc.
+ * This code has been tested against that, and is equivalent,
+ * except that you don't need to include two pages of legalese
+ * with every copy.
+ *
+ * To compute the message digest of a chunk of bytes, declare an
+ * MD5Context structure, pass it to MD5Init, call MD5Update as
+ * needed on buffers full of bytes, and then call MD5Final, which
+ * will fill a supplied 16-byte array with the digest.
+ */
+
+
+--------------------------------------------------------------------------------
+fontconfig/src/fcmutex.h
+
+/*
+ * Atomic int and pointer operations.  Originally copied from HarfBuzz.
+ *
+ * Copyright © 2007  Chris Wilson
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2011,2012,2013  Google, Inc.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
+ *
+ * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+ * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * Contributor(s):
+ *     Chris Wilson <chris@chris-wilson.co.uk>
+ * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
+ */
+
+
+--------------------------------------------------------------------------------
+fontconfig/src/ftglue.[ch]
+
+/* ftglue.c: Glue code for compiling the OpenType code from
+ *           FreeType 1 using only the public API of FreeType 2
+ *
+ * By David Turner, The FreeType Project (www.freetype.org)
+ *
+ * This code is explicitely put in the public domain
+ *
+ * ==========================================================================
+ *
+ * the OpenType parser codes was originally written as an extension to
+ * FreeType 1.x. As such, its source code was embedded within the library,
+ * and used many internal FreeType functions to deal with memory and
+ * stream i/o.
+ *
+ * When it was 'salvaged' for Pango and Qt, the code was "ported" to FreeType 2,
+ * which basically means that some macro tricks were performed in order to
+ * directly access FT2 _internal_ functions.
+ *
+ * these functions were never part of FT2 public API, and _did_ change between
+ * various releases. This created chaos for many users: when they upgraded the
+ * FreeType library on their system, they couldn't run Gnome anymore since
+ * Pango refused to link.
+ *
+ * Very fortunately, it's possible to completely avoid this problem because
+ * the FT_StreamRec and FT_MemoryRec structure types, which describe how
+ * memory and stream implementations interface with the rest of the font
+ * library, have always been part of the public API, and never changed.
+ *
+ * What we do thus is re-implement, within the OpenType parser, the few
+ * functions that depend on them. This only adds one or two kilobytes of
+ * code, and ensures that the parser can work with _any_ version
+ * of FreeType installed on your system. How sweet... !
+ *
+ * Note that we assume that Pango doesn't use any other internal functions
+ * from FreeType. It used to in old versions, but this should no longer
+ * be the case. (crossing my fingers).
+ *
+ *  - David Turner
+ *  - The FreeType Project  (www.freetype.org)
+ *
+ * PS: This "glue" code is explicitely put in the public domain
+ */
index 2c5db4f..c82a81b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
-2017-11-07  gettextize  <bug-gnu-gettext@gnu.org>
-
-       * m4/gettext.m4: New file, from gettext-0.19.8.1.
-       * m4/iconv.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-ld.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-link.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-prefix.m4: New file, from gettext-0.19.8.1.
-       * m4/nls.m4: New file, from gettext-0.19.8.1.
-       * m4/po.m4: New file, from gettext-0.19.8.1.
-       * m4/progtest.m4: New file, from gettext-0.19.8.1.
-       * Makefile.am (EXTRA_DIST): Add config.rpath.
-       * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in.
-
-2017-11-07  gettextize  <bug-gnu-gettext@gnu.org>
-
-       * m4/gettext.m4: New file, from gettext-0.19.8.1.
-       * m4/iconv.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-ld.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-link.m4: New file, from gettext-0.19.8.1.
-       * m4/lib-prefix.m4: New file, from gettext-0.19.8.1.
-       * m4/nls.m4: New file, from gettext-0.19.8.1.
-       * m4/po.m4: New file, from gettext-0.19.8.1.
-       * m4/progtest.m4: New file, from gettext-0.19.8.1.
-       * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in.
+commit a919700fbde28c29ccdb1d2a8bceba80ade19e73
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 10 20:37:03 2019 +0900
+
+    Bump version to 2.13.91
+
+ README                  | 106
+ +++++++++++++++++++++++++++++++++++++++++++++++-
+ configure.ac            |   2 +-
+ fontconfig/fontconfig.h |   2 +-
+ 3 files changed, 106 insertions(+), 4 deletions(-)
+
+commit 66b0af41b81c5f0db1a8f952beaaada95e221d14
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 10 10:57:05 2019 +0000
+
+    Fix endianness on generating MD5 cache name
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit f729bc63d83c8e9068ff1c031a363b624dea1bb7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jun 6 10:50:31 2019 +0000
+
+    Fix a typo in the description of FcWeightFromOpenTypeDouble
+
+ doc/fcweight.fncs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit f40b203b3e28f253bfe4976ab571278cd19437d7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 3 07:08:44 2019 +0000
+
+    Correct the comment for FC_LANG in fontconfig.h
+
+ fontconfig/fontconfig.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit c336b8471877371f0190ba06f7547c54e2b890ba
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu May 9 07:10:11 2019 +0000
+
+    fc-validate: returns an error code when missing some glyphs
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/154
+
+ fc-validate/fc-validate.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit a305e988b77b61398cd7806ec7b6f8de098f54c8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 8 05:18:43 2019 +0000
+
+    Update CaseFolding.txt to Unicode 12.1
+
+ fc-case/CaseFolding.txt | 13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+commit fd2e155665ea2c69cd8014962061349a0cc794e6
+Author: Jon Turney <jon.turney@dronecode.org.uk>
+Date:   Mon Apr 15 20:01:22 2019 +0100
+
+    Only use test wrapper-script if host is MinGW
+
+    Currently it fails if the executable extension is .exe, but wine isn't
+    available (e.g. on Cygwin)
+
+    Possibly the check to use this wrapper should be even more restrictive
+    e.g. checking if cross-building and/or if wine is available.
+
+ test/Makefile.am | 3 +++
+ test/run-test.sh | 1 -
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+commit d28681af2ace90e80bed440d126e98f76cd086f3
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Apr 15 09:03:57 2019 +0000
+
+    Distribute archive in xz instead of bz2
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/151
+
+ .gitlab-ci.yml | 2 +-
+ configure.ac   | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit faa11fb642d046e9aecde6d1385b8e6c14ec6055
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 4 12:14:20 2019 +0000
+
+    Update the test case that is looking for uuid based on host
+
+ test/run-test.sh | 56
+ ++++++++++++++++++++++++++++++++------------------------
+ 1 file changed, 32 insertions(+), 24 deletions(-)
+
+commit 76e899700bdc0443807f7e0170d3c1aa6da1b84b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 4 11:57:13 2019 +0000
+
+    No need to remap for uuid based
+
+ src/fccache.c | 36 +++++++++++++++++-------------------
+ 1 file changed, 17 insertions(+), 19 deletions(-)
+
+commit 7f61838435ed3e3f8c19c593e9e646d221128df8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 4 10:59:47 2019 +0000
+
+    Fallback uuid-based name to read a cache if no MD5-based cache
+    available
+
+ src/fccache.c    | 91
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
+ test/run-test.sh | 25 +++++++++++++++-
+ 2 files changed, 113 insertions(+), 3 deletions(-)
+
+commit 13d2a47d79a4ec4d3bc48aeb89dd9c899468152e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 4 06:47:34 2019 +0000
+
+    Fix unexpected cache name by double-slash in path
+
+ src/fccfg.c      | 16 +++++++++-------
+ test/run-test.sh | 32 ++++++++++++++++++++++++++++++++
+ 2 files changed, 41 insertions(+), 7 deletions(-)
+
+commit faec0b51db6ef935929a95b289524abac062be8c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 4 05:04:17 2019 +0000
+
+    Don't show salt in debugging message if salt is null
+
+ src/fccfg.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 91114d18c3435e4bffe1812eb03ffe5efa8543d7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Apr 3 04:48:42 2019 +0000
+
+    Allow overriding salt with new one coming later
+
+ src/fcint.h |  3 +++
+ src/fcstr.c | 58
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 61 insertions(+)
+
+commit 791762d8b7108f692b8643a208825f5ba3aa7a72
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 2 11:03:16 2019 +0000
+
+    fc-cache: Show font directories to generate cache with -v
+
+ fc-cache/fc-cache.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+commit d1acc73f23205e63be791c9f21eba917d292c541
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 2 10:25:46 2019 +0000
+
+    Oops, Terminate string
+
+ src/fccache.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit fc9f706ecb71b2625487138e6f7424d8c2cee761
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 2 10:00:17 2019 +0000
+
+    Add some debugging output
+
+ src/fccache.c | 18 ++++++++++++++----
+ src/fccfg.c   | 15 +++++++++++++++
+ 2 files changed, 29 insertions(+), 4 deletions(-)
+
+commit cb1df8cb28d6ae34726cf7c3fd0142847431c7bb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 2 09:37:49 2019 +0000
+
+    Don't warn if path can't be converted with prefix
+
+ src/fcxml.c | 18 ++++++++++++++++--
+ 1 file changed, 16 insertions(+), 2 deletions(-)
+
+commit 34791c32f19a3abc6a3dd2000d28202b80a882f9
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 26 05:07:34 2019 +0000
+
+    Don't share fonts and cache dir for testing
+
+    There seems a race condition on CI. so create an unique directory
+    to avoid colision.
+
+ test/run-test.sh | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+commit 0950f248e031865e0abe8dad4c974ea426e159b2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 25 20:00:15 2019 +0900
+
+    Add more data to artifacts for debugging purpose
+
+ .gitlab-ci.yml | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit ad3f335ccfeceb8595ae9e30bde901a732b9dd51
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 25 10:58:15 2019 +0000
+
+    Fix make check fail on MinGW again
+
+ src/fcxml.c | 24 +++++++++++++++++-------
+ 1 file changed, 17 insertions(+), 7 deletions(-)
+
+commit 8e2c85fe81020b3703e37a127ccc85625350a12d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 25 17:39:16 2019 +0900
+
+    Use alternative function for realpath on Win32
+
+ src/fccfg.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+commit b1bcc0cbb258d3b697147c80c410e8df6843f376
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 25 16:17:33 2019 +0900
+
+    Fix build issues on MinGW
+
+ src/fcxml.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 9177cf2c3814f1f23fe207d4be3876111d272d60
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 25 15:52:02 2019 +0900
+
+    Add back if !OS_WIN32 line
+
+ test/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit a39f30738d6688888a6e19d08ddaaf8928d563e1
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Feb 1 06:41:51 2019 +0000
+
+    trivial testcase update
+
+ test/run-test-conf.sh | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+commit 4ff52ffb52dc9eb9b12aee21c4b897206c28d457
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Feb 1 06:41:38 2019 +0000
+
+    Update doc for salt
+
+ doc/fontconfig-user.sgml | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+commit 2e8ce63514b06590d36d9bf5c332ff83fb72791a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 31 10:17:47 2019 +0000
+
+    Add salt attribute to dir and remap-dir elements
+
+    'salt' attribute affects a cache filename to generate different name
+    from directory name.
+    This is useful when sharing caches with host on sandbox and/or give
+    a filename differently:
+
+        <dir salt="randomdata">/usr/share/fonts</dir>
+        <remap-dir as-path="/usr/share/fonts" salt="salt for
+        /usr/share/fonts on host">/run/host/fonts</remap-dir>
+
+    Applications can read caches as-is for fonts on /run/host/fonts
+    where is mounted from host.
+    and write a cache for their own fonts on /usr/share/fonts with
+    different name.
+
+ src/fccache.c    | 15 ++++++++++++++-
+ src/fccfg.c      | 29 +++++++++++++++++++++++++----
+ src/fcint.h      | 18 +++++++++++++-----
+ src/fcstr.c      | 32 ++++++++++++++++++++++++--------
+ src/fcxml.c      | 10 ++++++----
+ test/run-test.sh | 47 +++++++++++++++++++++++++++++++++++++++++++++++
+ 6 files changed, 129 insertions(+), 22 deletions(-)
+
+commit def1d00036a4e828382027292a167203c6c7a0b4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 31 07:52:09 2019 +0000
+
+    Add reset-dirs element
+
+    This element removes all of fonts directories where added by
+    dir elements. it is useful to override fonts dirs from system
+    to their own dirs only.
+
+ conf.d/05-reset-dirs-sample.conf |  9 +++++++++
+ conf.d/Makefile.am               |  1 +
+ doc/fontconfig-user.sgml         |  4 ++++
+ fonts.dtd                        |  6 ++++++
+ src/fccfg.c                      |  6 ++++++
+ src/fcint.h                      |  6 ++++++
+ src/fcstr.c                      | 16 ++++++++++++++++
+ src/fcxml.c                      | 15 +++++++++++++++
+ 8 files changed, 63 insertions(+)
+
+commit 5e46f1545100f12ee1daaa41bccc6c3914bd2d83
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 31 07:10:41 2019 +0000
+
+    Fix a typo
+
+ fonts.dtd | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit acc017e67210ee6d8fed7ffd41a1f55fe04d056b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 29 07:55:22 2019 +0000
+
+    Drop unnecessary line to include uuid.h
+
+ src/fchash.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+commit 635921e64d074ce5c7b8ca4a6f535241a2b8c75f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 29 07:49:22 2019 +0000
+
+    Update deps to run CI
+
+ .gitlab-ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 916cf6caa3d754f4d267eb1fc3cede9c86aa4e15
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 29 07:03:58 2019 +0000
+
+    Update testcase
+
+ test/Makefile.am     |  2 +-
+ test/fonts.conf.in   |  3 ++-
+ test/run-test.sh     | 10 ++++++++--
+ test/test-d1f48f11.c |  2 ++
+ test/test-issue110.c |  2 ++
+ 5 files changed, 15 insertions(+), 4 deletions(-)
+
+commit 2e09c62ba1ff3477b4c64d4721337b62024832c8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 29 07:02:37 2019 +0000
+
+    Trim the last slash
+
+    This fixes MD5 wrongly generated.
+
+ src/fccfg.c | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+commit a563a1802ef930374f88e6c7198e1b5ffe7582dd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jan 28 09:59:29 2019 +0000
+
+    Add new element remap-dir instead of extending dir element
+
+ doc/fontconfig-user.sgml |  15 +--
+ fonts.dtd                |  11 +-
+ src/fcxml.c              | 279
+ ++++++++++++++++++++++++++++-------------------
+ 3 files changed, 184 insertions(+), 121 deletions(-)
+
+commit 9d3fb5b38563300e0e31bf7f99f723309ec6316a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jan 28 09:40:21 2019 +0000
+
+    Fix make check fail on run-test-conf.sh
+
+ test/test-conf.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 500e77a01d00471900755d96ba6ad236d916947a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jan 28 04:47:16 2019 +0000
+
+    Drop a line to include uuid.h
+
+ src/fccache.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+commit 04f75fce0bd060b780af6d05314852be6df27216
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jan 28 04:44:31 2019 +0000
+
+    Add FcDirCacheCreateUUID doc back to pass make check
+
+ doc/fccache.fncs | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+commit c4324f54ee16e648ba91f3e9c66af13ab3b1754c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 29 16:39:05 2018 -0700
+
+    Replace UUID file mechanism with per-directory 'map' attribute [v2]
+
+    The UUID files would be placed in each font directory to provide the
+    unique cache name, independent of path, for that directory. The UUID
+    files are undesireable for a couple of reasons:
+
+     1) They must be placed in the font directories to be useful. This
+        requires modifying the font directories themselves, introducing
+        potential visible timestamp changes when running multiple
+        applications, and makes the cache processing inconsistent between
+        applications with permission to write to the font directories and
+        applications without such permission.
+
+     2) The UUID contents were generated randomly, which makes the font
+        cache not reproducible across multiple runs.
+
+    One proposed fix for 2) is to make the UUID dependent on the font
+    directory path, but once we do that, we can simply use the font
+    directory path itself as the key as the original MD5-based font cache
+    naming mechanism did.
+
+    The goal of the UUID file mechanism was to fix startup time of
+    flatpaks; as the font path names inside the flatpak did not match the
+    font path names in the base system, the font cache would need to be
+    reconstructed the first time the flatpak was launched.
+
+    The new mechanism for doing this is to allow each '<dir>' element in
+    the configuration include a 'map' attribute. When looking for a cache
+    file for a particular directory, if the directory name starts with the
+    contents of the <dir> element, that portion of the name will be
+    replaced with the value of the 'map' attribute.
+
+    Outside of the flatpak, nothing need change -- fontconfig will build
+    cache files using real directory names.
+
+    Inside the flatpak, the custom fonts.conf file will now include
+    mappings such as this:
+
+            <dir map="/usr/share/fonts">/run/host/fonts</dir>
+
+    When scanning the directory /run/host/fonts/ttf, fontconfig will
+    use the name /usr/share/fonts/ttf as the source for building the cache
+    file name.
+
+    The existing FC_FILE replacement code used for the UUID-based
+    implementation continues to correctly adapt font path names seen by
+    applications.
+
+    v2:
+            Leave FcDirCacheCreateUUID stub around to avoid removing
+            public API function.
+
+            Document 'map' attribute of <dir> element in
+            fontconfig-user.sgml
+
+            Suggested-by: Akira TAGOH <akira@tagoh.org>
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ configure.ac             |  33 --------
+ doc/fccache.fncs         |  14 ----
+ doc/fontconfig-user.sgml |   8 +-
+ fc-cache/fc-cache.c      |   1 -
+ fonts.dtd                |   1 +
+ src/Makefile.am          |   3 +-
+ src/fccache.c            | 210
+ ++++-------------------------------------------
+ src/fccfg.c              |  80 +++++++++++-------
+ src/fcdir.c              |   1 -
+ src/fchash.c             |  17 ----
+ src/fcint.h              |  18 +++-
+ src/fcstr.c              |  76 +++++++++++++++++
+ src/fcxml.c              |   5 +-
+ test/Makefile.am         |   2 +-
+ test/fonts.conf.in       |   2 +-
+ test/run-test-map.sh     | 107 ++++++++++++++++++++++++
+ test/run-test.sh         |   2 +
+ 17 files changed, 280 insertions(+), 300 deletions(-)
+
+commit 4cde12bfda1316e6d5464a2d9607d15322ef8024
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 29 16:25:13 2018 -0700
+
+    Remove UUID-related tests
+
+    Remove test-hash
+    Remove UUID tests from run-test.sh
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ test/Makefile.am |   6 --
+ test/run-test.sh |  80 ++----------------------
+ test/test-hash.c | 186
+ -------------------------------------------------------
+ 3 files changed, 5 insertions(+), 267 deletions(-)
+
+commit a8c4fc5e1f2c4215544aff004d42f235d7e9d14f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 29 16:36:11 2018 -0700
+
+    Add delays to test-bz106632, check UptoDate separately
+
+    On a file system with one-second time stamps, extra delays are needed
+    between cache modification operations to ensure that fontconfig isn't
+    fooled.
+
+    And, when the timestamps are checked correctly, we need to make sure
+    that FcConfigUptoDate returns false whenever we change a font
+    directory, so separate that out from the call to reinitialize the core
+    config.
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ test/test-bz106632.c | 24 ++++++++++++++++++------
+ 1 file changed, 18 insertions(+), 6 deletions(-)
+
+commit 2a81aa51f08085c81666f40f34068f2c6512e974
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 29 16:26:11 2018 -0700
+
+    Remove '-u' option from run-test-conf.sh
+
+    This causes a failure when evaluating $OSTYPE on systems which do not
+    set that variable (everything but Msys/MinGW)
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ test/run-test-conf.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 67e9c12c5a85e4ee95eb8576d094988d1c765c44
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 29 17:00:28 2018 -0700
+
+    Fetch FONTCONFIG_SYSROOT in FcConfigCreate
+
+    This saves the value of FONTCONFIG_SYSROOT in the config instead of
+    having to call getenv every time we need this value.
+
+    This also uses 'realpath' to construct a canonical path to sysroot,
+    eliminating symlinks and relative path names.
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ src/fccfg.c | 24 +++++++++++++++++-------
+ 1 file changed, 17 insertions(+), 7 deletions(-)
+
+commit 97fa77d27facc6a31486fdca5b3b853c591f792c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Apr 3 11:49:42 2019 +0000
+
+    Reset errno to do error handling properly
+
+    This fixes the weird behavior when running with SOURCE_DATE_EPOCH=0:
+
+    Fontconfig: SOURCE_DATE_EPOCH: strtoull: No such file or directory: 0
+
+ src/fccache.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 809f040bc367763ceaec69568a867bbef2fee926
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 23 07:19:08 2019 +0000
+
+    Don't test bind-mount thing for MinGW
+
+ test/run-test.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 4cb490b0b9247b95e78470aa35657bc1ba0f457c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 23 07:05:23 2019 +0000
+
+    Install wine for CI on MinGW
+
+ .gitlab-ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 73b300dc7c31dfbb6ec3638fde109033bb9785a4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 23 06:57:19 2019 +0000
+
+    Correct configure option to cross-compile
+
+ .gitlab-ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 33b372e20f6f9fd7d41fbb6dded1c703bae22403
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 23 06:49:32 2019 +0000
+
+    Update requirement for gettext
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 92caab9c769488cce3a720b85e38252f3dadd63c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 23 06:27:39 2019 +0000
+
+    Fix make distcheck error
+
+ test/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 10e13fc748aa75a7ba7d67b1cf3baec47bd9cbc8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 22 07:58:04 2019 +0000
+
+    Add build test for MinGW
+
+ .gitlab-ci.yml | 22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+commit f6810ede6010da394f60e8425030901e235d2a77
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 22 07:45:09 2019 +0000
+
+    Fix make check on cross-compiled env
+
+ test/Makefile.am       |  5 +++++
+ test/run-test.sh       | 10 ++++++++--
+ test/test-d1f48f11.c   | 18 ++++++++++++++++++
+ test/test-issue107.c   | 18 ++++++++++++++++++
+ test/test-issue110.c   | 18 ++++++++++++++++++
+ test/wrapper-script.sh | 13 +++++++++++++
+ 6 files changed, 80 insertions(+), 2 deletions(-)
+
+commit 98099ffc9f1c3fd195075d5d48617ccb73940470
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 22 07:41:32 2019 +0000
+
+    Ifdef'ed unnecessary code for Win32
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/147
+
+ src/fccache.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+commit 8a9435958ac709ca81ef0e517b9242958afcd6b2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 22 07:40:24 2019 +0000
+
+    autogen.sh: Make AUTORECONF_FLAGS overwritable
+
+ autogen.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 9b0c093a6a925b71a099f8f4b489d83572c77afe
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 19 17:57:09 2019 +0900
+
+    Fix build issue on Win32.
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/148
+
+ test/test-bz106632.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+commit 3eca37c1e515c2967d8a637efa2a7a322842376f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 15 18:51:47 2019 +0900
+
+    Fix misleading summary in docs for FcStrStrIgnoreCase
+
+    Reported by Jonathan Kew
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/146
+
+ doc/fcstring.fncs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit dba84600e1485000f358d8259b92721cf7066034
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Sep 25 19:20:35 2018 +0900
+
+    Add system-ui generic family
+
+    The generic family of 'system-ui' name is being proposed in a draft
+    of next CSS Fonts.
+    This would be nice to support in fontconfig too.
+
+    https://www.w3.org/TR/css-fonts-4/
+
+ conf.d/40-nonlatin.conf | 100
+ ++++++++++++++++++++++++++++++++++++++++++++++++
+ conf.d/45-latin.conf    |  23 +++++++++++
+ conf.d/60-latin.conf    |  13 +++++++
+ conf.d/65-nonlatin.conf |  33 ++++++++++++++++
+ fonts.conf.in           |  11 ++++++
+ 5 files changed, 180 insertions(+)
+
+commit 40e27f5d989ef4e40d218624de0a51de3de43177
+Author: Ben Wagner <bungeman@chromium.org>
+Date:   Tue Feb 19 00:40:32 2019 +0000
+
+    Better document sysroot.
+
+    All non trivial users of FontConfig must use FcConfigGetSysRoot to
+    resolve file properties in patterns. In order to support sysroot the
+    filename in the file property must be relative to the sysroot, but the
+    value of the file property in a pattern is directly exposed, making it
+    impossible for FontConfig to resolve the filename itself
+    transparently.
+
+ doc/fcconfig.fncs         | 15 ++++++++++-----
+ doc/fontconfig-devel.sgml |  1 +
+ 2 files changed, 11 insertions(+), 5 deletions(-)
+
+commit 586e35450e9ca7c1dc647ceb9d75ac8ed08c5c16
+Author: Robert Yang <liezhi.yang@windriver.com>
+Date:   Fri Jan 25 10:15:36 2019 +0800
+
+    src/fccache.c: Fix define for HAVE_POSIX_FADVISE
+
+    Otherwise, there would be build errors in the following 2 cases:
+    * define HAVE_POSIX_FADVISE
+    Or:
+    * undef HAVE_POSIX_FADVISE
+
+    Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 699d6e4d8415a5d94483ea81fdf277964a33b8f1
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jan 23 05:59:24 2019 +0000
+
+    Fix a crash with invalid matrix element
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/140
+
+ src/fcxml.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+commit b047e299546ac3abb79cf0bac3c67f5c2dfc7fb6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Nov 30 10:42:26 2018 +0000
+
+    Fix a dereference of a null pointer
+
+    When exiting from for loop by not satisfying the condition of `(s =
+    next[i])` at FcCacheRemoveUnlocked()
+    referring s->alloated will be invalid.
+
+ src/fccache.c | 17 ++++++++++-------
+ 1 file changed, 10 insertions(+), 7 deletions(-)
+
+commit 3a45b8ef6511aee22b48c2a54f59faf6172a5071
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Nov 30 07:27:39 2018 +0000
+
+    covscan: fix compiler warnings
+
+ test/test-bz106632.c | 26 +++++++++++++-------------
+ test/test-hash.c     |  5 ++---
+ 2 files changed, 15 insertions(+), 16 deletions(-)
+
+commit c44fda28e1dc0251f4451d1643f77e1455b80462
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Nov 30 07:12:21 2018 +0000
+
+    Don't call unlink_dirs if basedir is null
+
+ test/test-bz106632.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit a57647e1556a67037176ff267a4ba4a2a4dfb59d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 12 05:01:50 2018 +0000
+
+    covscan fix: get rid of unnecessary condition check
+
+ src/fcxml.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 65c7427c019c1cb7c621e6be87fb298564d45f51
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Nov 30 07:03:54 2018 +0000
+
+    Warn when constant name is used for unexpected object
+
+    This fixes the sort of weird things like `fc-match :size=rgb` done
+    without any errors.
+    This might be annoyed but the error messages should helps to fix an
+    application bug or
+    suggest more useful constant names to fontconfig.
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/137
+
+ src/fcint.h  |  3 +++
+ src/fcname.c | 30 ++++++++++++++++++++++++------
+ 2 files changed, 27 insertions(+), 6 deletions(-)
+
+commit 71c9c7892ab7ddf8964737e80d0465e3e96ac36b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 27 08:50:18 2018 +0000
+
+    Add a test case for FcFontList
+
+ test/Makefile.am          |   1 +
+ test/run-test-conf.sh     |   1 +
+ test/test-60-generic.json |  34 +++++++++
+ test/test-conf.c          | 190
+ +++++++++++++++++++++++++++++++++++++++++-----
+ 4 files changed, 209 insertions(+), 17 deletions(-)
+
+commit 9d5149ac41e18ab67404ddba41d7ef7e71839ebc
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 27 08:50:18 2018 +0000
+
+    Fix FcFontList doesn't return a font with FC_COLOR=true
+
+    "color" property has a value more than 1 because the value of
+    FT_HAS_COLOR
+    is directly set to it. this seems breaking the behavior of FcFontList
+    with FC_COLOR=true
+    because it is more than FcDontCare.
+
+    So changing comparison that way.
+
+ src/fccfg.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+commit 3c75a5a9358ae570230c324917a636947748eb1f
+Author: Chris McDonald <cjmcdonald@chromium.org>
+Date:   Mon Nov 26 11:46:21 2018 -0700
+
+    Lowered temporary rooted_dir variable inside loop
+
+ fc-cache/fc-cache.c | 31 ++++++++++++-------------------
+ 1 file changed, 12 insertions(+), 19 deletions(-)
+
+commit d36f977c761ffbb75d5c76278bc14d1c0e74cc7a
+Author: Chris McDonald <cjmcdonald@chromium.org>
+Date:   Mon Nov 19 15:19:19 2018 -0700
+
+    Respect sysroot option for file path passed to stat
+
+ fc-cache/fc-cache.c | 22 +++++++++++++++++++++-
+ 1 file changed, 21 insertions(+), 1 deletion(-)
+
+commit 2bd559f75d76b514f789e32c5cc9643fd7c1e9a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Nov 15 20:55:08 2018 +0900
+
+    Add doc for description element and update fonts.dtd
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/133
+
+ doc/fontconfig-user.sgml |  5 +++++
+ fonts.dtd                | 21 ++++++++++++++++-----
+ 2 files changed, 21 insertions(+), 5 deletions(-)
+
+commit 13b4ba91353a4ead4623d0133f6eb0283e91b15a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 13 06:34:11 2018 +0000
+
+    Use Rachana instead of Meera for Malayalam
+
+    Meera is a sans-serif font for Malayalam. that should be substituted
+    for serif.
+
+ conf.d/65-nonlatin.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 648e0cf3d5a53efeab93b24ae37490427d05229d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 6 16:33:03 2018 +0900
+
+    Use FC_PATH_MAX instead of PATH_MAX
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/131
+
+ src/fccfg.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6dde9b5be3751843ad81fd9c735fdf17362eb7a6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 6 15:39:50 2018 +0900
+
+    Enable bubblewrap test case
+
+ .gitlab-ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 9bb90101378961eea7ce7057b03acd582c8944cb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Oct 29 12:25:03 2018 +0000
+
+    Drop Mitra Mono from 65-nonlatin.conf
+
+    This font seems totally broken.
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/128
+
+ conf.d/65-nonlatin.conf | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit f7036d589bffe353c1982b881afae6ec0a2ef200
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Oct 24 14:30:24 2018 -0700
+
+    Fix name-table language code mapping for Mongolian
+
+ src/fcfreetype.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit e9113a764a1001165711022aceb45aa2765feb8b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 25 07:16:32 2018 +0000
+
+    Do not run a test case for .uuid deletion
+
+ test/run-test.sh | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+commit 5f12f564f8748deaa603adb7a4b8f616b6390ad4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Oct 17 21:15:47 2018 -0700
+
+    Do not remove UUID file when a scanned directory is empty
+
+    Because FcDirCacheDeleteUUID does not reset the modification time on
+    the directory, and because FcDirCacheRead unconditionally creates the
+    UUID file each time it is run, any empty directory in the cache will
+    get its timestamp changed each time the cache for that directory is
+    read.
+
+    Instead, just leave the UUID file around as it is harmless.
+
+    The alternative would be to only create the UUID file after the cache
+    has been created and the directory has been discovered to be
+    non-empty, but that would delay the creation of the UUID file.
+
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ src/fcdir.c | 7 -------
+ 1 file changed, 7 deletions(-)
+
+commit 5f5ec5676c61b9773026a9335c9b0dfa73a73353
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Oct 1 07:01:26 2018 +0000
+
+    Do not try updating mtime when unlink was failed
+
+ src/fccache.c | 23 +++++++++++++----------
+ 1 file changed, 13 insertions(+), 10 deletions(-)
+
+commit ff5b49be2be0922f0fb6b9daf08f64a88d2fae6b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Sep 28 09:08:52 2018 +0000
+
+    Do not update mtime when removing .uuid file
+
+    This avoids a situation triggers updating caches on a directory
+    where .uuid file was removed.
+
+    Resolves:
+    https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/107
+
+ src/fccache.c        |  32 +++++--
+ test/Makefile.am     |   6 ++
+ test/test-issue107.c | 248
+ +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 281 insertions(+), 5 deletions(-)
+
+commit 8badaae15b1225bbf200c46533b1761002c760de
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 4 08:30:33 2018 +0000
+
+    CI: Add more logs
+
+ .gitlab-ci.yml | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 5771c48863299c10a253cd4d885f41cae17377fb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 4 08:20:45 2018 +0000
+
+    Fix test case
+
+ test/test-bz106632.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit e4788c5a96e0f384ad5702ad8096b0e144613895
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 4 08:03:20 2018 +0000
+
+    add missing the case of prefix="default" as documented
+
+ src/fcxml.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 942db25fbcee66cb8dded5cb06407cf556dc4eff
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 4 08:02:48 2018 +0000
+
+    Update docs for 1aa8b700
+
+ doc/fontconfig-user.sgml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 67b4090321c0ec3cf3dc96f6d3cd7b9d03af0f25
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Oct 4 08:02:18 2018 +0000
+
+    Update fonts.dtd for last commit
+
+ fonts.dtd | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+commit 1aa8b700c3f09a31c78e7834e0db373f80b5e226
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Oct 2 09:32:03 2018 +0000
+
+    Add more prefix support in <dir> element
+
+    Added two prefix modes:
+      "relative" that makes the relative path be relative to current file
+      "cwd" for relative to current working directory which implies
+      current behavior.
+
+    Resolves:
+    https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/15
+
+ src/fcxml.c | 41 +++++++++++++++++++++++++++++++++--------
+ 1 file changed, 33 insertions(+), 8 deletions(-)
+
+commit f0aae4455ed43ac323821f8c8aa2fa9ffe274977
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Sep 28 09:17:37 2018 +0000
+
+    Fix CI
+
+ .gitlab-ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ba206df9b9a7ca300265f650842c1459ff7c634a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Sep 5 12:08:52 2018 +0000
+
+    Add a test case for d1f48f11
+
+ test/Makefile.am     |  14 +++
+ test/test-d1f48f11.c | 283
+ +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 297 insertions(+)
+
+commit 806fd4c2c5164d66d978b0a4c579c157e5cbe766
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Sep 4 09:08:37 2018 +0000
+
+    Fix the issue that '~' wasn't extracted to the proper homedir
+
+    '~' in the filename was extracted to the home directory name in
+    FcConfigFilename() though,
+    this behavior was broken by d1f48f11. this change fixes it back to
+    the correct behavior.
+
+    https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/110
+
+ .gitlab-ci.yml       |  23 ++++-
+ src/fccfg.c          |  20 +++--
+ test/Makefile.am     |  16 ++++
+ test/test-issue110.c | 245
+ +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 293 insertions(+), 11 deletions(-)
+
+commit 8208f99fa1676c42bfd8d74de3e9dac5366c150c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Sep 3 04:56:16 2018 +0000
+
+    Fix the build issue with --enable-static
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/109
+
+ doc/fcstring.fncs       | 12 ++++++++++++
+ fontconfig/fontconfig.h |  4 ++++
+ src/fcint.h             |  4 ----
+ test/test-bz106632.c    | 35 ++++++++++++-----------------------
+ 4 files changed, 28 insertions(+), 27 deletions(-)
+
+commit 844d8709a1f3ecab45015b24b72dd775c13b2421
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Aug 30 17:20:15 2018 +0900
+
+    Bump version to 2.13.1
+
+ README                  | 82
+ +++++++++++++++++++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 82 insertions(+), 4 deletions(-)
+
+commit e62b92231874c1a6c3e2ab9e1019a95db22ea08f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Aug 30 07:04:08 2018 +0000
+
+    Bump the libtool revision
+
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit a059ce315d327ff0465435d446d4e02a6f97614f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 29 07:18:14 2018 +0000
+
+    Add .gitlab-ci.yml
+
+ .gitlab-ci.yml | 34 ++++++++++++++++++++++++++++++++++
+ 1 file changed, 34 insertions(+)
+
+commit a887659706ff5bce6e4ef570dc8447ae75cc9534
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 29 10:01:45 2018 +0000
+
+    Fix distcheck fail
+
+ test/Makefile.am     | 2 +-
+ test/run-test.sh     | 6 +++---
+ test/test-bz106632.c | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+commit 0ce32973c862c3720cd1268cc11dd011b301cc43
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 28 19:22:11 2018 +0900
+
+    Update the issue tracker URL
+
+ README       | 2 +-
+ configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit ddeec818cc6cbf4b09594bc05d2b6e589388753c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 21 03:08:58 2018 +0000
+
+    Fix missing closing bracket in FcStrIsAbsoluteFilename()
+
+    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/96
+
+ src/fcstr.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit a1efb5ea8c76622c7587cb5362e821bff8dcd7c4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 1 08:10:35 2018 +0000
+
+    Fix the build issue with gperf
+
+    GPerf seems not allowing the empty lines though, current recipes
+    are supposed to drop them.
+    but seems not working on some env.
+    So taking the proper way to do that instead of incompatible things
+    against platforms.
+
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 1451f829e750926cec27855eded71c24ac7ac7c6
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Wed Jul 25 16:35:54 2018 -0700
+
+    Fix build with CFLAGS="-std=c11 -D_GNU_SOURCE"
+
+ src/fcxml.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+commit 9f1b92f27f9259aa69e5387656cb7d4c1b305a98
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 25 13:41:47 2018 +0900
+
+    Fix memory leak
+
+ src/fcxml.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 5b277806df6d8776c68b275c227a82dd8433eeae
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 25 12:44:38 2018 +0900
+
+    Drop the redundant code
+
+    "value == FcTypeInteger" won't be true because it was converted to
+    FcTypeDouble earlier
+
+ src/fcxml.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit a1ad5fe2ba3d742f79d601a1149e1456e57ff51e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 25 12:40:17 2018 +0900
+
+    Allocate sufficient memory to terminate with null
+
+ src/fcstr.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 5ea2ab6a3857855dd676388d81d2b4f6f327ae2a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 25 12:39:53 2018 +0900
+
+    Make a call fail on ENOMEM
+
+ src/fcptrlist.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 38569f2f2e2abc0f2a543f48a286e464d5052546
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 08:31:59 2018 +0000
+
+    Fix allocating insufficient memory for terminating null of the string
+
+ src/fcname.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit b1762935c3db2bc611750c61ce9cb38b9008db6b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 08:31:14 2018 +0000
+
+    Fix possibly dereferencing a null pointer
+
+ src/fcmatch.c | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+commit 8e97d745cc21cd2e1459840a63ed13595fcf2acd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 08:21:33 2018 +0000
+
+    Fix a typo
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit efac784b0108d3140d7ec51cf22cb8a4453bd566
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 07:55:40 2018 +0000
+
+    Fix dereferencing null pointer
+
+ src/fccfg.c | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+commit 1ac2218467260cc2f96f202910ba2e1a97291744
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 07:50:20 2018 +0000
+
+    do not pass null pointer to memcpy
+
+ src/fccfg.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+commit f3981a8bcd97a0388bf150ea7c1b4a1015e5e358
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 16:44:03 2018 +0900
+
+    Fix access in a null pointer dereference
+
+ src/fccfg.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 586ac3b6c0a324ae8545e2e6437f62e851daa203
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 07:09:14 2018 +0000
+
+    Fix array access in a null pointer dereference
+
+    FcFontSetFont() accesses fs->fonts in that macro though, there was
+    no error checks
+    if it is null or not.
+    As a result, there was a code path that it could be a null.
+    Even though this is unlikely to see in usual use, it might be
+    intentionally created
+    in a cache.
+
+    So if fs->fonts is a null, we should consider a cache is invalid.
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 51afd09d62c163ae6a13b856ba46b8e851015f26
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 05:51:02 2018 +0000
+
+    Fix unterminated string issue
+
+ src/fccache.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit 37c9c16dadd02edc3d8211a16a940d6fd2356e3b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 04:29:01 2018 +0000
+
+    Fix memory leak
+
+ src/fcxml.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 433718fb77f527a7f8909ea88f03ed2054f88a7d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 04:17:21 2018 +0000
+
+    Fix memory leak
+
+ src/fcstat.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+commit eafa931ff984d13a93343216d3f0fd490270599b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 12:12:17 2018 +0900
+
+    Fix memory leak
+
+ src/fclist.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit 12be7973871371c64df3d38f788fe68766503f64
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 12:08:34 2018 +0900
+
+    Fix memory leaks
+
+ src/fccfg.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 4b1276e24058a2e8b283767fb11dd2d16de7e547
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 11:40:31 2018 +0900
+
+    Fix memory leak
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e9d317755727c6e71fc0a8bff3ad38197f773b89
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jul 19 11:32:50 2018 +0900
+
+    Fix the leak of file handle
+
+ src/fccache.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit d1f48f11d5dffa1d954a1b0abe44ce9e4bfc3709
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Wed Jul 11 15:50:26 2018 -0700
+
+    Return canonicalized paths from FcConfigRealFilename
+
+    FcConfigRealFilename() follows symlinks, but the link may be relative
+    to the
+    directory containing the link.  For example, on my system, I have
+    this file:
+
+    /etc/fonts/conf.d/99-language-selector-zh.conf ->
+        ../conf.avail/99-language-selector-zh.conf
+
+    Since /etc/fonts/conf.d is probably not in PATH, open()ing the file
+    would fail.
+    This change makes FcConfigRealFilename() return the canonicalized
+    filename
+    instead.  So for the example above, it would return:
+
+    /etc/fonts/conf.avail/99-language-selector-zh.conf
+
+    This was causing bad font rendering in Chromium [1] after the
+    regression I
+    introduced in 7ad010e80bdf8e41303e322882ece908f5e04c74.
+
+    [1] https://bugs.chromium.org/p/chromium/issues/detail?id=857511
+
+ src/fccfg.c | 65
+ +++++++++++++++++++++++++++++++++----------------------------
+ src/fcint.h |  3 +++
+ src/fcstr.c | 11 +++++++++++
+ 3 files changed, 49 insertions(+), 30 deletions(-)
+
+commit 48e9e5f4f0e97b12f7923662e06820c7077ae8af
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Jul 16 17:59:45 2018 +0200
+
+    Use FT_HAS_COLOR
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 5a46d572c06f1904ea45b4a24a75fb508c8c9f07
+Author: Matthieu Herrb <matthieu@herrb.eu>
+Date:   Mon Jul 9 19:07:12 2018 +0200
+
+    FcCacheFindByStat(): fix checking of nanoseconds field.
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6cc99d6a82ad67d2f5eac887b28bca13c0dfddde
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Mon Jun 11 23:16:42 2018 -0700
+
+    Fix heap use-after-free
+
+ src/fccache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit f5dd8512bdf9fd8e01c30ae36f593758b29385cf
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 11 17:03:17 2018 +0900
+
+    Remove .uuid when no font files exists on a directory
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106632
+
+ doc/fccache.fncs        |  12 +-
+ fontconfig/fontconfig.h |   4 +
+ src/fccache.c           |  22 ++++
+ src/fcdir.c             |   7 ++
+ src/fchash.c            |  29 +++++
+ src/fcint.h             |   4 +
+ test/Makefile.am        |  17 +++
+ test/run-test.sh        |  15 +++
+ test/test-bz106632.c    | 316
+ ++++++++++++++++++++++++++++++++++++++++++++++++
+ test/test-hash.c        | 187 ++++++++++++++++++++++++++++
+ 10 files changed, 612 insertions(+), 1 deletion(-)
+
+commit 096e8019be595c2224aaabf98da630ee917ee51c
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Fri Jun 8 12:31:15 2018 -0700
+
+    Fix CFI builds
+
+    CFI [1] is a dynamic analysis tool that checks types at runtime.
+    It reports an
+    error when using a function with signature eg. (void (*)(char*)) as
+    (void (*)(void*)).  This change adds some wrapper functions to avoid
+    this issue.
+    In optimized builds, the functions should get optimized away.
+
+    [1] https://clang.llvm.org/docs/ControlFlowIntegrity.html
+
+ src/fccfg.c | 42 ++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 36 insertions(+), 6 deletions(-)
+
+commit d1771cfbd1ca5e5e2c8dcd509e3f8da27cb94c11
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jun 8 21:16:15 2018 +0900
+
+    Update CaseFolding.txt to Unicode 11
+
+ fc-case/CaseFolding.txt | 87
+ ++++++++++++++++++++++++++++++++++++++++++++++---
+ 1 file changed, 83 insertions(+), 4 deletions(-)
+
+commit 3fa83813360bd414f877bac90788ce0348564c9e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 25 15:24:44 2018 +0900
+
+    Add a test case for bz#106618
+
+ test/Makefile.am     |  3 +++
+ test/run-test.sh     | 15 +++++++++++++--
+ test/test-bz106618.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 63 insertions(+), 2 deletions(-)
+
+commit 14c23a5715c529be175d8d6152cabd4ddad4e981
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 25 15:20:10 2018 +0900
+
+    Fix double-free
+
+ src/fcxml.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit 3ea70f936832932fcd9502b0906ee9908bd04978
+Author: Alexander Larsson <alexl@redhat.com>
+Date:   Wed May 23 16:00:01 2018 +0200
+
+    Cache: Remove alias_table
+
+    There is really no need for this anymore
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106618
+
+ src/fccache.c | 15 +++------------
+ src/fccfg.c   | 15 ++-------------
+ src/fcint.h   |  1 -
+ 3 files changed, 5 insertions(+), 26 deletions(-)
+
+commit c42402d0b8ada2472924619fc197a0394fbcd62c
+Author: Alexander Larsson <alexl@redhat.com>
+Date:   Wed May 23 15:15:33 2018 +0200
+
+    Cache: Rewrite relocated paths in earlier
+
+    This changes the rewriting of the FC_FILE values for relocated caches
+    to an earlier stage
+    while reading the cache. This is better, because it means all APIs
+    will report the
+    rewritten paths, not just the once that use the list apis.
+
+    We do this by detecting the relocated case and duplicating the
+    FcPattern and FcPatternElm
+    in an cache allocation (which will die with the cache) and then
+    reusing the FcValueLists
+    from the cache.
+
+    This means that in the rewritten case we will use some more memory,
+    but not the full
+    size of the cache. In a test here I had 800k of relocated caches,
+    but ~200k of wasted
+    on duplicating the objects.
+
+    This should fix https://bugs.freedesktop.org/show_bug.cgi?id=106618
+
+ src/fccfg.c   | 44 +++++++++++++++++++++++++++---------
+ src/fcint.h   |  5 ++++-
+ src/fclist.c  | 36 ------------------------------
+ src/fcmatch.c | 34 ----------------------------
+ src/fcpat.c   | 71
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
+ 5 files changed, 106 insertions(+), 84 deletions(-)
+
+commit a63b9c622e240ec0d8f9d83d286db1b55849f374
+Author: Alexander Larsson <alexl@redhat.com>
+Date:   Wed May 23 15:08:12 2018 +0200
+
+    Add FcCacheAllocate() helper
+
+    This lets you allocate a chunk of memory that will be freed when
+    the cache
+    is freed.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106618
+
+ src/fccache.c | 36 ++++++++++++++++++++++++++++++++++++
+ src/fcint.h   |  4 ++++
+ 2 files changed, 40 insertions(+)
+
+commit 94080c3d48686117b83acddf516258647b571f03
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 25 14:02:58 2018 +0900
+
+    Fix -Wstringop-truncation warning
+
+ src/fcmatch.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+commit 684c3ce6850c4168e127ea84432e7a9006296ff4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 25 13:51:10 2018 +0900
+
+    Fix leaks
+
+ src/fcxml.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+commit f098adac54ab86b75a38f2d23fa706a1348f55ba
+Author: Chris Lamb <chris@chris-lamb.co.uk>
+Date:   Tue May 15 22:11:24 2018 +0200
+
+    Ensure cache checksums are deterministic
+
+    Whilst working on the Reproducible Builds[0] effort, we noticed that
+    fontconfig generates unreproducible cache files.
+
+    This is due to fc-cache uses the modification timestamps of each
+    directory in the "checksum" and "checksum_nano" members of the
+    _FcCache
+    struct. This is so that it can identify which cache files are valid
+    and/or require regeneration.
+
+    This patch changes the behaviour of the checksum calculations
+    to prefer
+    the value of the SOURCE_DATE_EPOCH[1] environment variable over the
+    directory's own mtime. This variable can then be exported by build
+    systems to ensure reproducible output.
+
+    If SOURCE_DATE_EPOCH is not set or is newer than the mtime of the
+    directory, the existing behaviour is unchanged.
+
+    This work was sponsored by Tails[2].
+
+     [0] https://reproducible-builds.org/
+     [1] https://reproducible-builds.org/specs/source-date-epoch/
+     [2] https://tails.boum.org/
+
+ doc/fontconfig-user.sgml |  6 ++++-
+ src/fccache.c            | 59
+ +++++++++++++++++++++++++++++++++++++++++++-----
+ 2 files changed, 58 insertions(+), 7 deletions(-)
+
+commit 0b85e77ede3497b8533b8fcb67d03d8ad174998d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sun May 13 16:21:58 2018 +0900
+
+    Bug 106459 - fc-cache doesn't use -y option for .uuid files
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106459
+
+ src/fccache.c    | 48 +++++++++++++++++++++++++++++++++++++-----------
+ test/run-test.sh | 25 +++++++++++++++++++++++++
+ 2 files changed, 62 insertions(+), 11 deletions(-)
+
+commit cfb21c7d85d2b1fc457dcd644e6b850b5cccf26a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sun May 13 14:48:10 2018 +0900
+
+    Bug 106497 - better error description when problem reading font
+    configuration
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106497
+
+ configure.ac |  2 +-
+ src/fcxml.c  | 20 +++++++++++++++++++-
+ 2 files changed, 20 insertions(+), 2 deletions(-)
+
+commit af964f789762df0b023c8cfd7ea622045892cb54
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 11 22:15:39 2018 +0900
+
+    Add a test case for 90-synthetic.conf
+
+ test/Makefile.am            | 11 ++++++--
+ test/run-test-conf.sh       | 36 ++++++++++++++++++++++++
+ test/test-90-synthetic.json | 68
+ +++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 112 insertions(+), 3 deletions(-)
+
+commit f665852df90cd5a28c3040af8f484999ca3dfa4e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 11 21:39:50 2018 +0900
+
+    Add a testrunner for conf
+
+ configure.ac     |   9 ++
+ test/Makefile.am |   7 ++
+ test/test-conf.c | 328
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 344 insertions(+)
+
+commit 307639cff143341cb10273db1a19264ba28b247e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 11 20:48:30 2018 +0900
+
+    Bug 43367 - RFE: iterator to peek objects in FcPattern
+
+    Add various APIs to obtain things in FcPattern through the iterator
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=43367
+
+ doc/fcpattern.fncs      | 111 ++++++++++++++++++++++-
+ fontconfig/fontconfig.h |  33 +++++++
+ src/fcdbg.c             |  15 ++--
+ src/fcdefault.c         |  32 ++++---
+ src/fcformat.c          |  22 ++---
+ src/fcint.h             |   9 ++
+ src/fcpat.c             | 233
+ +++++++++++++++++++++++++++++++++++++++---------
+ 7 files changed, 372 insertions(+), 83 deletions(-)
+
+commit 454923709a1a1e480554c400e053aea9a1ba951a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu May 10 22:01:29 2018 +0900
+
+    Change the emboldening logic again
+
+    enable emboldening when request was >= bold and font was <= medium
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106460
+
+ conf.d/90-synthetic.conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 730deada8cf609157d07b7c2bf2985672614c4c0
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Tue Apr 24 11:15:58 2018 -0700
+
+    Add FONTCONFIG_SYSROOT environment variable
+
+ doc/fontconfig-user.sgml | 4 ++++
+ src/fccfg.c              | 5 ++++-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+commit c78afa906699933e87889895ca2039887943b639
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 19 11:45:45 2018 +0900
+
+    Fix typo in doc
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=106128
+
+ doc/fontconfig-user.sgml | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+commit 7ad010e80bdf8e41303e322882ece908f5e04c74
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Wed Apr 11 17:24:43 2018 -0700
+
+    Use realfilename for FcOpen in _FcConfigParse
+
+    realfilename is the file name after sysroot adjustments.  It should
+    be used
+    instead of filename in the call to FcOpen() which forwards the name
+    directly to
+    open().
+
+    Though I don't explicitly request a sysroot, I was getting error
+    messages saying
+    "failed reading config file".  This CL fixes the error spam.
+
+ src/fcxml.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit c60ed9ef66e59584f8b54323018e9e6c69925c7e
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Wed Apr 11 11:39:56 2018 -0700
+
+    Fix undefined-shift UBSAN errors
+
+    The expression "1 << 31" will cause UBSAN to complain with this
+    error message:
+    runtime error: left shift of 1 by 31 places cannot be represented
+    in type 'int'
+
+    The same operation on unsigned types is fine, however.  This CL
+    replaces the
+    strings "1 <<" with "1U <<".
+
+ fc-lang/fc-lang.c |  2 +-
+ src/fcfreetype.c  | 10 +++++-----
+ src/fcint.h       |  2 +-
+ src/fclang.c      | 10 +++++-----
+ 4 files changed, 12 insertions(+), 12 deletions(-)
+
+commit a8a6efa805fc03e790214e8a0bc55843a258d774
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Sat Mar 31 19:19:36 2018 +0200
+
+    Share name-mapping across instances
+
+    Continuation of previous commit.
+
+    Makes scanning Voto Serif GX fast again.
+
+ src/fcfreetype.c | 22 ++++++++++++++++------
+ 1 file changed, 16 insertions(+), 6 deletions(-)
+
+commit fa13f8835c2819e693c7250e0d6729e22f0509c2
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Sat Mar 31 18:36:20 2018 +0200
+
+    Fix name scanning
+
+    In 161c738 I switched from linear name scanning to binary searching.
+    That, however, ignored the fact that there might be more than one
+    name table entry for each pair we want to query.
+
+    To fix that and retain bsearch, I now get all name entries first,
+    sort them, and use for bsearching.
+
+    This fixes https://bugs.freedesktop.org/show_bug.cgi?id=105756
+
+    This makes scaning Voto Serif GX twice slower though, since we are
+    creating and sorting the list for each instance. In the next commit,
+    I'll share this list across different instances to fix this.
+
+ src/fcfreetype.c | 293
+ +++++++++++++++++++++++++++++++++++--------------------
+ 1 file changed, 185 insertions(+), 108 deletions(-)
+
+commit 31269e3589e0e6432d12f55db316f4c720a090b5
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 28 18:54:37 2018 +0900
+
+    Do not ship fcobjshash.h
+
+ src/Makefile.am | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+commit 2cf2e79cb66e29b97bd640a565e4817022f6fdb5
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 28 18:53:52 2018 +0900
+
+    Fix make check fail when srcdir != builddir.
+
+ test/Makefile.am | 16 +++++++---------
+ test/run-test.sh |  3 ++-
+ 2 files changed, 9 insertions(+), 10 deletions(-)
+
+commit 58f52853d5689e897525a5926c1a222340d3f404
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Mar 15 07:51:06 2018 -0700
+
+    Minor: fix warnings
+
+ test/test-name-parse.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 2938e4d72da40f6bb0d22086c519a9852a820f40
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 15 12:54:02 2018 +0900
+
+    call setlocale
+
+ fc-cache/fc-cache.c     | 2 ++
+ fc-cat/fc-cat.c         | 2 ++
+ fc-list/fc-list.c       | 2 ++
+ fc-match/fc-match.c     | 2 ++
+ fc-pattern/fc-pattern.c | 2 ++
+ fc-query/fc-query.c     | 2 ++
+ fc-scan/fc-scan.c       | 2 ++
+ 7 files changed, 14 insertions(+)
+
+commit 98eaef69af1350e459bf9c175476d3b772968874
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 15 12:17:52 2018 +0900
+
+    Leave the locale setting to applications
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105492
+
+ fc-conflist/fc-conflist.c |  2 ++
+ src/fccfg.c               | 22 ++--------------------
+ 2 files changed, 4 insertions(+), 20 deletions(-)
+
+commit fb7be6d60586302e89b7bbc894b91cb6cd33fbf3
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 14 21:42:11 2018 +0900
+
+    Add a testcase for FcNameParse
+
+ test/Makefile.am       |  4 +++
+ test/test-name-parse.c | 90
+ ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 94 insertions(+)
+
+commit 4699406a68321179b14fae7412f828e2f37a7033
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 14 18:31:30 2018 +0900
+
+    Add the value of the constant name to the implicit object in the
+    pattern
+
+    For objects which has been changed the object type to FcTypeRange.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105415
+
+ src/fcname.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+commit 923b5be626a6e03fbaeee0b5cd6d0246c2f8f36f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 14 12:35:05 2018 +0900
+
+    Do not override locale if already set by app
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105492
+
+ src/fccfg.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+commit 198358dd8ff858c9e36531a7406ccb2246ae77b7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Mar 12 11:49:58 2018 +0900
+
+    Allow the constant names in the range
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105415
+
+ src/fcname.c | 34 +++++++++++++++++++++++++++++-----
+ 1 file changed, 29 insertions(+), 5 deletions(-)
+
+commit af687139f2866a736f294c7c54f9ea57219a079b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Mar 10 20:47:54 2018 +0900
+
+    Add uuid to Requires.private in .pc only when pkgconfig macro found it
+
+ configure.ac | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+commit 07bd14c5c7fed103020dc9b630d6a254861ada07
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 9 11:55:43 2018 +0900
+
+    Fix the build issue again on MinGW with enabling nls
+
+ src/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit bb50f62b58b5057f80f3775f91fa94b225fc6672
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 8 18:19:32 2018 +0900
+
+    Use the builtin uuid for OSX
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105366
+
+ configure.ac | 19 +++++++++++++++++--
+ 1 file changed, 17 insertions(+), 2 deletions(-)
+
+commit f075ca1aeaedbc288d42a70df5cf2fd069ea0d10
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 6 12:31:12 2018 +0900
+
+    Bump version to 2.13.0
+
+ README                  | 12 ++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  4 ++--
+ 3 files changed, 13 insertions(+), 5 deletions(-)
+
+commit 24b4a57193f89d348402de0f7bf4630ae3b5f5e7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 6 12:31:09 2018 +0900
+
+    Bump the libtool revision
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 8c96285d216e4fec2d83386dfd49030dfc947a4b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 2 13:30:00 2018 +0900
+
+    Initialize an array explicitly
+
+    Patch from Kurt Kartaltepe
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e300d863f564f0b7b52fd6fdc1987afb5c116730
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 2 13:19:38 2018 +0900
+
+    Fix a build issue on MinGW with enabling nls
+
+ src/Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 5d32ee914be7ea3a8bafe73a49786b5ce2c98cfd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 19 13:22:20 2018 +0900
+
+    Add Simplified Chinese translations
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=105123
+
+ po-conf/LINGUAS  |   1 +
+ po-conf/zh_CN.po | 140 +++++++++++++
+ po/LINGUAS       |   1 +
+ po/zh_CN.po      | 608
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 750 insertions(+)
+
+commit 2fc42310cdc679bdc1f2f8f11ababad167c97fdd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Feb 15 22:01:54 2018 +0900
+
+    Bump version to 2.12.93
+
+ README                  | 36 ++++++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 36 insertions(+), 4 deletions(-)
+
+commit 147b083851bd5ba97a17de4496c484c9609a8f52
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Feb 15 22:01:45 2018 +0900
+
+    Add missing files to ship
+
+ its/Makefile.am | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+commit 0394cb7829d16a902e2eebdcc4f00db3774916b8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 5 13:31:00 2018 +0900
+
+    Ensure the user config dir is available in the list of config dirs
+    on the fallback config
+
+ src/fcinit.c | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
+
+commit 34b5c949d51fcc8eafe2301ca8f539f735e31522
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 5 12:47:01 2018 +0900
+
+    Do not mix up font dirs into the list of config dirs
+
+ fc-cache/fc-cache.c | 2 +-
+ src/fccfg.c         | 8 --------
+ src/fcinit.c        | 2 +-
+ src/fcint.h         | 4 ----
+ src/fcxml.c         | 7 +++++--
+ 5 files changed, 7 insertions(+), 16 deletions(-)
+
+commit 5710377301f7193f133103cede00e81a2051eb51
+Author: Olivier Crête <olivier.crete@collabora.com>
+Date:   Thu Feb 1 10:52:40 2018 +0000
+
+    Fix cross-compilation by passing CPPFLAGS to CPP
+
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ef748b39e022ce98d5aa8110d713368cf39f0ebf
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 23 22:27:17 2018 +0900
+
+    Take effects on dir, cachedir, acceptfont, and rejectfont only
+    when loading
+
+    Those elements takes effects immediately during parsing config files
+    so makes them conditional to ignore on scanning.
+
+ src/fcxml.c | 30 +++++++++++++++++-------------
+ 1 file changed, 17 insertions(+), 13 deletions(-)
+
+commit 73cc842d1dd866e4a6fda4aa422cb4a9c7a9832f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jan 15 12:57:05 2018 +0900
+
+    Revert some removal from 7ac6af6
+
+ autogen.sh | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 91f0fd84607efcc7196e5ee232794c055f25511e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sun Jan 14 19:49:06 2018 +0900
+
+    Do not add cflags and libs coming from pkg-config file.
+
+    Using Requires is peferable way.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=104622
+
+ configure.ac     | 10 ++++++++--
+ fontconfig.pc.in |  4 ++--
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+commit 4ff7155f5c96a02f2cd3542e8546c76c632c315a
+Author: Alexander Larsson <alexl@redhat.com>
+Date:   Fri Jan 12 16:52:39 2018 +0100
+
+    FcHashTableAddInternal: Compare against the right key
+
+    We were comparing the passed in key with the ready-to-insert key
+    rather than the key in the hashtable, so if you ever had a hash
+    conflicts we'll never insert the new item.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=101889
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit fd2ad1147ad9565841372e56e6bb939c0f843ac5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Jan 9 10:54:55 2018 +0100
+
+    Fix undefined-behavior signed shifts
+
+ src/fccharset.c  |  6 +++---
+ src/fcfreetype.c |  4 ++--
+ src/ftglue.h     | 12 ++++++------
+ 3 files changed, 11 insertions(+), 11 deletions(-)
+
+commit 7ac6af665ba3e098a097cab869e814bdbe34952d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 9 13:51:31 2018 +0900
+
+    clean up
+
+ autogen.sh   | 85
+ ++++++++++--------------------------------------------------
+ configure.ac |  2 --
+ 2 files changed, 13 insertions(+), 74 deletions(-)
+
+commit 94683a1255c065a7f8e7fadee9de605f3eaf9ac7
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Jan 8 09:55:41 2018 +0000
+
+    Use FT_Done_MM_Var if available
+
+ configure.ac     | 2 +-
+ src/fcfreetype.c | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+commit 97488fd72577a86ffd52bbb42d781bad0dd723cf
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Jan 6 18:53:27 2018 +0900
+
+    export GETTEXTDATADIR to refer the local .its/.loc file instead of
+    using --its option
+
+ Makefile.am                 |  2 +-
+ configure.ac                |  1 +
+ its/Makefile.am             |  6 ++++++
+ {src => its}/fontconfig.its |  0
+ {src => its}/fontconfig.loc |  0
+ po-conf/Makevars            |  4 ++--
+ po-conf/POTFILES.in         | 34 ++++++++++++++++++++++++++++++++++
+ src/Makefile.am             |  5 -----
+ 8 files changed, 44 insertions(+), 8 deletions(-)
+
+commit 030e2e4e9473532de5ef6bf4c7905bdf653dc6ef
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Jan 5 14:33:17 2018 +0000
+
+    Fix leak
+
+ src/fcfreetype.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 9c90f06b405abdc5ae2d92f5b614e0d19d11f783
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jan 5 22:14:58 2018 +0900
+
+    Remove POTFILES.in until new release of gettext is coming...
+
+ po-conf/POTFILES.in | 34 ----------------------------------
+ 1 file changed, 34 deletions(-)
+
+commit b2da36e92265c82e598cdea670ec436f9b592af0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jan 5 22:12:37 2018 +0900
+
+    Use the native ITS support in gettext
+
+    and drop the dependency of itstool.
+    To get this working, need to patch out to fix a crash:
+    http://git.savannah.gnu.org/cgit/gettext.git/commit/?id=a0cab23332a254e3500cac2a3a984472d02180e5
+
+ configure.ac        |  7 -------
+ po-conf/Makevars    |  6 ++++--
+ po-conf/POTFILES.in | 34 ++++++++++++++++++++++++++++++++++
+ po/Makevars         |  2 +-
+ 4 files changed, 39 insertions(+), 10 deletions(-)
+
+commit a2e0ebf3922d4ac682162e63ec7b209ef58f3c7c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jan 5 18:23:08 2018 +0900
+
+    Add files to enable ITS support in gettext
+
+ src/Makefile.am    | 5 +++++
+ src/fontconfig.its | 4 ++++
+ src/fontconfig.loc | 6 ++++++
+ 3 files changed, 15 insertions(+)
+
+commit 6aa0bde5ecd6a545228fc6b59e7e54b8f1eea7eb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jan 5 16:05:58 2018 +0900
+
+    trivial fix
+
+ test/test-migration.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit b8a225b3c3495942480377b7b3404710c70be914
+Author: Tom Anderson <thomasanderson@chromium.org>
+Date:   Wed Jan 3 11:42:45 2018 -0800
+
+    Allow overriding symbol visibility.
+
+    Fontconfig symbols were hardcoded to be either hidden or exported.
+    This patch
+    adds configurable symbol visibility.  This is useful for projects
+    that want to
+    do in-tree fontconfig builds and not export any symbols, otherwise
+    they would
+    conflict with the system library's symbols
+
+    Chromium is a project that does in-tree fontconfig builds, and
+    the workaround
+    currently used is "#define visibility(x) // nothing" [1] and
+    building with
+    "-fvisibility=hidden".
+    [1]
+    https://cs.chromium.org/chromium/src/third_party/fontconfig/BUILD.gn?rcl=ce146f1f300988c960e1eecf8a61b238d6fd7f7f&l=62
+
+ fontconfig/fcprivate.h | 9 ++++++++-
+ src/makealias          | 4 ++--
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+commit 37fb4a989e6243bceebadb8120f458d8d5b82c45
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Jan 3 16:51:18 2018 +0000
+
+    Support FC_WIDTH as double as well
+
+ src/fcfreetype.c | 16 +++++++---------
+ 1 file changed, 7 insertions(+), 9 deletions(-)
+
+commit 1fa9cb78c1120e11e27e2a84f59b3fb239b165df
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Jan 3 16:48:54 2018 +0000
+
+    Remove hack for OS/2 weights 1..9
+
+ src/fcfreetype.c |  8 +-------
+ src/fcweight.c   | 20 +-------------------
+ 2 files changed, 2 insertions(+), 26 deletions(-)
+
+commit d7d40b5aa8216f30a38492bd2bde5884c492c82d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 4 20:42:34 2018 +0900
+
+    Bump version to 2.12.92
+
+ README                  | 33 +++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 33 insertions(+), 4 deletions(-)
+
+commit 3642d71724e7c40f44753c1f2e6d8fb2c88a3e50
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 4 20:23:16 2018 +0900
+
+    Add FcReadLink to wrap up readlink impl.
+
+ src/fccfg.c    |  4 ++--
+ src/fccompat.c | 19 +++++++++++++++++++
+ src/fcint.h    |  5 +++++
+ 3 files changed, 26 insertions(+), 2 deletions(-)
+
+commit 767e3aa7c50c2a707b42d9eda879b1046558bb6f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jan 4 20:32:46 2018 +0900
+
+    Fix compiler warnings
+
+ src/fccfg.c          | 2 +-
+ src/fcdir.c          | 4 ++++
+ src/fcfreetype.c     | 4 ++--
+ test/test-bz131804.c | 1 -
+ 4 files changed, 7 insertions(+), 4 deletions(-)
+
+commit 706535e10715938c10e65e727feb607373ac1a47
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Jan 3 15:59:24 2018 +0000
+
+    Add FcWeightTo/FromOpenTypeDouble()
+
+    No idea why I didn't add these as double to begin with.
+
+ doc/fcweight.fncs       | 42 ++++++++++++++++++++++++++++++++----------
+ fontconfig/fontconfig.h |  6 ++++++
+ src/fcfreetype.c        | 16 ++++++++--------
+ src/fcweight.c          | 24 ++++++++++++++++++------
+ 4 files changed, 64 insertions(+), 24 deletions(-)
+
+commit 97898b1158542d3bc5f8a95fe2aa1829512cceb8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jan 3 22:15:11 2018 +0900
+
+    Fix the mis-ordering of ruleset evaluation in a file with include
+    element
+
+ src/fccfg.c |  8 ++++++--
+ src/fcxml.c | 22 ++++++++++++++++++++++
+ 2 files changed, 28 insertions(+), 2 deletions(-)
+
+commit 5cfd594c71345bcb91a56100fc3bbfef15253a95
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 2 19:04:45 2018 +0900
+
+    do not check the existence of itstool on win32
+
+ configure.ac | 21 ++++++++++++---------
+ 1 file changed, 12 insertions(+), 9 deletions(-)
+
+commit f8e22fd6469cd14fe13ba657b5c5b66a884b614d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Dec 20 12:21:20 2017 -0500
+
+    Put back accidentally removed code
+
+ src/fcmatch.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 6d1d44d5ec5100a3db850dddd7b4e4196e8a5cdb
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Dec 19 15:51:16 2017 -0500
+
+    Let pattern FC_FONT_VARIATIONS override standard axis variations
+
+    Ie. flip the merge order.
+
+ src/fcmatch.c | 20 +++++++++++---------
+ 1 file changed, 11 insertions(+), 9 deletions(-)
+
+commit 650b051a2562ab5813d0671323e00f31cd79b37b
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Dec 19 15:04:25 2017 -0500
+
+    Set font-variations settings for standard axes in variable fonts
+
+    This is the last piece of the puzzle for variable-font support in
+    fontconfig.  This takes care of automatically setting the variation
+    settings when user requests a weight / width / size that has variation
+    in the matched font.
+
+ src/fcmatch.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
+ src/fcpat.c   | 10 ++++++++--
+ 2 files changed, 60 insertions(+), 4 deletions(-)
+
+commit 288d3348122a695615c39d82142d988e56064b9f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Dec 18 23:51:17 2017 -0500
+
+    Minor
+
+ fc-pattern/fc-pattern.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 57ff677b1bd73acbf371955afe8d6399a06d46ac
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Dec 18 21:28:23 2017 -0500
+
+    Remove a debug abort()
+
+    Ouch!
+
+ src/fcmatch.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit aa85a2b3b6b652c079e895865e800e3d9b60a5f5
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Dec 19 12:16:48 2017 +0900
+
+    Try to get current instance of FcConfig as far as possible
+
+ src/fcmatch.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 0b59a65a71b5482aab63a2fe7eff2820f2512941
+Author: Alexander Larsson <alexl@redhat.com>
+Date:   Mon Dec 18 16:17:10 2017 +0100
+
+    fchash: Fix replace
+
+    When we replace a bucket in the hashtable we have to update the
+    next pointer too, or we lose all the other elements that hashed to
+    this key.
+
+ src/fchash.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 7ca28c2fedb34c1db5ee3116d335f15195859db0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Dec 18 21:22:21 2017 -0500
+
+    Don't crash
+
+    Not proper fix necessarily. But fixes this crash:
+    https://bugs.freedesktop.org/show_bug.cgi?id=101889#c81
+
+ src/fcmatch.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e83f8777d555b40127f7035b5639955a70ad7dfd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 21:45:00 2017 +0900
+
+    Disable uuid related code on Win32
+
+ configure.ac  |  9 +++++++--
+ src/fccache.c | 19 ++++++++++++++++++-
+ src/fchash.c  |  4 ++++
+ 3 files changed, 29 insertions(+), 3 deletions(-)
+
+commit 182186e53a38d2c8b82d0a1785f6873f2b54316a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 21:26:29 2017 +0900
+
+    Do not update mtime with creating .uuid
+
+ src/fccache.c    | 26 ++++++++++++++++++++++++++
+ test/run-test.sh | 13 +++++++++++++
+ 2 files changed, 39 insertions(+)
+
+commit c1e48b0c1439007b41887177ef7b34e4d75e3a31
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 20:05:44 2017 +0900
+
+    Add a test case for uuid creation
+
+ test/run-test.sh | 43 +++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 43 insertions(+)
+
+commit 8ab4d679959815feb0c383e1e17953fe1c46091f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 20:05:14 2017 +0900
+
+    Replace uuid in the table properly when -r
+
+ src/fccache.c |  7 ++++++-
+ src/fchash.c  | 37 ++++++++++++++++++++++++++++++++-----
+ src/fcint.h   |  4 ++++
+ 3 files changed, 42 insertions(+), 6 deletions(-)
+
+commit 0378790ca362757061bff83c8a344991f1f829c6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 20:04:13 2017 +0900
+
+    Add missing doc of FcDirCacheCreateUUID
+
+ doc/fccache.fncs | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+commit 57eaf0ba7ea7f88510053688f3c3c4658da83596
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 16:41:04 2017 +0900
+
+    Returns false if key is already available in the table
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit dd21876e64db4eaf592297e97355ffdf87f7d2f6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 12:09:14 2017 +0900
+
+    Update .uuid only when -r is given but not -f.
+
+ fc-cache/fc-cache.c     | 3 +++
+ fontconfig/fontconfig.h | 5 +++++
+ src/fcdir.c             | 2 +-
+ src/fcint.h             | 5 -----
+ 4 files changed, 9 insertions(+), 6 deletions(-)
+
+commit dd1a92911b1abc4c266ad33d88ec8161342f0d69
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Dec 18 11:53:25 2017 +0900
+
+    cleanup files
+
+ test/Makefile.am | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit bad64a7e1f84c982da1f86f45faa10426dfce654
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Dec 14 15:44:20 2017 +0900
+
+    Bump version to 2.12.91
+
+ README                  | 138
+ +++++++++++++++++++++++++++++++++++++++++++++++-
+ configure.ac            |   2 +-
+ fontconfig/fontconfig.h |   2 +-
+ 3 files changed, 138 insertions(+), 4 deletions(-)
+
+commit 1f84aa196d0ed2dae6176e0137eaae4449a6ca7c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Dec 14 15:42:39 2017 +0900
+
+    Bump the libtool revision
+
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 8d02dbbd9784e3e9ae5f45cb96b790645f09fcf6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Dec 14 15:42:22 2017 +0900
+
+    Fix "make check" fail again
+
+ test/Makefile.am | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+commit a6797cd5c2d430d22f689240eb4318f2d91fd677
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Dec 5 21:57:19 2017 +0900
+
+    Fix distcheck error
+
+ test/Makefile.am | 4 ++--
+ test/run-test.sh | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+commit 1b2279d6b5118fc00bc028340d14fe1e345a4ab4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Nov 24 10:53:39 2017 +0530
+
+    thread-safe functions in fchash.c
+
+ src/fchash.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+commit 4758144492cf694b9d762733bc0907c0dad5b34d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 20 17:46:47 2017 +0530
+
+    Fix the testcase for env not enabled
+    PCF_CONFIG_OPTION_LONG_FAMILY_NAMES in freetype
+
+ test/run-test.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit abe91a1694bb6b89c51c7d61af23bf2607c4c4be
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 20 14:33:18 2017 +0530
+
+    Use smaller prime for hash size
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit c4b2787ba41006d60c964438fec17f15d75f03c0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 20 13:46:55 2017 +0530
+
+    cleanup
+
+ doc/fcpattern.fncs | 10 ----------
+ 1 file changed, 10 deletions(-)
+
+commit 5af21201e1bf2daf2bae4b684243bc62dd2c7ee7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 23:30:26 2017 +0900
+
+    Add a testcase for bind-mounted cachedir
+
+ test/run-test.sh | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+
+commit 2f486f6584f3c0d6d1c7eadfbc56cd13a8f3122f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 23:24:24 2017 +0900
+
+    Don't call FcStat when the alias has already been added
+
+    Similar changes to 3a3d6ea applies to fclist and fcmatch.
+
+ src/fclist.c  | 49 ++++++++++++++++++++++---------------------------
+ src/fcmatch.c | 47 ++++++++++++++++++++++-------------------------
+ 2 files changed, 44 insertions(+), 52 deletions(-)
+
+commit 665a5d30443cee9ef0eb977857ed2d19ed9f3cb6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 23:00:31 2017 +0900
+
+    Fix a typo
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6b82c7083565d646b8a08d17dbcb41bd998a5a3c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 23:00:23 2017 +0900
+
+    Fix memory leak
+
+ src/fccache.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit da071b32d41f91856a5e211c1fea7192d33ef09f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 16:34:02 2017 +0900
+
+    update
+
+ git.mk | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+commit 8f88b1c47cb7918aa65ed415f64e04464b1653c9
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 16:10:49 2017 +0900
+
+    abstract hash table functions
+
+ src/Makefile.am |   1 +
+ src/fccache.c   | 241
+ +++++++-------------------------------------------------
+ src/fccfg.c     |  21 ++++-
+ src/fcdir.c     |   2 +-
+ src/fchash.c    | 181 ++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h     |  51 ++++++++++--
+ src/fclist.c    |   6 +-
+ src/fcmatch.c   |   5 +-
+ 8 files changed, 283 insertions(+), 225 deletions(-)
+
+commit 68ff99c4142e25989409f465e392b1bb3042494d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 15 16:08:30 2017 +0900
+
+    cleanup
+
+ fontconfig/fontconfig.h |  3 ---
+ src/fcpat.c             | 30 ------------------------------
+ 2 files changed, 33 deletions(-)
+
+commit b01bf646f110cacfaeb5fe097475d3582fa6cd33
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Oct 3 13:08:54 2017 +0900
+
+    Destroy the alias and UUID tables when all of caches is unloaded
+
+    When a cache contains no fonts, it will be unloaded immediately.
+    Previously the certain alias and UUID entries will be purged at that
+    time though,
+    this doesn't work when the targeted directory has sub-directories.
+    To avoid the unnecessary cache creation with the md5-based naming,
+    try to keep them
+    as far as possible.
+    Although this way seems not perfectly working if the first directory
+    to look up is like that
+
+ src/fccache.c | 63
+ +++++++++++++++++++++++++----------------------------------
+ 1 file changed, 27 insertions(+), 36 deletions(-)
+
+commit d7133f4ed7071c6ac257e8d4de0e438e22ca0254
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Oct 2 21:17:06 2017 +0900
+
+    Don't call FcStat when the alias has already been added
+
+    We could assume that the targeted location is mapped at the different
+    place
+    when there are in the alias table.
+
+ src/fccfg.c | 21 +++++++--------------
+ 1 file changed, 7 insertions(+), 14 deletions(-)
+
+commit cf5acaed9621990d890a0dfd655494d7242aba26
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Sep 23 18:49:55 2017 +0900
+
+    Replace the path of subdirs in caches as well
+
+ src/fccfg.c | 22 +++++++++++++++++++++-
+ 1 file changed, 21 insertions(+), 1 deletion(-)
+
+commit 6d3b306cbecac22f4e0974c1a6e836289bd522f4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Sep 19 20:21:22 2017 +0900
+
+    Replace the original path to the new one
+
+ src/fclist.c  | 6 +++---
+ src/fcmatch.c | 2 ++
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+commit 6f226ad67e4373fa62359d1a7b94400d200e66ed
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 7 19:43:59 2017 +0900
+
+    Replace the font path in FcPattern to what it is actually located.
+
+ src/fclist.c  | 41 ++++++++++++++++++++++++++++++++++++++++-
+ src/fcmatch.c | 32 ++++++++++++++++++++++++++++++++
+ 2 files changed, 72 insertions(+), 1 deletion(-)
+
+commit 85d9de58ed093ade638b51697fc3a23309e5d5a6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 2 11:02:19 2017 +0100
+
+    Add new API to find out a font from current search path
+
+ doc/fcpattern.fncs      |  10 ++++
+ fontconfig/fontconfig.h |   3 ++
+ src/fccache.c           | 127
+ +++++++++++++++++++++++++++++++++++++++++++++++-
+ src/fcint.h             |   3 ++
+ src/fcpat.c             |  30 ++++++++++++
+ 5 files changed, 171 insertions(+), 2 deletions(-)
+
+commit 7b48fd3dd406b926f0e5240b211f72197ed538a9
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Sep 6 17:01:19 2017 +0900
+
+    Use uuid-based cache filename if uuid is assigned to dirs
+
+ configure.ac    |   8 +++
+ src/Makefile.am |   3 +-
+ src/fccache.c   | 211
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
+ src/fcdir.c     |   1 +
+ src/fcint.h     |   4 ++
+ 5 files changed, 220 insertions(+), 7 deletions(-)
+
+commit 64895e719dd8d18c52a31d66cd189915bc8c00b8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 20 17:20:34 2017 +0530
+
+    Add the check of PCF_CONFIG_OPTION_LONG_FAMILY_NAMES back
+
+    This isn't enabled by default in freetype so need to check it for
+    testsuites
+
+ configure.ac                                          | 13 +++++++++++++
+ test/Makefile.am                                      | 12 +++++++++++-
+ test/{out.expected => out.expected-long-family-names} |  0
+ test/out.expected-no-long-family-names                |  8 ++++++++
+ test/run-test.sh                                      |  2 +-
+ 5 files changed, 33 insertions(+), 2 deletions(-)
+
+commit e73b5dcbf2248b538e06bc92a71700dacbec983b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Nov 16 11:37:36 2017 +0900
+
+    Correct debugging messages to load/scan config
+
+ src/fcxml.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+commit 676d8699cc2e812f02e661842be4221c7549c511
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Nov 16 11:31:02 2017 +0900
+
+    Allow autoreconf through autopoint for gettext things
+
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 2ed243f323e603ac917a236a48b468e9c523da35
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 14 20:55:24 2017 +0900
+
+    Validate cache more carefully
+
+    Reject caches when FcPattern isn't a constant.
+    This is usually unlikely to happen but reported.
+    I've decided to add more validation since this isn't reproducible
+    and easy to have a workaround rather than investigating 'why'.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=103237
+
+ src/fccache.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 12eb7be46610178c74fbe24ae518e20957cda1ea
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 8 22:18:01 2017 +0900
+
+    another workaround to avoid modifying by gettextize...
+
+ autogen.sh | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit 3c55ef4b278be8fff1296af0cd1d3f97388416e4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Nov 8 22:03:49 2017 +0900
+
+    missing an open parenthesis
+
+ fc-cache/fc-cache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 23ba0dc10d5a1415d020043274a3e9608c5c5a39
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 7 15:13:46 2017 +0900
+
+    workaround to avoid modifying by gettextize
+
+ Makefile.am | 3 +--
+ autogen.sh  | 8 +++++++-
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+commit 9a0fcb948fe7346f6c68028b2e54ab600a2a2a6f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 27 15:10:44 2014 +0900
+
+    Add the ruleset description support
+
+    Trying to address what these configuration files really do.
+    This change allows to see the short description that mention
+    the purpose of the content in the config file and obtain
+    them through API.
+
+    This change also encourage one who want to make some UI for
+    the user-specific configuration management. it is the main
+    purpose of this change for me though.
+
+    Aside from that, I've also made programs translatable. so
+    we see more dependencies on the build time for gettext,
+    and itstool to generate PO from xml.
+
+ Makefile.am                       |  14 +-
+ autogen.sh                        |  13 +-
+ conf.d/10-autohint.conf           |   5 +
+ conf.d/10-hinting-full.conf       |   6 +
+ conf.d/10-hinting-medium.conf     |   6 +
+ conf.d/10-hinting-none.conf       |   6 +
+ conf.d/10-hinting-slight.conf     |   6 +
+ conf.d/10-no-sub-pixel.conf       |   5 +
+ conf.d/10-scale-bitmap-fonts.conf |   4 +
+ conf.d/10-sub-pixel-bgr.conf      |   5 +
+ conf.d/10-sub-pixel-rgb.conf      |   5 +
+ conf.d/10-sub-pixel-vbgr.conf     |   5 +
+ conf.d/10-sub-pixel-vrgb.conf     |   5 +
+ conf.d/10-unhinted.conf           |   5 +
+ conf.d/11-lcdfilter-default.conf  |   5 +
+ conf.d/11-lcdfilter-legacy.conf   |   5 +
+ conf.d/11-lcdfilter-light.conf    |   5 +
+ conf.d/20-unhint-small-vera.conf  |   5 +
+ conf.d/25-unhint-nonlatin.conf    |   4 +
+ conf.d/30-metric-aliases.conf     |   5 +
+ conf.d/40-nonlatin.conf           |   5 +
+ conf.d/45-generic.conf            |   6 +
+ conf.d/45-latin.conf              |   5 +
+ conf.d/49-sansserif.conf          |   5 +
+ conf.d/50-user.conf               |   5 +
+ conf.d/51-local.conf              |   5 +
+ conf.d/60-generic.conf            |   5 +
+ conf.d/60-latin.conf              |   5 +
+ conf.d/65-fonts-persian.conf      |   4 +
+ conf.d/65-khmer.conf              |   4 +
+ conf.d/65-nonlatin.conf           |   5 +
+ conf.d/69-unifont.conf            |   4 +
+ conf.d/70-no-bitmaps.conf         |   5 +
+ conf.d/70-yes-bitmaps.conf        |   5 +
+ conf.d/80-delicious.conf          |   4 +
+ conf.d/90-synthetic.conf          |   4 +
+ configure.ac                      |  17 +
+ doc/fcconfig.fncs                 |  35 ++
+ fc-cache/fc-cache.c               |  80 +++--
+ fc-cat/fc-cat.c                   |  46 +--
+ fc-conflist/Makefile.am           |  60 ++++
+ fc-conflist/fc-conflist.c         | 142 ++++++++
+ fc-conflist/fc-conflist.sgml      | 135 ++++++++
+ fc-list/fc-list.c                 |  40 ++-
+ fc-match/fc-match.c               |  46 +--
+ fc-pattern/fc-pattern.c           |  36 +-
+ fc-query/fc-query.c               |  36 +-
+ fc-scan/fc-scan.c                 |  30 +-
+ fc-validate/Makefile.am           |   2 +-
+ fc-validate/fc-validate.c         |  42 ++-
+ fontconfig/fontconfig.h           |  25 +-
+ fonts.conf.in                     |   5 +
+ git.mk                            |  15 +
+ local.conf                        |   5 +
+ po-conf/ChangeLog                 |  12 +
+ po-conf/LINGUAS                   |   1 +
+ po-conf/Makevars                  |  78 +++++
+ po-conf/POTFILES.in               |   0
+ po/ChangeLog                      |  12 +
+ po/LINGUAS                        |   1 +
+ po/Makevars                       |  78 +++++
+ po/POTFILES.in                    |  11 +
+ src/Makefile.am                   |   4 +-
+ src/fccfg.c                       | 675
+ ++++++++++++++++++++++++--------------
+ src/fcdbg.c                       |  10 +-
+ src/fcinit.c                      |   1 +
+ src/fcint.h                       | 113 ++++++-
+ src/fcptrlist.c                   | 198 +++++++++++
+ src/fcxml.c                       | 179 +++++++---
+ 69 files changed, 1916 insertions(+), 449 deletions(-)
+
+commit 0c149259e4cc8070f6c8bf149290abb1367f340a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Nov 7 14:46:10 2017 +0900
+
+    doc: trivial update
+
+ doc/fcfreetype.fncs | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 14d70d3a8ae6f2652305daeb019e518f7e0c505b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 21 17:06:17 2017 +0900
+
+    Bump version to 2.12.6
+
+ README                  | 22 ++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 22 insertions(+), 4 deletions(-)
+
+commit 3f96450be0291e4903ebccf601e5af46b55cd193
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 21 17:05:51 2017 +0900
+
+    Update libtool revision
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit a7953dbf47b30fbbe499ad6a4a97396a7942232a
+Author: Alban Browaeys <alban.browaeys@gmail.com>
+Date:   Mon Oct 16 15:36:58 2017 +0200
+
+    Fixes cleanup
+
+    Remove leftover references to run-test271.sh.
+
+ test/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 90271ae0798dfbdb0d9dce85caf914bee99eca4e
+Author: Alexander Kanavin <alex.kanavin@gmail.com>
+Date:   Wed Oct 11 17:40:09 2017 +0300
+
+    src/fcxml.c: avoid double free() of filename
+
+    It's also freed after bail1, so no need to do it here.
+
+ src/fcxml.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit f4a2a1e577f6d6fe40469fb0ab68eb0b5f42465c
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Oct 11 17:26:52 2017 +0200
+
+    Remove assert
+
+ src/fcfreetype.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit c41c9220181b203d1cf1f6435f6e3735cb7c84ac
+Author: Bastien Nocera <hadess@hadess.net>
+Date:   Thu Oct 5 12:17:59 2017 +0200
+
+    conf: Prefer system emoji fonts to third-party ones
+
+    Prefer the system provided emoji fonts on systems which provide one,
+    such as Windows, MacOS and Android, even if the Emoji One or Emoji Two
+    fonts are installed.
+
+    This also allows free software OSes such as GNOME to prefer the Emoji
+    One font, which is not used in other OSes and therefore has a unique
+    brand identity, by installing them and only them by default.
+
+    Users can use more capable fonts while Emoji One and Emoji Two
+    catch up
+    by installing a font otherwise already used by another system, such as
+    Google's freely redistributable Noto Emoji font.
+
+    https://bugzilla.redhat.com/show_bug.cgi?id=1496761
+
+ conf.d/45-generic.conf | 16 +++++++++-------
+ conf.d/60-generic.conf |  5 +++--
+ 2 files changed, 12 insertions(+), 9 deletions(-)
+
+commit 9fde3461e3aae3afc57ed100dc7784045e591766
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Sep 29 14:33:17 2017 +0900
+
+    Fix a compiler warning
+
+ src/fcdbg.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 071111ea58fa067e5e9349d71aa05ef6d62a0915
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Sep 29 14:29:37 2017 +0900
+
+    cleanup
+
+ test/Makefile.am     |  9 ---------
+ test/out.expected    | 12 ++++++------
+ test/out271.expected |  8 --------
+ test/run-test271.sh  | 24 ------------------------
+ 4 files changed, 6 insertions(+), 47 deletions(-)
+
+commit f504b2d6a149930cbbe745d56713bd88425a87fd
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Sep 28 19:49:05 2017 -0400
+
+    Require freetype >= 2.8.1
+
+    2.8.0 had a bad bug with loading 'avar' table.  Let's update
+    requirement and cleanup
+    fifteen years of ifdefs!
+
+ configure.ac     | 39 +++------------------------------------
+ src/fcfreetype.c | 43 -------------------------------------------
+ 2 files changed, 3 insertions(+), 79 deletions(-)
+
+commit 1580593ecca1db4b4f06d87c38bb52eeeb533b1d
+Merge: 052115a 01f781a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Sep 28 14:52:41 2017 -0400
+
+    Merge branch 'varfonts2'
+
+    https://lists.freedesktop.org/archives/fontconfig/2017-September/006048.html
+
+commit 01f781a9a44c98b9c1330caeb388545db8fe0bb2
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 18:55:50 2017 -0400
+
+    [varfonts] Share lang across named-instances
+
+    Makes VotoSerifGX scanning another 40% faster...  Down to 36ms now.
+
+ src/fcfreetype.c | 35 +++++++++++++++++++++++++----------
+ src/fclang.c     |  6 ++++++
+ src/fcpat.c      |  3 +++
+ 3 files changed, 34 insertions(+), 10 deletions(-)
+
+commit 161c7385477b9520fc4c63e3f09789d217c5cd67
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 18:36:25 2017 -0400
+
+    Use binary-search for finding name table entries
+
+    VotoSerifGX has over 500 named instances, which means it also has
+    over a thousand
+    name table entries.  So we were looking for names for over 500
+    pattern, looking for
+    some thirty different name-ids, and using linear search across the
+    1000 entries!
+
+    Makes scanning VotoSerifGX three times faster.  The rest is probably
+    the lang
+    matching, which can also be shared across named-instances.  Upcoming.
+
+ src/fcfreetype.c | 267
+ +++++++++++++++++++++++++++++--------------------------
+ 1 file changed, 141 insertions(+), 126 deletions(-)
+
+commit 261464e0e2b0348187448fd86cde7d1e36124fc6
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 18:09:31 2017 -0400
+
+    Simplify name-table platform mathcing logic
+
+    There's no "all other platforms", there was just ISO left.
+    Hardcode it in.
+
+ src/fcfreetype.c | 29 +++++------------------------
+ 1 file changed, 5 insertions(+), 24 deletions(-)
+
+commit 55d04e25d613b0b63b2b2c33affb6fae34a0ca01
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 16:54:24 2017 -0400
+
+    Don't convert nameds to UTF-8 unless we are going to use them
+
+ src/fcfreetype.c | 39 ++++++++++++++++++++++-----------------
+ 1 file changed, 22 insertions(+), 17 deletions(-)
+
+commit f99278112d01d77a4b396ab04616bdb4ade21d88
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 16:50:59 2017 -0400
+
+    Whitespace
+
+ src/fcfreetype.c | 18 +++++++++---------
+ 1 file changed, 9 insertions(+), 9 deletions(-)
+
+commit 554041d59679d99e9c5ba0a01c3fa743eef7bd7f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 16:50:30 2017 -0400
+
+    Fix whitespace-trimming loop and empty strings...
+
+ src/fcfreetype.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit a74109a1142a1525a310f95cb44931de545e025f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 16:49:24 2017 -0400
+
+    Move whitespace-trimming code to apply to all name-table strings
+
+    If it's good, it's good for everything!
+
+ src/fcfreetype.c | 23 +++++++++++------------
+ 1 file changed, 11 insertions(+), 12 deletions(-)
+
+commit 869dfe0bdc5efbaca6baf093eeeb9ac3d18c66e7
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 16:26:47 2017 -0400
+
+    [varfonts] Reuse charset for named instances
+
+    This didn't give me the speedup I was hoping for, though I do get
+    around 15% for VotoSerifGX.
+
+ src/fcfreetype.c | 44 +++++++++++++++++++++++++++++++++-----------
+ 1 file changed, 33 insertions(+), 11 deletions(-)
+
+commit bf4d440e7f02f36de37b205092144b335bc40854
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 27 12:31:03 2017 -0400
+
+    Separate charset and spacing code
+
+    For variable-font named-instances we want to reuse the same charset
+    and redo the spacing.
+
+ src/fcfreetype.c | 108
+ ++++++++++++++++++++++++++++++++-----------------------
+ 1 file changed, 64 insertions(+), 44 deletions(-)
+
+commit 052115aa83c9927768ab970443250fb4ed9c0fca
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 21 14:04:10 2017 +0900
+
+    Fix again to keep the same behavior to the return value of
+    FcConfigParseAndLoad
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=102141
+
+ src/fcxml.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 5603e06aeba57cb2c7044c9cc6001d0cef5039f4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 21 14:03:51 2017 +0900
+
+    Revert "Keep the same behavior to the return value of
+    FcConfigParseAndLoad"
+
+    This reverts commit dc56ff80408b16393d645a55788b023f1de27bc9.
+
+ src/fcxml.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+commit 15b5016ccdf236e51caf2480749d534a7f4b9eda
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 20 19:39:59 2017 -0700
+
+    [varfonts] Don't reopen face for each named instance
+
+    Makes scanning of Voto (over 500 named instaces) twice faster.
+
+    Next, avoid charset / lang recalculation for each of those.
+
+ src/fcfreetype.c | 100
+ +++++++++++++++++++++++++++++++------------------------
+ 1 file changed, 56 insertions(+), 44 deletions(-)
+
+commit 2d0063948a446a24ed9b74b5b5a4eb1004b1db8e
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 20 16:25:06 2017 -0700
+
+    [varfonts] Do not set postscriptname for varfont pattern
+
+ src/fcfreetype.c | 87
+ +++++++++++++++++++++++++++++---------------------------
+ 1 file changed, 45 insertions(+), 42 deletions(-)
+
+commit be735d6a6870dde8879ce08b8927bf224b2614a0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 20 16:21:28 2017 -0700
+
+    [varfonts] Skip named-instance that is equivalent to base font
+
+ src/fcfreetype.c | 41 ++++++++++++++++++++++++++++++++++++-----
+ 1 file changed, 36 insertions(+), 5 deletions(-)
+
+commit 8183194ae39c43708e60458e94faf73d55b4ec4a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 20:14:33 2017 -0400
+
+    [varfonts] Don't set style for variable-font pattern
+
+ src/fcfreetype.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 131219f9e54fe576c986f80aecc3b1d92c27bb09
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 19:27:24 2017 -0400
+
+    [varfonts] Comment
+
+ src/fcfreetype.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+commit e85afde2d68574eda904e934ba2e484647606bf4
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 15:04:21 2017 -0400
+
+    [varfonts] Minor
+
+ src/fcfreetype.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit 5ee9c38df7708dfc544973fb7617231eb314b9b9
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 15:03:36 2017 -0400
+
+    Revert "[varfonts] Use fvar data even if there's no variation in it"
+
+    This reverts commit 57764e3a36449da25bb829c34cb08c54e9e5de90.
+
+    For regular font pattern we don't look into fvar, so it doesn't make
+    sense to
+    get non-variation from it either.
+
+ src/fcfreetype.c | 25 ++++++++-----------------
+ 1 file changed, 8 insertions(+), 17 deletions(-)
+
+commit 7e1b84100d9fff3409a8c3d1b800911bd0643761
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 14:53:24 2017 -0400
+
+    Minor
+
+ src/fcfreetype.c | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+commit 01f14de4172f4853c2ca05586aeb073edf560ef4
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 14:52:17 2017 -0400
+
+    [varfonts] Use fvar data even if there's no variation in it
+
+ src/fcfreetype.c | 25 +++++++++++++++++--------
+ 1 file changed, 17 insertions(+), 8 deletions(-)
+
+commit 38a6d6fba0c9d5a189ec706a1df4ceb639c83bd1
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 14:33:37 2017 -0400
+
+    Fix possible div-by-zero
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 0ed241cb3047b0a8ab1949d7ac68e7159fe0984d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Sep 18 14:59:49 2017 -0400
+
+    Implement more config bool operations for boolean types
+
+    Meh.
+
+ src/fccfg.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+commit 2544bc5343d84a1f7e793cdae3569150b0ec3d05
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Sat Sep 16 13:45:02 2017 -0400
+
+    Add FcDontCare value to FcBool
+
+    This can be used for FC_VARIABLE=FcDontCare for example, to opt
+    into getting
+    variable fonts for clients that support using them.
+
+ fontconfig/fontconfig.h |  3 ++-
+ src/fccfg.c             |  8 ++++++--
+ src/fcdbg.c             |  5 ++++-
+ src/fcmatch.c           |  8 ++++++--
+ src/fcname.c            | 15 ++++++++++++++-
+ 5 files changed, 32 insertions(+), 7 deletions(-)
+
+commit c2fcde498a8b7dec012a8da8ffa78f72a65ac50d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 15:03:46 2017 -0400
+
+    [varfonts] Map from OpenType to Fontconfig weight values
+
+    Oops.
+
+ src/fcfreetype.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+commit 9efe0689ae130eda75a66ecd853cbe63712378a3
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 14:28:12 2017 -0400
+
+    Adjust emboldening logic
+
+    Old logic was really bad.  If you requested weight=102 and got
+    a medium
+    font (weight=100), it would still enable emboldening...
+
+    Adjust it to only embolden if request was >= bold and font was <=
+    regular.
+
+ conf.d/90-synthetic.conf | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit a79f367c3f8b238fecced75e02c956e565af2597
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 14:26:17 2017 -0400
+
+    Fix range comparision operators implementation
+
+ src/fcrange.c | 13 ++++++-------
+ 1 file changed, 6 insertions(+), 7 deletions(-)
+
+commit 5bbdffd2c2efcf684ae787bfad9d154b2fe05fb4
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 01:51:46 2017 -0400
+
+    Add separate match compare function for size
+
+    Has two distinctions from FcCompareRange():
+    1. As best value, it returns query pattern size, even if it's out
+    of font range,
+    2. Implements semi-closed interval, as that's what OS/2 v5 table
+    defines
+
+ src/fcmatch.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcobjs.h  |  2 +-
+ 2 files changed, 51 insertions(+), 1 deletion(-)
+
+commit 2a41738fd7c88e2b6977673f91bdb8d1f7224cf1
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 01:11:34 2017 -0400
+
+    [fc-match/fc-list/fc-query/fc-scan] Add --brief that is like --verbose
+    without charset
+
+ fc-list/fc-list.c   | 24 ++++++++++++++++++------
+ fc-match/fc-match.c | 20 ++++++++++++++++----
+ fc-query/fc-query.c | 21 +++++++++++++++++----
+ fc-scan/fc-scan.c   | 17 +++++++++++++++--
+ 4 files changed, 66 insertions(+), 16 deletions(-)
+
+commit dc8326d3f116bb2a1425aa68660a332e351b6cb4
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 01:20:56 2017 -0400
+
+    [fc-query] Remove --ignore-blanks / -b
+
+    Blanks are the new black, err, dead!
+
+ fc-query/fc-query.c | 20 +++++---------------
+ 1 file changed, 5 insertions(+), 15 deletions(-)
+
+commit 2db7ca7d5801ba4d3024abedc7d1f11a684879da
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Sep 15 01:01:17 2017 -0400
+
+    In RenderPrepare(), handle ranges smartly
+
+    If font claims to support range [100,900], and request is for
+    [250], then
+    return [250] in "rendered" pattern.  Previously was returning
+    [100,900].
+
+    This is desirable for varfonts weight and width, but probably not
+    for size.
+    Will roll back size to return request size always, for non-empty
+    ranges.
+
+ src/fcmatch.c | 51 +++++++++++++++++++++++++++++++++++++--------------
+ 1 file changed, 37 insertions(+), 14 deletions(-)
+
+commit 6a13a21e408d0eead6909db1b13f9a866f254034
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 04:04:56 2017 -0400
+
+    [varfonts] Fetch optical-size for named instances
+
+ src/fcfreetype.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit 0f9bbbcf8f6f8264efb0a2ded4d8d05f3b10f7a4
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 04:01:07 2017 -0400
+
+    [varfonts] Query variable font in FcFreeTypeQueryAll()
+
+    Returns varfont pattern at the end.
+
+ src/fcfreetype.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+commit 585f08715b9405743e4a2559d537fd06fb8b51d5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 03:57:29 2017 -0400
+
+    Fix instance-num handling in collections
+
+    Ouch!
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 83b4161108457019d0d4fbee4ddbce8f2abe869a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 03:35:02 2017 -0400
+
+    [varfonts] Query varfonts if id >> 16 == 0x8000
+
+    If "instance-number" part of face id is set to 0x8000, return
+    a pattern
+    for variable font as a whole.  This might have a range for weight,
+    width,
+    and size.
+
+    If no variation is found, NULL is returned.
+
+    Not hooked up to FcQueryFaceAll() yet.  For now, can be triggered
+    using
+    fc-query -i 0x80000000
+
+ src/fcfreetype.c | 83
+ ++++++++++++++++++++++++++++++++++++++++++++++----------
+ 1 file changed, 69 insertions(+), 14 deletions(-)
+
+commit d3a7c3ce697a8ceb8042bf5bea11c38ac8990553
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 03:31:48 2017 -0400
+
+    [varfonts] Change FC_WEIGHT and FC_WIDTH into ranges
+
+ src/fcobjs.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit f034c86756d45bed61b86310d9e4e77db2d05df3
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 03:29:20 2017 -0400
+
+    Print ranges as closed as opposed to half-open
+
+    There's nothing assymetrical about how we match them.  Previously we
+    "considered"
+    them half-open because the OS/2 spec had usLowerOpticalPointSize
+    as inclusive
+    and usUpperOpticalPointSize as exclusive.  But we do not respect that.
+
+    Note that the parsing code accepts both anyway, because of the way
+    our sscanf()
+    usage is written...
+
+ src/fcdbg.c  | 2 +-
+ src/fcname.c | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+commit a4bd5b7c7a06fe39d1461f9be098af37d364dcc2
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 03:27:03 2017 -0400
+
+    [varfonts] Change id argument in FcFreeTypeQuery* to unsigned int
+
+    Going to use the top bit to query varfonts.
+
+ fc-query/fc-query.c     |  6 +++---
+ fontconfig/fcfreetype.h |  2 +-
+ fontconfig/fontconfig.h |  4 ++--
+ src/fcfreetype.c        | 20 ++++++++++----------
+ 4 files changed, 16 insertions(+), 16 deletions(-)
+
+commit 819d3a5541b3903bda5d1299d48a6760379cac72
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 12:21:05 2017 -0400
+
+    [varfonts] Add FC_VARIABLE
+
+    For now, we mark all fonts as non-variable.
+
+ fontconfig/fontconfig.h | 1 +
+ src/fcdefault.c         | 1 +
+ src/fcfreetype.c        | 3 +++
+ src/fcmatch.c           | 1 +
+ src/fcobjs.h            | 1 +
+ 5 files changed, 7 insertions(+)
+
+commit 80e155c1c042d080772447d92c146501662ab85e
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 10:39:20 2017 -0400
+
+    [varfonts] Add FC_FONT_VARIATIONS
+
+    This is for clients to passthru font variation settings.  Modeled
+    similar to FC_FONT_FEATURES.  Each element value is for one axis
+    settings, eg. "abcd=2.3" where 'abcd' is the OpenType Font Variations
+    axis tag.
+
+    Needs docs update.
+
+ fontconfig/fontconfig.h | 1 +
+ src/fcobjs.h            | 1 +
+ 2 files changed, 2 insertions(+)
+
+commit de00bdb01f1c879b4d55d5f7ef31dfea0049a34b
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 02:36:33 2017 -0400
+
+    Indent
+
+ src/fcfreetype.c | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
+
+commit 66f082451d8bd3ae781f6a570c20456d822dd2f1
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 13 02:26:25 2017 -0400
+
+    Check instance-index before accessing array
+
+    Ouch!
+
+ src/fcfreetype.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+commit b6440cbd7fbf965c8f70783bbdc93d592ac12b4e
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 19:18:59 2017 -0400
+
+    In FcSubstituteDefault(), handle size range
+
+    Takes the midpoint...
+
+ src/fcdefault.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+commit b4813436a3bea1945f44f3bf75a4eb02de8d0303
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 19:08:36 2017 -0400
+
+    Rewrite FcCompareRange()
+
+    Much simpler now.
+
+ src/fcmatch.c | 39 ++++++++++++++++++++-------------------
+ 1 file changed, 20 insertions(+), 19 deletions(-)
+
+commit e7a0a0a99938deb798c007343f01fb751bc9cd3b
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 18:55:03 2017 -0400
+
+    Rename FcCompareSizeRange() to FcCompareRange()
+
+ src/fcmatch.c | 4 ++--
+ src/fcobjs.h  | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+commit 7519c567e13f476c64fe1938fedd0033e7e70833
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 18:52:49 2017 -0400
+
+    Remove FcCompareSize()
+
+    Use FcCompareNumber().  The FcCompareSize() returns 0 ("perfect
+    match")
+    if v2 is zero.  I cannot think of a use-case for this.  The code
+    has been
+    there from initial commit in 2002.  I suppose back then Keith had
+    a use
+    for size=0 to mean scalable or something.  Anyway, remove and see.
+
+ src/fcmatch.c | 34 ----------------------------------
+ src/fcobjs.h  |  2 +-
+ 2 files changed, 1 insertion(+), 35 deletions(-)
+
+commit 6eb7e5ae811cabbbd3476f8fc392f119a3d7cec5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 18:00:43 2017 -0400
+
+    Accept NULL in for spacing in FcFreeTypeCharSetAndSpacing()
+
+ src/fcfreetype.c | 29 ++++++++++++++++-------------
+ 1 file changed, 16 insertions(+), 13 deletions(-)
+
+commit 0757556ddfdce26e73df12459068464224116150
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Sep 20 13:07:02 2017 -0700
+
+    Document FcFreeTypeQueryAll()
+
+ doc/fcfreetype.fncs | 31 +++++++++++++++++++++++++++++--
+ 1 file changed, 29 insertions(+), 2 deletions(-)
+
+commit 2084b76bea78f9a41349de57d76134efd5174d96
+Author: Florian Müllner <fmuellner@gnome.org>
+Date:   Fri Sep 15 22:52:52 2017 +0200
+
+    build: Remove references to deleted file
+
+    Commit cc67d7df17 removed 30-urw-aliases.conf, so don't try to
+    install it.
+
+ conf.d/Makefile.am | 2 --
+ 1 file changed, 2 deletions(-)
+
+commit cc67d7df172431cb345ed42c27eb852e2ee65ae2
+Author: David Kaspar [Dee'Kej] <dkaspar@redhat.com>
+Date:   Fri Sep 1 11:05:16 2017 +0200
+
+    conf.d: Drop aliases for (URW)++ fonts
+
+      They have become a part of (URW)++ upstream release now:
+      https://github.com/ArtifexSoftware/urw-base35-fonts/tree/master/fontconfig
+
+ conf.d/30-metric-aliases.conf | 29 +++--------------------------
+ conf.d/30-urw-aliases.conf    | 33 ---------------------------------
+ 2 files changed, 3 insertions(+), 59 deletions(-)
+
+commit 7e74366f56508d0f312c2f51f3e9fdccae7d0104
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Sep 14 12:25:22 2017 +0900
+
+    und_zsye.orth: polish to get for NotoEmoji-Regular.ttf
+
+ fc-lang/und_zsye.orth | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 27a6a299e0fefca9c244213784d3c78b34281cd5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 16:43:33 2017 -0400
+
+    Add FcFreeTypeQueryAll()
+
+    Like FcFreeTypeQuery(), but adds patterns for all fonts found,
+    including named
+    instances of variable fonts.  If id is -1, then all collection faces
+    are queried.
+    Returns number of fonts added.
+
+    This merges the same face loop that was in fc-query. and fcdir.c.
+
+    Needs documentation update.
+
+ fc-query/Makefile.am    |  2 +-
+ fc-query/fc-query.c     | 88
+ +++++++++++++++----------------------------------
+ fc-scan/fc-scan.c       |  4 +--
+ fontconfig/fontconfig.h |  3 ++
+ src/fcdir.c             | 86
+ +++++++++++------------------------------------
+ src/fcfreetype.c        | 64 ++++++++++++++++++++++++++++++++++-
+ 6 files changed, 114 insertions(+), 133 deletions(-)
+
+commit c524522bb45f71dfeaa8fd1ec277537dd6e85afa
+Merge: 339de16 8b46a51
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 17:10:03 2017 -0400
+
+    Merge branch 'faster'
+
+    Results in 5x to 10x speedup in scanning.
+
+    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=64766
+
+commit 8b46a518bda8ecb3c5e2dfb0c1e5fda99e40aa3e
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 17:08:08 2017 -0400
+
+    Update documentation for removal of blanks
+
+    Patch from Jerry Casiano.
+
+ doc/fcblanks.fncs         | 14 ++++++++------
+ doc/fcconfig.fncs         |  7 ++-----
+ doc/fcfreetype.fncs       | 17 +++++++++--------
+ doc/fontconfig-devel.sgml | 10 ++++++++++
+ 4 files changed, 29 insertions(+), 19 deletions(-)
+
+commit a8bbbfb601b6d0394525262c543a18bd7699b684
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 18:30:43 2017 +0100
+
+    Minor
+
+ src/fcfreetype.c | 21 ++++++++++-----------
+ 1 file changed, 10 insertions(+), 11 deletions(-)
+
+commit 60b2cf8e4cf5036442c345c90fcf43f548d11d28
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 17:40:06 2017 +0100
+
+    Call FT_Get_Advance() only as long as we need to determine font
+    width type
+
+ src/fcfreetype.c | 23 ++++++++++++-----------
+ 1 file changed, 12 insertions(+), 11 deletions(-)
+
+commit ad0a82b8f85535862ba816d469059884564e5c58
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 17:19:42 2017 +0100
+
+    Inline FcFreeTypeCheckGlyph()
+
+ src/fcfreetype.c | 64
+ +++++++++++++++++++++++++-------------------------------
+ 1 file changed, 28 insertions(+), 36 deletions(-)
+
+commit 1af7518583196dc0638ef80ff204936c54f19619
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 17:15:07 2017 +0100
+
+    Simplify advance-width calculations
+
+ src/fcfreetype.c | 34 +++++++++++++---------------------
+ 1 file changed, 13 insertions(+), 21 deletions(-)
+
+commit 6f98286e15a91bf8d76eb2c09f1edf3f1fedc633
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 17:07:23 2017 +0100
+
+    Use inline functions instead of macros for a couple of things
+
+ src/fcfreetype.c | 11 +++++++----
+ src/fcint.h      |  1 -
+ 2 files changed, 7 insertions(+), 5 deletions(-)
+
+commit 15eba74ffe85d13ecafd032fe44bbabe26670f8c
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 17:01:56 2017 +0100
+
+    Use multiplication instead of division
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ac802955cd26ba9175b5be36ca653c0904c9723a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:40:40 2017 +0100
+
+    Remove unneeded check
+
+    FcFreeTypeCheckGlyph() has only one call-site left, and that
+    checks for
+    glyph != 0 already.
+
+ src/fcfreetype.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+commit d7f5332410af2dff387dec9597c4c71ae729747b
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:39:29 2017 +0100
+
+    Move variables to narrower scope and indent
+
+ src/fcfreetype.c | 118
+ +++++++++++++++++++++++++++----------------------------
+ 1 file changed, 58 insertions(+), 60 deletions(-)
+
+commit 894e5675c89cd081dcacbb6c3a0d8b81424c4ad6
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:36:12 2017 +0100
+
+    Mark more parameters FC_UNUSED
+
+ src/fccfg.c      | 12 ++++++------
+ src/fcfreetype.c |  6 +++---
+ 2 files changed, 9 insertions(+), 9 deletions(-)
+
+commit f5bea1e6021bfa7d454ea774fd163039ad2c7650
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:33:53 2017 +0100
+
+    Remove blanks support from fc-scan
+
+ fc-scan/fc-scan.c    | 18 ++++--------------
+ fc-scan/fc-scan.sgml | 14 +-------------
+ 2 files changed, 5 insertions(+), 27 deletions(-)
+
+commit 8f4c4d278d013f6cc69ba7d7bf0f8aed11398dfb
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:31:52 2017 +0100
+
+    Remove blanks facility from the library
+
+    XML parser does not accept it anymore either.
+
+ Makefile.am                    |   2 +-
+ configure.ac                   |   1 -
+ fc-blanks/Makefile.am          |  46 ------------
+ fc-blanks/fc-blanks.py         | 160
+ -----------------------------------------
+ fc-blanks/fcblanks.tmpl.h      |  25 -------
+ fc-blanks/list-unicodeset.html | 119 ------------------------------
+ src/Makefile.am                |   1 -
+ src/fcblanks.c                 | 108 ----------------------------
+ src/fccfg.c                    |  65 +++++++++--------
+ src/fcdir.c                    |  28 +++-----
+ src/fcint.h                    |  15 ----
+ src/fcxml.c                    |  54 --------------
+ 12 files changed, 46 insertions(+), 578 deletions(-)
+
+commit 3bd4dd27bd673950e47ccdfd58b798abc580b6a0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 16:17:17 2017 +0100
+
+    Remove fc-glyphname
+
+ Makefile.am                     |   2 +-
+ configure.ac                    |   1 -
+ fc-glyphname/Makefile.am        |  33 ----
+ fc-glyphname/fc-glyphname.c     | 325
+ ----------------------------------------
+ fc-glyphname/fcglyphname.tmpl.h |  25 ----
+ fc-glyphname/zapfdingbats.txt   | 212 --------------------------
+ src/Makefile.am                 |   3 -
+ 7 files changed, 1 insertion(+), 600 deletions(-)
+
+commit c7ef8808c441c89fe16183fbfdca291f50fc3ec1
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 15:17:34 2017 +0100
+
+    Remove unused variable
+
+ src/fcfreetype.c | 7 -------
+ 1 file changed, 7 deletions(-)
+
+commit 16d779115982012db0c93d8c4c735a9fb7a57dfb
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 15:13:34 2017 +0100
+
+    Remove use of psnames for charset construction
+
+    This is ancient.  No font we care baout uses them.  Kill.
+
+    This also makes fc-glyphname machinery obsolete.  Should be removed.
+
+ src/fcfreetype.c | 179
+ -------------------------------------------------------
+ 1 file changed, 179 deletions(-)
+
+commit 82d6286657dc12ce42a9c67cae1546543e44f89e
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 15:03:57 2017 +0100
+
+    Remove check that cannot fail
+
+ src/fcfreetype.c | 18 ------------------
+ 1 file changed, 18 deletions(-)
+
+commit f309819d77bffaf802bdd9cd227c2a5bcbda0334
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 15:00:55 2017 +0100
+
+    Remove a few unused blanks parameters
+
+    The entire blanks thingy is now unused.  We should remove more of it.
+
+ src/fcfreetype.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+commit e517886dedb4013951325a6b8670c39c2c69c837
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 14:59:26 2017 +0100
+
+    Remove unnecessary check
+
+    Argument advance is never set to NULL coming into this function.
+
+ src/fcfreetype.c | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+commit 5f6c0594f97f53e9b0be8341c790bd97023ef443
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 14:57:03 2017 +0100
+
+    Minor: adjust debug output
+
+    Ignore control chars for purpose of emptiness check.  I *think*
+    U+0000 and U+000D
+    are rendered empty, but since they are not in blanks, for now just
+    ignore them.
+
+ src/fcfreetype.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 659afb2987b5fdc202690678b563ef05acdb9686
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 14:43:16 2017 +0100
+
+    Add back code for choosing strike, and cleanup
+
+    The FT_Select_Size() call is important for bitmap-only fonts.
+    Put it back.  It was removed in
+    e327c4e54544dac5415e8864e80d6b75a0c900fd
+    Remove some unused abstractions.
+
+ src/fcfreetype.c | 46 +++++++++++++++++++---------------------------
+ 1 file changed, 19 insertions(+), 27 deletions(-)
+
+commit cd4043da0dfd61da73473b2f00d5e3a78ad13bec
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 12:22:42 2017 +0100
+
+    Check for non-empty outline for U+0000..U+001F
+
+    See comment for reason.
+
+ src/fcfreetype.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+commit 028b91c781681be077066f1f1e86386f3106792f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Aug 3 17:40:01 2017 +0100
+
+    Don't even check loca for glyph outline detection
+
+    Basically we trust the font cmap table now...
+
+    New numbers:
+
+    behdad:src 0$ time fc-scan ~/fonts/ > after-noloca
+
+    real    0m55.788s
+    user    0m15.836s
+    sys     0m17.008s
+    behdad:src 0$
+    behdad:src 0$ time fc-scan ~/fonts/ > after-noloca
+
+    real    0m24.794s
+    user    0m12.164s
+    sys     0m12.420s
+
+    Before this change it was:
+
+    behdad:src 130$ time fc-scan ~/fonts/ > after
+
+    real    0m24.825s
+    user    0m12.408s
+    sys     0m11.356s
+
+    Not any faster!  I suppose most time is being spent in loading cmap
+    and advances now.
+    I'll see about loading hmtx ourselves.
+
+    With I/O numbers.  Before:
+
+    behdad:src 0$ \time fc-scan ~/fonts/ > after
+    11.66user 12.17system 0:24.03elapsed 99%CPU (0avgtext+0avgdata
+    487684maxresident)k
+    2320inputs+50480outputs (21major+11468549minor)pagefaults 0swaps
+
+    after:
+
+    behdad:src 130$ \time fc-scan ~/fonts/ > after-noloca
+    11.94user 11.99system 0:24.11elapsed 99%CPU (0avgtext+0avgdata
+    487704maxresident)k
+    16inputs+50688outputs (0major+11464386minor)pagefaults 0swaps
+
+    We are definitely doing a lot less I/O.  Surprisingly less in fact.
+    I don't get it.
+
+ src/fcfreetype.c | 109
+ ++++---------------------------------------------------
+ 1 file changed, 7 insertions(+), 102 deletions(-)
+
+commit ab02a49490ec0b0c8fc8f73ee5b4198a174b456d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Aug 3 16:49:49 2017 +0100
+
+    Instead of loading glyphs (with FreeType), just check loca table
+
+    Part of https://bugs.freedesktop.org/show_bug.cgi?id=64766#c47
+
+    This is the approach introduced in
+    https://bugs.freedesktop.org/show_bug.cgi?id=64766#c30
+
+    Testing it with 11GB worth of stuff, before/after:
+
+    behdad:src 130$ time fc-scan ~/fonts/ > before
+
+    real    2m18.428s
+    user    1m17.008s
+    sys     0m20.576s
+
+    behdad:src 0$ time fc-scan ~/fonts/ > after
+
+    real    1m12.130s
+    user    0m18.180s
+    sys     0m19.952s
+
+    Running the after case a second time is significantly faster:
+
+    behdad:src 130$ time fc-scan ~/fonts/ > after
+
+    real    0m24.825s
+    user    0m12.408s
+    sys     0m11.356s
+
+    Next I'm going to try to not even read loca...
+
+ src/fcfreetype.c | 167
+ ++++++++++++++++++++++++++++++++++++-------------------
+ 1 file changed, 111 insertions(+), 56 deletions(-)
+
+commit 339de167c71264c18775d96160d1504192a89d11
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 17:01:57 2017 -0400
+
+    [fc-query] Fix linking order
+
+ fc-query/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit b56207a069be2574df455ede0a6ab61f44d5ca2b
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 13:25:46 2017 -0400
+
+    Remove stray printf()
+
+    Ouch.
+
+ fc-query/fc-query.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit 6fb9b8fe49a2862cccdd25c278f437a620aaac5d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Sep 12 11:42:18 2017 -0400
+
+    Minor
+
+ src/fcfreetype.c | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+commit 4d3410bd08a0f61272ca1dbb1dd27ac8c5f222de
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Sep 9 22:34:36 2017 +0900
+
+    Bump version to 2.12.5
+
+ README                  | 41 +++++++++++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 41 insertions(+), 4 deletions(-)
+
+commit 37339b7b2c804df4306e80a5cf0d33bc11a33be6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Sep 9 22:34:21 2017 +0900
+
+    Update libtool versioning
+
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 36a3ced9495c236beb1676efb8fda4b1292179a7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Sep 9 22:17:16 2017 +0900
+
+    Update docs
+
+ doc/fcconfig.fncs  | 2 +-
+ doc/fcpattern.fncs | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit 92da67a9fcf9fa48ebb40f2032d47291d5427d41
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Aug 25 11:46:53 2017 +0900
+
+    fc-blanks: fall back to the static data available in repo if
+    downloaded data is corrupted
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=102399
+
+ fc-blanks/fc-blanks.py | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+commit 12cf4c17db76bf4e30c0f94f301ac5b3be7e070c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 23 13:39:15 2017 +0900
+
+    Update similar to emoji's
+
+ conf.d/45-generic.conf | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+commit 69918f0eaa2d337611d793ad9ecfd17683d87974
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 23 12:36:15 2017 +0900
+
+    Polish und_zmth.orth more for Cambria Math and Minion Math
+
+ fc-lang/und_zmth.orth | 14 --------------
+ 1 file changed, 14 deletions(-)
+
+commit a7fcaed61e438209080fc34fb579ca59ed9f3d4c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 23 11:21:10 2017 +0900
+
+    Polish und_zmth.orth for Libertinus Math
+
+ fc-lang/und_zmth.orth | 32 --------------------------------
+ 1 file changed, 32 deletions(-)
+
+commit 53c4440ee35d4ac6078cc064df78b7b5b42c4db4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 22 20:37:30 2017 +0900
+
+    Add und_zmth.orth to support Math in lang
+
+ fc-lang/Makefile.am   |   3 +-
+ fc-lang/und_zmth.orth | 190
+ ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 192 insertions(+), 1 deletion(-)
+
+commit ee609da3582f46151dd86b30d473833067e83c39
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 22 20:30:34 2017 +0900
+
+    Fix to work the debugging option on fc-validate
+
+ src/fclang.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit 5efa1137b41e20bfaef7346f79079f38add25572
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 22 17:47:14 2017 +0900
+
+    Accept 4 digit script tag in FcLangNormalize().
+
+ src/fclang.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 651f1227646174b5be0186b4b6cdff3a7134d869
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 15 18:20:15 2017 +0900
+
+    Do not ship fcobjshash.gperf in archive
+
+ src/Makefile.am | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+commit dc56ff80408b16393d645a55788b023f1de27bc9
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sun Aug 13 16:18:35 2017 +0900
+
+    Keep the same behavior to the return value of FcConfigParseAndLoad
+
+    reverting the behavior accidentally changed by 12b750
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=102141
+
+ src/fcxml.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+commit 41bc5eab84fffbb427d929a5dc712348b635122c
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Aug 8 15:34:27 2017 -0700
+
+    Fix weight mapping
+
+    Ouch!
+
+ src/fcweight.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 8b2910319610c90dcba021788b0739cf627c3ade
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 14:22:30 2017 +0100
+
+    Fix warning
+
+ src/fclang.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 484cb300eadf54a1e2248f8bd4e7717d6d3f7d31
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Aug 4 14:13:56 2017 +0100
+
+    Fix sign-difference compare warning
+
+ src/fcfreetype.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 9bb36b42c9df42fb813d5fb3387d515667e859e0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Aug 3 17:52:28 2017 +0100
+
+    Minor
+
+ src/fcfreetype.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 064440d59797b1158badfb9144f3188cda11a791
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Aug 3 11:02:32 2017 +0100
+
+    Ignore 'und-' prefix for in FcLangCompare
+
+    See https://bugs.freedesktop.org/show_bug.cgi?id=94551#c54
+
+    For example, matching for :lang=und-zsye matches emoji font,
+    but searching
+    for :lang=und-xyz wouldn't match an emoji font anymore.  Neither does
+    :lang-und.
+
+ src/fclang.c | 23 ++++++++++++++++++++---
+ 1 file changed, 20 insertions(+), 3 deletions(-)
+
+commit cc8442dec85e9d416436d19eeae1783f2d3008f0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Thu Aug 3 10:36:01 2017 +0100
+
+    Adjust color emoji config some more
+
+    Seems to work now.  Either asking for family emoji, or :lang=und-zsye
+    returns
+    the preferred color emoji font available, or just any color emoji
+    font if none
+    of the preferred ones was found.
+
+ conf.d/45-generic.conf | 35 ++++++++++++++---------------------
+ conf.d/60-generic.conf | 21 +++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 21 deletions(-)
+
+commit 26fdd3e4c6428ef91f9afb40ea14a5e7fd6028e5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Aug 2 16:48:33 2017 +0100
+
+    Remove unneeded codepoints
+
+ fc-lang/und_zsye.orth | 220
+ +-------------------------------------------------
+ 1 file changed, 1 insertion(+), 219 deletions(-)
+
+commit ef0b5f89013cdbb4c1c582aef7ed21fb40354cfd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Aug 2 16:01:22 2017 +0100
+
+    Add more code points to und-zsye.orth
+
+ fc-lang/und_zsye.orth | 123
+ ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 123 insertions(+)
+
+commit 7ef17238361a7e49588924ce7aeb7ad9c3748bd5
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Aug 2 15:41:26 2017 +0100
+
+    Minor
+
+ conf.d/45-generic.conf | 63
+ +++++++++++++++++++++++++++++---------------------
+ conf.d/60-generic.conf |  1 +
+ 2 files changed, 38 insertions(+), 26 deletions(-)
+
+commit 9978203bf16a0dfc1aa1c599989945d561628790
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Aug 2 15:31:15 2017 +0100
+
+    [fc-lang] Allow using ".." instead of "-" in ranges
+
+    Allows copying emoji-data.txt and other Unicode data files intact.
+
+ fc-lang/fc-lang.c     | 5 +++++
+ fc-lang/und_zsye.orth | 2 +-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+commit 1bb8e691bd535859b1795db2554a8b1efb1d0372
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Aug 1 10:50:55 2017 +0100
+
+    Add und-zsye.orth to support emoji in lang
+
+ conf.d/45-generic.conf |  35 +++++++
+ fc-lang/Makefile.am    |   3 +-
+ fc-lang/und_zsye.orth  | 246
+ +++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fclang.c           |   2 +-
+ 4 files changed, 284 insertions(+), 2 deletions(-)
+
+commit 2073477e051e66afa6ce5c447b6ebc75dbe32636
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Aug 2 13:34:01 2017 +0100
+
+    Add EmojiOne Mozilla font
+
+ conf.d/45-generic.conf | 8 ++++++--
+ conf.d/60-generic.conf | 5 +++--
+ 2 files changed, 9 insertions(+), 4 deletions(-)
+
+commit 368fe08f970d7f8d3b49f1350ca14b0915a754b3
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Wed Aug 2 13:04:36 2017 +0100
+
+    Add Twitter Color Emoji
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=94551#c33
+
+ conf.d/45-generic.conf | 4 ++++
+ conf.d/60-generic.conf | 1 +
+ 2 files changed, 5 insertions(+)
+
+commit e5a51c899480c3bd99c36e49d1c24932f6a08810
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Tue Aug 1 14:41:02 2017 +0100
+
+    [fc-query] Support listing named instances
+
+ fc-query/Makefile.am |  2 +-
+ fc-query/fc-query.c  | 46 +++++++++++++++++++++++++++++++++++++---------
+ 2 files changed, 38 insertions(+), 10 deletions(-)
+
+commit d7f3437ade668c60a7e31f93669b73680be6512a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Jul 31 17:17:16 2017 +0100
+
+    Add generic family matching for "emoji" and "math"
+
+    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=94551
+
+ conf.d/45-generic.conf | 67
+ ++++++++++++++++++++++++++++++++++++++++++++++++++
+ conf.d/60-generic.conf | 37 ++++++++++++++++++++++++++++
+ conf.d/Makefile.am     |  4 +++
+ 3 files changed, 108 insertions(+)
+
+commit 241cc869327ec07774ff555e157db1bea73dc485
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Mon Jul 31 15:56:06 2017 +0100
+
+    Pass --pic to gperf
+
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 5b6af242e1eb0a6456fe9ab9a99efa3ba42f83c6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jul 11 15:34:50 2017 +0900
+
+    Fix gcc warnings with enabling libxml2
+
+ src/fcxml.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit db2825eed54496f4e20f7375d71d6a92b27926a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jul 11 13:19:16 2017 +0900
+
+    Bug 101726 - Sans config pulls in Microsoft Serifed font
+
+    Update 65-nonlatin.conf to have better choice of the sans-serif
+    fonts for Chinese
+
+    Patch from Joseph Wang
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=101726
+
+ conf.d/65-nonlatin.conf | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+commit 12b7501bad3ed4d7819b00a27a9c021e7d120aa0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jun 11 17:30:04 2015 +0900
+
+    Add FcConfigParseAndLoadFromMemory() to load a configuration from
+    memory.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=78452
+
+ doc/fcconfig.fncs       |  16 ++++
+ fontconfig/fontconfig.h |   5 ++
+ src/fcxml.c             | 206
+ ++++++++++++++++++++++++++++++------------------
+ 3 files changed, 152 insertions(+), 75 deletions(-)
+
+commit ee2000494c4c8367fe20593709a979d158687855
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jul 28 12:48:40 2015 +0900
+
+    Add FcPatternGetWithBinding() to obtain the binding type of the
+    value in FcPattern.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=19375
+
+ doc/fcpattern.fncs      | 17 +++++++++++++++++
+ fontconfig/fontconfig.h | 12 +++++++++++-
+ src/fcint.h             |  9 +++------
+ src/fcpat.c             | 18 ++++++++++++++++--
+ 4 files changed, 47 insertions(+), 9 deletions(-)
+
+commit 01085e07857cddf382db736a9e061f92f50397d6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 5 17:37:26 2017 +0900
+
+    Bump version to 2.12.4
+
+ README                  | 33 +++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 33 insertions(+), 4 deletions(-)
+
+commit 047b42fccab0dc99726356a9c8c7c50aea806f60
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 5 17:35:28 2017 +0900
+
+    Fix distcheck error
+
+ src/Makefile.am | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+commit c35e8df46dc041596674083772e59d5934635ae2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jul 5 17:20:00 2017 +0900
+
+    Update libtool revision
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e831f12a38b490cb832830a582a54d8647884988
+Author: Josselin Mouette <joss@debian.org>
+Date:   Tue Jun 27 11:34:38 2017 +0200
+
+    Treat C.UTF-8 and C.utf8 locales as built in the C library.
+
+    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=717423
+    https://bugs.freedesktop.org/show_bug.cgi?id=101605
+
+ src/fclang.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 5d8ee5231ab1ea6f36d3103b4de24712c3ae2f64
+Author: Helmut Grohne <helmut@subdivi.de>
+Date:   Tue Jun 27 11:06:14 2017 +0200
+
+    fix cross compilation
+
+    Even though fontconfig's build system tries to build edit-sgml
+    with the
+    build arch compiler, it gets the runes wrong and actually builds
+    it with
+    the host arch compiler. This patch makes it use the right compiler.
+
+    Bug-Debian: https://bugs.debian.org/779461
+    https://bugs.freedesktop.org/show_bug.cgi?id=101554
+
+ doc/Makefile.am | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit 60e1fe550ae5d945c45a7ad04b46ec78da0309aa
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Thu Jun 8 16:13:29 2017 +0200
+
+    FcCharSetFreezeOrig(), FcCharSetFindFrozen(): use all buckets of
+    freezer->orig_hash_table
+
+    As written at:
+
+      https://lists.freedesktop.org/archives/fontconfig/2017-June/005929.html
+
+    I think FcCharSetFreezeOrig() and FcCharSetFindFrozen() should use
+    the %
+    operator instead of & when computing the bucket index for
+    freezer->orig_hash_table, otherwise at most 8 buckets among the 67
+    available (FC_CHAR_SET_HASH_SIZE) are used.
+
+    Another way would be to change FC_CHAR_SET_HASH_SIZE to be of the form
+    2**n -1 (i.e., a power of two minus one). In such a case, the & and %
+    operators would be equivalent.
+
+ src/fccharset.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 7940ada7a89115455b493e64f961e9c3d2cc5045
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 12 13:36:56 2017 +0900
+
+    Add a testcase for Bug#131804
+
+ test/Makefile.am     |   4 ++
+ test/test-bz131804.c | 136
+ +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 140 insertions(+)
+
+commit b0a5b4b48e9c94bcebe902fb88fbe447f2ccd04e
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Thu Jun 8 09:34:53 2017 +0200
+
+    FcLangSetCompare(): fix bug when two charsets come from different
+    "buckets"
+
+    In fcLangCountrySets, it may happen that two charsets for the same
+    language but different territories are found in different FcChar32
+    "buckets" (different "columns" on the same line). This is currently
+    the
+    case for the following pairs:
+
+      mn-cn  and mn-mn
+      pap-an and pap-aw
+
+    The FcLangSetCompare() code so far used to return FcLangDifferentLang
+    instead of FcLangDifferentTerritory when comparing:
+
+      an FcLangSet containing only mn-cn with one containing only mn-mn
+
+    or
+
+      an FcLangSet containing only pap-an with one containing only pap-aw
+
+    This commit fixes this problem.
+
+ src/fclang.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+commit 209619b1a63f415320c8d379efc0525273c7b575
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Wed Jun 7 01:34:51 2017 +0200
+
+    Fix erroneous test on language id in FcLangSetPromote()
+
+    FcLangSetIndex() indicates "not found" with a non-negative return
+    value.
+    Return value 0 doesn't imply "not found", it rather means "language
+    found at index 0 in fcLangCharSets".
+
+ src/fclang.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 4970c7e810fec29b5ad40a595850288f14f48e37
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Tue Jun 6 23:32:28 2017 +0200
+
+    Fix an off-by-one error in FcLangSetIndex()
+
+    This commit fixes a bug that can be reproduced like this:
+      - remove all languages starting with 'a' in fc-lang/Makefile.am (in
+        ORTH's definition);
+      - rebuild fontconfig with this change (-> new fc-lang/fclang.h);
+      - create an FcLangSet 'ls1' that contains at least the first
+      language
+        from fcLangCharSets (i.e., the first *remaining* in lexicographic
+        order); let's assume it is "ba" for the sake of this description;
+      - create an FcLangSet 'ls2' that only contains the language "aa"
+      (any
+        language starting with 'a' should work as well);
+      - check the return value of FcLangSetContains(ls1, ls2);
+
+    The expected return value is FcFalse, however it is FcTrue if you use
+    the code before this commit.
+
+    What happens is that FcLangSetIndex() returns 0, because this is the
+    index of the first slot after the not-found language "aa" in
+    fcLangCharSets (since we removed all languages starting with 'a').
+    However, this index happens to be non-negative, therefore
+    FcLangSetContainsLang() mistakenly infers that the language "aa" was
+    found in fcLangCharSets, and thus calls FcLangSetBitGet(ls1, 0), which
+    returns FcTrue since we've put the first remaining language "ba"
+    in the
+    'ls1' language set.
+
+    The "return -low;" statement previously in FcLangSetIndex() was
+    inconsistent with the final return statement. "return -(low+1);" fixes
+    this inconsistency as well as the incorrect behavior described above.
+
+ src/fclang.c | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+commit 02161ef2d6eda4e9c0ad068058d51a67a09af92f
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Tue Jun 6 11:10:18 2017 +0200
+
+    fc-lang: gracefully handle the case where the last language initial
+    is < 'z'
+
+    FcLangSetIndex() contains code like this:
+
+      low = fcLangCharSetRanges[firstChar - 'a'].begin;
+      high = fcLangCharSetRanges[firstChar - 'a'].end;
+      /* no matches */
+      if (low > high)
+
+    The assumption behind this test didn't hold before this commit, unless
+    there is at least one language name that starts with 'z' (which is
+    thankfully the case in our world :-). If the last language name in
+    lexicographic order starts for instance with 'x', this change ensures
+    that fcLangCharSetRanges['y' - 'a'].begin and
+         fcLangCharSetRanges['z' - 'a'].begin
+    are equal to NUM_LANG_CHAR_SET, in order to make the above assumption
+    correct in all cases.
+
+ fc-lang/fc-lang.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit c37eeb8f1ff2cb8655a27545ca32cc50ab70e8d6
+Author: Florent Rougon <f.rougon@free.fr>
+Date:   Mon Jun 5 10:58:41 2017 +0200
+
+    FcCharSetHash(): use the 'numbers' values to compute the hash
+
+    Before this commit, FcCharSetHash() repeatedly used the address of the
+    'numbers' array of an FcCharSet to compute the FcCharSet hash, instead
+    of the value of each array element. This is not good for even
+    spreading
+    of the FcCharSet objects among the various buckets of the hash table
+    (and should thus reduce performance). This bug appears to have been
+    mistakenly introduced in commit
+    cd2ec1a940888ebcbd323a8000d2fcced41ddf9e (June 2005).
+
+ src/fccharset.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 28139816d62b8444ca61a000a87c71e59fef104d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Jun 5 21:00:36 2017 +0900
+
+    Fix the build failure when srcdir != builddir and have gperf 3.1 or
+    later installed
+
+ src/Makefile.am | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+commit 5c49354a782870d632884174f10c7fb10351c667
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Sat Jun 3 19:02:53 2017 +0900
+
+    Force regenerate fcobjshash.h when updating Makefile
+
+    To avoid a situation of mismatching the declaration of hash function
+
+ src/Makefile.am | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+commit 79058f4e911487275323e93146e1e93ad15afcd8
+Author: Masamichi Hosoda <trueroad@trueroad.jp>
+Date:   Wed Jan 11 20:42:56 2017 +0900
+
+    Bug 99360 - Fix cache file update on MinGW
+
+    On Windows, opened or locked files cannot be removed.
+    Since fontconfig locked an old cache file while updating the file,
+    fontconfig failed to replace the file with updated file on Windows.
+
+    This patch makes fontconfig does not lock the old cache file
+    while updating it on Windows.
+
+ src/fcdir.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+commit 7d949ececdff18a1718eba6b7cb9f63f84486a10
+Author: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+Date:   Wed May 31 21:38:26 2017 +0200
+
+    Fix testing PCF_CONFIG_OPTION_LONG_FAMILY_NAMES (CFLAGS need to
+    be right)
+
+ configure.ac | 16 +++++++++-------
+ 1 file changed, 9 insertions(+), 7 deletions(-)
+
+commit 690f822a1b26b089d86e9843746cab80f3c07fe3
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 31 20:10:00 2017 +0900
+
+    Bump version to 2.12.3
+
+ README                  | 7 ++++++-
+ configure.ac            | 2 +-
+ fontconfig/fontconfig.h | 2 +-
+ 3 files changed, 8 insertions(+), 3 deletions(-)
+
+commit d33be230293978ad3f94b184f2c2770c108269c2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 31 18:25:01 2017 +0900
+
+    Fix make check fail with freetype-2.7.1 and 2.8 with
+    PCF_CONFIG_OPTION_LONG_FAMILY_NAMES enabled.
+
+ configure.ac     | 13 +++++++++++--
+ test/Makefile.am | 10 +++++++---
+ 2 files changed, 18 insertions(+), 5 deletions(-)
+
+commit 3072f14bddfeb0adba52bce26d7b752207a2cffb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 31 16:39:44 2017 +0900
+
+    Bump version to 2.12.2
+
+ README                  | 26 ++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 26 insertions(+), 4 deletions(-)
+
+commit 6c4e11a73b300963ad822838500ecdcb6a50625b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 31 16:39:39 2017 +0900
+
+    Update libtool revision
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ae9900b8d83bf5ddef22b4d49ab033dcae29bb66
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 31 13:55:33 2017 +0900
+
+    Bug 101202 - fontconfig FTBFS if docbook-utils is installed
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=101202
+
+ doc/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 3e4198674dee1c14bec70016ccf0608c69c308cc
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 24 13:11:08 2017 +0900
+
+    Add the description of FC_LANG envvar to the doc
+
+ doc/fontconfig-user.sgml | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+commit 5ca2b1e6dcb8c7d2b4b0c19218933b10f3efd813
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 21 12:25:45 2017 +0900
+
+    Update a bit for the changes in FreeType 2.7.1
+
+    Our test case relies on the outcome of the family property from
+    freetype though,
+    it was changed in 2.7.1:
+
+      - PCF family names are made more `colourful'; they now include the
+        foundry  and information  whether they contain  wide characters.
+        For example,  you no longer get `Fixed' but  rather `Sony Fixed'
+        or `Misc Fixed Wide'.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=47704
+
+ configure.ac         |  9 +++++++++
+ test/Makefile.am     |  4 ++++
+ test/out271.expected |  8 ++++++++
+ test/run-test.sh     |  5 +++--
+ test/run-test271.sh  | 24 ++++++++++++++++++++++++
+ 5 files changed, 48 insertions(+), 2 deletions(-)
+
+commit abdb6d658e1a16410dd1c964e365a3ebd5039e7c
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Mar 1 19:48:02 2017 +0900
+
+    Fix the build issue on GNU/Hurd
+
+    PATH_MAX isn't defined on GNU/Hurd. according to the porting
+    guidelines
+    (https://www.gnu.org/software/hurd/hurd/porting/guidelines.html)
+    allocate a memory dynamically instead of relying on the length of
+    a string with PATH_MAX.
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=97512
+
+ src/fcdefault.c | 34 +++++++++++++++++++++++++++-------
+ src/fcint.h     |  6 ++++++
+ src/fcstat.c    | 12 +++++++++++-
+ 3 files changed, 44 insertions(+), 8 deletions(-)
+
+commit 9878b306f6c673d3d6cd9db487f67eb426cc03df
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Feb 23 21:39:10 2017 +0900
+
+    Fix the build issue with gperf 3.1
+
+    To support the one of changes in gperf 3.1:
+    * The 'len' parameter of the hash function and of the lookup function
+    is now
+      of type 'size_t' instead of 'unsigned int'. This makes it safe to
+      call these
+      functions with strings of length > 4 GB, on 64-bit machines.
+
+ configure.ac | 20 ++++++++++++++++++++
+ src/fcobjs.c |  4 ++--
+ 2 files changed, 22 insertions(+), 2 deletions(-)
+
+commit 1ab5258f7c2abfafcd63a760ca08bf93591912da
+Author: Khem Raj <raj.khem@gmail.com>
+Date:   Wed Dec 14 16:11:05 2016 -0800
+
+    Avoid conflicts with integer width macros from TS 18661-1:2014
+
+    glibc 2.25+ has now defined these macros in <limits.h>
+    https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a
+
+    Create an alias for FC_CHAR_WIDTH for ABI compatibility
+
+    Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+ fontconfig/fontconfig.h | 3 ++-
+ src/fcobjs.h            | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+commit 0e9b2a152729bfd457e656a9258a06cbfdac1bae
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Nov 14 20:14:35 2016 +0900
+
+    Fix FcCacheOffsetsValid()
+
+    Validation fails when the FcValueList contains more than font->num.
+    this logic was wrong because font->num contains a number of the
+    elements
+    in FcPatternElt but FcValue in FcValueList.
+
+    This corrects 7a4a5bd7.
+
+    Patch from Tobias Stoeckmann
+
+ src/fccache.c | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+commit 883b5cf48b0f699ed074b4d9b145b4bbc763b3b3
+Author: Masamichi Hosoda <trueroad@trueroad.jp>
+Date:   Wed Aug 24 23:50:10 2016 +0900
+
+    Update aliases for URW June 2016
+
+    http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=c8342b4a7b6cdcc4cb1261bf2b008f6df257b5c6
+    http://git.ghostscript.com/?p=urw-core35-fonts.git;a=commit;h=79bcdfb34fbce12b592cce389fa7a19da6b5b018
+
+ conf.d/30-metric-aliases.conf | 62
+ +++++++++++++++++++++++++++++++++++--------
+ conf.d/30-urw-aliases.conf    | 13 +++++++--
+ conf.d/45-latin.conf          |  4 +++
+ conf.d/60-latin.conf          |  1 +
+ 4 files changed, 67 insertions(+), 13 deletions(-)
+
+commit 815cc98d6a7df142c8f1a9a2c1120650da278db0
+Author: Masamichi Hosoda <trueroad@trueroad.jp>
+Date:   Wed Aug 24 21:27:32 2016 +0900
+
+    Fix PostScript font alias name
+
+    `Helvetica Condensed' is not PostScript base 35 fonts.
+    `Helvetica Narrow' is PostScript base 35 fonts.
+
+ conf.d/30-metric-aliases.conf | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+commit 094de3037b9e6e040fa0566593620525e534a7cd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Sep 7 11:39:11 2016 +0900
+
+    Don't call perror() if no changes happens in errno
+
+ fc-cat/fc-cat.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+commit 0db7552e001f3589c6372f33e09d511bc565c499
+Author: Alan Coopersmith <alan.coopersmith@oracle.com>
+Date:   Wed Aug 10 23:58:21 2016 -0700
+
+    Correct cache version info in doc/fontconfig-user.sgml
+
+    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+
+ doc/fontconfig-user.sgml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 6b222c52cdede497ffed629853f947948052dfc7
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Aug 5 14:47:02 2016 +0900
+
+    Bump version to 2.12.1
+
+ README                  | 17 +++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 17 insertions(+), 4 deletions(-)
+
+commit 68869149e36ae546ec428f345a552a6ad093e953
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Aug 5 14:45:36 2016 +0900
+
+    Update libtool revision
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 7a4a5bd7897d216f0794ca9dbce0a4a5c9d14940
+Author: Tobias Stoeckmann <tobias@stoeckmann.org>
+Date:   Sat Jun 25 19:18:53 2016 +0200
+
+    Properly validate offsets in cache files.
+
+    The cache files are insufficiently validated. Even though the magic
+    number at the beginning of the file as well as time stamps are
+    checked,
+    it is not verified if contained offsets are in legal ranges or are
+    even pointers.
+
+    The lack of validation allows an attacker to trigger arbitrary free()
+    calls, which in turn allows double free attacks and therefore
+    arbitrary
+    code execution. Due to the conversion from offsets into pointers
+    through
+    macros, this even allows to circumvent ASLR protections.
+
+    This attack vector allows privilege escalation when used with setuid
+    binaries like fbterm. A user can create ~/.fonts or any other
+    system-defined user-private font directory, run fc-cache and adjust
+    cache files in ~/.cache/fontconfig. The execution of setuid binaries
+    will
+    scan these files and therefore are prone to attacks.
+
+    If it's not about code execution, an endless loop can be created by
+    letting linked lists become circular linked lists.
+
+    This patch verifies that:
+
+    - The file is not larger than the maximum addressable space, which
+      basically only affects 32 bit systems. This allows out of boundary
+      access into unallocated memory.
+    - Offsets are always positive or zero
+    - Offsets do not point outside file boundaries
+    - No pointers are allowed in cache files, every "pointer or offset"
+      field must be an offset or NULL
+    - Iterating linked lists must not take longer than the amount
+    of elements
+      specified. A violation of this rule can break a possible endless
+      loop.
+
+    If one or more of these points are violated, the cache is recreated.
+    This is current behaviour.
+
+    Even though this patch fixes many issues, the use of mmap() shall be
+    forbidden in setuid binaries. It is impossible to guarantee with these
+    checks that a malicious user does not change cache files after
+    verification. This should be handled in a different patch.
+
+    Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
+
+ src/fccache.c | 81
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 80 insertions(+), 1 deletion(-)
+
+commit 99645ff9eecbf2178199aa940703fbe8ed275867
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jul 8 14:16:49 2016 +0900
+
+    Bug 96676 - Check range of FcWeightFromOpenType argument
+
+    Fix a crash issue when FcWeightFromOpenType() gets a number more
+    than it expects.
+
+ src/fcweight.c      |  1 +
+ test/Makefile.am    |  4 ++++
+ test/test-bz96676.c | 32 ++++++++++++++++++++++++++++++++
+ 3 files changed, 37 insertions(+)
+
+commit a34db434c6a81f5286af07fabfef874492edb163
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jul 8 11:32:53 2016 +0900
+
+    Fix some errors related to python3
+
+ fc-blanks/fc-blanks.py | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+commit 416cdd9d494fb040cc4f492a9c6ba23ca52ae250
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jul 8 11:14:34 2016 +0900
+
+    Check python installed in autogen.sh
+
+    python is required to build fontconfig from the scratch
+
+ autogen.sh | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+commit 5d74251986ee958cbc457d1f6b3d24d524051273
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jun 23 19:05:04 2016 +0900
+
+    Update CaseFolding.txt to Unicode 9.0
+
+ fc-case/CaseFolding.txt | 91
+ ++++++++++++++++++++++++++++++++++++++++++++++---
+ 1 file changed, 86 insertions(+), 5 deletions(-)
+
+commit 0ed1575917a28c6be56481509660bd783c7b6040
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jun 23 11:18:40 2016 +0900
+
+    Add --with-default-hinting to configure
+
+ conf.d/Makefile.am |  2 +-
+ configure.ac       | 19 +++++++++++++++++++
+ 2 files changed, 20 insertions(+), 1 deletion(-)
+
+commit 505712d1dcc52d410aa37cd2cffbc4ceb5048656
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jun 15 20:10:38 2016 +0900
+
+    Bump version to 2.12.0
+
+ README                  | 22 ++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  4 ++--
+ 3 files changed, 23 insertions(+), 5 deletions(-)
+
+commit add5f7329f2c54304c203e818f38867de3c1e292
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Jun 15 20:10:31 2016 +0900
+
+    Remove unused code
+
+ src/fcfreetype.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+commit 600110ee8c3e9bdd18cd5bc27555d1f1114e4880
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Jun 9 14:22:31 2016 +0900
+
+    Add the static raw data to generate fcblanks.h
+
+    https://bugs.freedesktop.org/show_bug.cgi?id=91406
+
+ fc-blanks/fc-blanks.py         |  21 ++++++--
+ fc-blanks/list-unicodeset.html | 119
+ +++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 137 insertions(+), 3 deletions(-)
+
+commit ea26c5e9f85fb03e89b144878d338d80979a9560
+Author: Erik de Castro Lopo <erikd@mega-nerd.com>
+Date:   Sat May 28 17:44:10 2016 +1100
+
+    Fix a couple of minor memory leaks
+
+    These fixes are needed for the test suite to pass when compiled
+    with Address Sanitizer.
+
+ src/fccache.c       | 2 ++
+ test/test-bz89617.c | 2 ++
+ 2 files changed, 4 insertions(+)
+
+commit 7441dbec0322f24d6f94bf31fc824cc08d3e9025
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri May 27 11:16:09 2016 +0900
+
+    Bug 95481 - Build fails on Android due to broken lconv struct
+
+ src/fcxml.c | 21 ++++++++++++++++-----
+ 1 file changed, 16 insertions(+), 5 deletions(-)
+
+commit 3c2793a32e66fd5bee14da7cdb7db0a3f9128ac1
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu May 26 14:22:29 2016 +0900
+
+    Correct one for the previous change
+
+ conf.d/45-latin.conf | 4 ----
+ 1 file changed, 4 deletions(-)
+
+commit b6cf1bcaf626b5c8e1efdf03006d18fb744d9b72
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 25 12:58:27 2016 +0900
+
+    45-latin.conf: Add some Windows fonts to categorize them properly
+
+    For Serif:
+      Cambria, Constantia, Elephant, MS Serif
+
+    For Sans Serif:
+      Arial Unicode MS, Britannic, Calibri, Candara, Century Gothic,
+      Corbel,
+      Haettenschweiler, MS Sans Serif, Tahoma, Twentieth Century
+
+    For Monospace:
+      Consolas, Fixedsys, Terminal
+
+ conf.d/45-latin.conf | 136
+ +++++++++++++++++++++++++++++++++++++++------------
+ 1 file changed, 104 insertions(+), 32 deletions(-)
+
+commit d15c46d75eda4bc6009770a706d97956b5a7a31d
+Author: Petr Filipsky <philodej@gmail.com>
+Date:   Fri May 20 12:30:44 2016 +0000
+
+    Fix memory leak in FcDirCacheLock
+
+ src/fccache.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 9ab7633f2f752203de75a902c5031b0cf4bbe548
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu May 19 11:11:46 2016 +0900
+
+    Bug 95477 - FcAtomicLock fails when SELinux denies link() syscall
+    with EACCES
+
+    This is an issue on Android M, which denies non-root users access
+    to link().
+
+    Patch from Rodger Combs
+
+ src/fcatomic.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 560506b3bbf2f829d57bdaa17add99367d6dedba
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 7 12:50:22 2016 +0900
+
+    Update URL
+
+ INSTALL | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 0e837ae6ecc475b02d7114dc10480543d6be98ff
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Apr 7 12:01:14 2016 +0900
+
+    Modernize fc-blanks.py
+
+    fc-blanks.py now works on both python2 and 3
+
+ fc-blanks/fc-blanks.py | 27 +++++++++++++++------------
+ 1 file changed, 15 insertions(+), 12 deletions(-)
 
 commit 13087e38ace4f092667ab08617ced1d559f3d2e2
 Author: Akira TAGOH <akira@tagoh.org>
@@ -1466,21 +6532,21 @@ Date:   Fri Jul 25 17:59:26 2014 -0400
 
     Adds new API:
 
-       FcWeightFromOpenType()
-       FcWeightToOpenType()
+            FcWeightFromOpenType()
+            FcWeightToOpenType()
 
- doc/Makefile.am        |  1 +
- doc/fcweight.fncs      | 47 +++++++++++++++++++++++++++
+ doc/Makefile.am         |  1 +
+ doc/fcweight.fncs       | 47 +++++++++++++++++++++++++++
  fontconfig/fontconfig.h |  7 +++++
- src/Makefile.am        |  1 +
- src/fcfreetype.c       | 27 +---------------
- src/fcweight.c                 | 84
+ src/Makefile.am         |  1 +
+ src/fcfreetype.c        | 27 +---------------
+ src/fcweight.c          | 84
  +++++++++++++++++++++++++++++++++++++++++++++++++
  6 files changed, 141 insertions(+), 26 deletions(-)
 
 commit bf9df5ada77469f57101851f6b4e279a4a5ea087
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 25 18:07:10 2014 -0400
+Date:   Fri Jul 25 18:07:10 2014 -0400
 
     Change DemiLight from 65 to 55
 
@@ -1492,7 +6558,7 @@ Date:     Fri Jul 25 18:07:10 2014 -0400
 
 commit be6506ca04ccce10868a8cd51d89e586284d149b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 25 16:24:26 2014 -0400
+Date:   Fri Jul 25 16:24:26 2014 -0400
 
     Add FC_WEIGHT_DEMILIGHT
 
@@ -1501,13 +6567,13 @@ Date:   Fri Jul 25 16:24:26 2014 -0400
 
  doc/fontconfig-user.sgml | 2 ++
  fontconfig/fontconfig.h  | 2 ++
- src/fcfreetype.c        | 8 +++++++-
- src/fcname.c            | 2 ++
+ src/fcfreetype.c         | 8 +++++++-
+ src/fcname.c             | 2 ++
  4 files changed, 13 insertions(+), 1 deletion(-)
 
 commit 9839d0112c6d61ae22bb3f215bffbe88df6781a1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 16:07:13 2014 -0400
+Date:   Thu Jul 24 16:07:13 2014 -0400
 
     Improve / cleanup namelang matching
 
@@ -1529,7 +6595,7 @@ Date:     Thu Jul 24 16:07:13 2014 -0400
 
 commit 874a5491641642f669396c514c3672f6794fdfa7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 15:42:54 2014 -0400
+Date:   Thu Jul 24 15:42:54 2014 -0400
 
     Remove unused regex code
 
@@ -1543,7 +6609,7 @@ Date:     Thu Jul 24 15:42:54 2014 -0400
 
 commit 9a8e812477bd65d2ecfa721819d0555289520401
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 15:37:51 2014 -0400
+Date:   Thu Jul 24 15:37:51 2014 -0400
 
     Use lang=und instead of lang=xx for "undetermined"
 
@@ -1554,7 +6620,7 @@ Date:     Thu Jul 24 15:37:51 2014 -0400
 
 commit 76151ceaf3417a987ae2c36b247ca82f50d857f6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 15:34:20 2014 -0400
+Date:   Thu Jul 24 15:34:20 2014 -0400
 
     Ouch, fix buffer
 
@@ -1563,7 +6629,7 @@ Date:     Thu Jul 24 15:34:20 2014 -0400
 
 commit aeba5bf4b69f8b559cb909df12d0a636e6054325
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 15:28:09 2014 -0400
+Date:   Thu Jul 24 15:28:09 2014 -0400
 
     Decode MacRoman encoding in name table without iconv
 
@@ -1577,7 +6643,7 @@ Date:     Thu Jul 24 15:28:09 2014 -0400
 
 commit 07a0f511b13a872824c2c57251b7e47ee7df1354
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 24 15:01:57 2014 -0400
+Date:   Thu Jul 24 15:01:57 2014 -0400
 
     Call FcInitDebug from FcFreeTypeQueryFace
 
@@ -1586,7 +6652,7 @@ Date:     Thu Jul 24 15:01:57 2014 -0400
 
 commit a5641cfb2472a92a64858d00525ae3b0fc0ae2a4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jul 23 13:21:05 2014 -0400
+Date:   Wed Jul 23 13:21:05 2014 -0400
 
     Revert "Symlinks fix for DESTDIR"
 
@@ -1600,7 +6666,7 @@ Date:     Wed Jul 23 13:21:05 2014 -0400
 
 commit fd5667b42c253da9c4c5502f53b5c0fb7e0f589e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jul 23 11:57:31 2014 -0400
+Date:   Wed Jul 23 11:57:31 2014 -0400
 
     Symlinks fix for DESTDIR
 
@@ -1612,7 +6678,7 @@ Date:     Wed Jul 23 11:57:31 2014 -0400
 
 commit 107b44f50b6818288ad70608fbe4ec3fd1a7119f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jul 23 19:17:26 2014 +0900
+Date:   Wed Jul 23 19:17:26 2014 +0900
 
     Don't add duplicate lang
 
@@ -1625,7 +6691,7 @@ Date:     Wed Jul 23 19:17:26 2014 +0900
 
 commit 342b908b9696a3f1cf1a45ddd779f3a17d6f9142
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Jul 19 16:33:49 2014 -0400
+Date:   Sat Jul 19 16:33:49 2014 -0400
 
     More mingw32 MemoryBarrier() fixup
 
@@ -1634,7 +6700,7 @@ Date:     Sat Jul 19 16:33:49 2014 -0400
 
 commit 6781c6baef062eeea5b5b68e4a9c31ea6cd7539b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 11 12:19:39 2014 -0400
+Date:   Fri Jul 11 12:19:39 2014 -0400
 
     Update mingw32 MemoryBarrier from HarfBuzz
 
@@ -1645,7 +6711,7 @@ Date:     Fri Jul 11 12:19:39 2014 -0400
 
 commit dca5d0feee5eb6428bec48b1aff4396cf92c76c0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 8 14:55:15 2014 +0900
+Date:   Tue Jul 8 14:55:15 2014 +0900
 
     Fix a gcc warning
 
@@ -1657,7 +6723,7 @@ Date:     Tue Jul 8 14:55:15 2014 +0900
 
 commit da8233b0f244676ea372ffa485b6cb329700c8ca
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jul 6 18:26:03 2014 -0400
+Date:   Sun Jul 6 18:26:03 2014 -0400
 
     Fixup previous commit
 
@@ -1667,7 +6733,7 @@ Date:     Sun Jul 6 18:26:03 2014 -0400
 
 commit bb27d6969ce0ef1244e73f9c6232f91bce60dad7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jul 6 18:10:44 2014 -0400
+Date:   Sun Jul 6 18:10:44 2014 -0400
 
     Remove HASH from matching priorities
 
@@ -1678,7 +6744,7 @@ Date:     Sun Jul 6 18:10:44 2014 -0400
 
 commit 5674b8a66354d657559c37e9d168bfbf48b931a8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jul 6 17:41:19 2014 -0400
+Date:   Sun Jul 6 17:41:19 2014 -0400
 
     Comments
 
@@ -1687,7 +6753,7 @@ Date:     Sun Jul 6 17:41:19 2014 -0400
 
 commit 5b22776999b6052afe0e829b1a0c0935bbe1e9f7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jul 4 18:04:52 2014 +0900
+Date:   Fri Jul 4 18:04:52 2014 +0900
 
     Fix a crash when no sysroot is given and failed to load the default
     fonts.conf
@@ -1697,7 +6763,7 @@ Date:     Fri Jul 4 18:04:52 2014 +0900
 
 commit f5b4b2c1ed7ff92e2fb9339750f0288e2e794c4b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 4 01:43:47 2014 -0400
+Date:   Fri Jul 4 01:43:47 2014 -0400
 
     Fix charset unparse after recent changes
 
@@ -1706,7 +6772,7 @@ Date:     Fri Jul 4 01:43:47 2014 -0400
 
 commit 940d27a197bfb0cfd93d3bb7dba33d5e23ac46b0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 3 21:15:25 2014 -0400
+Date:   Thu Jul 3 21:15:25 2014 -0400
 
     Minor
 
@@ -1715,7 +6781,7 @@ Date:     Thu Jul 3 21:15:25 2014 -0400
 
 commit e708e97c351d3bc9f7030ef22ac2f007d5114730
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jul 3 17:52:54 2014 -0400
+Date:   Thu Jul 3 17:52:54 2014 -0400
 
     Change charset parse/unparse format to be human readable
 
@@ -1724,9 +6790,9 @@ Date:     Thu Jul 3 17:52:54 2014 -0400
 
     $ fc-pattern ':charset=20 41-5a'
     Pattern has 1 elts (size 16)
-       charset:
-       0000: 00000000 00000001 07fffffe 00000000 00000000 00000000
-       00000000 00000000
+            charset:
+            0000: 00000000 00000001 07fffffe 00000000 00000000 00000000
+            00000000 00000000
     (s)
 
  src/fccharset.c | 223
@@ -1735,7 +6801,7 @@ Date:     Thu Jul 3 17:52:54 2014 -0400
 
 commit dab60e4476ada4ad4639599ea24dd012d4a79584
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 30 15:12:32 2014 +0900
+Date:   Mon Jun 30 15:12:32 2014 +0900
 
     Rework for 5004e8e01f5de30ad01904e57ea0eda006ab3a0c
 
@@ -1747,7 +6813,7 @@ Date:     Mon Jun 30 15:12:32 2014 +0900
 
 commit 5004e8e01f5de30ad01904e57ea0eda006ab3a0c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 30 12:37:36 2014 +0900
+Date:   Mon Jun 30 12:37:36 2014 +0900
 
     Don't read/write from/to the XDG dirs if the home directory is
     disabled
@@ -1758,7 +6824,7 @@ Date:     Mon Jun 30 12:37:36 2014 +0900
 
 commit 274f2181f294af2eff3e8db106ec8d7bab2d3ff1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 18 12:20:57 2014 -0400
+Date:   Wed Jun 18 12:20:57 2014 -0400
 
     Update blanks to Unicode 7.0
 
@@ -1767,7 +6833,7 @@ Date:     Wed Jun 18 12:20:57 2014 -0400
 
 commit 2f96482a9f5bc185b244a8bdaa7563a829965f1a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jun 18 19:13:53 2014 +0900
+Date:   Wed Jun 18 19:13:53 2014 +0900
 
     Update CaseFolding.txt to Unicode 7.0
 
@@ -1777,7 +6843,7 @@ Date:     Wed Jun 18 19:13:53 2014 +0900
 
 commit 6c3c2603b9f68a7460e9642d0421b5cc5a848452
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jun 18 11:49:10 2014 +0900
+Date:   Wed Jun 18 11:49:10 2014 +0900
 
     Fix a segfault
 
@@ -1789,7 +6855,7 @@ Date:     Wed Jun 18 11:49:10 2014 +0900
 
 commit 8915c15b9ee394ef19042f1acf75eb8b0592e5a7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jun 12 17:56:04 2014 -0400
+Date:   Thu Jun 12 17:56:04 2014 -0400
 
     Update list of blanks to Unicode 6.3.0
 
@@ -1802,7 +6868,7 @@ Date:     Thu Jun 12 17:56:04 2014 -0400
 
 commit d17f556153fbaf8fe57fdb4fc1f0efa4313f0ecf
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jun 17 20:08:24 2014 +0900
+Date:   Tue Jun 17 20:08:24 2014 +0900
 
     Read the config files and fonts on the sysroot when --sysroot is
     given to fc-cache
@@ -1812,32 +6878,32 @@ Date:   Tue Jun 17 20:08:24 2014 +0900
     https://bugs.freedesktop.org/show_bug.cgi?id=59456
 
  fc-cache/fc-cache.c | 10 ++++---
- src/fccache.c      | 76
+ src/fccache.c       | 76
  +++++++++++++++++++++++++++++++++++--------------
- src/fccfg.c        |  2 +-
- src/fcdir.c        | 82
+ src/fccfg.c         |  2 +-
+ src/fcdir.c         | 82
  ++++++++++++++++++++++++++++++++++++++++++++++-------
- src/fcinit.c       | 17 +++++++++--
- src/fcint.h        |  3 +-
- src/fcxml.c        | 12 ++++++--
+ src/fcinit.c        | 17 +++++++++--
+ src/fcint.h         |  3 +-
+ src/fcxml.c         | 12 ++++++--
  7 files changed, 158 insertions(+), 44 deletions(-)
 
 commit 8f62ccaa962b13781d7916d4d1c061993b991e69
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 9 22:00:25 2014 -0400
+Date:   Mon Jun 9 22:00:25 2014 -0400
 
     Remove unused FcHash code now that FC_HASH is deprecated
 
  src/Makefile.am  |   1 -
  src/fcfreetype.c |  51 ---------------
- src/fchash.c    | 189
+ src/fchash.c     | 189
  -------------------------------------------------------
- src/fcint.h     |  19 ------
+ src/fcint.h      |  19 ------
  4 files changed, 260 deletions(-)
 
 commit 75abdaf5c8e8b14c3e9e94ff5c563091594a32cf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 9 21:53:01 2014 -0400
+Date:   Mon Jun 9 21:53:01 2014 -0400
 
     Deprecate FC_HASH and don't compute it
 
@@ -1851,13 +6917,13 @@ Date:   Mon Jun 9 21:53:01 2014 -0400
 
  doc/fontconfig-devel.sgml | 2 +-
  fontconfig/fontconfig.h   | 2 +-
- src/fcfreetype.c         | 2 ++
- src/fcobjs.h             | 4 ++--
+ src/fcfreetype.c          | 2 ++
+ src/fcobjs.h              | 4 ++--
  4 files changed, 6 insertions(+), 4 deletions(-)
 
 commit cd9631d83e51bab95413a8aa0e8ecc68f3e3a0fc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jun 12 17:01:07 2014 -0400
+Date:   Thu Jun 12 17:01:07 2014 -0400
 
     [ko.orth] Remove U+3164 HANGUL FILLER
 
@@ -1869,7 +6935,7 @@ Date:     Thu Jun 12 17:01:07 2014 -0400
 
 commit f44bfad235e63bb792c38e16ae1fbd281ec1453b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jun 5 19:06:02 2014 +0900
+Date:   Thu Jun 5 19:06:02 2014 +0900
 
     Workaround another race condition issue
 
@@ -1882,7 +6948,7 @@ Date:     Thu Jun 5 19:06:02 2014 +0900
 
 commit 58acd993cb13b58c61633174071ef42da3dcac85
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri May 16 15:08:52 2014 -0600
+Date:   Fri May 16 15:08:52 2014 -0600
 
     Allow passing NULL for file to FcFreeTypeQueryFace()
 
@@ -1891,7 +6957,7 @@ Date:     Fri May 16 15:08:52 2014 -0600
 
 commit 3f992254f2a3b7f88df989067785141cbf265037
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri May 16 15:02:58 2014 -0600
+Date:   Fri May 16 15:02:58 2014 -0600
 
     Rewrite hashing to use FT_Stream directly
 
@@ -1905,14 +6971,14 @@ Date:   Fri May 16 15:02:58 2014 -0600
 
  src/fcfreetype.c | 78
  ++++++++++++++++++++++++++++++--------------------------
- src/fchash.c    | 75
+ src/fchash.c     | 75
  +++--------------------------------------------------
- src/fcint.h     | 19 +++++++++++---
+ src/fcint.h      | 19 +++++++++++---
  3 files changed, 61 insertions(+), 111 deletions(-)
 
 commit 8284df49ef45678781fc6e05d18cc04acf04cf3c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri May 16 14:17:45 2014 -0600
+Date:   Fri May 16 14:17:45 2014 -0600
 
     Further simplify hash code
 
@@ -1922,19 +6988,19 @@ Date:   Fri May 16 14:17:45 2014 -0600
 
 commit 748e77e89f8f6ba297ce9d206ac3834ae087201d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri May 16 14:03:19 2014 -0600
+Date:   Fri May 16 14:03:19 2014 -0600
 
     Simplify hash code
 
  src/fcfreetype.c |  4 +--
- src/fchash.c    | 94
+ src/fchash.c     | 94
  ++++++++++++++++++++++++++------------------------------
- src/fcint.h     |  6 ++--
+ src/fcint.h      |  6 ++--
  3 files changed, 48 insertions(+), 56 deletions(-)
 
 commit e4d8847eee14ddfa9632057bca36cb60dfa1b35f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri May 16 13:45:44 2014 -0600
+Date:   Fri May 16 13:45:44 2014 -0600
 
     Remove unused code
 
@@ -1944,7 +7010,7 @@ Date:     Fri May 16 13:45:44 2014 -0600
 
 commit 48c8b7938a0f1412d31dbe2f4e332e460f624068
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue May 13 21:21:43 2014 +0900
+Date:   Tue May 13 21:21:43 2014 +0900
 
     Allow the modification on FcTypeVoid with FcTypeLangSet and
     FcTypeCharSet
@@ -1957,15 +7023,15 @@ Date:   Tue May 13 21:21:43 2014 +0900
     This is useful to make a lot of changes, particularly
     when one wants to add a few and delete a lot say.
 
- src/fccfg.c    | 10 ++++++++++
+ src/fccfg.c     | 10 ++++++++++
  src/fccharset.c | 15 +++++++++++++++
- src/fcint.h    |  3 +++
- src/fclang.c   | 27 +++++++++++++++------------
+ src/fcint.h     |  3 +++
+ src/fclang.c    | 27 +++++++++++++++------------
  4 files changed, 43 insertions(+), 12 deletions(-)
 
 commit 81664fe54f117e4781fda5a30429b51858302e91
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Apr 22 12:39:12 2014 +0900
+Date:   Tue Apr 22 12:39:12 2014 +0900
 
     Rebase ja.orth against Joyo kanji characters
 
@@ -1977,7 +7043,7 @@ Date:     Tue Apr 22 12:39:12 2014 +0900
 
 commit f44157c809d280e2a0ce87fb078fc4b278d24a67
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Apr 10 19:27:55 2014 +0900
+Date:   Thu Apr 10 19:27:55 2014 +0900
 
     Fix fc-cache fail with -r
 
@@ -1991,7 +7057,7 @@ Date:     Thu Apr 10 19:27:55 2014 +0900
 
 commit 91784eb7d0c9f9f357210f4c82555469da37334a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Apr 4 12:18:28 2014 +0900
+Date:   Fri Apr 4 12:18:28 2014 +0900
 
     Fix a typo
 
@@ -2002,20 +7068,20 @@ Date:   Fri Apr 4 12:18:28 2014 +0900
 
 commit fcba9ef01c978323fc71c17e455d3cd6ae35edcc
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 26 16:01:49 2014 +0900
+Date:   Wed Mar 26 16:01:49 2014 +0900
 
     Fix missing docs
 
- doc/Makefile.am          |  1 +
- doc/fcpattern.fncs       | 27 +++++++++++++++++---
- doc/fcrange.fncs         | 64
+ doc/Makefile.am           |  1 +
+ doc/fcpattern.fncs        | 27 +++++++++++++++++---
+ doc/fcrange.fncs          | 64
  +++++++++++++++++++++++++++++++++++++++++++++++
  doc/fontconfig-devel.sgml |  7 ++++++
  4 files changed, 95 insertions(+), 4 deletions(-)
 
 commit fff91eee7df5a71ed9a63a4b6e3b02c14eaf9cb3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 26 12:22:02 2014 +0900
+Date:   Wed Mar 26 12:22:02 2014 +0900
 
     Fix a build issue with freetype <2.5.1
 
@@ -2024,7 +7090,7 @@ Date:     Wed Mar 26 12:22:02 2014 +0900
 
 commit 3cd573fc1fb67db75cd356cad3e901d24af1ce8a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Nov 20 18:44:59 2013 +0900
+Date:   Wed Nov 20 18:44:59 2013 +0900
 
     Bug 71287 - size specific design selection support in OS/2 table
     version 5
@@ -2038,40 +7104,40 @@ Date:   Wed Nov 20 18:44:59 2013 +0900
     please be aware if you want to try it and run fc-cache before/after to
     avoid the weird thing against it.
 
- configure.ac           |   4 +
+ configure.ac            |   4 +
  fontconfig/fcprivate.h  |   3 +
  fontconfig/fontconfig.h |  28 ++++++-
- src/Makefile.am        |   1 +
- src/fccfg.c            |  48 +++++++----
- src/fcdbg.c            |  13 ++-
- src/fcdefault.c        |  47 ++++++-----
- src/fcfreetype.c       |  38 +++++++++
- src/fcint.h            |  85 ++++++++++++++++----
- src/fclist.c           |   2 +
- src/fcmatch.c          |  45 +++++++++++
- src/fcname.c           |  49 +++++++++++-
- src/fcobjs.h           |   2 +-
- src/fcpat.c            |  73 +++++++++++++++++
- src/fcrange.c          | 207
+ src/Makefile.am         |   1 +
+ src/fccfg.c             |  48 +++++++----
+ src/fcdbg.c             |  13 ++-
+ src/fcdefault.c         |  47 ++++++-----
+ src/fcfreetype.c        |  38 +++++++++
+ src/fcint.h             |  85 ++++++++++++++++----
+ src/fclist.c            |   2 +
+ src/fcmatch.c           |  45 +++++++++++
+ src/fcname.c            |  49 +++++++++++-
+ src/fcobjs.h            |   2 +-
+ src/fcpat.c             |  73 +++++++++++++++++
+ src/fcrange.c           | 207
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcxml.c            | 108 +++++++++++++++++++------
+ src/fcxml.c             | 108 +++++++++++++++++++------
  16 files changed, 663 insertions(+), 90 deletions(-)
 
 commit 9260b7ec39c34ce68d74e16d47917290a8c3f35a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 24 15:03:12 2014 +0900
+Date:   Mon Mar 24 15:03:12 2014 +0900
 
     Bump version to 2.11.1
 
- README                         | 57
+ README                  | 57
  +++++++++++++++++++++++++++++++++++++++++++++++--
- configure.ac           |  2 +-
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 57 insertions(+), 4 deletions(-)
 
 commit 812143c34d904fb26de471a579a7e381b7f7f33b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 24 15:02:26 2014 +0900
+Date:   Mon Mar 24 15:02:26 2014 +0900
 
     Fix autoconf warning, warning: AC_COMPILE_IFELSE was called before
     AC_USE_SYSTEM_EXTENSIONS
@@ -2083,7 +7149,7 @@ Date:     Mon Mar 24 15:02:26 2014 +0900
 
 commit 5478192f379d784b421329e4bf72cc780818e467
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Mar 18 12:14:03 2014 +0900
+Date:   Tue Mar 18 12:14:03 2014 +0900
 
     Add README describes the criteria to add/modify the orthography files
 
@@ -2094,7 +7160,7 @@ Date:     Tue Mar 18 12:14:03 2014 +0900
 
 commit c6aa4d4bfcbed14f39d070fe7ef90a4b74642ee7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Mar 18 11:51:37 2014 +0900
+Date:   Tue Mar 18 11:51:37 2014 +0900
 
     Bug 73291 - poppler does not show fl ligature
 
@@ -2108,7 +7174,7 @@ Date:     Tue Mar 18 11:51:37 2014 +0900
 
 commit f8ccf379eb1092592ae0b65deb563c5491f69de9
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 7 19:42:21 2014 +0900
+Date:   Fri Mar 7 19:42:21 2014 +0900
 
     Update doc to include the version info of `since when'
 
@@ -2123,12 +7189,12 @@ Date:   Fri Mar 7 19:42:21 2014 +0900
  doc/fcformat.fncs   | 1 +
  doc/fclangset.fncs  | 6 ++++++
  doc/fcstrset.fncs   | 1 +
- doc/func.sgml      | 9 +++++----
+ doc/func.sgml       | 9 +++++----
  8 files changed, 19 insertions(+), 4 deletions(-)
 
 commit 39a2f1e8f98d27b929d56a55a68b3a20d2f8dd32
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 5 18:29:29 2014 +0900
+Date:   Wed Mar 5 18:29:29 2014 +0900
 
     Fallback to lstat() in case the filesystem doesn't support d_type
     in struct dirent
@@ -2138,7 +7204,7 @@ Date:     Wed Mar 5 18:29:29 2014 +0900
 
 commit e310d2fac2d874d5aa76c609df70cc7b871c0b6d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 6 19:40:01 2014 +0900
+Date:   Thu Feb 6 19:40:01 2014 +0900
 
     Fix incompatible API on AIX with random_r and initstate_r
 
@@ -2149,7 +7215,7 @@ Date:     Thu Feb 6 19:40:01 2014 +0900
 
 commit 7d75653285a3cd67b5f066fe899821462d7f324f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 6 17:29:19 2014 +0900
+Date:   Thu Feb 6 17:29:19 2014 +0900
 
     Add missing #include <sys/statvfs.h> in fcstat.c
 
@@ -2161,7 +7227,7 @@ Date:     Thu Feb 6 17:29:19 2014 +0900
 
 commit 787619b2c7bfbdc91ed170381f28003e86679c99
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 6 17:15:26 2014 +0900
+Date:   Thu Feb 6 17:15:26 2014 +0900
 
     Add a doc for FcDirCacheRescan
 
@@ -2170,7 +7236,7 @@ Date:     Thu Feb 6 17:15:26 2014 +0900
 
 commit 80081555fdffea927a53fce2773cfbe9db4c51f0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 31 11:10:02 2014 +0900
+Date:   Fri Jan 31 11:10:02 2014 +0900
 
     Fix a crash issue when empty strings are set to the BDF properties
 
@@ -2179,7 +7245,7 @@ Date:     Fri Jan 31 11:10:02 2014 +0900
 
 commit e2b406053c2937799da8636c56b72a77998bcab0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jan 22 19:35:07 2014 +0900
+Date:   Wed Jan 22 19:35:07 2014 +0900
 
     Update the use of autotools' macro
 
@@ -2188,39 +7254,39 @@ Date:   Wed Jan 22 19:35:07 2014 +0900
 
 commit 5918d5bea5416cf27061db4263aefeb8fd310f0e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 17 13:05:25 2014 +0900
+Date:   Fri Jan 17 13:05:25 2014 +0900
 
     Add missing license headers
 
     https://bugs.freedesktop.org/show_bug.cgi?id=73401
 
- autogen.sh            | 22 ++++++++++++++++++++++
- new-version.sh                | 21 +++++++++++++++++++++
- src/fcobjs.h          | 23 +++++++++++++++++++++++
+ autogen.sh             | 22 ++++++++++++++++++++++
+ new-version.sh         | 21 +++++++++++++++++++++
+ src/fcobjs.h           | 23 +++++++++++++++++++++++
  src/fcobjshash.gperf.h | 23 +++++++++++++++++++++++
- test/run-test.sh      | 21 +++++++++++++++++++++
- test/test-migration.c | 24 ++++++++++++++++++++++++
- test/test-pthread.c   | 26 ++++++++++++++++++++++++--
+ test/run-test.sh       | 21 +++++++++++++++++++++
+ test/test-migration.c  | 24 ++++++++++++++++++++++++
+ test/test-pthread.c    | 26 ++++++++++++++++++++++++--
  7 files changed, 158 insertions(+), 2 deletions(-)
 
 commit bfdd40efd1c82dec5c818c8ce5f78d96fe0ebede
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 17 12:57:56 2014 +0900
+Date:   Fri Jan 17 12:57:56 2014 +0900
 
     clean up the unused files
 
- config/Makedefs.in  |  76 ---
- config/config-subst |  10 -
+ config/Makedefs.in  |   76 ---
+ config/config-subst |   10 -
  config/config.guess | 1497
  -----------------------------------------------
  config/config.sub   | 1608
  ---------------------------------------------------
- config/install.sh   | 240 --------
+ config/install.sh   |  240 --------
  5 files changed, 3431 deletions(-)
 
 commit f35b44c35bf8468ea4c28c7efa77b47b1e2a1930
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 17 12:24:02 2014 +0900
+Date:   Fri Jan 17 12:24:02 2014 +0900
 
     Update zh_hk.orth
 
@@ -2234,7 +7300,7 @@ Date:     Fri Jan 17 12:24:02 2014 +0900
 
 commit 320283cd70ae31ce46b03e0c5da55412089ce953
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jan 16 19:30:35 2014 +0900
+Date:   Thu Jan 16 19:30:35 2014 +0900
 
     Bug 73686 - confdir is not set correctly in fontconfig.pc
 
@@ -2243,36 +7309,36 @@ Date:   Thu Jan 16 19:30:35 2014 +0900
 
 commit 7a6622f25cdfab5ab775324bef1833b67109801b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Dec 5 19:15:47 2013 +0900
+Date:   Thu Dec 5 19:15:47 2013 +0900
 
     Improve the performance issue on rescanning directories
 
 Notes:
     Tested-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
 
- fc-cache/fc-cache.c    | 10 ++++++++--
+ fc-cache/fc-cache.c     | 10 ++++++++--
  fontconfig/fontconfig.h |  3 +++
- src/fccache.c          | 13 +++++++++++++
- src/fcdir.c            | 46
+ src/fccache.c           | 13 +++++++++++++
+ src/fcdir.c             | 46
  +++++++++++++++++++++++++++++++++++++++++++++-
- src/fcfs.c             | 22 ++++++++++++++++++++++
- src/fcint.h            |  6 ++++++
- src/fcpat.c            |  2 ++
+ src/fcfs.c              | 22 ++++++++++++++++++++++
+ src/fcint.h             |  6 ++++++
+ src/fcpat.c             |  2 ++
  7 files changed, 99 insertions(+), 3 deletions(-)
 
 commit 5c725f2f5829238d16116f782d00d8bb0defaf08
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 16 17:44:37 2013 +0900
+Date:   Mon Dec 16 17:44:37 2013 +0900
 
     Fix a build issue on platforms where doesn't support readlink()
 
- configure.ac   | 2 +-
+ configure.ac    | 2 +-
  src/fcdefault.c | 4 +++-
  2 files changed, 4 insertions(+), 2 deletions(-)
 
 commit 1132c98b7b760be24a301c9dbd24e348f6601fed
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 16 16:00:12 2013 +0900
+Date:   Mon Dec 16 16:00:12 2013 +0900
 
     Fix a typo
 
@@ -2281,7 +7347,7 @@ Date:     Mon Dec 16 16:00:12 2013 +0900
 
 commit fee834a9c9e1089a9ae29b1d8e8b6a4cc710204b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 9 21:21:57 2013 -0500
+Date:   Mon Dec 9 21:21:57 2013 -0500
 
     Bug 72380 - Never drop first font when trimming
 
@@ -2300,14 +7366,14 @@ Date:   Mon Dec 9 21:21:57 2013 -0500
 
     I want to make sure the above three commands all return the same font.
     Ie.  I want to make sure FcFontMatch() always returns the first font
-    from FcFontSort(). As such, never trim first font.
+    from FcFontSort().  As such, never trim first font.
 
  src/fcmatch.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)
 
 commit c9e24f9ef41e2c3e552ddd35d8c70daae5b505cd
 Author: Jehan <jehan@girinstud.io>
-Date:  Sun Nov 17 22:38:28 2013 +1300
+Date:   Sun Nov 17 22:38:28 2013 +1300
 
     Defaulting <cachedir> to LOCAL_APPDATA_FONTCONFIG_CACHE for Win32
     build
@@ -2319,7 +7385,7 @@ Date:     Sun Nov 17 22:38:28 2013 +1300
 
 commit 2e933bd8bcad936717b6b9d8a22b86b7ddb5457e
 Author: Frederic Crozat <fcrozat@suse.com>
-Date:  Fri Dec 6 14:23:52 2013 +0100
+Date:   Fri Dec 6 14:23:52 2013 +0100
 
     Add metric aliases for additional Google ChromeOS fonts
 
@@ -2334,7 +7400,7 @@ Date:     Fri Dec 6 14:23:52 2013 +0100
 
 commit 6a06e29491ffdb5be6342164b96de59c6fa07b32
 Author: Frederic Crozat <fcrozat@suse.com>
-Date:  Fri Dec 6 14:08:08 2013 +0100
+Date:   Fri Dec 6 14:08:08 2013 +0100
 
     Fix inversion between Tinos and Cousine in the comment
 
@@ -2343,7 +7409,7 @@ Date:     Fri Dec 6 14:08:08 2013 +0100
 
 commit d97fbbe9f59965167fbc0bdc49f983c2bc96d521
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 2 19:18:25 2013 +0900
+Date:   Mon Dec 2 19:18:25 2013 +0900
 
     Simplify to validate the availability of scandir
 
@@ -2352,19 +7418,19 @@ Date:   Mon Dec 2 19:18:25 2013 +0900
 
 commit 51521153490ab0b01959c10c57e476de3ad27acb
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 2 18:43:10 2013 +0900
+Date:   Mon Dec 2 18:43:10 2013 +0900
 
     Simplify to validate the availability of posix_fadvise
 
- configure.ac         | 12 ++----------
+ configure.ac          | 12 ++----------
  m4/ac_check_symbol.m4 | 48
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fccache.c        |  2 +-
+ src/fccache.c         |  2 +-
  3 files changed, 51 insertions(+), 11 deletions(-)
 
 commit 59fd9960bbb58fd6257adb13ec0f918882149332
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 2 15:53:57 2013 +0900
+Date:   Mon Dec 2 15:53:57 2013 +0900
 
     Bug 72086 - Check for gperf in autogen.sh
 
@@ -2373,7 +7439,7 @@ Date:     Mon Dec 2 15:53:57 2013 +0900
 
 commit a5fd7912ff8c7bc72d2cdbd0038c7ff0c968831f
 Author: Ross Burton <ross.burton@intel.com>
-Date:  Tue Nov 26 17:18:25 2013 +0000
+Date:   Tue Nov 26 17:18:25 2013 +0000
 
     fc-cache: --sysroot option takes an argument
 
@@ -2388,7 +7454,7 @@ Date:     Tue Nov 26 17:18:25 2013 +0000
 
 commit 38acb08d9778ebad2bfc3407532adf8f2e8e667e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Nov 11 11:53:09 2013 +0900
+Date:   Mon Nov 11 11:53:09 2013 +0900
 
     Fix typo
 
@@ -2402,7 +7468,7 @@ Date:     Mon Nov 11 11:53:09 2013 +0900
 
 commit a4443e64c89256087d40462cfbb482950873e366
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Nov 5 20:30:35 2013 +0900
+Date:   Tue Nov 5 20:30:35 2013 +0900
 
     Re-scan font directories only when it contains subdirs
 
@@ -2415,28 +7481,28 @@ Date:   Tue Nov 5 20:30:35 2013 +0900
 
 commit 0b7f42f777a14ee61783fd95dd04e870f02d201e
 Author: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date:  Sat Nov 2 10:23:57 2013 -0700
+Date:   Sat Nov 2 10:23:57 2013 -0700
 
     Avoid null pointer dereference in FcNameParse if malloc fails
 
     Reported by parfait 1.3:
     Error: Null pointer dereference (CWE 476)
        Read from null pointer t
-           at line 423 of src/fcname.c in function 'FcNameParse'.
-             Function _FcObjectLookupOtherTypeByName may return constant
-             'NULL'
-              at line 63, called at line 122 of src/fcobjs.c in function
-              'FcObjectLookupOtherTypeByName'.
-             Function FcObjectLookupOtherTypeByName may return constant
-             'NULL'
-              at line 122, called at line 67 of src/fcname.c in function
-              'FcNameGetObjectType'.
-             Function FcNameGetObjectType may return constant 'NULL'
-             at line 67,
-              called at line 422 in function 'FcNameParse'.
-             Null pointer introduced at line 63 of src/fcobjs.c in
-             function
-              '_FcObjectLookupOtherTypeByName'.
+            at line 423 of src/fcname.c in function 'FcNameParse'.
+              Function _FcObjectLookupOtherTypeByName may return constant
+              'NULL'
+               at line 63, called at line 122 of src/fcobjs.c in function
+               'FcObjectLookupOtherTypeByName'.
+              Function FcObjectLookupOtherTypeByName may return constant
+              'NULL'
+               at line 122, called at line 67 of src/fcname.c in function
+               'FcNameGetObjectType'.
+              Function FcNameGetObjectType may return constant 'NULL'
+              at line 67,
+               called at line 422 in function 'FcNameParse'.
+              Null pointer introduced at line 63 of src/fcobjs.c in
+              function
+               '_FcObjectLookupOtherTypeByName'.
 
     Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
 
@@ -2445,15 +7511,15 @@ Date:   Sat Nov 2 10:23:57 2013 -0700
 
 commit 5b8380d52eae55cba0adcc47d78a53c320d294ec
 Author: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date:  Sat Nov 2 10:23:56 2013 -0700
+Date:   Sat Nov 2 10:23:56 2013 -0700
 
     Avoid memory leak when NULL path passed to FcStrBuildFilename
 
     Reported by parfait 1.3:
        Memory leak of pointer sset allocated with FcStrSetCreate()
-           at line 933 of src/fcstr.c in function 'FcStrBuildFilename'.
-             sset allocated at line 927 with FcStrSetCreate().
-             sset leaks when sset != NULL at line 932.
+            at line 933 of src/fcstr.c in function 'FcStrBuildFilename'.
+              sset allocated at line 927 with FcStrSetCreate().
+              sset leaks when sset != NULL at line 932.
 
     Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
 
@@ -2462,7 +7528,7 @@ Date:     Sat Nov 2 10:23:56 2013 -0700
 
 commit cb72901d0b7dff73ea2596491c5db602e4750853
 Author: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date:  Sat Nov 2 10:23:55 2013 -0700
+Date:   Sat Nov 2 10:23:55 2013 -0700
 
     Leave room for null terminators in arrays
 
@@ -2474,25 +7540,25 @@ Date:   Sat Nov 2 10:23:55 2013 -0700
     Error: Buffer overrun
        Buffer overflow (CWE 120): In array dereference of files[i]
        with index i
-         Array size is 256 elements (of 4 bytes each), index >= 0 and
-         index <= 256
-           at line 250 of fc-glyphname/fc-glyphname.c in function 'main'.
+          Array size is 256 elements (of 4 bytes each), index >= 0 and
+          index <= 256
+            at line 250 of fc-glyphname/fc-glyphname.c in function 'main'.
     Error: Buffer overrun
        Buffer overflow (CWE 120): In array dereference of entries[i]
        with index i
-         Array size is 1024 elements (of 8 bytes each), index >= 0 and
-         index <= 1024
-           at line 298 of fc-lang/fc-lang.c in function 'main'.
+          Array size is 1024 elements (of 8 bytes each), index >= 0 and
+          index <= 1024
+            at line 298 of fc-lang/fc-lang.c in function 'main'.
 
     Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
 
  fc-glyphname/fc-glyphname.c | 2 +-
- fc-lang/fc-lang.c          | 2 +-
+ fc-lang/fc-lang.c           | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 767108aa1327cf0156dfc6f024dbc8fb783ae067
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Oct 31 22:12:26 2013 +0900
+Date:   Thu Oct 31 22:12:26 2013 +0900
 
     Correct DTD
 
@@ -2501,7 +7567,7 @@ Date:     Thu Oct 31 22:12:26 2013 +0900
 
 commit aa22e6e63933e8b31a032835b712b7ed596534cc
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jan 24 19:48:48 2013 +0900
+Date:   Thu Jan 24 19:48:48 2013 +0900
 
     Warn if no <test> nor <edit> elements in <match>
 
@@ -2519,7 +7585,7 @@ Date:     Thu Jan 24 19:48:48 2013 +0900
 
 commit 525a135ccf53e4bf3363c3143d9cfdf15fba55ab
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Oct 28 11:54:04 2013 +0900
+Date:   Mon Oct 28 11:54:04 2013 +0900
 
     Change the default weight on match to FC_WEIGHT_NORMAL
 
@@ -2528,7 +7594,7 @@ Date:     Mon Oct 28 11:54:04 2013 +0900
 
 commit 65872e9e46d17e4461c3a891ef23abe156005e04
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Oct 24 19:35:26 2013 +0900
+Date:   Thu Oct 24 19:35:26 2013 +0900
 
     Fix a build issue on Solaris 10
 
@@ -2536,13 +7602,13 @@ Date:   Thu Oct 24 19:35:26 2013 +0900
 
     Reported by Thomas Klausner and Jörn Clausen
 
- configure.ac         |  2 +-
+ configure.ac          |  2 +-
  test/test-migration.c | 15 ++++++++++++++-
  2 files changed, 15 insertions(+), 2 deletions(-)
 
 commit 76ea9af816a50c6bb0b3dc2960460a90fadd9cdb
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Oct 22 15:00:29 2013 +0900
+Date:   Tue Oct 22 15:00:29 2013 +0900
 
     Use stat() if there are no d_type in struct dirent
 
@@ -2553,7 +7619,7 @@ Date:     Tue Oct 22 15:00:29 2013 +0900
 
 commit 5e029db4971e37437cfe6147d52d00136dfb8cb5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Oct 21 12:16:46 2013 +0900
+Date:   Mon Oct 21 12:16:46 2013 +0900
 
     Fix the dynamic loading issue on NetBSD
 
@@ -2569,7 +7635,7 @@ Date:     Mon Oct 21 12:16:46 2013 +0900
 
 commit ff0e0d17b254f71592dfa29a988a82efefff8913
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Oct 21 12:13:31 2013 +0900
+Date:   Mon Oct 21 12:13:31 2013 +0900
 
     Update ax_pthread.m4 to the latest version
 
@@ -2579,7 +7645,7 @@ Date:     Mon Oct 21 12:13:31 2013 +0900
 
 commit 06b388523d747db16708c1662f3c6d64a36d5daf
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Oct 21 11:50:55 2013 +0900
+Date:   Mon Oct 21 11:50:55 2013 +0900
 
     Fix build issue on Debian/kFreeBSD 7.0
 
@@ -2591,7 +7657,7 @@ Date:     Mon Oct 21 11:50:55 2013 +0900
 
 commit 5406919c5e186f74ccdade1a65344ce7b5c56a64
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Oct 11 19:31:22 2013 +0900
+Date:   Fri Oct 11 19:31:22 2013 +0900
 
     do not build test-migration for Win32
 
@@ -2603,18 +7669,18 @@ Date:   Fri Oct 11 19:31:22 2013 +0900
 
 commit f16c3118e25546c1b749f9823c51827a60aeb5c1
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Oct 11 13:27:33 2013 +0900
+Date:   Fri Oct 11 13:27:33 2013 +0900
 
     Bump version to 2.11.0
 
- README                         | 29 +++++++++++++++++++++++++++--
- configure.ac           |  2 +-
+ README                  | 29 +++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  3 files changed, 30 insertions(+), 5 deletions(-)
 
 commit f82a032f417445abbb4399344766102aff255b6c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Oct 11 13:27:24 2013 +0900
+Date:   Fri Oct 11 13:27:24 2013 +0900
 
     Update CaseFolding.txt to Unicode 6.3
 
@@ -2625,7 +7691,7 @@ Date:     Fri Oct 11 13:27:24 2013 +0900
 
 commit c4c90ffc7a7eec42fc0b84f1a7af464a4c9fcfd8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Oct 11 12:40:23 2013 +0900
+Date:   Fri Oct 11 12:40:23 2013 +0900
 
     Bump libtool revision
 
@@ -2634,7 +7700,7 @@ Date:     Fri Oct 11 12:40:23 2013 +0900
 
 commit 9a4310176bb11e1e826d238eb0761b7895b48883
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Oct 9 12:19:35 2013 +0900
+Date:   Wed Oct 9 12:19:35 2013 +0900
 
     Add missing doc for FcStrListFirst and fix a typo
 
@@ -2643,30 +7709,30 @@ Date:   Wed Oct 9 12:19:35 2013 +0900
 
 commit 604c2a683f1357fc65bad372b5d25a90099f827f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Oct 3 19:59:30 2013 +0900
+Date:   Thu Oct 3 19:59:30 2013 +0900
 
     exit with the error code when FcNameParse() failed
 
- 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 +++++
  3 files changed, 15 insertions(+)
 
 commit 0203055520206028eecee5d261887cdc91500e15
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Oct 2 16:34:34 2013 +0900
+Date:   Wed Oct 2 16:34:34 2013 +0900
 
     Workaround the race condition issue on updating cache
 
- fc-cache/fc-cache.c    | 62
+ fc-cache/fc-cache.c     | 62
  ++++++++++++++++++++++++++++---------------------
  fontconfig/fontconfig.h |  3 +++
- src/fcstr.c            |  6 +++++
+ src/fcstr.c             |  6 +++++
  3 files changed, 45 insertions(+), 26 deletions(-)
 
 commit 9161ed1e4a3f4afaee6dbcfc0b84a279ad99b397
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Sep 30 11:30:00 2013 +0900
+Date:   Mon Sep 30 11:30:00 2013 +0900
 
     Add the relative path for <include> to fonts.conf if the parent path
     is same to fonts.conf
@@ -2678,17 +7744,17 @@ Date:   Mon Sep 30 11:30:00 2013 +0900
 
 commit 96c5f3cf0ff57e7bbb08cc1e0e78ed0542096484
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Sep 26 18:44:10 2013 +0900
+Date:   Thu Sep 26 18:44:10 2013 +0900
 
     clean up
 
  conf.d/Makefile.am | 2 +-
- configure.ac      | 6 +-----
+ configure.ac       | 6 +-----
  2 files changed, 2 insertions(+), 6 deletions(-)
 
 commit 43f768b53f554cf0f927ccac5daf96877f9fc69c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Sep 26 17:46:26 2013 +0900
+Date:   Thu Sep 26 17:46:26 2013 +0900
 
     avoid reading config.h twice
 
@@ -2699,16 +7765,16 @@ Date:   Thu Sep 26 17:46:26 2013 +0900
     Bug 69833 - Incorrect SIZEOF_VOID_P and ALIGNOF_DOUBLE definitions
     causes nasty warnings on MacOSX when building fat libraries
 
- src/fcarch.c  | 4 ----
- src/fccache.c | 3 ---
+ src/fcarch.c   | 4 ----
+ src/fccache.c  | 3 ---
  src/fccompat.c | 4 ----
- src/fchash.c  | 3 ---
- src/fcstat.c  | 3 ---
+ src/fchash.c   | 3 ---
+ src/fcstat.c   | 3 ---
  5 files changed, 17 deletions(-)
 
 commit 102864d0dba46c99b22c912454c1f58731287405
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Sep 25 11:41:23 2013 +0900
+Date:   Wed Sep 25 11:41:23 2013 +0900
 
     Add the description of -q option to the man page
 
@@ -2717,7 +7783,7 @@ Date:     Wed Sep 25 11:41:23 2013 +0900
 
 commit 2b0fca14ad202d4dbd32478dc367e648833866c0
 Author: W. Trevor King <wking@tremily.us>
-Date:  Sat Sep 21 17:06:50 2013 -0700
+Date:   Sat Sep 21 17:06:50 2013 -0700
 
     doc/fccharset.fncs: Describe the map format in more detail
 
@@ -2732,7 +7798,7 @@ Date:     Sat Sep 21 17:06:50 2013 -0700
 
 commit 8a174b6c51581df6ffd6a5da056949c6c79337cf
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Sep 24 11:14:57 2013 +0900
+Date:   Tue Sep 24 11:14:57 2013 +0900
 
     Fix a crash when FcPattern is set to null on FcFontSetList()
     and FcFontList()
@@ -2742,7 +7808,7 @@ Date:     Tue Sep 24 11:14:57 2013 +0900
 
 commit 643f8088f0d51107e58d142df47124efec6afab1
 Author: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
-Date:  Sat Sep 14 02:25:26 2013 +0200
+Date:   Sat Sep 14 02:25:26 2013 +0200
 
     Further changes to 30-metric-aliases.conf
 
@@ -2768,7 +7834,7 @@ Date:     Sat Sep 14 02:25:26 2013 +0200
 
 commit 5e6b8894ea9d03caabdfc3a6bcd0c402edf840a8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Sep 18 17:31:10 2013 +0900
+Date:   Wed Sep 18 17:31:10 2013 +0900
 
     Copy all values from the font to the pattern if the pattern doesn't
     have the element
@@ -2778,7 +7844,7 @@ Date:     Wed Sep 18 17:31:10 2013 +0900
 
 commit 7e44a0b5a88e597b33ba9e2cc3a6d4555736db0a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Sep 10 17:45:11 2013 +0900
+Date:   Tue Sep 10 17:45:11 2013 +0900
 
     Bug 68955 - Deprecate / remove FC_RASTERIZER
 
@@ -2789,7 +7855,7 @@ Date:     Tue Sep 10 17:45:11 2013 +0900
 
 commit a61e145304da86c8c35b137493bbd8fd5dd1e7f5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Sep 9 19:59:31 2013 +0900
+Date:   Mon Sep 9 19:59:31 2013 +0900
 
     Fix memory leaks in FcFreeTypeQueryFace
 
@@ -2798,7 +7864,7 @@ Date:     Mon Sep 9 19:59:31 2013 +0900
 
 commit 6720892e97f11fbe8d69ae5b3875d928c68ff90e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Sep 2 20:52:20 2013 +0900
+Date:   Mon Sep 2 20:52:20 2013 +0900
 
     Add a test case of the migration for config place
 
@@ -2809,7 +7875,7 @@ Date:     Mon Sep 2 20:52:20 2013 +0900
 
 commit 3e5f70a16ac6d54f1e01c92ddaa5985deec1b7f9
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Sep 2 20:51:46 2013 +0900
+Date:   Mon Sep 2 20:51:46 2013 +0900
 
     Do not create a config dir for migration when no config files nor dirs
 
@@ -2818,18 +7884,18 @@ Date:   Mon Sep 2 20:51:46 2013 +0900
 
 commit d2bb1a8381ba50dce79a487cd82087ca57fdcb68
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sat Aug 31 10:50:07 2013 +0900
+Date:   Sat Aug 31 10:50:07 2013 +0900
 
     Bump version to 2.10.95
 
- README                         | 10 ++++++++--
- configure.ac           |  2 +-
+ README                  | 10 ++++++++--
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 10 insertions(+), 4 deletions(-)
 
 commit 272a99217b15e9cf1e4d2a1dcf92b540576c29a6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sat Aug 31 10:43:13 2013 +0900
+Date:   Sat Aug 31 10:43:13 2013 +0900
 
     Fix a crash
 
@@ -2838,7 +7904,7 @@ Date:     Sat Aug 31 10:43:13 2013 +0900
 
 commit 071ce44c35733e54cb477cc75810cbe55025b619
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Aug 29 20:53:58 2013 +0900
+Date:   Thu Aug 29 20:53:58 2013 +0900
 
     Fix a typo
 
@@ -2847,18 +7913,18 @@ Date:   Thu Aug 29 20:53:58 2013 +0900
 
 commit 06dd98b2a3271e5f02787f208f73f13f794cb1bf
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Aug 29 17:38:29 2013 +0900
+Date:   Thu Aug 29 17:38:29 2013 +0900
 
     Bump version to 2.10.94
 
- README                         | 37 +++++++++++++++++++++++++++++++++++--
- configure.ac           |  2 +-
+ README                  | 37 +++++++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 37 insertions(+), 4 deletions(-)
 
 commit 53ad60deabb787671a862b8d1fab52f8b71bf765
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Aug 29 17:12:45 2013 +0900
+Date:   Thu Aug 29 17:12:45 2013 +0900
 
     Add quz.orth to Makefile.am
 
@@ -2867,7 +7933,7 @@ Date:     Thu Aug 29 17:12:45 2013 +0900
 
 commit c6228f8091ab91b67ea006ad5a1b1da97b3d4a5a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Aug 27 12:28:52 2013 +0900
+Date:   Tue Aug 27 12:28:52 2013 +0900
 
     Bug 68587 - copy qu.orth to quz.orth
 
@@ -2876,7 +7942,7 @@ Date:     Tue Aug 27 12:28:52 2013 +0900
 
 commit fba9efecd2ef3aca84e0a4806899c09ba95f4c19
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Aug 26 12:47:07 2013 +0900
+Date:   Mon Aug 26 12:47:07 2013 +0900
 
     Fix a wrong edit position when 'kind' is different
 
@@ -2885,17 +7951,17 @@ Date:   Mon Aug 26 12:47:07 2013 +0900
 
 commit 223c1384c98caaf9ba5d2cddf7465b7b3a82316b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Aug 23 20:42:37 2013 +0900
+Date:   Fri Aug 23 20:42:37 2013 +0900
 
     Fix a crash when non-builtin objects are edited
 
  src/fccfg.c | 28 +++++++++++-----------------
- src/fcint.h | 5 +++--
+ src/fcint.h |  5 +++--
  2 files changed, 14 insertions(+), 19 deletions(-)
 
 commit 6c664d533d242112c30e0d3b585e90a361a1b959
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Aug 23 19:58:43 2013 +0900
+Date:   Fri Aug 23 19:58:43 2013 +0900
 
     Fix a typo
 
@@ -2904,19 +7970,19 @@ Date:   Fri Aug 23 19:58:43 2013 +0900
 
 commit f3bb3f19c917e3fd0a0cdd9a2adf8f827e7a5838
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 21 14:31:55 2013 -0400
+Date:   Wed Aug 21 14:31:55 2013 -0400
 
     Fix assertion
 
     Apparently some AIX versions have 64bit pointers yet 32bit double
-    alignment. Fix assertion.
+    alignment.  Fix assertion.
 
  src/fcarch.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit ec3f0af6f09292126a54b7abe2313e5124ef9a4c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 21 14:27:16 2013 -0400
+Date:   Wed Aug 21 14:27:16 2013 -0400
 
     Minor
 
@@ -2925,7 +7991,7 @@ Date:     Wed Aug 21 14:27:16 2013 -0400
 
 commit 104a2af0dd60f68a1e3f9e5f99e6180336ce28c2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Aug 21 13:12:41 2013 +0900
+Date:   Wed Aug 21 13:12:41 2013 +0900
 
     Bug 63399 - Add default aliases for Georgia, Garamond, Palatino
     Linotype, Trebuchet MS
@@ -2935,7 +8001,7 @@ Date:     Wed Aug 21 13:12:41 2013 +0900
 
 commit 010c973df5544996f5d8774e361d45daa5b61b52
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Aug 21 13:12:22 2013 +0900
+Date:   Wed Aug 21 13:12:22 2013 +0900
 
     Bug 68340 - More metric compat fonts
 
@@ -2944,7 +8010,7 @@ Date:     Wed Aug 21 13:12:22 2013 +0900
 
 commit 084cf7c44e985dd48c088d921ad0d9a43b0b00b4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Aug 14 12:51:26 2013 +0900
+Date:   Wed Aug 14 12:51:26 2013 +0900
 
     Bug 16818 - fontformat in match pattern is not respected?
 
@@ -2954,7 +8020,7 @@ Date:     Wed Aug 14 12:51:26 2013 +0900
 
 commit 45221ab12fa7001b9659293d4833f828801d2518
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Aug 7 12:19:33 2013 +0900
+Date:   Wed Aug 7 12:19:33 2013 +0900
 
     Bug 67845 - Match on FC_SCALABLE
 
@@ -2964,21 +8030,21 @@ Date:   Wed Aug 7 12:19:33 2013 +0900
 
 commit 041deb0cc541692e260b93232b9957c2538e3bb9
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Aug 7 11:57:19 2013 +0900
+Date:   Wed Aug 7 11:57:19 2013 +0900
 
     warn deprecated only when migration failed
 
- src/fccache.c | 28 ----------------------------
+ src/fccache.c  | 28 ----------------------------
  src/fccompat.c | 27 +++++++++++++++++++++++++++
- src/fcdir.c   | 10 ++++++++++
- src/fcint.h   |  6 ++++++
- src/fcxml.c   | 59
+ src/fcdir.c    | 10 ++++++++++
+ src/fcint.h    |  6 ++++++
+ src/fcxml.c    | 59
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
  5 files changed, 101 insertions(+), 29 deletions(-)
 
 commit d52daa0024a6c0bb160c3b3c7f85d0b031f88c85
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Aug 6 15:09:23 2013 +0900
+Date:   Tue Aug 6 15:09:23 2013 +0900
 
     Bug 67809 - Invalid read/write with valgrind when assigning something
     twice
@@ -2988,7 +8054,7 @@ Date:     Tue Aug 6 15:09:23 2013 +0900
 
 commit a51d2767ce4d88017bd7d34ccb9e352d1687a3c0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Aug 5 20:04:13 2013 +0900
+Date:   Mon Aug 5 20:04:13 2013 +0900
 
     Fix wrong edit position
 
@@ -3000,27 +8066,27 @@ Date:   Mon Aug 5 20:04:13 2013 +0900
 
 commit 338ffe6b886ad4ba86ff471cb59c4a5e5ffbe408
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jul 12 14:52:01 2013 +0900
+Date:   Fri Jul 12 14:52:01 2013 +0900
 
     Correct fontconfig.pc to add certain dependencies for static build
 
- configure.ac    | 14 ++++----------
+ configure.ac     | 14 ++++----------
  fontconfig.pc.in |  7 ++++---
  2 files changed, 8 insertions(+), 13 deletions(-)
 
 commit 7274f6e37a4d1a062b4eee3a625bd393a283a9d0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jul 12 12:39:36 2013 +0900
+Date:   Fri Jul 12 12:39:36 2013 +0900
 
     Correct fontconfig.pc to add certain dependencies for build
 
- configure.ac    | 26 +++++++++++++++++++++++---
+ configure.ac     | 26 +++++++++++++++++++++++---
  fontconfig.pc.in |  7 ++++---
  2 files changed, 27 insertions(+), 6 deletions(-)
 
 commit 04bd904632b22682c888f658650cdcd322544273
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 9 16:43:26 2013 +0900
+Date:   Tue Jul 9 16:43:26 2013 +0900
 
     trivial code optimization
 
@@ -3029,20 +8095,20 @@ Date:   Tue Jul 9 16:43:26 2013 +0900
 
 commit d420e1df983871ab18b0f07976596fdf0ce78847
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jul 4 19:51:03 2013 +0900
+Date:   Thu Jul 4 19:51:03 2013 +0900
 
     Rework to apply the intermixed test and edit elements in one-pass
 
  src/fccfg.c | 349
  +++++++++++++++++++++++++++---------------------------------
- src/fcdbg.c | 39 +++++--
- src/fcint.h | 29 +++--
+ src/fcdbg.c |  39 +++++--
+ src/fcint.h |  29 +++--
  src/fcxml.c | 245 ++++++++++++++++++++----------------------
  4 files changed, 321 insertions(+), 341 deletions(-)
 
 commit 1162515a9819c7355890aad919e5b9daa448a3a4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jul 3 11:56:58 2013 +0900
+Date:   Wed Jul 3 11:56:58 2013 +0900
 
     Add FC_UNUSED to FC_ASSERT_STATIC macro to avoid compiler warning
 
@@ -3051,7 +8117,7 @@ Date:     Wed Jul 3 11:56:58 2013 +0900
 
 commit cbf06d7d3c797b97d720909fd4554d1771d41c20
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 2 19:04:36 2013 +0900
+Date:   Tue Jul 2 19:04:36 2013 +0900
 
     Use INT_MAX instead of unreliable hardcoding value
 
@@ -3060,7 +8126,7 @@ Date:     Tue Jul 2 19:04:36 2013 +0900
 
 commit ab5b535704fbcab43040d80100cb19cb33f6219d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 2 18:54:29 2013 +0900
+Date:   Tue Jul 2 18:54:29 2013 +0900
 
     Ignore scandir() check on mingw
 
@@ -3069,7 +8135,7 @@ Date:     Tue Jul 2 18:54:29 2013 +0900
 
 commit 0907589a79d05aeed9bc6bff783838b0eb25736b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 28 15:54:38 2013 +0900
+Date:   Fri Jun 28 15:54:38 2013 +0900
 
     Fix the behavior of intermixed tests end edits in match
 
@@ -3095,13 +8161,13 @@ Date:   Fri Jun 28 15:54:38 2013 +0900
     </match>
 
  src/fccfg.c | 27 ++++++++++++++++-----------
- src/fcint.h | 1 +
+ src/fcint.h |  1 +
  src/fcxml.c | 37 ++++++++++++++++++++++++++++++++++++-
  3 files changed, 53 insertions(+), 12 deletions(-)
 
 commit 197d06c49b01413303f2c92130594daa4fcaa6ad
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 28 15:04:11 2013 +0900
+Date:   Fri Jun 28 15:04:11 2013 +0900
 
     Add FcTypeUnknown to FcType to avoid comparison of constant -1
 
@@ -3114,19 +8180,19 @@ Date:   Fri Jun 28 15:04:11 2013 +0900
 
  fontconfig/fcprivate.h  | 3 ++-
  fontconfig/fontconfig.h | 1 +
- src/fccfg.c            | 4 +++-
- src/fcdbg.c            | 7 +++++++
- src/fcint.h            | 6 ++++--
- src/fclist.c           | 1 +
- src/fcname.c           | 5 ++++-
- src/fcobjs.c           | 2 +-
- src/fcpat.c            | 5 ++++-
- src/fcxml.c            | 2 +-
+ src/fccfg.c             | 4 +++-
+ src/fcdbg.c             | 7 +++++++
+ src/fcint.h             | 6 ++++--
+ src/fclist.c            | 1 +
+ src/fcname.c            | 5 ++++-
+ src/fcobjs.c            | 2 +-
+ src/fcpat.c             | 5 ++++-
+ src/fcxml.c             | 2 +-
  10 files changed, 28 insertions(+), 8 deletions(-)
 
 commit 38ab7ab2fbd83c0c62e4b78302b5fe89da0cb79e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jun 27 13:10:27 2013 +0900
+Date:   Thu Jun 27 13:10:27 2013 +0900
 
     Fix a incompatible pointer warning on NetBSD
 
@@ -3136,7 +8202,7 @@ Date:     Thu Jun 27 13:10:27 2013 +0900
 
 commit 8603e5869505ff06d443b8b22d5357d4caaaac24
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jun 27 12:30:56 2013 +0900
+Date:   Thu Jun 27 12:30:56 2013 +0900
 
     Fix a shift count overflow on 32bit box
 
@@ -3145,7 +8211,7 @@ Date:     Thu Jun 27 12:30:56 2013 +0900
 
 commit 9acc14c34a372b54f9075ec3611588298fb2a501
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jun 26 12:03:38 2013 +0900
+Date:   Wed Jun 26 12:03:38 2013 +0900
 
     Fix a comparison of constant warning with clang
 
@@ -3154,7 +8220,7 @@ Date:     Wed Jun 26 12:03:38 2013 +0900
 
 commit cd9b1033a68816a7acfbba1718ba0aa5888f6ec7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri May 24 13:55:07 2013 +0900
+Date:   Fri May 24 13:55:07 2013 +0900
 
     Bug 64906 - FcNameParse() should ignore leading whitespace in
     parameters
@@ -3163,7 +8229,7 @@ Date:     Fri May 24 13:55:07 2013 +0900
     $ FC_DEBUG=4 fc-match ":family=foo bar, sans-serif"
     ...
     FcConfigSubstitute Pattern has 3 elts (size 16)
-           family: "foo bar"(s) "sans-serif"(s)
+            family: "foo bar"(s) "sans-serif"(s)
     ...
 
  src/fcname.c | 6 ++++++
@@ -3171,18 +8237,18 @@ Date:   Fri May 24 13:55:07 2013 +0900
 
 commit 8d54091513c00905457e0ee49ba6ea2c4aacddd7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 20 17:42:34 2013 +0900
+Date:   Mon May 20 17:42:34 2013 +0900
 
     Bump version to 2.10.93
 
- README                         | 21 +++++++++++++++++++--
- configure.ac           |  2 +-
+ README                  | 21 +++++++++++++++++++--
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 21 insertions(+), 4 deletions(-)
 
 commit 1cad82cde29ea488ea22541b46ed347d10952557
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri May 10 20:26:11 2013 +0900
+Date:   Fri May 10 20:26:11 2013 +0900
 
     Bug 63922 - FcFreeTypeQueryFace fails on postscripts fonts loaded
     from memory
@@ -3194,13 +8260,13 @@ Date:   Fri May 10 20:26:11 2013 +0900
     patterns.
 
  src/fcfreetype.c | 16 +++++++++-------
- src/fcmatch.c   | 30 +++++++++++++++++++++---------
- src/fcobjs.h    |  2 +-
+ src/fcmatch.c    | 30 +++++++++++++++++++++---------
+ src/fcobjs.h     |  2 +-
  3 files changed, 31 insertions(+), 17 deletions(-)
 
 commit 0f9aa8759df563332db60055ae33dd9424ebf802
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu May 16 13:41:32 2013 +0900
+Date:   Thu May 16 13:41:32 2013 +0900
 
     Fix missing OSAtomicCompareAndSwapPtrBarrier() on Mac OS X 10.4
 
@@ -3211,20 +8277,19 @@ Date:   Thu May 16 13:41:32 2013 +0900
 
 commit 93137252cfab1c38e1c9137d831c177665e0592a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 13 12:14:29 2013 +0900
+Date:   Mon May 13 12:14:29 2013 +0900
 
     Bug 63452 - conf.d/README outdated
 
     reflect correct path where is configured at the build time.
 
- conf.d/Makefile.am | 11 ++++++++---
- conf.d/README     | 23 -----------------------
- conf.d/README.in   | 23 +++++++++++++++++++++++
- 3 files changed, 31 insertions(+), 26 deletions(-)
+ conf.d/Makefile.am           | 11 ++++++++---
+ conf.d/{README => README.in} |  6 +++---
+ 2 files changed, 11 insertions(+), 6 deletions(-)
 
 commit f6244d2cf231e1dc756f3e941e61b9bf124879bb
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed May 8 11:57:49 2013 +0900
+Date:   Wed May 8 11:57:49 2013 +0900
 
     Use the glob matching for filename
 
@@ -3243,7 +8308,7 @@ Date:     Wed May 8 11:57:49 2013 +0900
 
 commit 03216ccf4ca0808f9c7b9513efcaeb7f4058b575
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 10 18:41:22 2013 +0900
+Date:   Wed Apr 10 18:41:22 2013 +0900
 
     Bug 63329 - make check fails: .. contents:: :depth: 2
 
@@ -3252,14 +8317,14 @@ Date:   Wed Apr 10 18:41:22 2013 +0900
     fails with FT_Err_Invalid_Face_Handle.
 
  src/fcfreetype.c | 32 ++++++++++++++++++++---------
- src/fchash.c    | 62
+ src/fchash.c     | 62
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h     |  4 ++++
+ 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
+Date:   Wed Apr 10 11:14:39 2013 +0900
 
     documented FC_HASH and FC_POSTSCRIPT_NAME
 
@@ -3268,30 +8333,30 @@ Date:   Wed Apr 10 11:14:39 2013 +0900
 
 commit fc5a589abad0e8285f7d95007ebda76536e8fa7d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Apr 9 17:18:43 2013 +0900
+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 ++---
+ 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
+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 +++-
+ 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
+Date:   Tue Apr 9 11:34:35 2013 +0900
 
     Ensure closing fp on error
 
@@ -3300,7 +8365,7 @@ Date:     Tue Apr 9 11:34:35 2013 +0900
 
 commit 18bf57c70aafcad031c0b43756b754dcaf6a756a
 Author: Sebastian Freundt <hroptatyr@fresse.org>
-Date:  Sun Apr 7 00:02:58 2013 +0000
+Date:   Sun Apr 7 00:02:58 2013 +0000
 
     build-chain, replace INCLUDES directive by AM_CPPFLAGS
 
@@ -3310,21 +8375,21 @@ Date:   Sun Apr 7 00:02:58 2013 +0000
     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 +-
+ 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-query/Makefile.am    | 2 +-
+ fc-scan/Makefile.am     | 2 +-
  fc-validate/Makefile.am | 2 +-
- src/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
+Date:   Mon Apr 1 18:16:28 2013 +0900
 
     Bug 62980 - matching native fonts with even :lang=en
 
@@ -3337,19 +8402,19 @@ Date:   Mon Apr 1 18:16:28 2013 +0900
 
 commit 73fa326d1e791b587da93b795f962c3405b7a96d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 29 16:10:15 2013 +0900
+Date:   Fri Mar 29 16:10:15 2013 +0900
 
     Bump version to 2.10.92
 
- README                         | 65
+ README                  | 65
  +++++++++++++++++++++++++++++++++++++++++++++++--
- configure.ac           |  2 +-
+ 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
+Date:   Fri Mar 29 16:07:30 2013 +0900
 
     Minor fix
 
@@ -3358,7 +8423,7 @@ Date:     Fri Mar 29 16:07:30 2013 +0900
 
 commit b3b435b87f1aec1b2779fd7edbbff5571c3c61a2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 29 16:02:34 2013 +0900
+Date:   Fri Mar 29 16:02:34 2013 +0900
 
     Bump libtool revision
 
@@ -3367,7 +8432,7 @@ Date:     Fri Mar 29 16:02:34 2013 +0900
 
 commit 3fc22cfe756fcb2d6c5a64aa305957c417c6cecd
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 29 12:46:04 2013 +0900
+Date:   Fri Mar 29 12:46:04 2013 +0900
 
     Minor cleanup
 
@@ -3376,7 +8441,7 @@ Date:     Fri Mar 29 12:46:04 2013 +0900
 
 commit b561ff2016ce84eef3c81f16dfb0481be6a13f9b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 18 11:30:10 2013 +0900
+Date:   Fri Jan 18 11:30:10 2013 +0900
 
     Bug 38737 - Wishlist: support FC_POSTSCRIPT_NAME
 
@@ -3385,17 +8450,17 @@ Date:   Fri Jan 18 11:30:10 2013 +0900
     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
+ 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
+Date:   Thu Mar 21 11:58:06 2013 +0900
 
     Fix a SIGSEGV on FcPatternGet* with NULL pattern
 
@@ -3404,7 +8469,7 @@ Date:     Thu Mar 21 11:58:06 2013 +0900
 
 commit bdf1581e3de5528f397f19bfd4ca9caaf9e7fe4a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Mar 8 05:53:27 2013 -0500
+Date:   Fri Mar 8 05:53:27 2013 -0500
 
     Fix crash with FcConfigSetCurrent(NULL)
 
@@ -3413,7 +8478,7 @@ Date:     Fri Mar 8 05:53:27 2013 -0500
 
 commit aad4d6f6c68d06415333f5d0d3e4b4870114f11d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 7 13:19:50 2013 +0900
+Date:   Thu Mar 7 13:19:50 2013 +0900
 
     Do not copy FC_*LANG_OBJECT even if it's not available on the pattern
 
@@ -3426,7 +8491,7 @@ Date:     Thu Mar 7 13:19:50 2013 +0900
 
 commit e96d7760886a3781a46b3271c76af99e15cb0146
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Feb 6 19:35:30 2013 +0900
+Date:   Wed Feb 6 19:35:30 2013 +0900
 
     Bug 59456 - Adding a --sysroot like option to fc-cache
 
@@ -3434,20 +8499,20 @@ Date:   Wed Feb 6 19:35:30 2013 +0900
     In order to do this, new APIs, FcConfigGetSysRoot() and
     FcConfigSetSysRoot() is available.
 
- doc/fcconfig.fncs      | 21 +++++++++++
- fc-cache/fc-cache.c    | 38 +++++++++++++------
+ doc/fcconfig.fncs       | 21 +++++++++++
+ fc-cache/fc-cache.c     | 38 +++++++++++++------
  fontconfig/fontconfig.h |  7 ++++
- src/fccache.c          | 99
+ src/fccache.c           | 99
  +++++++++++++++++++++++++++++++++----------------
- src/fccfg.c            | 57 ++++++++++++++++++++++++++++
- src/fcinit.c           | 30 ++++++++++-----
- src/fcint.h            | 15 +++++++-
- src/fcstr.c            | 62 ++++++++++++++++++++++++++++++-
+ 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
+Date:   Tue Mar 5 12:46:01 2013 +0900
 
     Fix a memory leak
 
@@ -3456,7 +8521,7 @@ Date:     Tue Mar 5 12:46:01 2013 +0900
 
 commit 612ee2a5c91b8929b2cc5abce4af84d8d7e66bd0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 1 22:21:25 2013 +0900
+Date:   Fri Mar 1 22:21:25 2013 +0900
 
     Fix broken sort order with FcFontSort()
 
@@ -3467,7 +8532,7 @@ Date:     Fri Mar 1 22:21:25 2013 +0900
 
 commit ea4ebd59377d3dff3616bd20381f308a92781ae6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 1 19:38:21 2013 +0900
+Date:   Fri Mar 1 19:38:21 2013 +0900
 
     Fix a crash when the object is non-builtin object
 
@@ -3476,7 +8541,7 @@ Date:     Fri Mar 1 19:38:21 2013 +0900
 
 commit 10230497675fa4fcbb427efe8dd2883839ddaec0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 1 18:41:27 2013 +0900
+Date:   Fri Mar 1 18:41:27 2013 +0900
 
     Fix a typo
 
@@ -3485,7 +8550,7 @@ Date:     Fri Mar 1 18:41:27 2013 +0900
 
 commit db69bf6ecd0da4d23bdfe38652bb53d2daa655a2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 1 18:31:01 2013 +0900
+Date:   Fri Mar 1 18:31:01 2013 +0900
 
     Bug 60783 - Add Liberation Sans Narrow to 30-metric-aliases.conf
 
@@ -3496,7 +8561,7 @@ Date:     Fri Mar 1 18:31:01 2013 +0900
 
 commit 2c696255749683e9a084f797eb033d222510a275
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Feb 18 13:17:53 2013 +0900
+Date:   Mon Feb 18 13:17:53 2013 +0900
 
     Bug 60748 - broken conf.d/10-autohint.conf and conf.d/10-unhinted.conf
 
@@ -3505,13 +8570,13 @@ Date:   Mon Feb 18 13:17:53 2013 +0900
     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/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 +-
@@ -3519,7 +8584,7 @@ Date:     Mon Feb 18 13:17:53 2013 +0900
 
 commit 83f679ce558de736ef1a095a362397da0ac3417f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 15 09:48:38 2013 -0500
+Date:   Fri Feb 15 09:48:38 2013 -0500
 
     Accept digits as part of OpenType script tags
 
@@ -3530,7 +8595,7 @@ Date:     Fri Feb 15 09:48:38 2013 -0500
 
 commit 72b0480a21958f0f8c115d8e0a5bfbd8d358b5c3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 7 17:56:17 2013 +0900
+Date:   Thu Feb 7 17:56:17 2013 +0900
 
     Add Culmus foundry to the vendor list
 
@@ -3555,7 +8620,7 @@ Date:     Thu Feb 7 17:56:17 2013 +0900
 
 commit 96220a5ed9d1d761b14a7ac516ac6786c132f280
 Author: Quentin Glidic <sardemff7+git@sardemff7.net>
-Date:  Sat Feb 2 17:01:07 2013 +0100
+Date:   Sat Feb 2 17:01:07 2013 +0100
 
     Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
 
@@ -3571,42 +8636,42 @@ Date:   Sat Feb 2 17:01:07 2013 +0100
 
     Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
 
- Makefile.am     |  1 -
- configure.ac    |  2 +-
+ 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
+Date:   Wed Feb 6 19:14:51 2013 +0900
 
     Bump the cache version to 4
 
  fontconfig/fontconfig.h | 2 +-
- src/fcint.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
+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/fcint.h            |   2 +-
+ src/fcmatch.c          | 184
  +++++++++++++++++++++++--------------------------
- src/fcname.c          |   2 +-
- src/fcobjs.h          |  90 ++++++++++++------------
+ 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
+Date:   Tue Feb 5 20:44:18 2013 +0900
 
     Bug 60312 - DIST_SUBDIRS should never appear in a conditional
 
@@ -3626,7 +8691,7 @@ Date:     Tue Feb 5 20:44:18 2013 +0900
 
 commit 95af7447dba7c54ed162b667c0bb2ea6500e8f32
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Feb 4 16:03:29 2013 +0900
+Date:   Mon Feb 4 16:03:29 2013 +0900
 
     Bug 50733 - Add font-file hash?
 
@@ -3634,17 +8699,17 @@ Date:   Mon Feb 4 16:03:29 2013 +0900
     from the font file.
 
  fontconfig/fontconfig.h |   1 +
- src/Makefile.am        |   1 +
- src/fcfreetype.c       |   9 ++
- src/fchash.c           | 265
+ src/Makefile.am         |   1 +
+ src/fcfreetype.c        |   9 ++
+ src/fchash.c            | 265
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h            |   7 ++
- src/fcobjs.h           |   1 +
+ 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
+Date:   Tue Feb 5 14:17:16 2013 +0900
 
     Use AM_MISSING_PROG instead of hardcoding missing
 
@@ -3654,7 +8719,7 @@ Date:     Tue Feb 5 14:17:16 2013 +0900
 
 commit 241cd53ff62599ecf557c6a4f975fc427dad9700
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Feb 5 11:33:47 2013 +0900
+Date:   Tue Feb 5 11:33:47 2013 +0900
 
     Revert "test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT"
 
@@ -3668,7 +8733,7 @@ Date:     Tue Feb 5 11:33:47 2013 +0900
 
 commit 2146b0307a3476892723104481f27f8484451c52
 Author: Quentin Glidic <sardemff7+git@sardemff7.net>
-Date:  Sat Feb 2 17:01:07 2013 +0100
+Date:   Sat Feb 2 17:01:07 2013 +0100
 
     test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT
 
@@ -3688,17 +8753,17 @@ Date:   Sat Feb 2 17:01:07 2013 +0100
 
 commit da0946721af3ab2dff3cd903065336b93592d067
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Feb 4 17:57:00 2013 +0900
+Date:   Mon Feb 4 17:57:00 2013 +0900
 
     Use AM_MISSING_PROG instead of hardcoding missing
 
- configure.ac   | 2 ++
+ 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
+Date:   Mon Feb 4 17:20:03 2013 +0900
 
     Modernize configure.ac
 
@@ -3707,7 +8772,7 @@ Date:     Mon Feb 4 17:20:03 2013 +0900
 
 commit 20191810d1fea7c2f49b65ffee3e4d5e2bc0bac3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jan 29 20:19:36 2013 +0900
+Date:   Tue Jan 29 20:19:36 2013 +0900
 
     Bug 23757 - Add mode="delete" to <edit>
 
@@ -3723,34 +8788,34 @@ Date:   Tue Jan 29 20:19:36 2013 +0900
     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"/>
+        <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"/>
+        <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 +++++++++++
+ 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
+Date:   Thu Jan 31 21:32:46 2013 -0500
 
     build: Only use PKG_INSTALLDIR if available
 
@@ -3762,12 +8827,12 @@ Date:   Thu Jan 31 21:32:46 2013 -0500
 
 commit e11f15628cff04c4a742f88abee22f440edcce52
 Author: Christoph J. Thompson <cjsthompson@gmail.com>
-Date:  Fri Feb 1 02:27:32 2013 +0100
+Date:   Fri Feb 1 02:27:32 2013 +0100
 
     Use the PKG_INSTALLDIR macro.
 
-       modified:   Makefile.am
-       modified:   configure.ac
+            modified:   Makefile.am
+            modified:   configure.ac
 
  Makefile.am  | 1 -
  configure.ac | 1 +
@@ -3775,7 +8840,7 @@ Date:     Fri Feb 1 02:27:32 2013 +0100
 
 commit d26fb23c41abd87422778bb38eea39f25ba3dc4a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jan 25 20:01:24 2013 +0900
+Date:   Fri Jan 25 20:01:24 2013 +0900
 
     Bug 59385 - Do the right thing for intermixed edit and test elements
 
@@ -3785,30 +8850,30 @@ Date:   Fri Jan 25 20:01:24 2013 +0900
     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 +-
+            <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
+Date:   Wed Jan 23 12:37:51 2013 +0900
 
     remove the unnecessary code
 
@@ -3817,19 +8882,19 @@ Date:   Wed Jan 23 12:37:51 2013 +0900
 
 commit 5400bb4fb43dc811b813f11d5b0c023db727f543
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jan 23 12:32:37 2013 +0900
+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 +-
+ 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
+Date:   Tue Jan 22 12:11:56 2013 +0900
 
     Fix installation on MinGW32
 
@@ -3840,21 +8905,21 @@ Date:   Tue Jan 22 12:11:56 2013 +0900
 
 commit 6363193a0575cf6f58baf7f0a772ad8f92b7b904
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jan 22 12:03:28 2013 +0900
+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/fccache.c  |  57 ----------------------------
  src/fccompat.c | 116
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h   |   3 ++
+ 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
+Date:   Tue Jan 22 10:26:41 2013 +0900
 
     Add missing file descriptor to F_DUPFD_CLOEXEC
 
@@ -3865,7 +8930,7 @@ Date:     Tue Jan 22 10:26:41 2013 +0900
 
 commit 6118781f7f5dba672d19a841cc231661bf5fb59d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 17 19:27:20 2013 -0600
+Date:   Thu Jan 17 19:27:20 2013 -0600
 
     Fix readlink failure
 
@@ -3876,19 +8941,19 @@ Date:   Thu Jan 17 19:27:20 2013 -0600
 
 commit 671bcb34e23ed03b1f564af35560db81f8b12b96
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jan 17 12:49:16 2013 +0900
+Date:   Thu Jan 17 12:49:16 2013 +0900
 
     Better fix for 2fe5ddfd
 
     Drop realpath() and fix breakage on Win32
 
- configure.ac   |  2 +-
+ 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
+Date:   Wed Jan 16 21:01:28 2013 -0600
 
     Fix FC_PRGNAME default
 
@@ -3899,7 +8964,7 @@ Date:     Wed Jan 16 21:01:28 2013 -0600
 
 commit 55d39bcad0737e92e1207fabbd8c65fa9e5e0482
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jan 16 07:30:44 2013 -0600
+Date:   Wed Jan 16 07:30:44 2013 -0600
 
     Fix fc-cache crash caused by looking up NULL object incorrectly
 
@@ -3911,7 +8976,7 @@ Date:     Wed Jan 16 07:30:44 2013 -0600
 
 commit 106c4f73119e00a7804ef79ee556f1111d680e32
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jan 16 07:05:07 2013 -0600
+Date:   Wed Jan 16 07:05:07 2013 -0600
 
     Minor
 
@@ -3920,7 +8985,7 @@ Date:     Wed Jan 16 07:05:07 2013 -0600
 
 commit 1a5d0daea0173e2cc47d76d2022467f0dbd423f0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jan 16 04:52:06 2013 -0600
+Date:   Wed Jan 16 04:52:06 2013 -0600
 
     Remove unused checks for common functions
 
@@ -3931,36 +8996,36 @@ Date:   Wed Jan 16 04:52:06 2013 -0600
 
 commit f9ac4c84c90cbb57afbf1fa3a5c9ff3bfc4f537e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jan 16 16:35:28 2013 +0900
+Date:   Wed Jan 16 16:35:28 2013 +0900
 
     Improve FcGetPrgname() to work on BSD
 
- configure.ac   |  2 +-
+ 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
+Date:   Tue Jan 15 20:41:26 2013 -0600
 
     Bug 59379 - FC_PRGNAME
 
     Can be used for per-application configuration.
 
- configure.ac             |  2 +-
+ 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/fccfg.c               |  7 ++++
+ src/fcdefault.c           | 85
  +++++++++++++++++++++++++++++++++++++++++++++--
- src/fcint.h              |  3 ++
- src/fcobjs.h             |  1 +
+ 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
+Date:   Tue Sep 4 12:39:48 2012 +0900
 
     Bug 50497 - RFE: Add OpenType feature tags support
 
@@ -3969,12 +9034,12 @@ Date:   Tue Sep 4 12:39:48 2012 +0900
  doc/fontconfig-devel.sgml | 2 ++
  doc/fontconfig-user.sgml  | 1 +
  fontconfig/fontconfig.h   | 1 +
- src/fcobjs.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
+Date:   Tue Jan 15 17:26:27 2013 +0900
 
     Fix the build fail on MinGW
 
@@ -3990,7 +9055,7 @@ Date:     Tue Jan 15 17:26:27 2013 +0900
 
 commit 8b8f0d21534aa9b82276815c84429ffca8941d2a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jan 14 14:39:12 2013 -0600
+Date:   Mon Jan 14 14:39:12 2013 -0600
 
     Minor
 
@@ -3999,7 +9064,7 @@ Date:     Mon Jan 14 14:39:12 2013 -0600
 
 commit 8828fffd93c6b19bcfd7626ddc472aa8f055d034
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jan 14 14:36:38 2013 -0600
+Date:   Mon Jan 14 14:36:38 2013 -0600
 
     Copy all values from pattern to font if the font doesn't have
     the element
@@ -4011,7 +9076,7 @@ Date:     Mon Jan 14 14:36:38 2013 -0600
 
 commit 0831c1770e4bac7269a190936bbb0529d747e233
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 10 09:01:52 2013 -0600
+Date:   Thu Jan 10 09:01:52 2013 -0600
 
     Ensure we find the uninstalled fontconfig header
 
@@ -4022,7 +9087,7 @@ Date:     Thu Jan 10 09:01:52 2013 -0600
 
 commit 1527c395cbe0bbab9e66a42213ef3ac5ce1c0383
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 10 09:00:18 2013 -0600
+Date:   Thu Jan 10 09:00:18 2013 -0600
 
     Resepct $NOCONFIGURE
 
@@ -4033,19 +9098,19 @@ Date:   Thu Jan 10 09:00:18 2013 -0600
 
 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
 
@@ -4054,7 +9119,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
 
@@ -4063,39 +9128,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
 
@@ -4104,20 +9169,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!
 
@@ -4130,22 +9195,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.
 
@@ -4154,19 +9219,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
 
@@ -4175,24 +9240,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
 
@@ -4203,7 +9268,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
 
@@ -4213,7 +9278,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
 
@@ -4222,7 +9287,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
 
@@ -4231,7 +9296,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
 
@@ -4239,16 +9304,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
 
@@ -4259,7 +9324,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
 
@@ -4268,7 +9333,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
 
@@ -4277,7 +9342,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
 
@@ -4287,7 +9352,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
 
@@ -4296,23 +9361,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
 
@@ -4371,12 +9436,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
@@ -4387,17 +9452,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
 
@@ -4405,26 +9470,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
 
@@ -4434,36 +9499,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
 
@@ -4473,7 +9538,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
 
@@ -4482,24 +9547,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
 
@@ -4510,7 +9575,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
 
@@ -4519,7 +9584,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
 
@@ -4531,7 +9596,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
 
@@ -4540,7 +9605,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
 
@@ -4552,7 +9617,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
 
@@ -4561,7 +9626,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
 
@@ -4572,17 +9637,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
 
@@ -4591,7 +9656,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
 
@@ -4600,7 +9665,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
 
@@ -4609,18 +9674,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
 
@@ -4629,7 +9694,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
 
@@ -4641,7 +9706,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
 
@@ -4650,7 +9715,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
 
@@ -4659,66 +9724,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
 
@@ -4727,11 +9792,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.
 
@@ -4741,34 +9806,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
 
@@ -4778,19 +9843,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
 
@@ -4805,16 +9870,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
 
@@ -4823,7 +9888,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
 
@@ -4832,7 +9897,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
 
@@ -4841,7 +9906,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
 
@@ -4850,7 +9915,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
 
@@ -4859,7 +9924,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
 
@@ -4868,20 +9933,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">
 
@@ -4890,7 +9955,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
 
@@ -4899,24 +9964,24 @@ 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
 
     Before:
     $ fc-match sans:matrix=2 -v | grep matrix
-       matrix: [2 6.95183e-310; 0 0](s)
+            matrix: [2 6.95183e-310; 0 0](s)
 
     After:
     $ fc-match sans:matrix=2 -v | grep matrix
-       matrix: [2 0; 0 1](s)
+            matrix: [2 0; 0 1](s)
 
  src/fcname.c | 1 +
  1 file changed, 1 insertion(+)
 
 commit 6bfef3ca4e52bdd5216facb90faa043c845aa0f6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 31 17:21:07 2012 -0600
+Date:   Mon Dec 31 17:21:07 2012 -0600
 
     Make tests run on Windows
 
@@ -4926,7 +9991,7 @@ Date:     Mon Dec 31 17:21:07 2012 -0600
 
 commit b1630dc00e3538a8fc6629ddbbba5435bfb2bd7a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 31 17:20:29 2012 -0600
+Date:   Mon Dec 31 17:20:29 2012 -0600
 
     Enable fcarch assert checks even when FC_ARCHITECTURE is explicitly
     given
@@ -4939,7 +10004,7 @@ Date:    Mon Dec 31 17:20:29 2012 -0600
 
 commit a0638ff0c7445925e873b39dbe584fbaf3cc87e5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 31 17:20:12 2012 -0600
+Date:   Mon Dec 31 17:20:12 2012 -0600
 
     Remove unneeded stuff
 
@@ -4949,7 +10014,7 @@ Date:    Mon Dec 31 17:20:12 2012 -0600
 
 commit a603be89cd13555d5992836531c5ef2ba88b8473
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 31 17:00:19 2012 -0600
+Date:   Mon Dec 31 17:00:19 2012 -0600
 
     Unbreak build when FC_ARCHITECTURE is defined
 
@@ -4958,7 +10023,7 @@ Date:    Mon Dec 31 17:00:19 2012 -0600
 
 commit 1fbb0b3b15774c187c697a80fb3c89bc1f3e0006
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 30 19:08:42 2012 -0600
+Date:   Sun Dec 30 19:08:42 2012 -0600
 
     Don't warn if an unknown element is used in an expression
 
@@ -4968,28 +10033,28 @@ Date:  Sun Dec 30 19:08:42 2012 -0600
 
     <match target="font">
       <test name="scalable" compare="eq">
-       <bool>false</bool>
+        <bool>false</bool>
       </test>
       <edit name="pixelsizefixupfactor" mode="assign">
-       <divide>
-         <name target="pattern">pixelsize</name>
-         <name target="font"   >pixelsize</name>
-       </divide>
+        <divide>
+          <name target="pattern">pixelsize</name>
+          <name target="font"   >pixelsize</name>
+        </divide>
       </edit>
       <edit name="matrix" mode="assign">
-       <times>
-         <name>matrix</name>
-         <matrix>
-           <name>pixelsizefixupfactor</name> <double>0</double>
-           <double>0</double> <name>pixelsizefixupfactor</name>
-          </matrix>
-       </times>
+        <times>
+          <name>matrix</name>
+          <matrix>
+            <name>pixelsizefixupfactor</name> <double>0</double>
+            <double>0</double> <name>pixelsizefixupfactor</name>
+           </matrix>
+        </times>
       </edit>
       <edit name="size" mode="assign">
-       <divide>
-         <name>size</name>
-         <name>pixelsizefixupfactor</name>
-       </divide>
+        <divide>
+          <name>size</name>
+          <name>pixelsizefixupfactor</name>
+        </divide>
       </edit>
     </match>
 
@@ -5004,7 +10069,7 @@ Date:    Sun Dec 30 19:08:42 2012 -0600
 
 commit 51b0044648e00025cf20014b19aaceed7beeed75
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 23:58:38 2012 -0500
+Date:   Sat Dec 29 23:58:38 2012 -0500
 
     Allow target="font/pattern/default" in <name> elements
 
@@ -5014,41 +10079,41 @@ Date:  Sat Dec 29 23:58:38 2012 -0500
 
     <match target="font">
       <test name="scalable" compare="eq">
-       <bool>false</bool>
+        <bool>false</bool>
       </test>
       <edit name="pixelsizefixupfactor" mode="assign">
-       <divide>
-         <name target="pattern">pixelsize</name>
-         <name target="font"   >pixelsize</name>
-       </divide>
+        <divide>
+          <name target="pattern">pixelsize</name>
+          <name target="font"   >pixelsize</name>
+        </divide>
       </edit>
       <edit name="matrix" mode="assign">
-       <times>
-         <name>matrix</name>
-         <matrix>
-           <name>pixelsizefixupfactor</name> <double>0</double>
-           <double>0</double> <name>pixelsizefixupfactor</name>
-          </matrix>
-       </times>
+        <times>
+          <name>matrix</name>
+          <matrix>
+            <name>pixelsizefixupfactor</name> <double>0</double>
+            <double>0</double> <name>pixelsizefixupfactor</name>
+           </matrix>
+        </times>
       </edit>
     </match>
 
-    Part of work to make bitmap font scaling possible. See thread
+    Part of work to make bitmap font scaling possible.  See thread
     discussion:
 
     http://lists.freedesktop.org/archives/fontconfig/2012-December/004498.html
 
- fonts.dtd   | 3 ++-
+ fonts.dtd   |  3 ++-
  src/fccfg.c | 57 +++++++++++++++++++++++++++----------------------
  src/fcdbg.c | 19 ++++++++++++-----
- src/fcint.h | 9 +++++++-
+ src/fcint.h |  9 +++++++-
  src/fcxml.c | 71
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
  5 files changed, 118 insertions(+), 41 deletions(-)
 
 commit d7e1965aa0f55925913e9764d2d0792cc14490c2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 23:12:07 2012 -0500
+Date:   Sat Dec 29 23:12:07 2012 -0500
 
     Remove memory accounting and reporting
 
@@ -5056,24 +10121,24 @@ Date:  Sat Dec 29 23:12:07 2012 -0500
 
  src/fcatomic.c  |   6 ----
  src/fcblanks.c  |   8 -----
- src/fccfg.c    |  16 ---------
+ src/fccfg.c     |  16 ---------
  src/fccharset.c |  36 -------------------
- src/fcfs.c     |   8 -----
- src/fcinit.c   | 105
+ src/fcfs.c      |   8 -----
+ src/fcinit.c    | 105
  --------------------------------------------------------
- src/fcint.h    |  45 ------------------------
- src/fclang.c   |  17 +--------
- src/fclist.c   |  10 ------
+ src/fcint.h     |  45 ------------------------
+ src/fclang.c    |  17 +--------
+ src/fclist.c    |  10 ------
  src/fcmatrix.c  |   4 ---
- src/fcname.c   |   2 --
- src/fcpat.c    |  20 +----------
- src/fcstr.c    |  21 ------------
- src/fcxml.c    |  22 ------------
+ src/fcname.c    |   2 --
+ src/fcpat.c     |  20 +----------
+ src/fcstr.c     |  21 ------------
+ src/fcxml.c     |  22 ------------
  14 files changed, 2 insertions(+), 318 deletions(-)
 
 commit d823bb3cad1b34d92ca99998a00f35b66666bdf3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:57:53 2012 -0500
+Date:   Sat Dec 29 22:57:53 2012 -0500
 
     Fixup from 4f6767470f52b287a2923e7e6d8de5fae1993f67
 
@@ -5082,17 +10147,17 @@ Date:  Sat Dec 29 22:57:53 2012 -0500
 
 commit eb9ffac7e5955bcfdf98fa985cc39062d6ea641b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:56:14 2012 -0500
+Date:   Sat Dec 29 22:56:14 2012 -0500
 
     Fix more warnings
 
  src/fcserialize.c | 1 -
- src/ftglue.c     | 1 -
+ src/ftglue.c      | 1 -
  2 files changed, 2 deletions(-)
 
 commit 1404af312a091b601bca91b791fe4039da8dba8f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:55:36 2012 -0500
+Date:   Sat Dec 29 22:55:36 2012 -0500
 
     Fix warning
 
@@ -5101,22 +10166,22 @@ Date:  Sat Dec 29 22:55:36 2012 -0500
 
 commit dd69d96e06b16c37bb87817edd40f6e4040f35ae
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:47:49 2012 -0500
+Date:   Sat Dec 29 22:47:49 2012 -0500
 
     Fix sign-compare warnings
 
- src/fccache.c   | 6 +++---
+ src/fccache.c    | 6 +++---
  src/fcfreetype.c | 6 +++---
- src/fcint.h     | 4 ++--
- src/fclang.c    | 6 +++---
- src/fcname.c    | 6 +++---
- src/fcxml.c     | 4 ++--
- src/ftglue.c    | 2 +-
+ src/fcint.h      | 4 ++--
+ src/fclang.c     | 6 +++---
+ src/fcname.c     | 6 +++---
+ src/fcxml.c      | 4 ++--
+ src/ftglue.c     | 2 +-
  7 files changed, 17 insertions(+), 17 deletions(-)
 
 commit 4ad3a73691b98781cfd4de789af7d33649ce3023
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:33:33 2012 -0500
+Date:   Sat Dec 29 22:33:33 2012 -0500
 
     Fix more warnings
 
@@ -5126,39 +10191,39 @@ Date:  Sat Dec 29 22:33:33 2012 -0500
 
 commit 83d8019011232d491df93cda97a2f988ee96005b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:32:56 2012 -0500
+Date:   Sat Dec 29 22:32:56 2012 -0500
 
     Fix unused-parameter warnings
 
- src/fcarch.c   |  2 +-
- src/fccache.c  |  2 +-
- src/fccfg.c    |  2 +-
+ src/fcarch.c    |  2 +-
+ src/fccache.c   |  2 +-
+ src/fccfg.c     |  2 +-
  src/fccharset.c |  4 ++--
- src/fcdir.c    |  6 +++---
+ src/fcdir.c     |  6 +++---
  src/fcformat.c  |  6 +++---
- src/fcint.h    |  6 ++++++
- src/fcmatch.c  |  9 ++++-----
- src/fcxml.c    | 10 +++++-----
+ src/fcint.h     |  6 ++++++
+ src/fcmatch.c   |  9 ++++-----
+ src/fcxml.c     | 10 +++++-----
  9 files changed, 26 insertions(+), 21 deletions(-)
 
 commit 24cdcf52ab7f83b329072efacbdd9253991579c0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 22:11:09 2012 -0500
+Date:   Sat Dec 29 22:11:09 2012 -0500
 
     Fix compiler warnings
 
- src/fccfg.c     | 44 ++++++++++++++++++++++----------------------
+ src/fccfg.c      | 44 ++++++++++++++++++++++----------------------
  src/fcformat.c   |  2 +-
  src/fcfreetype.c |  6 ++----
- src/fcmatch.c   | 14 +++++++-------
- src/fcname.c    |  6 +++---
- src/fcpat.c     | 16 ++++++++--------
- src/fcxml.c     | 20 ++++++++++----------
+ src/fcmatch.c    | 14 +++++++-------
+ src/fcname.c     |  6 +++---
+ src/fcpat.c      | 16 ++++++++--------
+ src/fcxml.c      | 20 ++++++++++----------
  7 files changed, 53 insertions(+), 55 deletions(-)
 
 commit 4f6767470f52b287a2923e7e6d8de5fae1993f67
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 21:39:06 2012 -0500
+Date:   Sat Dec 29 21:39:06 2012 -0500
 
     Parse matrices of expressions
 
@@ -5167,17 +10232,17 @@ Date:  Sat Dec 29 21:39:06 2012 -0500
     It now accepts full expressions, which can in turn poke into the
     pattern, do math, etc.
 
- fonts.dtd   | 2 +-
+ fonts.dtd   |  2 +-
  src/fccfg.c | 24 +++++++++++++--
  src/fcdbg.c | 16 ++++++----
- src/fcint.h | 6 +++-
+ src/fcint.h |  6 +++-
  src/fcxml.c | 97
  +++++++++++++++++++++++++++++++++++--------------------------
  5 files changed, 94 insertions(+), 51 deletions(-)
 
 commit 927dd3ddb582303843e70300b04167ca774e78b7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Dec 29 20:14:07 2012 -0500
+Date:   Sat Dec 29 20:14:07 2012 -0500
 
     Fix typo
 
@@ -5189,7 +10254,7 @@ Date:    Sat Dec 29 20:14:07 2012 -0500
 
 commit 9ce36f4bbebc702a35d0cd9f1a59d5b828549bc6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 11 18:53:57 2012 +0900
+Date:   Tue Dec 11 18:53:57 2012 +0900
 
     Check the system font to be initialized
 
@@ -5201,7 +10266,7 @@ Date:    Tue Dec 11 18:53:57 2012 +0900
 
 commit 58040349e8309601b0e5488b8a71cedf03f81415
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 11 12:38:42 2012 +0900
+Date:   Tue Dec 11 12:38:42 2012 +0900
 
     Fix a memory leak
 
@@ -5210,7 +10275,7 @@ Date:    Tue Dec 11 12:38:42 2012 +0900
 
 commit 5ea3118ad63787c9a3daa856dd09736aac6f4069
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 11 12:35:02 2012 +0900
+Date:   Tue Dec 11 12:35:02 2012 +0900
 
     Fix a typo that accessing to the out of array
 
@@ -5219,7 +10284,7 @@ Date:    Tue Dec 11 12:35:02 2012 +0900
 
 commit cef2b50c6647582bb128f98f2f78331fbe7dec4e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 11 12:30:05 2012 +0900
+Date:   Tue Dec 11 12:30:05 2012 +0900
 
     clean up
 
@@ -5230,7 +10295,7 @@ Date:    Tue Dec 11 12:30:05 2012 +0900
 
 commit 36265aeebd637e75c7b84db107afd6a35eb485c1
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 11 11:37:23 2012 +0900
+Date:   Tue Dec 11 11:37:23 2012 +0900
 
     Remove the dead code
 
@@ -5239,7 +10304,7 @@ Date:    Tue Dec 11 11:37:23 2012 +0900
 
 commit 608c5b590bd3428dfcd30f3d68ee8b7131e2f019
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 10 10:54:47 2012 +0900
+Date:   Mon Dec 10 10:54:47 2012 +0900
 
     Remove the duplicate null-check
 
@@ -5248,7 +10313,7 @@ Date:    Mon Dec 10 10:54:47 2012 +0900
 
 commit e7954674eb4f16d0fed3018cbefb4907c89d2465
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Dec 7 19:09:36 2012 +0900
+Date:   Fri Dec 7 19:09:36 2012 +0900
 
     Fix the wrong estimation for the memory usage information in
     fontconfig
@@ -5262,7 +10327,7 @@ Date:    Fri Dec 7 19:09:36 2012 +0900
 
 commit 959442bca138e6480418f2607a04d9343db7f438
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Dec 6 19:49:05 2012 +0900
+Date:   Thu Dec 6 19:49:05 2012 +0900
 
     Fix a typo
 
@@ -5271,32 +10336,32 @@ Date:  Thu Dec 6 19:49:05 2012 +0900
 
 commit 9231545c6bb775460702d8a615f1649bd8632f00
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Dec 5 18:13:25 2012 +0900
+Date:   Wed Dec 5 18:13:25 2012 +0900
 
     Do not show the deprecation warning if it is a symlink
 
- conf.d/50-user.conf | 7 ++++++-
- configure.ac       |  2 +-
- src/fcdir.c        | 14 ++++++++++++++
- src/fcint.h        |  3 +++
- src/fcxml.c        |  6 ++++--
+ conf.d/50-user.conf |  7 ++++++-
+ configure.ac        |  2 +-
+ src/fcdir.c         | 14 ++++++++++++++
+ src/fcint.h         |  3 +++
+ src/fcxml.c         |  6 ++++--
  5 files changed, 28 insertions(+), 4 deletions(-)
 
 commit 2442d611579bccb84f0c29e3f9ceb0a7436df812
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Nov 30 20:10:30 2012 +0900
+Date:   Fri Nov 30 20:10:30 2012 +0900
 
     Fix build issues on clean tree
 
- doc/Makefile.am         | 9 ++-------
- fc-case/Makefile.am     | 7 +++++--
+ doc/Makefile.am          | 9 ++-------
+ fc-case/Makefile.am      | 7 +++++--
  fc-glyphname/Makefile.am | 9 ++++++---
- fc-lang/Makefile.am     | 9 ++++++---
+ fc-lang/Makefile.am      | 9 ++++++---
  4 files changed, 19 insertions(+), 15 deletions(-)
 
 commit faea1cac85ac3b0fd6a983e1c0adeb68e115e06c
 Author: Jon TURNEY <jon.turney@dronecode.org.uk>
-Date:  Wed Nov 28 16:10:28 2012 +0000
+Date:   Wed Nov 28 16:10:28 2012 +0000
 
     Fix build when srcdir != builddir
 
@@ -5306,38 +10371,38 @@ Date:  Wed Nov 28 16:10:28 2012 +0000
 
     Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
 
- fc-case/Makefile.am     | 2 +-
+ fc-case/Makefile.am      | 2 +-
  fc-glyphname/Makefile.am | 2 +-
- fc-lang/Makefile.am     | 2 +-
+ fc-lang/Makefile.am      | 2 +-
  3 files changed, 3 insertions(+), 3 deletions(-)
 
 commit 3d3629f86a45d30eed51dad58865753b3b1e186e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Nov 27 18:25:11 2012 +0900
+Date:   Tue Nov 27 18:25:11 2012 +0900
 
     Fix a potability issue about stdint.h
 
- configure.ac            |   1 +
+ configure.ac             |   1 +
  m4/ax_create_stdint_h.m4 | 695
  +++++++++++++++++++++++++++++++++++++++++++++++
- src/Makefile.am         |  11 +-
- src/fcint.h             |   9 +-
+ src/Makefile.am          |  11 +-
+ src/fcint.h              |   9 +-
  4 files changed, 707 insertions(+), 9 deletions(-)
 
 commit 02db01ac22318b2e296e6e1fd9664cac1ae66442
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Nov 26 17:21:14 2012 +0900
+Date:   Mon Nov 26 17:21:14 2012 +0900
 
     Bump version to 2.10.2
 
- README                         | 25 ++++++++++++++++++++++++-
- configure.ac           |  2 +-
+ README                  | 25 ++++++++++++++++++++++++-
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 26 insertions(+), 3 deletions(-)
 
 commit 376fc9d22f1480ac380a3845f4cb4fe227e4be9a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Nov 20 20:09:10 2012 +0900
+Date:   Tue Nov 20 20:09:10 2012 +0900
 
     Bug 57286 - Remove UnBatang and Baekmuk Batang from monospace in
     65-nonlatin.conf
@@ -5349,7 +10414,7 @@ Date:    Tue Nov 20 20:09:10 2012 +0900
 
 commit e7b5b5b586fd3c1f1fc7959730b760b7fd1bdee8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Nov 20 11:48:17 2012 +0900
+Date:   Tue Nov 20 11:48:17 2012 +0900
 
     Update CaseFolding.txt to Unicode 6.2
 
@@ -5360,7 +10425,7 @@ Date:    Tue Nov 20 11:48:17 2012 +0900
 
 commit c20ac78b01df3f0919352bba16b5b48b3b5d4d6d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Nov 15 16:37:01 2012 +0900
+Date:   Thu Nov 15 16:37:01 2012 +0900
 
     Bug 57114 - regression on FcFontMatch with namelang
 
@@ -5380,7 +10445,7 @@ Date:    Thu Nov 15 16:37:01 2012 +0900
 
 commit bdaef0b80dc27f4ab7a9d9bcedcfd8b5724b3cfd
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Oct 30 09:56:24 2012 +0900
+Date:   Tue Oct 30 09:56:24 2012 +0900
 
     Bug 56531 - autogen.sh fails due to missing 'm4' directory
 
@@ -5391,24 +10456,24 @@ Date:  Tue Oct 30 09:56:24 2012 +0900
 
 commit 038aa930ae2c3b7972eefe334917e7222fe478ec
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Oct 26 14:31:23 2012 +0900
+Date:   Fri Oct 26 14:31:23 2012 +0900
 
     Use automake variable instead of cleaning files in clean-local
 
     just for git.mk coming up from Behdad's threadsafe branch
 
- fc-cache/Makefile.am  | 7 +++----
- fc-cat/Makefile.am    | 7 +++----
- fc-list/Makefile.am   | 7 +++----
- fc-match/Makefile.am  | 7 +++----
+ fc-cache/Makefile.am   | 7 +++----
+ fc-cat/Makefile.am     | 7 +++----
+ fc-list/Makefile.am    | 7 +++----
+ fc-match/Makefile.am   | 7 +++----
  fc-pattern/Makefile.am | 7 +++----
- fc-query/Makefile.am  | 7 +++----
- fc-scan/Makefile.am   | 7 +++----
+ fc-query/Makefile.am   | 7 +++----
+ fc-scan/Makefile.am    | 7 +++----
  7 files changed, 21 insertions(+), 28 deletions(-)
 
 commit 73ab254336100c5971e3a1e14b73222efd0e9822
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Oct 23 15:52:37 2012 +0900
+Date:   Tue Oct 23 15:52:37 2012 +0900
 
     autogen.sh: Add -I option to tell aclocal a place for external
     m4 files
@@ -5418,7 +10483,7 @@ Date:    Tue Oct 23 15:52:37 2012 +0900
 
 commit e7bfe729ab4cae63ca502291c1fe46cf7152b459
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Oct 9 11:05:59 2012 +0900
+Date:   Tue Oct 9 11:05:59 2012 +0900
 
     Fix syntax errors in fonts.dtd.
 
@@ -5429,7 +10494,7 @@ Date:    Tue Oct 9 11:05:59 2012 +0900
 
 commit 8890f94438179ed7d6f7e2622178bb6c9b1f0e5e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Oct 9 11:03:03 2012 +0900
+Date:   Tue Oct 9 11:03:03 2012 +0900
 
     Fix wrongly squashing for the network path on Win32.
 
@@ -5440,7 +10505,7 @@ Date:    Tue Oct 9 11:03:03 2012 +0900
 
 commit 8daa863c6d84ea56cc2f568a89316690e784a277
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Sep 11 18:09:36 2012 +0900
+Date:   Tue Sep 11 18:09:36 2012 +0900
 
     deal with warnings as errors for the previous change
 
@@ -5451,7 +10516,7 @@ Date:    Tue Sep 11 18:09:36 2012 +0900
 
 commit ab26a722c05b43468f838b2fa72bb6ccd0408ac8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Aug 31 15:10:50 2012 +0900
+Date:   Fri Aug 31 15:10:50 2012 +0900
 
     Bug 52573 - patch required to build 2.10.x with oldish GNU C library
     headers
@@ -5465,7 +10530,7 @@ Date:    Fri Aug 31 15:10:50 2012 +0900
 
 commit 535e0a37d6d77a9d65096277f3bf94c39ffbf7d1
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Aug 31 12:39:38 2012 +0900
+Date:   Fri Aug 31 12:39:38 2012 +0900
 
     Bug 54138 - X_OK permission is invalid for win32 access(..) calls
 
@@ -5481,7 +10546,7 @@ Date:    Fri Aug 31 12:39:38 2012 +0900
 
 commit 9ec868665dd0f4890b5fb9edb85df8334e5bb689
 Author: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
-Date:  Mon Aug 27 14:52:23 2012 -0700
+Date:   Mon Aug 27 14:52:23 2012 -0700
 
     Remove _CONFIG_FIXUPS_H_ guards, so multiple includes of "config.h"
     result in the correct values
@@ -5493,7 +10558,7 @@ Date:    Mon Aug 27 14:52:23 2012 -0700
 
 commit c4a58ae0e2fa43fbf9ebefc83891f6abd6728ac9
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Aug 27 16:36:49 2012 +0900
+Date:   Mon Aug 27 16:36:49 2012 +0900
 
     Fix for libtoolize's warnings
 
@@ -5503,7 +10568,7 @@ Date:    Mon Aug 27 16:36:49 2012 +0900
 
 commit 65da8c091c402ec706d76054eacbc455a7e3d801
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Aug 25 14:10:14 2012 -0400
+Date:   Sat Aug 25 14:10:14 2012 -0400
 
     Fix N'ko orthography
 
@@ -5512,7 +10577,7 @@ Date:    Sat Aug 25 14:10:14 2012 -0400
 
 commit 375cdbce9d283d1eddb8f6b1c904d755653a87c5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Aug 16 20:33:12 2012 +0900
+Date:   Thu Aug 16 20:33:12 2012 +0900
 
     Bug 53585 - Two highly-visible typos in src/fcxml.c
 
@@ -5521,18 +10586,18 @@ Date:  Thu Aug 16 20:33:12 2012 +0900
 
 commit cbfbd4041d4209b5da36746d68fe7aac7645eea5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jul 27 11:22:14 2012 +0900
+Date:   Fri Jul 27 11:22:14 2012 +0900
 
     Bump version to 2.10.1
 
- README                         | 8 +++++++-
- configure.ac           | 2 +-
+ README                  | 8 +++++++-
+ configure.ac            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  3 files changed, 9 insertions(+), 3 deletions(-)
 
 commit b7287a91fedc8b3ba2f566a17e4c5a00222ca76e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jul 23 13:59:16 2012 +0900
+Date:   Mon Jul 23 13:59:16 2012 +0900
 
     Install config files first
 
@@ -5546,7 +10611,7 @@ Date:    Mon Jul 23 13:59:16 2012 +0900
 
 commit ebd5096abc495550596861b6af2aae067e861553
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jul 19 10:20:30 2012 +0900
+Date:   Thu Jul 19 10:20:30 2012 +0900
 
     Fix a typo in fontconfig.pc
 
@@ -5557,7 +10622,7 @@ Date:    Thu Jul 19 10:20:30 2012 +0900
 
 commit d4fc407246ba0860dd883baf4551401614ec220f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 17 14:20:48 2012 +0900
+Date:   Tue Jul 17 14:20:48 2012 +0900
 
     correct version
 
@@ -5566,18 +10631,18 @@ Date:  Tue Jul 17 14:20:48 2012 +0900
 
 commit 92bad770e505ec8683aad2e6e063232843734ece
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 17 11:36:01 2012 +0900
+Date:   Tue Jul 17 11:36:01 2012 +0900
 
     Bump version to 2.10
 
- README                         | 11 ++++++++++-
- configure.ac           |  2 +-
+ README                  | 11 ++++++++++-
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  3 files changed, 13 insertions(+), 4 deletions(-)
 
 commit f513f53347ae943a03192e83f7a6d7c40bcdfd5d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 17 11:35:41 2012 +0900
+Date:   Tue Jul 17 11:35:41 2012 +0900
 
     Update INSTALL
 
@@ -5586,7 +10651,7 @@ Date:    Tue Jul 17 11:35:41 2012 +0900
 
 commit 14d23ef330808b480393196984cb06efb5724160
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 17 11:34:31 2012 +0900
+Date:   Tue Jul 17 11:34:31 2012 +0900
 
     Bump libtool revision
 
@@ -5595,7 +10660,7 @@ Date:    Tue Jul 17 11:34:31 2012 +0900
 
 commit da9400212db8e5aa0a0bdd4fad21d2008b5034e2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 18 11:23:39 2012 +0900
+Date:   Mon Jun 18 11:23:39 2012 +0900
 
     Fix a build fail with gcc 2.95, not supporting the flexible array
     members.
@@ -5606,7 +10671,7 @@ Date:    Mon Jun 18 11:23:39 2012 +0900
 
 commit 489a575a7455204ee5c170754b92e72ba1e483fd
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jul 6 19:02:05 2012 +0900
+Date:   Fri Jul 6 19:02:05 2012 +0900
 
     Update CaseFolding.txt to Unicode 6.1
 
@@ -5615,7 +10680,7 @@ Date:    Fri Jul 6 19:02:05 2012 +0900
 
 commit 5b2d065ef87514ca32af325f793ee37fabd6af19
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 3 19:56:56 2012 +0900
+Date:   Tue Jul 3 19:56:56 2012 +0900
 
     Bug 34266 - configs silently ignored if libxml2 doesn't support
     SAX1 interface
@@ -5627,18 +10692,18 @@ Date:  Tue Jul 3 19:56:56 2012 +0900
 
 commit 9c377192bf7d59336dbe4603d73449c7090c11ca
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 25 14:57:51 2012 +0900
+Date:   Mon Jun 25 14:57:51 2012 +0900
 
     Bump version to 2.9.92
 
- README                         | 19 ++++++++++++++++++-
- configure.ac           |  2 +-
+ README                  | 19 ++++++++++++++++++-
+ configure.ac            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 20 insertions(+), 3 deletions(-)
 
 commit 2162d9c2ee7ba930dca8f710ad35a83cb7c76ca6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 25 14:57:40 2012 +0900
+Date:   Mon Jun 25 14:57:40 2012 +0900
 
     Update INSTALL
 
@@ -5647,7 +10712,7 @@ Date:    Mon Jun 25 14:57:40 2012 +0900
 
 commit a94c6b3b94b4a66d7f528fcc7e939b8ec19ad660
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 25 14:50:18 2012 +0900
+Date:   Mon Jun 25 14:50:18 2012 +0900
 
     Bump libtool revision
 
@@ -5656,7 +10721,7 @@ Date:    Mon Jun 25 14:50:18 2012 +0900
 
 commit 769306665c37175d1e0e1167895eace0a8bc4bc3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Apr 24 19:11:41 2012 +0900
+Date:   Tue Apr 24 19:11:41 2012 +0900
 
     Bug 18726 - RFE: help write locale-specific tests
 
@@ -5667,7 +10732,7 @@ Date:    Tue Apr 24 19:11:41 2012 +0900
 
 commit e5a59eac905f1ff6ebe6005c257ce3f9f3c4cc6b
 Author: Marius Tolzmann <tolzmann@molgen.mpg.de>
-Date:  Thu Jun 21 21:01:10 2012 +0200
+Date:   Thu Jun 21 21:01:10 2012 +0200
 
     Fix warning about deprecated, non-existent config includes
 
@@ -5685,7 +10750,7 @@ Date:    Thu Jun 21 21:01:10 2012 +0200
 
 commit 3a5e9bc75d7e240ec590c6e50161ee157904d4d6
 Author: Marius Tolzmann <tolzmann@molgen.mpg.de>
-Date:  Thu Jun 21 21:01:09 2012 +0200
+Date:   Thu Jun 21 21:01:09 2012 +0200
 
     Fix newline in warning about deprecated config includes
 
@@ -5694,20 +10759,17 @@ Date:  Thu Jun 21 21:01:09 2012 +0200
 
 commit 2d9ad5434b1d3afa2aa3d8a77af0bce940c69177
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 18 18:31:36 2012 +0900
+Date:   Mon Jun 18 18:31:36 2012 +0900
 
     Rename configure.in to configure.ac
 
- configure.ac  | 615
- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- configure.in  | 615
- ---------------------------------------------------------
- new-version.sh |   4 +-
- 3 files changed, 617 insertions(+), 617 deletions(-)
+ configure.in => configure.ac | 0
+ new-version.sh               | 4 ++--
+ 2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 4353df754fcf4126ff4a69ccfef1a59450e5a7c7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 18 10:52:21 2012 +0900
+Date:   Mon Jun 18 10:52:21 2012 +0900
 
     clean up the lock file properly on even hardlink-not-supported
     filesystem.
@@ -5717,32 +10779,32 @@ Date:  Mon Jun 18 10:52:21 2012 +0900
 
 commit 997a64a67b77ae7c083f4a2898670201ed618fb2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jun 14 11:27:31 2012 +0900
+Date:   Thu Jun 14 11:27:31 2012 +0900
 
     Fix the fail of make install with --disable-shared on Win32
 
- .gitignore     | 1 +
- configure.in   | 1 +
+ .gitignore      | 1 +
+ configure.in    | 1 +
  src/Makefile.am | 2 ++
  3 files changed, 4 insertions(+)
 
 commit cd280f6532663981fb5fcc2d38f99973033568db
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Jun 13 20:01:30 2012 +0900
+Date:   Wed Jun 13 20:01:30 2012 +0900
 
     Fix a build fail on MINGW
 
  src/fcatomic.c |  7 ++++---
- src/fccfg.c   | 18 +++++++++---------
- src/fcint.h   |  4 +++-
- src/fcstat.c  | 16 ++++++++++------
- src/fcstr.c   |  6 +++---
- src/fcxml.c   | 24 ++++++++++++------------
+ src/fccfg.c    | 18 +++++++++---------
+ src/fcint.h    |  4 +++-
+ src/fcstat.c   | 16 ++++++++++------
+ src/fcstr.c    |  6 +++---
+ src/fcxml.c    | 24 ++++++++++++------------
  6 files changed, 41 insertions(+), 34 deletions(-)
 
 commit 2ec0440fb580f5556d8e1fc4e0e3a6c5b9472cf6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jun 12 11:02:03 2012 +0900
+Date:   Tue Jun 12 11:02:03 2012 +0900
 
     Fix a typo and build fail.
 
@@ -5751,7 +10813,7 @@ Date:    Tue Jun 12 11:02:03 2012 +0900
 
 commit b447fc5d52e1e88ca1eca0ce3472d48626e27109
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 11 14:14:41 2012 +0900
+Date:   Mon Jun 11 14:14:41 2012 +0900
 
     Bug 50835 - Deprecate FC_GLOBAL_ADVANCE
 
@@ -5759,30 +10821,30 @@ Date:  Mon Jun 11 14:14:41 2012 +0900
     freetype 2.4.5 or later.
 
  conf.d/20-fix-globaladvance.conf | 28 ----------------------------
- conf.d/Makefile.am              |  2 --
- doc/fontconfig-devel.sgml       |  2 +-
- doc/fontconfig-user.sgml        |  2 +-
- fontconfig/fontconfig.h         |  1 +
- src/fcdefault.c                 |  1 +
- src/fcint.h                     |  2 +-
- src/fcname.c                    |  4 ++--
+ conf.d/Makefile.am               |  2 --
+ doc/fontconfig-devel.sgml        |  2 +-
+ doc/fontconfig-user.sgml         |  2 +-
+ fontconfig/fontconfig.h          |  1 +
+ src/fcdefault.c                  |  1 +
+ src/fcint.h                      |  2 +-
+ src/fcname.c                     |  4 ++--
  8 files changed, 7 insertions(+), 35 deletions(-)
 
 commit 54fb7967de3850cf7176dde12432ed48c628ebea
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 11 20:15:15 2012 +0900
+Date:   Mon Jun 11 20:15:15 2012 +0900
 
     Bump version to 2.9.91
 
- README                         | 81
+ README                  | 81
  ++++++++++++++++++++++++++++++++++++++++++++++++-
- configure.in           |  2 +-
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 82 insertions(+), 3 deletions(-)
 
 commit 0b20bd0281a2247a047ef388ea2c6c58614d7b1a
 Author: Mark Brand <mabrand@mabrand.nl>
-Date:  Mon Jun 11 20:13:02 2012 +0900
+Date:   Mon Jun 11 20:13:02 2012 +0900
 
     fix building for WIN32
 
@@ -5795,7 +10857,7 @@ Date:    Mon Jun 11 20:13:02 2012 +0900
 
 commit 101825a129aa1a025e91fd55124e973fcdb31f9e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 11 18:43:56 2012 +0900
+Date:   Mon Jun 11 18:43:56 2012 +0900
 
     Generate bzip2-compressed tarball too
 
@@ -5804,7 +10866,7 @@ Date:    Mon Jun 11 18:43:56 2012 +0900
 
 commit fdb1155035da677368f762d8fb24ad2f470a9813
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 11 18:39:37 2012 +0900
+Date:   Mon Jun 11 18:39:37 2012 +0900
 
     doc: Fix distcheck error again...
 
@@ -5813,7 +10875,7 @@ Date:    Mon Jun 11 18:39:37 2012 +0900
 
 commit e8f16c9343f64266c3ec0048d867bfe23bdb6ec6
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Jun 11 17:48:12 2012 +0900
+Date:   Mon Jun 11 17:48:12 2012 +0900
 
     Bump libtool revision
 
@@ -5822,7 +10884,7 @@ Date:    Mon Jun 11 17:48:12 2012 +0900
 
 commit cf70eaa3bfa9b14847a1067295c5c0dc12c95e83
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 8 19:41:59 2012 +0900
+Date:   Fri Jun 8 19:41:59 2012 +0900
 
     Bug 50525 - superfluous whitespace in the style
 
@@ -5831,7 +10893,7 @@ Date:    Fri Jun 8 19:41:59 2012 +0900
 
 commit f4103bf708778433f5ea02014f890cdeccde206b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 8 19:17:57 2012 +0900
+Date:   Fri Jun 8 19:17:57 2012 +0900
 
     fcdefault: Add the lang object at FcConfigSubstituteWithPat() only
     when kind is FcMatchPattern
@@ -5841,7 +10903,7 @@ Date:    Fri Jun 8 19:17:57 2012 +0900
 
 commit 07e52eeb097a4e3c147e00ed7a6eb7652a611751
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 8 15:54:48 2012 +0900
+Date:   Fri Jun 8 15:54:48 2012 +0900
 
     fcdefault: no need to set FC_LANG in FcDefaultSubstitute() anymore
 
@@ -5850,7 +10912,7 @@ Date:    Fri Jun 8 15:54:48 2012 +0900
 
 commit 550fd49d4fb8efab33d1fa1687b1b9bd352202fe
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue May 22 14:17:10 2012 +0900
+Date:   Tue May 22 14:17:10 2012 +0900
 
     Add the default language to the pattern prior to do build the
     substitution
@@ -5863,7 +10925,7 @@ Date:    Tue May 22 14:17:10 2012 +0900
 
 commit 2261a64ce14d692f7c553f46e2158e70400dbc9c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 8 15:47:52 2012 +0900
+Date:   Fri Jun 8 15:47:52 2012 +0900
 
     fcdefault: fallback if the environment variables are empty
 
@@ -5874,7 +10936,7 @@ Date:    Fri Jun 8 15:47:52 2012 +0900
 
 commit bbc8fb5ba705e5257693f3b266fce12d2f81b50c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 29 20:25:20 2012 +0900
+Date:   Thu Mar 29 20:25:20 2012 +0900
 
     Bug 32853 - Export API to get the default language
 
@@ -5882,39 +10944,39 @@ Date:  Thu Mar 29 20:25:20 2012 +0900
     the default
     languages.
 
- doc/fclangset.fncs     |   9 +++
- fc-lang/fc-lang.c      |   6 ++
+ doc/fclangset.fncs      |   9 +++
+ fc-lang/fc-lang.c       |   6 ++
  fontconfig/fontconfig.h |   3 +
- src/fcdefault.c        | 102 ++++++++++---------------------
- src/fcint.h            |   6 ++
- src/fclang.c           | 159
+ src/fcdefault.c         | 102 ++++++++++---------------------
+ src/fcint.h             |   6 ++
+ src/fclang.c            | 159
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcstr.c            |  44 ++++++++++++++
+ src/fcstr.c             |  44 ++++++++++++++
  7 files changed, 260 insertions(+), 69 deletions(-)
 
 commit 1b692d8ab91a096e7d433c51ab187382de91147b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Jun 1 19:06:17 2012 +0900
+Date:   Fri Jun 1 19:06:17 2012 +0900
 
     Fix the wrong estimation for the memory usage information in
     fontconfig
 
- fc-cat/fc-cat.c        |  2 +-
- fc-list/fc-list.c      |  2 +-
- fc-match/fc-match.c    |  2 +-
+ fc-cat/fc-cat.c         |  2 +-
+ fc-list/fc-list.c       |  2 +-
+ fc-match/fc-match.c     |  2 +-
  fc-pattern/fc-pattern.c |  2 +-
- fc-query/fc-query.c    |  2 +-
- fc-scan/fc-scan.c      |  2 +-
- src/fccfg.c            | 12 ++++++++----
- src/fcformat.c                 |  4 ++--
- src/fcpat.c            |  3 ++-
- src/fcstr.c            |  3 +--
- src/fcxml.c            | 11 +++++++++--
+ fc-query/fc-query.c     |  2 +-
+ fc-scan/fc-scan.c       |  2 +-
+ src/fccfg.c             | 12 ++++++++----
+ src/fcformat.c          |  4 ++--
+ src/fcpat.c             |  3 ++-
+ src/fcstr.c             |  3 +--
+ src/fcxml.c             | 11 +++++++++--
  11 files changed, 28 insertions(+), 17 deletions(-)
 
 commit 5254a6630fdf132b0cda62c1bc7e8e40d2639bdf
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu May 31 12:46:55 2012 +0900
+Date:   Thu May 31 12:46:55 2012 +0900
 
     Fix a typo and polish the previous change
 
@@ -5923,7 +10985,7 @@ Date:    Thu May 31 12:46:55 2012 +0900
 
 commit 4a741e9a0ab8dbaa0c377fbfed41547645ac79af
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed May 30 18:21:57 2012 +0900
+Date:   Wed May 30 18:21:57 2012 +0900
 
     Fix the build fail on Solaris
 
@@ -5938,7 +11000,7 @@ Date:    Wed May 30 18:21:57 2012 +0900
 
 commit 0ac6c98294d666762960824d39329459b22b48b7
 Author: Mikhail Gusarov <dottedmag@dottedmag.net>
-Date:  Mon May 28 14:52:21 2012 +0900
+Date:   Mon May 28 14:52:21 2012 +0900
 
     Fix cache aging for fonts on FAT filesystem under Linux
 
@@ -5967,7 +11029,7 @@ Date:    Mon May 28 14:52:21 2012 +0900
 
 commit dc2da23e69e6b3f6e6d0436d4777ee2c1d8ff1be
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 28 13:59:48 2012 +0900
+Date:   Mon May 28 13:59:48 2012 +0900
 
     Move statfs/statvfs wrapper to fcstat.c and add a test for the mtime
     broken fs
@@ -5983,7 +11045,7 @@ Date:    Mon May 28 13:59:48 2012 +0900
 
 commit 6a83c1ad40594530994b826d928312e9eeb19c35
 Author: Mikhail Gusarov <dottedmag@dottedmag.net>
-Date:  Sun Apr 29 12:56:16 2012 +0200
+Date:   Sun Apr 29 12:56:16 2012 +0200
 
     Move FcStat to separate compilation unit
 
@@ -5995,15 +11057,15 @@ Date:  Sun Apr 29 12:56:16 2012 +0200
     Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
 
  src/Makefile.am |   1 +
- src/fccache.c  |  88 ------------------------------------------
- src/fcint.h    |   8 ++--
- src/fcstat.c   | 116
+ src/fccache.c   |  88 ------------------------------------------
+ src/fcint.h     |   8 ++--
+ src/fcstat.c    | 116
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  4 files changed, 122 insertions(+), 91 deletions(-)
 
 commit 26160366d7ba5c7baf20ae091d5dd0388714df83
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 28 15:58:56 2012 +0900
+Date:   Mon May 28 15:58:56 2012 +0900
 
     fcatomic: fallback to create a directory with FcAtomicLock
 
@@ -6017,7 +11079,7 @@ Date:    Mon May 28 15:58:56 2012 +0900
 
 commit 2837c63876b9b1f27d74aad51d45fc18d48f4652
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 21 13:43:20 2012 +0900
+Date:   Mon May 21 13:43:20 2012 +0900
 
     Bug 33644 - Fontconfig doesn't match correctly in <test>
 
@@ -6029,12 +11091,12 @@ Date:  Mon May 21 13:43:20 2012 +0900
     multiple <test>s for AND operator.
 
  doc/fontconfig-user.sgml | 23 +++++++++++++++++++++++
- src/fcxml.c             |  5 +++++
+ src/fcxml.c              |  5 +++++
  2 files changed, 28 insertions(+)
 
 commit 794fb0bd6a3fa91c6e03e51dc080e458b8960a55
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon May 21 13:37:54 2012 +0900
+Date:   Mon May 21 13:37:54 2012 +0900
 
     Correct the example
 
@@ -6045,7 +11107,7 @@ Date:    Mon May 21 13:37:54 2012 +0900
 
 commit 8c255fb185d5651b57380b0a9443001e8051b29d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 12 19:18:19 2012 +0900
+Date:   Mon Mar 12 19:18:19 2012 +0900
 
     Bug 20411 - fontconfig doesn't match FreeDesktop directories specs
 
@@ -6055,21 +11117,21 @@ Date:  Mon Mar 12 19:18:19 2012 +0900
     the old directories are still in the configuration files for
     the backward compatibility.
 
- conf.d/50-user.conf     |   7 +-
+ conf.d/50-user.conf      |   7 +-
  doc/fontconfig-user.sgml |  37 ++---
- fonts.conf.in           |   4 +
- fonts.dtd               |  10 +-
- src/fccfg.c             |  78 ++++++++++-
- src/fcinit.c            |  20 ++-
- src/fcint.h             |  11 ++
- src/fcstr.c             |   5 +-
- src/fcxml.c             | 344
+ fonts.conf.in            |   4 +
+ fonts.dtd                |  10 +-
+ src/fccfg.c              |  78 ++++++++++-
+ src/fcinit.c             |  20 ++-
+ src/fcint.h              |  11 ++
+ src/fcstr.c              |   5 +-
+ src/fcxml.c              | 344
  ++++++++++++++++++++++++++++++-----------------
  9 files changed, 366 insertions(+), 150 deletions(-)
 
 commit bc4517d8e5af8f31821ec8d9990765dad2867dd4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 11 19:52:35 2012 +0900
+Date:   Wed Apr 11 19:52:35 2012 +0900
 
     Bug 19128 - Handling whitespace in aliases
 
@@ -6082,21 +11144,21 @@ Date:  Wed Apr 11 19:52:35 2012 +0900
  conf.d/20-fix-globaladvance.conf |  8 ++++----
  conf.d/20-unhint-small-vera.conf |  6 +++---
  conf.d/25-unhint-nonlatin.conf   | 30 +++++++++++++++---------------
- conf.d/30-urw-aliases.conf      |  7 +------
- conf.d/65-fonts-persian.conf    | 14 +++++++-------
- conf.d/80-delicious.conf        |  2 +-
- doc/fontconfig-user.sgml        |  3 ++-
- fonts.dtd                       |  1 +
- src/fccfg.c                     | 35 ++++++++++++++++++++++-------------
- src/fcdbg.c                     | 27 ++++++++++++++++++---------
- src/fcint.h                     |  8 ++++++++
- src/fclist.c                    |  2 +-
- src/fcxml.c                     | 24 ++++++++++++++++++++----
+ conf.d/30-urw-aliases.conf       |  7 +------
+ conf.d/65-fonts-persian.conf     | 14 +++++++-------
+ conf.d/80-delicious.conf         |  2 +-
+ doc/fontconfig-user.sgml         |  3 ++-
+ fonts.dtd                        |  1 +
+ src/fccfg.c                      | 35 ++++++++++++++++++++++-------------
+ src/fcdbg.c                      | 27 ++++++++++++++++++---------
+ src/fcint.h                      |  8 ++++++++
+ src/fclist.c                     |  2 +-
+ src/fcxml.c                      | 24 ++++++++++++++++++++----
  13 files changed, 103 insertions(+), 64 deletions(-)
 
 commit 5ac12c0e94128ea63e3e74b4e602cf0c74661bce
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu May 10 16:47:09 2012 +0900
+Date:   Thu May 10 16:47:09 2012 +0900
 
     fcarch.c: get rid of the duplicate definition of FC_MAX
 
@@ -6107,7 +11169,7 @@ Date:    Thu May 10 16:47:09 2012 +0900
 
 commit cc9d572d3e3d270653c994ff1269f56eb7ee1b1c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu May 10 16:36:10 2012 +0900
+Date:   Thu May 10 16:36:10 2012 +0900
 
     fonts.conf: keeps same binding for alternatives
 
@@ -6119,7 +11181,7 @@ Date:    Thu May 10 16:36:10 2012 +0900
 
 commit d81407611b160ebfa631556ee60be147d1c0416f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 1 19:28:27 2012 -0700
+Date:   Tue May 1 19:28:27 2012 -0700
 
     Deal with architectures where ALIGNOF_DOUBLE < 4
 
@@ -6137,7 +11199,7 @@ Date:    Tue May 1 19:28:27 2012 -0700
 
 commit e41474e925947b5a2fb64c80135bc116e9e56d2d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 1 19:28:26 2012 -0700
+Date:   Tue May 1 19:28:26 2012 -0700
 
     Extra ',' in AC_ARG_WITH(arch causes arch to never be autodetected
 
@@ -6152,20 +11214,20 @@ Date:  Tue May 1 19:28:26 2012 -0700
 
 commit d2718257f9aa3e6071f649296a52a22684c43e96
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue May 1 20:18:41 2012 +0900
+Date:   Tue May 1 20:18:41 2012 +0900
 
     Output more verbose debugging log to show where to insert the element
     into the value list
 
- src/fccfg.c | 2 +-
+ src/fccfg.c |  2 +-
  src/fcdbg.c | 79
  +++++++++++++++++++++++++++++++++++++++++++------------------
- src/fcint.h | 8 ++++++-
+ src/fcint.h |  8 ++++++-
  3 files changed, 64 insertions(+), 25 deletions(-)
 
 commit 7d65f9f514e33305bdeafd0d34140da46259e57f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 11 19:52:35 2012 +0900
+Date:   Wed Apr 11 19:52:35 2012 +0900
 
     Bug 39278 - make usage of mmap optional
 
@@ -6176,15 +11238,15 @@ Date:  Wed Apr 11 19:52:35 2012 +0900
     cache files
     are stored on.
 
- configure.in            | 24 +++++++++++++--
+ configure.in             | 24 +++++++++++++--
  doc/fontconfig-user.sgml | 20 ++++++++++++-
- src/fccache.c           | 77
+ src/fccache.c            | 77
  ++++++++++++++++++++++++++++++++++++++++++++++--
  3 files changed, 116 insertions(+), 5 deletions(-)
 
 commit f30a5d7637af14b12f07267b59e02ec4a14458f2
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 25 16:21:33 2012 +0900
+Date:   Wed Apr 25 16:21:33 2012 +0900
 
     Disable iconv support anyway...
 
@@ -6193,7 +11255,7 @@ Date:    Wed Apr 25 16:21:33 2012 +0900
 
 commit 7587d1c99d9476b6dd4dbe523c0204da700fed8d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 26 16:34:34 2012 +0900
+Date:   Mon Mar 26 16:34:34 2012 +0900
 
     Bug 27765 - FcMatch() returns style in wrong language
 
@@ -6206,17 +11268,17 @@ Date:  Mon Mar 26 16:34:34 2012 +0900
 
  doc/fontconfig-devel.sgml |   3 ++
  fontconfig/fontconfig.h   |   1 +
- src/fcdefault.c          |  37 ++++++++++++++-
- src/fcint.h              |   3 +-
- src/fclist.c             |  47 +++++++++++++++----
- src/fcmatch.c            | 113
+ src/fcdefault.c           |  37 ++++++++++++++-
+ src/fcint.h               |   3 +-
+ src/fclist.c              |  47 +++++++++++++++----
+ src/fcmatch.c             | 113
  +++++++++++++++++++++++++++++++++++++++-------
- src/fcname.c             |   1 +
+ src/fcname.c              |   1 +
  7 files changed, 178 insertions(+), 27 deletions(-)
 
 commit 526f0da93fc487e9b33a4d97386a9054156d01ac
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Apr 24 11:40:51 2012 +0900
+Date:   Tue Apr 24 11:40:51 2012 +0900
 
     Add --enable-iconv option to configure
 
@@ -6229,7 +11291,7 @@ Date:    Tue Apr 24 11:40:51 2012 +0900
 
 commit 06d6b7c3120cd417af5ff47e9735aed577978354
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 28 17:28:06 2012 +0900
+Date:   Wed Mar 28 17:28:06 2012 +0900
 
     Create CACHEDIR.TAG when fc-cache is run or only when the cache
     directory is created at the runtime.
@@ -6238,19 +11300,19 @@ Date:  Wed Mar 28 17:28:06 2012 +0900
     the cache
     directory.
 
- doc/fccache.fncs       |  9 ++++++
- doc/fcconfig.fncs      |  2 +-
- fc-cache/fc-cache.c    | 73 +-----------------------------------------
+ doc/fccache.fncs        |  9 ++++++
+ doc/fcconfig.fncs       |  2 +-
+ fc-cache/fc-cache.c     | 73 +-----------------------------------------
  fontconfig/fontconfig.h |  5 ++-
- src/fccache.c          | 85
+ src/fccache.c           | 85
  +++++++++++++++++++++++++++++++++++++++++++++++++
- src/fccfg.c            |  2 +-
- src/fcint.h            |  3 ++
+ src/fccfg.c             |  2 +-
+ src/fcint.h             |  3 ++
  7 files changed, 104 insertions(+), 75 deletions(-)
 
 commit 25ccc3f3d27d8affd45c4b0a8041ef757dbb20dd
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Apr 20 19:08:59 2012 +0900
+Date:   Fri Apr 20 19:08:59 2012 +0900
 
     Bug 47721 - Add ChromeOS fonts to 30-metric-aliases.conf
 
@@ -6260,7 +11322,7 @@ Date:    Fri Apr 20 19:08:59 2012 +0900
 
 commit 7069d717e982adcf8e1d300cbd10eec6322a65c9
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sun Apr 22 21:40:44 2012 +0900
+Date:   Sun Apr 22 21:40:44 2012 +0900
 
     C++11 requires a space between literal and identifier
 
@@ -6271,7 +11333,7 @@ Date:    Sun Apr 22 21:40:44 2012 +0900
 
 commit 22dc5460906f78b3dc1b12ab2440e62b930adf0b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Apr 20 20:04:17 2012 +0900
+Date:   Fri Apr 20 20:04:17 2012 +0900
 
     Fix a build issue again when no regex functions available
 
@@ -6283,7 +11345,7 @@ Date:    Fri Apr 20 20:04:17 2012 +0900
 
 commit 9fa7b7c8f2d1d8a9c50f3ba0f99087f653b6a9b8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Apr 20 11:17:41 2012 +0900
+Date:   Fri Apr 20 11:17:41 2012 +0900
 
     Rework to avoid adding the unexpected value to ICONV_CFLAGS and
     ICONV_LIBS
@@ -6293,25 +11355,25 @@ Date:  Fri Apr 20 11:17:41 2012 +0900
 
 commit dd2a3d3520b6fea20a58b2888fef0458c01b287f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 18 12:55:23 2012 +0900
+Date:   Wed Apr 18 12:55:23 2012 +0900
 
     Bug 25151 - Move cleanCacheDirectory() from fc-cache.c into
      the library
 
     Add FcDirCacheScan() API to clean up the cache files in the directory.
 
- doc/fccache.fncs       |  9 +++++
- fc-cache/fc-cache.c    | 93
+ doc/fccache.fncs        |  9 +++++
+ fc-cache/fc-cache.c     | 93
  +------------------------------------------------
  fontconfig/fontconfig.h |  3 ++
- src/fccache.c          | 91
+ src/fccache.c           | 91
  +++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h            |  2 ++
+ src/fcint.h             |  2 ++
  5 files changed, 106 insertions(+), 92 deletions(-)
 
 commit 9e62fcedfe774a13843cc0982bc3e535369b99eb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Apr 16 11:28:36 2012 -0700
+Date:   Mon Apr 16 11:28:36 2012 -0700
 
     Use posix_fadvise to speed startup
 
@@ -6327,7 +11389,7 @@ Date:    Mon Apr 16 11:28:36 2012 -0700
 
 commit 94c2cc58a091138aa8c507d6239eca69520b65f0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Apr 16 20:25:52 2012 +0900
+Date:   Mon Apr 16 20:25:52 2012 +0900
 
     doc: Fix a typo of the environment variable name.
 
@@ -6336,7 +11398,7 @@ Date:    Mon Apr 16 20:25:52 2012 +0900
 
 commit c5714bcf90d6b345e748b7fa7b21e421409aba60
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Apr 13 11:09:04 2012 +0900
+Date:   Fri Apr 13 11:09:04 2012 +0900
 
     Add --with-expat, --with-expat-includes and --with-expat-lib back.
 
@@ -6345,7 +11407,7 @@ Date:    Fri Apr 13 11:09:04 2012 +0900
 
 commit 470e92c9dbdc75d354c9dce9063276996ecf535d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Apr 12 14:01:25 2012 +0900
+Date:   Thu Apr 12 14:01:25 2012 +0900
 
     Bug 27526 - Compatibility fix for old windows sytems
 
@@ -6358,7 +11420,7 @@ Date:    Thu Apr 12 14:01:25 2012 +0900
 
 commit ac6271dbac32086ce60845efc4d87e669f37796a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Apr 12 11:01:12 2012 +0900
+Date:   Thu Apr 12 11:01:12 2012 +0900
 
     Bug 48573 - platform without regex do not have also REG_XXX defines
 
@@ -6370,7 +11432,7 @@ Date:    Thu Apr 12 11:01:12 2012 +0900
 
 commit 9231d79ad180f992f9bbef4f3127576870a75075
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Apr 9 12:51:12 2012 +0900
+Date:   Mon Apr 9 12:51:12 2012 +0900
 
     Bug 28491 - Allow matching on FC_FILE
 
@@ -6385,58 +11447,58 @@ Date:  Mon Apr 9 12:51:12 2012 +0900
 
 commit 2589207cfd4c7e948a4b50d7c07c13a3a52fe0aa
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Apr 10 18:34:11 2012 +0900
+Date:   Tue Apr 10 18:34:11 2012 +0900
 
     Bug 26830 - Add search for libiconv non-default directory
 
     Add --with-libiconv, --with-libiconv-includes and --with-libiconv-lib
     to specify the directory where libiconv might be installed.
 
- configure.in   | 85
+ configure.in    | 85
  +++++++++++++++++++++++++++++++++++++++++----------------
  src/Makefile.am |  1 +
  2 files changed, 63 insertions(+), 23 deletions(-)
 
 commit ddefa5021f7785514f373aab6a8e6191a867278e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 4 14:47:57 2012 +0900
+Date:   Wed Apr 4 14:47:57 2012 +0900
 
     Bug 22862 - <alias> ignores <match> <test>s
 
     Allow to use the test elements in the alias element.
 
- fonts.dtd   | 2 +-
+ fonts.dtd   |  2 +-
  src/fcxml.c | 27 +++++++++++++++++++++------
  2 files changed, 22 insertions(+), 7 deletions(-)
 
 commit e181ab4de5d20fe1f70e68f66ef8332553eba206
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Apr 4 16:49:30 2012 +0900
+Date:   Wed Apr 4 16:49:30 2012 +0900
 
     Bug 29341 - Make some fontconfig paths configurable
 
     Add configure options to set the directory to be installed:
       --with-templatedir for the configuration files a.k.a.
-       /etc/fonts/conf.avail
+        /etc/fonts/conf.avail
       --with-baseconfigdir for fonts.conf etc a.k.a. /etc/fonts
       --with-configdir for the active configuration files a.k.a.
-       /etc/fonts/conf.d
+        /etc/fonts/conf.d
       --with-xmldir for fonts.dtd etc
 
     and the default path for templatedir is changed to
     ${datadir}/fontconfig/conf.avail
 
- Makefile.am       | 36 +++++++++++---------
+ Makefile.am        | 36 +++++++++++---------
  conf.d/Makefile.am | 99
  ++++++++++++++++++++++++++----------------------------
- configure.in      | 72 ++++++++++++++++++++++++++++++++-------
- fonts.conf.in     |  2 +-
+ configure.in       | 72 ++++++++++++++++++++++++++++++++-------
+ fonts.conf.in      |  2 +-
  src/Makefile.am    |  2 +-
  5 files changed, 129 insertions(+), 82 deletions(-)
 
 commit bb02899d9ff9813738809fb5349a9f3ae2dba76f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Apr 2 15:38:27 2012 +0900
+Date:   Mon Apr 2 15:38:27 2012 +0900
 
     Use pkgconfig to check builddeps
 
@@ -6446,7 +11508,7 @@ Date:    Mon Apr 2 15:38:27 2012 +0900
 
 commit 87d7b82a98780223422a829b6bb1a05fd753ae5e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Apr 2 14:32:44 2012 +0900
+Date:   Mon Apr 2 14:32:44 2012 +0900
 
     Use AC_HELP_STRING instead of formatting manually
 
@@ -6456,7 +11518,7 @@ Date:    Mon Apr 2 14:32:44 2012 +0900
 
 commit d3e3f4a46d07a7b611be21600d7049225b8b2909
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 30 18:09:14 2012 +0900
+Date:   Fri Mar 30 18:09:14 2012 +0900
 
     doc: Add contains and not_contains operators and elements
 
@@ -6465,7 +11527,7 @@ Date:    Fri Mar 30 18:09:14 2012 +0900
 
 commit 9279f71a3a855e3b2dbd13dbe0d38f2b69673c49
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 30 11:52:25 2012 +0900
+Date:   Fri Mar 30 11:52:25 2012 +0900
 
     Bug 24729 - [ne_NP] Fix ortho file
 
@@ -6478,7 +11540,7 @@ Date:    Fri Mar 30 11:52:25 2012 +0900
 
 commit 9fe7c986c64d8cfb7f85a300b6f0d470ce66b18a
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 29 15:43:11 2012 +0900
+Date:   Thu Mar 29 15:43:11 2012 +0900
 
     Bug 48020 - Fix for src/makealias on Solaris 10
 
@@ -6490,19 +11552,19 @@ Date:  Thu Mar 29 15:43:11 2012 +0900
 
 commit becbdaebe3d77726900072de1a0fb6a95c938da5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 28 15:09:25 2012 +0900
+Date:   Wed Mar 28 15:09:25 2012 +0900
 
     Move workaround macros for fat binaries into the separate header file
 
- Makefile.am    |  5 +++--
+ Makefile.am     |  5 +++--
  config-fixups.h | 44 ++++++++++++++++++++++++++++++++++++++++++++
- configure.in   |  4 +++-
- src/fcarch.h   | 13 -------------
+ configure.in    |  4 +++-
+ src/fcarch.h    | 13 -------------
  4 files changed, 50 insertions(+), 16 deletions(-)
 
 commit fe6ba5e5c54928adeaf96668d0cf6f44f0484065
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 28 16:27:46 2012 +0900
+Date:   Wed Mar 28 16:27:46 2012 +0900
 
     Fix the hardcoded cache file suffix
 
@@ -6511,7 +11573,7 @@ Date:    Wed Mar 28 16:27:46 2012 +0900
 
 commit 4a060729a1466186d3be63ada344f43d66f937e5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 28 13:38:53 2012 +0900
+Date:   Wed Mar 28 13:38:53 2012 +0900
 
     fcpat: Increase the number of buckets in the shared string hash table
 
@@ -6540,7 +11602,7 @@ Date:    Wed Mar 28 13:38:53 2012 +0900
 
 commit d8dcff7b96b09748e6f1df9e4adc7ab0850d7b18
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 28 13:37:15 2012 +0900
+Date:   Wed Mar 28 13:37:15 2012 +0900
 
     Bug 17832 - Memory leaks due to FcStrStaticName use for external
     patterns
@@ -6561,7 +11623,7 @@ Date:    Wed Mar 28 13:37:15 2012 +0900
 
 commit ea1c6ea337b8cf6b86169b565787d0d31a0fc330
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Mar 27 21:06:36 2012 +0900
+Date:   Tue Mar 27 21:06:36 2012 +0900
 
     Fix a memory leak in FcDirScanConfig()
 
@@ -6570,20 +11632,20 @@ Date:  Tue Mar 27 21:06:36 2012 +0900
 
 commit 1aaf8b773d73f89f5b0d8591cca0a2072524fdb3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 26 10:58:18 2012 +0900
+Date:   Mon Mar 26 10:58:18 2012 +0900
 
     Bug 17722 - Don't overwrite user's configurations in default config
 
     Use "append" to avoid overwriting the user configuration.
     This presumes most clients may takes care of the first value only.
 
- conf.d/10-autohint.conf         | 8 +++++++-
- conf.d/10-no-sub-pixel.conf     | 8 +++++++-
- conf.d/10-sub-pixel-bgr.conf    | 8 +++++++-
- conf.d/10-sub-pixel-rgb.conf    | 8 +++++++-
- conf.d/10-sub-pixel-vbgr.conf   | 8 +++++++-
- conf.d/10-sub-pixel-vrgb.conf   | 8 +++++++-
- conf.d/10-unhinted.conf         | 8 +++++++-
+ conf.d/10-autohint.conf          | 8 +++++++-
+ conf.d/10-no-sub-pixel.conf      | 8 +++++++-
+ conf.d/10-sub-pixel-bgr.conf     | 8 +++++++-
+ conf.d/10-sub-pixel-rgb.conf     | 8 +++++++-
+ conf.d/10-sub-pixel-vbgr.conf    | 8 +++++++-
+ conf.d/10-sub-pixel-vrgb.conf    | 8 +++++++-
+ conf.d/10-unhinted.conf          | 8 +++++++-
  conf.d/11-lcdfilter-default.conf | 8 +++++++-
  conf.d/11-lcdfilter-legacy.conf  | 8 +++++++-
  conf.d/11-lcdfilter-light.conf   | 8 +++++++-
@@ -6591,7 +11653,7 @@ Date:    Mon Mar 26 10:58:18 2012 +0900
 
 commit 900675d0b0b40f22ecc0d75e4d5ce16295a3a5e3
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 22 19:57:47 2012 +0900
+Date:   Thu Mar 22 19:57:47 2012 +0900
 
     Bug 47703 - SimSun default family
 
@@ -6606,7 +11668,7 @@ Date:    Thu Mar 22 19:57:47 2012 +0900
 
 commit 92ac054ce5e270f22a4f81a09522c3f03b76c876
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 22 19:15:27 2012 +0900
+Date:   Thu Mar 22 19:15:27 2012 +0900
 
     fcmatch: Set FcResultMatch at the end if the return value is valid.
 
@@ -6622,7 +11684,7 @@ Date:    Thu Mar 22 19:15:27 2012 +0900
 
 commit 1db3e9cdd8bc7408e630934cfc8deda7798b8970
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Mar 22 12:36:34 2012 +0900
+Date:   Thu Mar 22 12:36:34 2012 +0900
 
     fc-cache: improvement of the fix for Bug#39914.
 
@@ -6633,7 +11695,7 @@ Date:    Thu Mar 22 12:36:34 2012 +0900
 
 commit 4f7f3bf9f78843be5b39eb64acfeb02ffcd8e3a4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 21 16:06:37 2012 +0900
+Date:   Wed Mar 21 16:06:37 2012 +0900
 
     Bug 39914 - Please tag the cache directory with CACHEDIR.TAG
 
@@ -6647,7 +11709,7 @@ Date:    Wed Mar 21 16:06:37 2012 +0900
 
 commit 8cc4498122b17843b00ec3eebdd7a7d8d59cb7ff
 Author: Jeremy Huddleston <jeremyhu@apple.com>
-Date:  Mon Mar 19 02:16:41 2012 -0700
+Date:   Mon Mar 19 02:16:41 2012 -0700
 
     fcarch: Check for architecture signature at compile time rather than
     configure time
@@ -6656,14 +11718,14 @@ Date:  Mon Mar 19 02:16:41 2012 -0700
 
     Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
 
- fc-cache/fc-cache.c | 3 +--
- src/fcarch.c       |  4 ++--
- src/fcarch.h       | 23 +++++++++++++++++++++--
+ fc-cache/fc-cache.c |  3 +--
+ src/fcarch.c        |  4 ++--
+ src/fcarch.h        | 23 +++++++++++++++++++++--
  3 files changed, 24 insertions(+), 6 deletions(-)
 
 commit e1ffb3dcd46f1fbbc5cb7527bc7f447b060ed98f
 Author: Akira TAGOH <tagoh@redhat.com>
-Date:  Fri Mar 16 23:18:23 2012 +0900
+Date:   Fri Mar 16 23:18:23 2012 +0900
 
     Get rid of the prerequisites from the sufix rules
 
@@ -6674,7 +11736,7 @@ Date:    Fri Mar 16 23:18:23 2012 +0900
 
 commit 93460f93e9e55e39a42fb6474918f31539436d9c
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 16 16:29:53 2012 +0900
+Date:   Fri Mar 16 16:29:53 2012 +0900
 
     Fix a build issue due to the use of non-portable variables
 
@@ -6684,37 +11746,37 @@ Date:  Fri Mar 16 16:29:53 2012 +0900
 
     This would be a workaround until it has the certain pre-defined value.
 
- Makefile.am           | 10 +++++-----
- conf.d/Makefile.am    |  8 ++++----
- configure.in          |  9 +++++++++
- doc/Makefile.am       | 32 ++++++++++++++++----------------
- fc-cache/Makefile.am  |  4 ++--
- fc-case/Makefile.am   |  6 ++----
- fc-cat/Makefile.am    |  4 ++--
- fc-list/Makefile.am   |  4 ++--
- fc-match/Makefile.am  |  4 ++--
+ Makefile.am            | 10 +++++-----
+ conf.d/Makefile.am     |  8 ++++----
+ configure.in           |  9 +++++++++
+ doc/Makefile.am        | 32 ++++++++++++++++----------------
+ fc-cache/Makefile.am   |  4 ++--
+ fc-case/Makefile.am    |  6 ++----
+ fc-cat/Makefile.am     |  4 ++--
+ fc-list/Makefile.am    |  4 ++--
+ fc-match/Makefile.am   |  4 ++--
  fc-pattern/Makefile.am |  4 ++--
- fc-query/Makefile.am  |  4 ++--
- fc-scan/Makefile.am   |  4 ++--
- src/Makefile.am       |  8 ++++----
+ fc-query/Makefile.am   |  4 ++--
+ fc-scan/Makefile.am    |  4 ++--
+ src/Makefile.am        |  8 ++++----
  13 files changed, 54 insertions(+), 47 deletions(-)
 
 commit f2813ffc689fb6972ff4d5d414c3abfa3e0be26f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 16 11:55:47 2012 +0900
+Date:   Fri Mar 16 11:55:47 2012 +0900
 
     Revert "Fix a build fail on some environment"
 
     This reverts commit b75eb63982a54c0fb4576d8a655ef734908d3604.
 
- fc-case/Makefile.am     | 10 ++++++----
+ fc-case/Makefile.am      | 10 ++++++----
  fc-glyphname/Makefile.am |  4 ++--
- fc-lang/Makefile.am     |  4 ++--
+ fc-lang/Makefile.am      |  4 ++--
  3 files changed, 10 insertions(+), 8 deletions(-)
 
 commit a5b609196fe9cf688e5b4f7b7cd31fb2dc15b154
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 16 11:55:30 2012 +0900
+Date:   Fri Mar 16 11:55:30 2012 +0900
 
     Revert "Fix a build fail on some environment."
 
@@ -6722,26 +11784,26 @@ Date:  Fri Mar 16 11:55:30 2012 +0900
 
     Conflicts:
 
-       doc/Makefile.am
+            doc/Makefile.am
 
- Makefile.am             |  2 +-
- doc/Makefile.am         | 30 +++++++++++++++---------------
- fc-cache/Makefile.am    | 10 +++++-----
- fc-case/Makefile.am     |  2 +-
- fc-cat/Makefile.am      |  6 +++---
+ Makefile.am              |  2 +-
+ doc/Makefile.am          | 30 +++++++++++++++---------------
+ fc-cache/Makefile.am     | 10 +++++-----
+ fc-case/Makefile.am      |  2 +-
+ fc-cat/Makefile.am       |  6 +++---
  fc-glyphname/Makefile.am |  2 +-
- fc-lang/Makefile.am     |  2 +-
- fc-list/Makefile.am     |  8 ++++----
- fc-match/Makefile.am    |  8 ++++----
+ fc-lang/Makefile.am      |  2 +-
+ fc-list/Makefile.am      |  8 ++++----
+ fc-match/Makefile.am     |  8 ++++----
  fc-pattern/Makefile.am   |  6 +++---
- fc-query/Makefile.am    |  8 ++++----
- fc-scan/Makefile.am     |  8 ++++----
- src/Makefile.am         |  2 +-
+ fc-query/Makefile.am     |  8 ++++----
+ fc-scan/Makefile.am      |  8 ++++----
+ src/Makefile.am          |  2 +-
  13 files changed, 47 insertions(+), 47 deletions(-)
 
 commit 765b7b32d862474eb631b47bbdbd34ffba507392
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 12 19:02:27 2012 +0900
+Date:   Mon Mar 12 19:02:27 2012 +0900
 
     [doc] Update for cachedir.
 
@@ -6753,7 +11815,7 @@ Date:    Mon Mar 12 19:02:27 2012 +0900
 
 commit e8bdc6df2ed329a38c2152b3592bf4ded8f27ce7
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Mar 12 17:58:00 2012 +0900
+Date:   Mon Mar 12 17:58:00 2012 +0900
 
     [doc] Update the path for cache files and the version.
 
@@ -6762,61 +11824,61 @@ Date:  Mon Mar 12 17:58:00 2012 +0900
 
 commit dd3214aa392a66095513f8fc160d6b62d81f36f5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sun Mar 11 02:24:33 2012 +0900
+Date:   Sun Mar 11 02:24:33 2012 +0900
 
     Bump version to 2.9.0
 
- README                         | 129
+ README                  | 129
  +++++++++++++++++++++++++++++++++++++++++++++++-
- configure.in           |   2 +-
+ configure.in            |   2 +-
  fontconfig/fontconfig.h |   2 +-
  3 files changed, 129 insertions(+), 4 deletions(-)
 
 commit 3b142c2aaeaed4d6d5b3353aa1007d6ac08dbbdb
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sun Mar 11 02:12:10 2012 +0900
+Date:   Sun Mar 11 02:12:10 2012 +0900
 
     Get rid of $< from Makefile.am
 
- Makefile.am    |  2 +-
+ Makefile.am     |  2 +-
  doc/Makefile.am | 16 ++++++++--------
  2 files changed, 9 insertions(+), 9 deletions(-)
 
 commit 0fdfddf2ac93c1c0238b70a265998fd6b5ffe7af
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sat Mar 10 23:30:30 2012 +0900
+Date:   Sat Mar 10 23:30:30 2012 +0900
 
     Fix a build fail on some environment.
 
- Makefile.am             |  2 +-
- doc/Makefile.am         | 20 ++++++++++----------
- fc-cache/Makefile.am    | 10 +++++-----
- fc-case/Makefile.am     |  2 +-
- fc-cat/Makefile.am      |  6 +++---
+ Makefile.am              |  2 +-
+ doc/Makefile.am          | 20 ++++++++++----------
+ fc-cache/Makefile.am     | 10 +++++-----
+ fc-case/Makefile.am      |  2 +-
+ fc-cat/Makefile.am       |  6 +++---
  fc-glyphname/Makefile.am |  2 +-
- fc-lang/Makefile.am     |  2 +-
- fc-list/Makefile.am     |  8 ++++----
- fc-match/Makefile.am    |  8 ++++----
+ fc-lang/Makefile.am      |  2 +-
+ fc-list/Makefile.am      |  8 ++++----
+ fc-match/Makefile.am     |  8 ++++----
  fc-pattern/Makefile.am   |  6 +++---
- fc-query/Makefile.am    |  8 ++++----
- fc-scan/Makefile.am     |  8 ++++----
- src/Makefile.am         |  2 +-
+ fc-query/Makefile.am     |  8 ++++----
+ fc-scan/Makefile.am      |  8 ++++----
+ src/Makefile.am          |  2 +-
  13 files changed, 42 insertions(+), 42 deletions(-)
 
 commit b75eb63982a54c0fb4576d8a655ef734908d3604
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sat Mar 10 22:05:07 2012 +0900
+Date:   Sat Mar 10 22:05:07 2012 +0900
 
     Fix a build fail on some environment
 
- fc-case/Makefile.am     | 10 ++++------
+ fc-case/Makefile.am      | 10 ++++------
  fc-glyphname/Makefile.am |  4 ++--
- fc-lang/Makefile.am     |  4 ++--
+ fc-lang/Makefile.am      |  4 ++--
  3 files changed, 8 insertions(+), 10 deletions(-)
 
 commit a47899a853e4ed3405f398f43d03424095ae73f5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Sat Mar 10 19:03:05 2012 +0900
+Date:   Sat Mar 10 19:03:05 2012 +0900
 
     Fix a build issue
 
@@ -6825,7 +11887,7 @@ Date:    Sat Mar 10 19:03:05 2012 +0900
 
 commit d6de5351922d79ccf38d2bc6b75f6ea2011dd421
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 9 22:24:18 2012 +0900
+Date:   Fri Mar 9 22:24:18 2012 +0900
 
     Update to detect the uncommited changes properly
 
@@ -6834,7 +11896,7 @@ Date:    Fri Mar 9 22:24:18 2012 +0900
 
 commit 78d75c003c5f03a2aeebc628d70d3f75bd6f5707
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 9 22:12:35 2012 +0900
+Date:   Fri Mar 9 22:12:35 2012 +0900
 
     Update the version info
 
@@ -6843,20 +11905,20 @@ Date:  Fri Mar 9 22:12:35 2012 +0900
 
 commit 353f7cc69184cdb1a7d5b4cc00741fab97b32f17
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Fri Mar 9 17:33:03 2012 +0900
+Date:   Fri Mar 9 17:33:03 2012 +0900
 
     Fix distcheck error
 
- doc/Makefile.am         | 334
+ doc/Makefile.am          | 334
  ++++++++++++++++++++++++-----------------------
- fc-case/Makefile.am     |   3 +
+ fc-case/Makefile.am      |   3 +
  fc-glyphname/Makefile.am |   3 +
- fc-lang/Makefile.am     |   3 +
+ fc-lang/Makefile.am      |   3 +
  4 files changed, 179 insertions(+), 164 deletions(-)
 
 commit 254232f47eaea0d03d2b1c2405d4ded5fd09142e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 7 18:16:35 2012 +0900
+Date:   Wed Mar 7 18:16:35 2012 +0900
 
     Bug 19128 - Handling whitespace in aliases
 
@@ -6867,7 +11929,7 @@ Date:    Wed Mar 7 18:16:35 2012 +0900
 
 commit 0ca752dd25462ed88112ba7c859ef6d5a41ea606
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 7 17:56:39 2012 +0900
+Date:   Wed Mar 7 17:56:39 2012 +0900
 
     Check null value for given object to avoid possibly segfaulting
 
@@ -6877,7 +11939,7 @@ Date:    Wed Mar 7 17:56:39 2012 +0900
 
 commit 1f01c4b60c4c5e16a92d60f76ce615005c7db6b8
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Mar 7 17:32:14 2012 +0900
+Date:   Wed Mar 7 17:32:14 2012 +0900
 
     Bug 23336 - unable to display bitmap-only (SFNT) TrueType or OpenType
 
@@ -6891,7 +11953,7 @@ Date:    Wed Mar 7 17:32:14 2012 +0900
 
 commit a13d518fdd079aeb0bd07a0457393cca8def7f90
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Feb 28 12:52:25 2012 +0900
+Date:   Tue Feb 28 12:52:25 2012 +0900
 
     Bug 41694 - FcCache functions have random-number-generator side
     effects
@@ -6905,7 +11967,7 @@ Date:    Tue Feb 28 12:52:25 2012 +0900
 
 commit c7a671ab6069c676bbc77875234364242fd00e88
 Author: Pravin Satpute <psatpute@redhat.com>
-Date:  Fri Feb 24 16:50:14 2012 +0900
+Date:   Fri Feb 24 16:50:14 2012 +0900
 
     Bug 25652 - Add ortho file for locale mni_IN
 
@@ -6913,13 +11975,13 @@ Date:  Fri Feb 24 16:50:14 2012 +0900
 
     Signed-off-by: Akira TAGOH <akira@tagoh.org>
 
- fc-lang/Makefile.am | 3 ++-
+ fc-lang/Makefile.am |  3 ++-
  fc-lang/mni.orth    | 35 +++++++++++++++++++++++++++++++++++
  2 files changed, 37 insertions(+), 1 deletion(-)
 
 commit 04c96f59b92091b758fb26b97f1f9a3c9c2a6b6c
 Author: Pravin Satpute <psatpute@redhat.com>
-Date:  Fri Feb 24 16:43:14 2012 +0900
+Date:   Fri Feb 24 16:43:14 2012 +0900
 
     Bug 25653 - Add ortho file for locale doi_IN
 
@@ -6927,13 +11989,13 @@ Date:  Fri Feb 24 16:43:14 2012 +0900
 
     Signed-off-by: Akira TAGOH <akira@tagoh.org>
 
- fc-lang/Makefile.am | 3 ++-
+ fc-lang/Makefile.am |  3 ++-
  fc-lang/doi.orth    | 40 ++++++++++++++++++++++++++++++++++++++++
  2 files changed, 42 insertions(+), 1 deletion(-)
 
 commit 857753d3680b7e64e753a4b8a8324138200eb86b
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 23 20:12:06 2012 +0900
+Date:   Thu Feb 23 20:12:06 2012 +0900
 
     Add brx.orth and sat.orth
 
@@ -6942,7 +12004,7 @@ Date:    Thu Feb 23 20:12:06 2012 +0900
 
 commit 942cb16f6c59103e29b4e04ca8c64d29c8e67cb0
 Author: Parag Nemade <pnemade@redhat.com>
-Date:  Thu Feb 23 20:06:41 2012 +0900
+Date:   Thu Feb 23 20:06:41 2012 +0900
 
     Bug 25650 - Add ortho file for locale sat_IN
 
@@ -6955,7 +12017,7 @@ Date:    Thu Feb 23 20:06:41 2012 +0900
 
 commit 38b9c42fe2e9d496a41e773d84a74254a6f65bc4
 Author: Parag Nemade <pnemade@redhat.com>
-Date:  Thu Feb 23 19:34:18 2012 +0900
+Date:   Thu Feb 23 19:34:18 2012 +0900
 
     Bug 25651 - Add ortho file for locale brx_IN
 
@@ -6968,7 +12030,7 @@ Date:    Thu Feb 23 19:34:18 2012 +0900
 
 commit a3ff1f07f8c60d2a3c77a4670de6aad0622ecacc
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Feb 23 15:23:23 2012 +0900
+Date:   Thu Feb 23 15:23:23 2012 +0900
 
     Bug 27385 - lcdfilter settings for freetype-2.3.12 not available
     in fontconfig-2.8.0
@@ -6980,12 +12042,12 @@ Date:  Thu Feb 23 15:23:23 2012 +0900
  conf.d/11-lcdfilter-default.conf | 10 ++++++++++
  conf.d/11-lcdfilter-legacy.conf  | 10 ++++++++++
  conf.d/11-lcdfilter-light.conf   | 10 ++++++++++
- conf.d/Makefile.am              |  3 +++
+ conf.d/Makefile.am               |  3 +++
  4 files changed, 33 insertions(+)
 
 commit 5e4ea1104c9b832046cc8dde5ea7da52aaa61143
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Feb 22 16:50:13 2012 +0900
+Date:   Wed Feb 22 16:50:13 2012 +0900
 
     Do not update stream->pos when seeking is failed.
 
@@ -6994,7 +12056,7 @@ Date:    Wed Feb 22 16:50:13 2012 +0900
 
 commit 71b14d645f524637579d87ea99720c123d728e1f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Wed Feb 22 16:30:05 2012 +0900
+Date:   Wed Feb 22 16:30:05 2012 +0900
 
     Bug 46169 - Pointer error in FcConfigGlobMatch
 
@@ -7007,7 +12069,7 @@ Date:    Wed Feb 22 16:30:05 2012 +0900
 
 commit 3abf981542788310104bc96b9c9cf70dd39b361b
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Tue Nov 8 14:19:57 2011 -0500
+Date:   Tue Nov 8 14:19:57 2011 -0500
 
     makealias: handle missing funcs better
 
@@ -7028,7 +12090,7 @@ Date:    Tue Nov 8 14:19:57 2011 -0500
 
 commit d9c4462778a3d97b38e267dcdf68dfe22210ed8c
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 20:09:10 2011 -0500
+Date:   Mon Nov 7 20:09:10 2011 -0500
 
     FcObjectValidType: tweak -1 checking
 
@@ -7037,7 +12099,7 @@ Date:    Mon Nov 7 20:09:10 2011 -0500
 
     fcname.c: In function 'FcObjectValidType':
     fcname.c:299:2: warning: case value '4294967295'
-       not in enumerated type 'FcType' [-Wswitch]
+            not in enumerated type 'FcType' [-Wswitch]
 
     So tweak the logic to avoid this warning.
 
@@ -7048,7 +12110,7 @@ Date:    Mon Nov 7 20:09:10 2011 -0500
 
 commit 97c9506e4d0abe5e6a7d61c1a909741d2605507b
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 19:29:57 2011 -0500
+Date:   Mon Nov 7 19:29:57 2011 -0500
 
     fix build warnings when using --with-arch
 
@@ -7062,7 +12124,7 @@ Date:    Mon Nov 7 19:29:57 2011 -0500
 
 commit 01c833379e19d8f8752ac7cec15b179c71242e2c
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 15:33:12 2011 -0500
+Date:   Mon Nov 7 15:33:12 2011 -0500
 
     fc-{list,match}: constify format string
 
@@ -7072,13 +12134,13 @@ Date:  Mon Nov 7 15:33:12 2011 -0500
 
     fc-list.c: In function 'main':
     fc-list.c:161:16: warning: pointer targets in assignment
-       differ in signedness [-Wpointer-sign]
+            differ in signedness [-Wpointer-sign]
 
     fc-match.c: In function 'main':
     fc-match.c:201:13: warning: pointer targets in assignment
-       differ in signedness [-Wpointer-sign]
+            differ in signedness [-Wpointer-sign]
     fc-match.c:203:13: warning: pointer targets in assignment
-       differ in signedness [-Wpointer-sign]
+            differ in signedness [-Wpointer-sign]
 
     Signed-off-by: Mike Frysinger <vapier@gentoo.org>
 
@@ -7088,7 +12150,7 @@ Date:    Mon Nov 7 15:33:12 2011 -0500
 
 commit 123d344f4590c45c5ccced8c46d157edb2b9efd2
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 15:26:52 2011 -0500
+Date:   Mon Nov 7 15:26:52 2011 -0500
 
     FcName{,Get}Constant: constify string input
 
@@ -7098,27 +12160,27 @@ Date:  Mon Nov 7 15:26:52 2011 -0500
 
     fccfg.c: In function 'FcConfigEvaluate':
     fccfg.c:916:2: warning: passing argument 1 of 'IA__FcNameConstant'
-       discards 'const' qualifier from pointer target type [enabled
-       by default]
+            discards 'const' qualifier from pointer target type [enabled
+            by default]
     fcalias.h:253:34: note: expected 'FcChar8 *' but
-       argument is of type 'const FcChar8 *'
+            argument is of type 'const FcChar8 *'
 
     fcxml.c: In function 'FcTypecheckExpr':
     fcxml.c:604:2: warning: passing argument 1 of 'IA__FcNameGetConstant'
-       discards 'const' qualifier from pointer target type [enabled
-       by default]
+            discards 'const' qualifier from pointer target type [enabled
+            by default]
     fcalias.h:251:37: note: expected 'FcChar8 *' but
-       argument is of type 'const FcChar8 *'
+            argument is of type 'const FcChar8 *'
 
     Signed-off-by: Mike Frysinger <vapier@gentoo.org>
 
  fontconfig/fontconfig.h | 4 ++--
- src/fcname.c           | 4 ++--
+ src/fcname.c            | 4 ++--
  2 files changed, 4 insertions(+), 4 deletions(-)
 
 commit da763aa77dbaefd9be10ff5ad04ab5da39327b2e
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 15:24:53 2011 -0500
+Date:   Mon Nov 7 15:24:53 2011 -0500
 
     fc-cat: fix pointer warning
 
@@ -7126,9 +12188,9 @@ Date:    Mon Nov 7 15:24:53 2011 -0500
 
     fc-cat.c: In function 'cache_print_set':
     fc-cat.c:230:2: warning: pointer targets in passing argument 2
-       of 'FcPatternFormat' differ in signedness [-Wpointer-sign]
+            of 'FcPatternFormat' differ in signedness [-Wpointer-sign]
     ../fontconfig/fontconfig.h:860:1: note:
-       expected 'const FcChar8 *' but argument is of type 'char *'
+            expected 'const FcChar8 *' but argument is of type 'char *'
 
     Signed-off-by: Mike Frysinger <vapier@gentoo.org>
 
@@ -7137,7 +12199,7 @@ Date:    Mon Nov 7 15:24:53 2011 -0500
 
 commit 647569d029d0c01ce36ae7d94095ea83f40728de
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 15:21:51 2011 -0500
+Date:   Mon Nov 7 15:21:51 2011 -0500
 
     FcStat: change to FcChar8 for first arg
 
@@ -7153,7 +12215,7 @@ Date:    Mon Nov 7 15:21:51 2011 -0500
 
 commit e3a66c2937c3bd5c45f5170cf7720b4023b8ae3f
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 15:18:26 2011 -0500
+Date:   Mon Nov 7 15:18:26 2011 -0500
 
     delete unused variables
 
@@ -7161,15 +12223,15 @@ Date:  Mon Nov 7 15:18:26 2011 -0500
 
     Signed-off-by: Mike Frysinger <vapier@gentoo.org>
 
- src/fccache.c   |  6 ++----
- src/fcdir.c     | 17 -----------------
+ src/fccache.c    |  6 ++----
+ src/fcdir.c      | 17 -----------------
  src/fcformat.c   |  5 ++---
  src/fcfreetype.c |  3 ---
  4 files changed, 4 insertions(+), 27 deletions(-)
 
 commit 6f020161e8628546158766ce7a5f5e0ce1f7d95a
 Author: Mike Frysinger <vapier@gentoo.org>
-Date:  Mon Nov 7 14:25:51 2011 -0500
+Date:   Mon Nov 7 14:25:51 2011 -0500
 
     FcStrPlus: optimize a little
 
@@ -7183,7 +12245,7 @@ Date:    Mon Nov 7 14:25:51 2011 -0500
 
 commit 2b010e46e629f118885f17ba860e9c4ddbba8779
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Jan 19 12:04:52 2012 +0900
+Date:   Thu Jan 19 12:04:52 2012 +0900
 
     Bug 44826 - <alias> must contain only a single <family>
 
@@ -7195,12 +12257,12 @@ Date:  Thu Jan 19 12:04:52 2012 +0900
  conf.d/30-metric-aliases.conf |  36 +++++++++++
  conf.d/40-nonlatin.conf       | 140
  +++++++++++++++++++++++++++++++++++++++++-
- conf.d/45-latin.conf         |  96 +++++++++++++++++++++++++++++
+ conf.d/45-latin.conf          |  96 +++++++++++++++++++++++++++++
  3 files changed, 271 insertions(+), 1 deletion(-)
 
 commit 54dd481512265a247bd23663c8fdb290a8886ccd
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Dec 20 18:46:14 2011 +0900
+Date:   Tue Dec 20 18:46:14 2011 +0900
 
     Get rid of the unexpected family name
 
@@ -7211,7 +12273,7 @@ Date:    Tue Dec 20 18:46:14 2011 +0900
 
 commit 1c13fee11adcaae9eaaa08f9193a8c3c5b01504a
 Author: MINAMI Hirokazu <minami@mistfall.net>
-Date:  Tue Dec 20 18:36:35 2011 +0900
+Date:   Tue Dec 20 18:36:35 2011 +0900
 
     Bug 43406 - typo of Japanese font name in conf.d/65-nonlatin.conf
 
@@ -7224,7 +12286,7 @@ Date:    Tue Dec 20 18:36:35 2011 +0900
 
 commit a53553b4b65d6230b1a91b1a7433c8c5852ab055
 Author: Pravin Satpute <pravin.d.s@gmail.com>
-Date:  Wed Dec 21 11:38:28 2011 +0900
+Date:   Wed Dec 21 11:38:28 2011 +0900
 
     Bug 43321 - Required corrections in urdu.orth file
 
@@ -7237,7 +12299,7 @@ Date:    Wed Dec 21 11:38:28 2011 +0900
 
 commit 8c58dc276895cbeb0e9ae79718b1a38a082709d3
 Author: Jinkyu Yi <jincreator@naver.com>
-Date:  Wed Nov 9 18:07:37 2011 +0900
+Date:   Wed Nov 9 18:07:37 2011 +0900
 
     Bug 42423 - make default Korean font from Un to Nanum
 
@@ -7251,7 +12313,7 @@ Date:    Wed Nov 9 18:07:37 2011 +0900
 
 commit a18ca17b6211f62fbd1d893811b94b8c83db4cc0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Feb 21 15:29:56 2012 +0900
+Date:   Tue Feb 21 15:29:56 2012 +0900
 
     Bug 40452 - Running 'fc-match --all' core dumps when no fonts are
     installed
@@ -7259,13 +12321,13 @@ Date:  Tue Feb 21 15:29:56 2012 +0900
     This would changes the behavior of FcFontSort().
     it won't returns NULL afterward.
 
- fc-match/fc-match.c | 5 +++++
- src/fcmatch.c      | 29 ++++++++++++++++++++++++++++-
+ fc-match/fc-match.c |  5 +++++
+ src/fcmatch.c       | 29 ++++++++++++++++++++++++++++-
  2 files changed, 33 insertions(+), 1 deletion(-)
 
 commit cbb6ee1662f1219518677a9d489159778a812782
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Jul 19 20:12:09 2011 +0900
+Date:   Tue Jul 19 20:12:09 2011 +0900
 
     Bug 35517 - Remove Apple Roman cmap support
 
@@ -7277,7 +12339,7 @@ Date:    Tue Jul 19 20:12:09 2011 +0900
 
 commit d3c438221610d2e584a611f21433062dc7e7f83d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Tue Feb 21 15:11:30 2012 +0900
+Date:   Tue Feb 21 15:11:30 2012 +0900
 
     Add a missing file
 
@@ -7286,7 +12348,7 @@ Date:    Tue Feb 21 15:11:30 2012 +0900
 
 commit 5582043a49f4360ae83d66ea05409e1c0a25b61e
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Nov 14 12:56:28 2011 +0900
+Date:   Mon Nov 14 12:56:28 2011 +0900
 
     Bug 32965 - Asturian (ast-ES) language matching missing ḷḷḥ
 
@@ -7297,7 +12359,7 @@ Date:    Mon Nov 14 12:56:28 2011 +0900
 
 commit dab0afd81013507b3d32afdd5a552d6ac09c10c0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Nov 14 18:22:48 2011 +0900
+Date:   Mon Nov 14 18:22:48 2011 +0900
 
     Remove the unnecessary comment in ks.orth
 
@@ -7306,7 +12368,7 @@ Date:    Mon Nov 14 18:22:48 2011 +0900
 
 commit dedc16733a44373633e319461ff04ec9d1f08ed6
 Author: Pravin Satpute <pravin.d.s@gmail.com>
-Date:  Fri Nov 11 15:30:56 2011 +0900
+Date:   Fri Nov 11 15:30:56 2011 +0900
 
     Bug 27195 - need updates to ks.orth file
 
@@ -7321,7 +12383,7 @@ Date:    Fri Nov 11 15:30:56 2011 +0900
 
 commit a1ecd679db82b0b118dc7334993f53b4288c4ae4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Nov 14 17:44:24 2011 +0900
+Date:   Mon Nov 14 17:44:24 2011 +0900
 
     Bug 24744 - No n'ko orthography
 
@@ -7332,7 +12394,7 @@ Date:    Mon Nov 14 17:44:24 2011 +0900
 
 commit 19651262e9502c952184f27962c9f5e521a11db9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Oct 6 14:59:04 2011 -0400
+Date:   Thu Oct 6 14:59:04 2011 -0400
 
     Add FcPublic to FcLangSetUnion and FcLangSetSubtract
 
@@ -7343,7 +12405,7 @@ Date:    Thu Oct 6 14:59:04 2011 -0400
 
 commit 3951fbaa39699684ebd3e76b333a14d5ebb19919
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Oct 5 15:12:48 2011 -0400
+Date:   Wed Oct 5 15:12:48 2011 -0400
 
     Fix parallel build
 
@@ -7352,7 +12414,7 @@ Date:    Wed Oct 5 15:12:48 2011 -0400
 
 commit 082caefb6d5462c97f280b7037e3740b4865a244
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Sep 24 13:52:05 2011 -0400
+Date:   Sat Sep 24 13:52:05 2011 -0400
 
     Bug 41171 - Invalid use of memset
 
@@ -7361,7 +12423,7 @@ Date:    Sat Sep 24 13:52:05 2011 -0400
 
 commit bf3bfa72d91e8bc37903d7e1bb7ac23c6ef4952a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 22 13:06:19 2011 -0400
+Date:   Wed Jun 22 13:06:19 2011 -0400
 
     Fix stupid bug in FcFontSort()
 
@@ -7378,7 +12440,7 @@ Date:    Wed Jun 22 13:06:19 2011 -0400
 
 commit e61eba94efffbdbec6f9e08f3fb04b75f0ba2a3f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 20 11:55:25 2011 -0400
+Date:   Mon Jun 20 11:55:25 2011 -0400
 
     Switch fc-cat to use FcPatternFormat()
 
@@ -7391,7 +12453,7 @@ Date:    Mon Jun 20 11:55:25 2011 -0400
 
 commit a15ac5d3840552528874f1d5ad166eb00906ce80
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 20 11:32:46 2011 -0400
+Date:   Mon Jun 20 11:32:46 2011 -0400
 
     Switch fc-match to use FcPatternFormat()
 
@@ -7399,12 +12461,12 @@ Date:  Mon Jun 20 11:32:46 2011 -0400
     consume the convertor sequence.
 
  fc-match/fc-match.c | 38 +++++++++-----------------------------
- src/fcformat.c      | 2 +-
+ src/fcformat.c      |  2 +-
  2 files changed, 10 insertions(+), 30 deletions(-)
 
 commit e0be405a1dd5765e36152c754a47c8ad7ff0ab85
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 20 11:22:17 2011 -0400
+Date:   Mon Jun 20 11:22:17 2011 -0400
 
     Bug 26718 - "fc-match sans file" doesn't work
 
@@ -7414,16 +12476,16 @@ Date:  Mon Jun 20 11:22:17 2011 -0400
     - Switch fc-list to use FcPatternFormat()
 
     Note that I had previously broken fc-list and it was not showing the
-    file name anymore. No one noticed that it seems!  Now fixed.
+    file name anymore.  No one noticed that it seems!  Now fixed.
 
  fc-list/fc-list.c | 17 ++++-------------
  src/fcformat.c    |  2 +-
- src/fcname.c     |  3 +--
+ src/fcname.c      |  3 +--
  3 files changed, 6 insertions(+), 16 deletions(-)
 
 commit 0fcf866d44c46bd63d91f656e36544b6ce9af47d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 20 11:07:56 2011 -0400
+Date:   Mon Jun 20 11:07:56 2011 -0400
 
     Bug 36577 - Updating cache with no-bitmaps disables bitmap fonts...
 
@@ -7437,7 +12499,7 @@ Date:    Mon Jun 20 11:07:56 2011 -0400
 
 commit 0392abf79131c9325c66c71c2708a4cd77673296
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Apr 12 22:15:37 2011 -0400
+Date:   Tue Apr 12 22:15:37 2011 -0400
 
     [.gitignore] Update
 
@@ -7446,7 +12508,7 @@ Date:    Tue Apr 12 22:15:37 2011 -0400
 
 commit 1c475d5c8cb265ac939d6b9e097666e300162511
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 28 16:33:12 2011 -0400
+Date:   Mon Mar 28 16:33:12 2011 -0400
 
     Bug 35587 - Add padding to make valgrind and glibc not hate each other
 
@@ -7456,7 +12518,7 @@ Date:    Mon Mar 28 16:33:12 2011 -0400
 
 commit f0ee5761e1ab63d848f980a767dd8475986f1342
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 18:58:13 2011 -0300
+Date:   Mon Mar 14 18:58:13 2011 -0300
 
     Fix warning
 
@@ -7465,7 +12527,7 @@ Date:    Mon Mar 14 18:58:13 2011 -0300
 
 commit c21fb9ac27ca89f3b581c58b1a08372f8273a262
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 18:49:21 2011 -0300
+Date:   Mon Mar 14 18:49:21 2011 -0300
 
     Always define FcStat as a function
 
@@ -7474,15 +12536,15 @@ Date:  Mon Mar 14 18:49:21 2011 -0300
     in that function as part of some other bug.
 
  src/fcatomic.c |  2 +-
- src/fccache.c | 13 +++++++++++--
- src/fccfg.c   |  2 +-
- src/fcdir.c   |  4 ++--
- src/fcint.h   |  4 ----
+ src/fccache.c  | 13 +++++++++++--
+ src/fccfg.c    |  2 +-
+ src/fcdir.c    |  4 ++--
+ src/fcint.h    |  4 ----
  5 files changed, 15 insertions(+), 10 deletions(-)
 
 commit b5617e636cbb0bc8ef4daba6681a6f58078d7a42
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 18:23:56 2011 -0300
+Date:   Mon Mar 14 18:23:56 2011 -0300
 
     More doc typo fixes
 
@@ -7495,7 +12557,7 @@ Date:    Mon Mar 14 18:23:56 2011 -0300
 
 commit 6c7915c10548132c3f7d0c00d08fdb268e5da6d4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 18:21:32 2011 -0300
+Date:   Mon Mar 14 18:21:32 2011 -0300
 
     Mark constant strings as constant
 
@@ -7503,12 +12565,12 @@ Date:  Mon Mar 14 18:21:32 2011 -0300
     should not be freed.
 
  doc/fcatomic.fncs | 2 +-
- src/fcint.h      | 4 ++--
+ src/fcint.h       | 4 ++--
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 commit c76ed777ddb03a70c5990ef439d8d97809d1ef92
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 18:04:59 2011 -0300
+Date:   Mon Mar 14 18:04:59 2011 -0300
 
     Bug 30566 - fcformat.c:interpret_enumerate() passes uninitialized
     idx to FcPatternGetLangSet()
@@ -7518,7 +12580,7 @@ Date:    Mon Mar 14 18:04:59 2011 -0300
 
 commit ccc239b3865dd8d83026ae59b89de965e948120a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 14 17:28:53 2011 -0300
+Date:   Mon Mar 14 17:28:53 2011 -0300
 
     Bug 20113 - Uighur (ug) orthography incomplete
 
@@ -7527,19 +12589,19 @@ Date:  Mon Mar 14 17:28:53 2011 -0300
 
 commit 7baa20c7590b12d11dcfb0a50131d50963581258
 Author: Brad Hards <bradh@frogmouth.net>
-Date:  Fri Mar 11 19:43:42 2011 -0300
+Date:   Fri Mar 11 19:43:42 2011 -0300
 
     Documentation fixes
 
- doc/fcatomic.fncs        |   2 +-
- doc/fccharset.fncs       |   8 +--
- doc/fcfontset.fncs       |   2 +-
- doc/fcformat.fncs        |   4 +-
- doc/fcfreetype.fncs      |   4 +-
- doc/fcinit.fncs          |   2 +-
- doc/fclangset.fncs       |   4 +-
- doc/fcpattern.fncs       |   2 +-
- doc/fcstring.fncs        |   4 +-
+ doc/fcatomic.fncs         |   2 +-
+ doc/fccharset.fncs        |   8 +--
+ doc/fcfontset.fncs        |   2 +-
+ doc/fcformat.fncs         |   4 +-
+ doc/fcfreetype.fncs       |   4 +-
+ doc/fcinit.fncs           |   2 +-
+ doc/fclangset.fncs        |   4 +-
+ doc/fcpattern.fncs        |   2 +-
+ doc/fcstring.fncs         |   4 +-
  doc/fontconfig-devel.sgml | 148
  +++++++++++++++++++++++-----------------------
  doc/fontconfig-user.sgml  |   8 +--
@@ -7547,7 +12609,7 @@ Date:    Fri Mar 11 19:43:42 2011 -0300
 
 commit 9bfe7bad1c85403d85b833b58ebc6343f766e0a9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Mar 11 19:40:38 2011 -0300
+Date:   Fri Mar 11 19:40:38 2011 -0300
 
     Remove --enable-maintainer-mode from autogen.sh
 
@@ -7556,7 +12618,7 @@ Date:    Fri Mar 11 19:40:38 2011 -0300
 
 commit e1bb01bfdc64d0276fb17f248a54bcabe6f9aff1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jan 21 16:34:52 2011 -0500
+Date:   Fri Jan 21 16:34:52 2011 -0500
 
     Update CaseFolding.txt to Unicode 6.0
 
@@ -7565,7 +12627,7 @@ Date:    Fri Jan 21 16:34:52 2011 -0500
 
 commit e10a42178c65ff974fa9383dbc78525b3d8de1ae
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jan 3 22:18:38 2011 -0500
+Date:   Mon Jan 3 22:18:38 2011 -0500
 
     Remove AM_MAINTAINER_MODE
 
@@ -7579,7 +12641,7 @@ Date:    Mon Jan 3 22:18:38 2011 -0500
 
 commit 0c7b8676171f2238af9785abf775e0f420e6545a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jan 2 13:25:29 2011 -0700
+Date:   Sun Jan 2 13:25:29 2011 -0700
 
     Fix assertion failure on le32d4
 
@@ -7590,7 +12652,7 @@ Date:    Sun Jan 2 13:25:29 2011 -0700
 
 commit e63f90ce74d1f2c1e22959cb2ed97120eff3867f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 02:58:16 2010 -0600
+Date:   Tue Dec 28 02:58:16 2010 -0600
 
     Doc nit
 
@@ -7599,7 +12661,7 @@ Date:    Tue Dec 28 02:58:16 2010 -0600
 
 commit 43bf659eedb3eeff75d219864af475dcadcf6983
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 02:55:31 2010 -0600
+Date:   Tue Dec 28 02:55:31 2010 -0600
 
     Skip <range> elements with begin > end
 
@@ -7608,7 +12670,7 @@ Date:    Tue Dec 28 02:55:31 2010 -0600
 
 commit 8c625aa01f0ad95b1c06acb079921c209906f3b4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 02:52:06 2010 -0600
+Date:   Tue Dec 28 02:52:06 2010 -0600
 
     Add <range> support for <blank> into the DTD
 
@@ -7618,7 +12680,7 @@ Date:    Tue Dec 28 02:52:06 2010 -0600
 commit 549c9962a48cd728116c8f39db31c58043236ff0
 Merge: 30fd4fa fa269cf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 02:50:16 2010 -0600
+Date:   Tue Dec 28 02:50:16 2010 -0600
 
     Allow editing charset and lang in target="scan"
 
@@ -7630,7 +12692,7 @@ Date:    Tue Dec 28 02:50:16 2010 -0600
 
 commit 30fd4fac9ca2238f84608c23836cab219640d9c1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 01:28:39 2010 -0600
+Date:   Tue Dec 28 01:28:39 2010 -0600
 
     Bump version
 
@@ -7639,7 +12701,7 @@ Date:    Tue Dec 28 01:28:39 2010 -0600
 
 commit d1a0fca316ab8d9d61474028da54615e4d9f7540
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 28 00:59:19 2010 -0600
+Date:   Tue Dec 28 00:59:19 2010 -0600
 
     Make fc-arch stuff cross-compiling-safe
 
@@ -7647,8 +12709,8 @@ Date:    Tue Dec 28 00:59:19 2010 -0600
     Bug 32679 - fontconfig-2.8.0 does not cross compile
     Bug 25462 - Cross-compilation doesn't work
 
- Makefile.am          |   2 +-
- configure.in         |  64 +++++------------------
+ Makefile.am           |   2 +-
+ configure.in          |  64 +++++------------------
  fc-arch/Makefile.am   |  54 --------------------
  fc-arch/fc-arch.c     | 138
  --------------------------------------------------
@@ -7656,15 +12718,15 @@ Date:  Tue Dec 28 00:59:19 2010 -0600
  fc-cache/fc-cache.c   |   2 +-
  fc-cat/fc-cat.c       |   2 +-
  src/Makefile.am       |   6 +--
- src/fcarch.c         |  72 ++++++++++++++++++++++++++
- src/fcarch.h         |  71 ++++++++++++++++++++++++++
- src/fccache.c        |   3 +-
- src/fcint.h          |   4 ++
+ src/fcarch.c          |  72 ++++++++++++++++++++++++++
+ src/fcarch.h          |  71 ++++++++++++++++++++++++++
+ src/fccache.c         |   3 +-
+ src/fcint.h           |   4 ++
  12 files changed, 167 insertions(+), 316 deletions(-)
 
 commit 2a6b235ff6d2750171e8dff7cfdfe3bccb0f630e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 27 13:20:47 2010 -0600
+Date:   Mon Dec 27 13:20:47 2010 -0600
 
     Make most generated-files cross-compiling-safe
 
@@ -7672,75 +12734,75 @@ Date:  Mon Dec 27 13:20:47 2010 -0600
 
     Remains fc-arch which is trickier.
 
- doc/Makefile.am         | 19 +++++++++++--------
- fc-arch/fcarch.tmpl.h   |  2 +-
- fc-case/Makefile.am     | 14 ++++++++------
+ doc/Makefile.am          | 19 +++++++++++--------
+ fc-arch/fcarch.tmpl.h    |  2 +-
+ fc-case/Makefile.am      | 14 ++++++++------
  fc-glyphname/Makefile.am | 14 ++++++++------
- fc-lang/Makefile.am     | 17 ++++++++++-------
+ fc-lang/Makefile.am      | 17 ++++++++++-------
  5 files changed, 38 insertions(+), 28 deletions(-)
 
 commit fa269cf812ee304534b0e4c44662202496008db0
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Dec 9 11:57:24 2010 +0900
+Date:   Thu Dec 9 11:57:24 2010 +0900
 
     add some documents
 
- doc/fclangset.fncs      | 30 ++++++++++++++++++++++++++++++
+ doc/fclangset.fncs       | 30 ++++++++++++++++++++++++++++++
  doc/fontconfig-user.sgml |  4 ++++
  2 files changed, 34 insertions(+)
 
 commit 3c862aad9f49be4b098cb679a67449c85b58f1f5
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 6 12:38:18 2010 +0900
+Date:   Mon Dec 6 12:38:18 2010 +0900
 
     Add editing langset feature.
 
     The syntax to add any langset to the langset table looks like:
 
     <match target="scan">
-       <test name="family">
-           <string>Buggy Sans</string>
-       </test>
-       <edit name="lang" mode="assign">
-           <plus>
-               <name>lang</name>
-               <langset>
-                   <string>zh-cn</string>
-                   <string>zh-tw</string>
-               </langset>
-           </plus>
-       </edit>
+        <test name="family">
+            <string>Buggy Sans</string>
+        </test>
+        <edit name="lang" mode="assign">
+            <plus>
+                <name>lang</name>
+                <langset>
+                    <string>zh-cn</string>
+                    <string>zh-tw</string>
+                </langset>
+            </plus>
+        </edit>
     </match>
 
     To remove any langset from the langset table:
 
     <match target="scan">
-       <test name="family">
-           <string>Buggy Sans</string>
-       </test>
-       <edit name="lang" mode="assign">
-           <minus>
-               <name>lang</name>
-               <langset>
-                   <string>ja</string>
-               </langset>
-           </minus>
-       </edit>
+        <test name="family">
+            <string>Buggy Sans</string>
+        </test>
+        <edit name="lang" mode="assign">
+            <minus>
+                <name>lang</name>
+                <langset>
+                    <string>ja</string>
+                </langset>
+            </minus>
+        </edit>
     </match>
 
  fontconfig/fontconfig.h |  9 ++++++
- fonts.dtd              |  5 ++--
- src/fccfg.c            | 24 +++++++++++++++
- src/fcdbg.c            |  6 ++++
- src/fcint.h            |  3 +-
- src/fclang.c           | 62 ++++++++++++++++++++++++++++++++++++++
- src/fcxml.c            | 80
+ fonts.dtd               |  5 ++--
+ src/fccfg.c             | 24 +++++++++++++++
+ src/fcdbg.c             |  6 ++++
+ src/fcint.h             |  3 +-
+ src/fclang.c            | 62 ++++++++++++++++++++++++++++++++++++++
+ src/fcxml.c             | 80
  +++++++++++++++++++++++++++++++++++++++++++++++++
  7 files changed, 186 insertions(+), 3 deletions(-)
 
 commit d975cdda782bb88c8bb6706889a554b2afb9f939
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 6 12:18:23 2010 +0900
+Date:   Mon Dec 6 12:18:23 2010 +0900
 
     Add the range support in blank element
 
@@ -7749,7 +12811,7 @@ Date:    Mon Dec 6 12:18:23 2010 +0900
 
 commit 51e352a1bde91348888202539639a5a2d0d506d4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Thu Dec 9 11:32:26 2010 +0900
+Date:   Thu Dec 9 11:32:26 2010 +0900
 
     add some document for range and charset.
 
@@ -7758,72 +12820,72 @@ Date:  Thu Dec 9 11:32:26 2010 +0900
 
 commit 857b7efe1e301f670329c6836da52fbab8c5df66
 Author: Akira TAGOH <akira@tagoh.org>
-Date:  Mon Dec 6 12:10:17 2010 +0900
+Date:   Mon Dec 6 12:10:17 2010 +0900
 
     Add charset editing feature.
 
     The syntax to add any characters to the charset table looks like:
 
     <match target="scan">
-       <test name="family">
-           <string>Buggy Sans</string>
-       </test>
-       <edit name="charset" mode="assign">
-           <plus>
-               <name>charset</name>
-               <charset>
-                   <int>0x3220</int>    <!-- PARENTHESIZED IDEOGRAPH
-                   ONE -->
-               </charset>
-           </plus>
-       </edit>
+        <test name="family">
+            <string>Buggy Sans</string>
+        </test>
+        <edit name="charset" mode="assign">
+            <plus>
+                <name>charset</name>
+                <charset>
+                    <int>0x3220</int>    <!-- PARENTHESIZED IDEOGRAPH
+                    ONE -->
+                </charset>
+            </plus>
+        </edit>
     </match>
 
     To remove any characters from the charset table:
 
     <match target="scan">
-       <test name="family">
-           <string>Buggy Sans</string>
-       </test>
-       <edit name="charset" mode="assign">
-           <minus>
-               <name>charset</name>
-               <charset>
-                   <int>0x06CC</int>    <!-- ARABIC LETTER FARSI YEH -->
-                   <int>0x06D2</int>    <!-- ARABIC LETTER YEH BARREE -->
-                   <int>0x06D3</int>    <!-- ARABIC LETTER YEH BARREE
-                   WITH HAMZA ABOVE -->
-               </charset>
-           </minus>
-       </edit>
+        <test name="family">
+            <string>Buggy Sans</string>
+        </test>
+        <edit name="charset" mode="assign">
+            <minus>
+                <name>charset</name>
+                <charset>
+                    <int>0x06CC</int>    <!-- ARABIC LETTER FARSI YEH -->
+                    <int>0x06D2</int>    <!-- ARABIC LETTER YEH BARREE -->
+                    <int>0x06D3</int>    <!-- ARABIC LETTER YEH BARREE
+                    WITH HAMZA ABOVE -->
+                </charset>
+            </minus>
+        </edit>
     </match>
 
     You could also use the range element for convenience:
 
     ...
-               <charset>
-                   <int>0x06CC</int>    <!-- ARABIC LETTER FARSI YEH -->
-                   <range>
-                       <int>0x06D2</int>    <!-- ARABIC LETTER YEH
-                       BARREE -->
-                       <int>0x06D3</int>    <!-- ARABIC LETTER YEH
-                       BARREE WITH HAMZA ABOVE -->
-                   </range>
-               </charset>
+                <charset>
+                    <int>0x06CC</int>    <!-- ARABIC LETTER FARSI YEH -->
+                    <range>
+                        <int>0x06D2</int>    <!-- ARABIC LETTER YEH
+                        BARREE -->
+                        <int>0x06D3</int>    <!-- ARABIC LETTER YEH
+                        BARREE WITH HAMZA ABOVE -->
+                    </range>
+                </charset>
     ...
 
- fonts.dtd      |   4 +-
+ fonts.dtd       |   4 +-
  src/Makefile.am |   4 +-
- src/fccfg.c    |  19 +++++++
- src/fcdbg.c    |   2 +
- src/fcint.h    |   9 +++-
- src/fcxml.c    | 156
+ src/fccfg.c     |  19 +++++++
+ src/fcdbg.c     |   2 +
+ src/fcint.h     |   9 +++-
+ src/fcxml.c     | 156
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
  6 files changed, 185 insertions(+), 9 deletions(-)
 
 commit 0d47cfabd82cd9c02ec5711383f06599b0450ac0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 7 18:48:56 2010 -0500
+Date:   Tue Dec 7 18:48:56 2010 -0500
 
     Bug 28958 - lang=en matches other langs
 
@@ -7834,7 +12896,7 @@ Date:    Tue Dec 7 18:48:56 2010 -0500
 
 commit 1e7a2a4f6cd05bfa8b15f88c2f9ca10ad97fc8ac
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Dec 2 08:13:59 2010 -0500
+Date:   Thu Dec 2 08:13:59 2010 -0500
 
     Fix returned value
 
@@ -7843,273 +12905,273 @@ Date:        Thu Dec 2 08:13:59 2010 -0500
 
 commit 5aaf466d3899842763e746a9c2b745748eb34b48
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 10 16:45:42 2010 -0500
+Date:   Wed Nov 10 16:45:42 2010 -0500
 
     Cleanup copyright notices to replace "Keith Packard" with "the
     author(s)"
 
- COPYING                        | 5 ++---
- Makefile.am                    | 4 ++--
- conf.d/Makefile.am             | 4 ++--
- config/Makedefs.in             | 4 ++--
- configure.in                   | 4 ++--
- doc/Makefile.am                | 4 ++--
- doc/confdir.sgml.in            | 4 ++--
- doc/edit-sgml.c                | 4 ++--
- doc/fcatomic.fncs              | 4 ++--
- doc/fcblanks.fncs              | 4 ++--
- doc/fccache.fncs               | 4 ++--
- doc/fccharset.fncs             | 4 ++--
- doc/fcconfig.fncs              | 4 ++--
- doc/fcconstant.fncs            | 4 ++--
- doc/fcfile.fncs                | 4 ++--
- doc/fcfontset.fncs             | 4 ++--
- doc/fcformat.fncs              | 4 ++--
- doc/fcfreetype.fncs            | 4 ++--
- doc/fcinit.fncs                | 4 ++--
- doc/fcmatrix.fncs              | 4 ++--
- doc/fcobjectset.fncs           | 4 ++--
- doc/fcobjecttype.fncs          | 4 ++--
- doc/fcpattern.fncs             | 4 ++--
- doc/fcstring.fncs              | 4 ++--
- doc/fcstrset.fncs              | 4 ++--
- doc/fcvalue.fncs               | 4 ++--
- doc/fontconfig-devel.sgml      | 8 ++++----
- doc/fontconfig-user.sgml       | 4 ++--
- doc/func.sgml                  | 4 ++--
- doc/version.sgml.in            | 4 ++--
- fc-arch/Makefile.am            | 4 ++--
- fc-arch/fcarch.tmpl.h          | 4 ++--
- fc-cache/Makefile.am           | 4 ++--
- fc-cache/fc-cache.c            | 4 ++--
- fc-case/Makefile.am            | 4 ++--
- fc-case/fc-case.c              | 4 ++--
- fc-case/fccase.tmpl.h          | 4 ++--
- fc-cat/Makefile.am             | 4 ++--
- fc-cat/fc-cat.c                | 4 ++--
- fc-glyphname/Makefile.am       | 4 ++--
- fc-glyphname/fc-glyphname.c    | 4 ++--
+ COPYING                         | 5 ++---
+ Makefile.am                     | 4 ++--
+ conf.d/Makefile.am              | 4 ++--
+ config/Makedefs.in              | 4 ++--
+ configure.in                    | 4 ++--
+ doc/Makefile.am                 | 4 ++--
+ doc/confdir.sgml.in             | 4 ++--
+ doc/edit-sgml.c                 | 4 ++--
+ doc/fcatomic.fncs               | 4 ++--
+ doc/fcblanks.fncs               | 4 ++--
+ doc/fccache.fncs                | 4 ++--
+ doc/fccharset.fncs              | 4 ++--
+ doc/fcconfig.fncs               | 4 ++--
+ doc/fcconstant.fncs             | 4 ++--
+ doc/fcfile.fncs                 | 4 ++--
+ doc/fcfontset.fncs              | 4 ++--
+ doc/fcformat.fncs               | 4 ++--
+ doc/fcfreetype.fncs             | 4 ++--
+ doc/fcinit.fncs                 | 4 ++--
+ doc/fcmatrix.fncs               | 4 ++--
+ doc/fcobjectset.fncs            | 4 ++--
+ doc/fcobjecttype.fncs           | 4 ++--
+ doc/fcpattern.fncs              | 4 ++--
+ doc/fcstring.fncs               | 4 ++--
+ doc/fcstrset.fncs               | 4 ++--
+ doc/fcvalue.fncs                | 4 ++--
+ doc/fontconfig-devel.sgml       | 8 ++++----
+ doc/fontconfig-user.sgml        | 4 ++--
+ doc/func.sgml                   | 4 ++--
+ doc/version.sgml.in             | 4 ++--
+ fc-arch/Makefile.am             | 4 ++--
+ fc-arch/fcarch.tmpl.h           | 4 ++--
+ fc-cache/Makefile.am            | 4 ++--
+ fc-cache/fc-cache.c             | 4 ++--
+ fc-case/Makefile.am             | 4 ++--
+ fc-case/fc-case.c               | 4 ++--
+ fc-case/fccase.tmpl.h           | 4 ++--
+ fc-cat/Makefile.am              | 4 ++--
+ fc-cat/fc-cat.c                 | 4 ++--
+ fc-glyphname/Makefile.am        | 4 ++--
+ fc-glyphname/fc-glyphname.c     | 4 ++--
  fc-glyphname/fcglyphname.tmpl.h | 4 ++--
- fc-lang/Makefile.am            | 4 ++--
- fc-lang/aa.orth                | 4 ++--
- fc-lang/ab.orth                | 4 ++--
- fc-lang/af.orth                | 4 ++--
- fc-lang/am.orth                | 4 ++--
- fc-lang/ar.orth                | 4 ++--
- fc-lang/ast.orth               | 4 ++--
- fc-lang/av.orth                | 4 ++--
- fc-lang/ay.orth                | 4 ++--
- fc-lang/az_ir.orth             | 4 ++--
- fc-lang/ba.orth                | 4 ++--
- fc-lang/be.orth                | 4 ++--
- fc-lang/bg.orth                | 4 ++--
- fc-lang/bh.orth                | 4 ++--
- fc-lang/bho.orth               | 4 ++--
- fc-lang/bi.orth                | 4 ++--
- fc-lang/bin.orth               | 4 ++--
- fc-lang/bm.orth                | 4 ++--
- fc-lang/bo.orth                | 4 ++--
- fc-lang/br.orth                | 4 ++--
- fc-lang/bs.orth                | 4 ++--
- fc-lang/bua.orth               | 4 ++--
- fc-lang/ca.orth                | 4 ++--
- fc-lang/ce.orth                | 4 ++--
- fc-lang/ch.orth                | 4 ++--
- fc-lang/chm.orth               | 4 ++--
- fc-lang/chr.orth               | 4 ++--
- fc-lang/co.orth                | 4 ++--
- fc-lang/cs.orth                | 4 ++--
- fc-lang/cu.orth                | 4 ++--
- fc-lang/cv.orth                | 4 ++--
- fc-lang/cy.orth                | 4 ++--
- fc-lang/da.orth                | 4 ++--
- fc-lang/de.orth                | 4 ++--
- fc-lang/dz.orth                | 4 ++--
- fc-lang/el.orth                | 4 ++--
- fc-lang/en.orth                | 4 ++--
- fc-lang/eo.orth                | 4 ++--
- fc-lang/es.orth                | 4 ++--
- fc-lang/et.orth                | 4 ++--
- fc-lang/eu.orth                | 4 ++--
- fc-lang/fa.orth                | 4 ++--
- fc-lang/fc-lang.c              | 4 ++--
- fc-lang/fc-lang.man            | 4 ++--
- fc-lang/fclang.tmpl.h          | 4 ++--
- fc-lang/ff.orth                | 4 ++--
- fc-lang/fi.orth                | 4 ++--
- fc-lang/fj.orth                | 4 ++--
- fc-lang/fo.orth                | 4 ++--
- fc-lang/fr.orth                | 4 ++--
- fc-lang/fur.orth               | 4 ++--
- fc-lang/fy.orth                | 4 ++--
- fc-lang/ga.orth                | 4 ++--
- fc-lang/gd.orth                | 4 ++--
- fc-lang/gez.orth               | 4 ++--
- fc-lang/gl.orth                | 4 ++--
- fc-lang/gn.orth                | 4 ++--
- fc-lang/gu.orth                | 4 ++--
- fc-lang/gv.orth                | 4 ++--
- fc-lang/ha.orth                | 4 ++--
- fc-lang/haw.orth               | 4 ++--
- fc-lang/he.orth                | 4 ++--
- fc-lang/hi.orth                | 4 ++--
- fc-lang/ho.orth                | 4 ++--
- fc-lang/hr.orth                | 4 ++--
- fc-lang/hu.orth                | 4 ++--
- fc-lang/hy.orth                | 4 ++--
- fc-lang/ia.orth                | 4 ++--
- fc-lang/id.orth                | 4 ++--
- fc-lang/ie.orth                | 4 ++--
- fc-lang/ig.orth                | 4 ++--
- fc-lang/ik.orth                | 4 ++--
- fc-lang/io.orth                | 4 ++--
- fc-lang/is.orth                | 4 ++--
- fc-lang/it.orth                | 4 ++--
- fc-lang/iu.orth                | 4 ++--
- fc-lang/ja.orth                | 4 ++--
- fc-lang/ka.orth                | 4 ++--
- fc-lang/kaa.orth               | 4 ++--
- fc-lang/ki.orth                | 4 ++--
- fc-lang/kk.orth                | 4 ++--
- fc-lang/kl.orth                | 4 ++--
- fc-lang/kn.orth                | 4 ++--
- fc-lang/ko.orth                | 4 ++--
- fc-lang/kok.orth               | 4 ++--
- fc-lang/ku_am.orth             | 4 ++--
- fc-lang/ku_ir.orth             | 4 ++--
- fc-lang/kum.orth               | 4 ++--
- fc-lang/kv.orth                | 4 ++--
- fc-lang/kw.orth                | 4 ++--
- fc-lang/ky.orth                | 4 ++--
- fc-lang/la.orth                | 4 ++--
- fc-lang/lb.orth                | 4 ++--
- fc-lang/lez.orth               | 4 ++--
- fc-lang/ln.orth                | 4 ++--
- fc-lang/lo.orth                | 4 ++--
- fc-lang/lt.orth                | 4 ++--
- fc-lang/lv.orth                | 4 ++--
- fc-lang/mai.orth               | 4 ++--
- fc-lang/mg.orth                | 4 ++--
- fc-lang/mh.orth                | 4 ++--
- fc-lang/mi.orth                | 4 ++--
- fc-lang/mk.orth                | 4 ++--
- fc-lang/ml.orth                | 4 ++--
- fc-lang/mn_cn.orth             | 4 ++--
- fc-lang/mo.orth                | 4 ++--
- fc-lang/mr.orth                | 4 ++--
- fc-lang/mt.orth                | 4 ++--
- fc-lang/my.orth                | 4 ++--
- fc-lang/nb.orth                | 4 ++--
- fc-lang/nds.orth               | 4 ++--
- fc-lang/ne.orth                | 4 ++--
- fc-lang/nl.orth                | 4 ++--
- fc-lang/nn.orth                | 4 ++--
- fc-lang/no.orth                | 4 ++--
- fc-lang/ny.orth                | 4 ++--
- fc-lang/oc.orth                | 4 ++--
- fc-lang/om.orth                | 4 ++--
- fc-lang/or.orth                | 4 ++--
- fc-lang/os.orth                | 4 ++--
- fc-lang/pes.orth               | 4 ++--
- fc-lang/pl.orth                | 4 ++--
- fc-lang/prs.orth               | 4 ++--
- fc-lang/ps_af.orth             | 4 ++--
- fc-lang/ps_pk.orth             | 4 ++--
- fc-lang/pt.orth                | 4 ++--
- fc-lang/rm.orth                | 4 ++--
- fc-lang/ro.orth                | 4 ++--
- fc-lang/ru.orth                | 4 ++--
- fc-lang/sa.orth                | 4 ++--
- fc-lang/sah.orth               | 4 ++--
- fc-lang/sco.orth               | 4 ++--
- fc-lang/se.orth                | 4 ++--
- fc-lang/sel.orth               | 4 ++--
- fc-lang/sk.orth                | 4 ++--
- fc-lang/sl.orth                | 4 ++--
- fc-lang/sm.orth                | 4 ++--
- fc-lang/sma.orth               | 4 ++--
- fc-lang/smj.orth               | 4 ++--
- fc-lang/smn.orth               | 4 ++--
- fc-lang/sms.orth               | 4 ++--
- fc-lang/so.orth                | 4 ++--
- fc-lang/sq.orth                | 4 ++--
- fc-lang/sr.orth                | 4 ++--
- fc-lang/sv.orth                | 4 ++--
- fc-lang/sw.orth                | 4 ++--
- fc-lang/syr.orth               | 4 ++--
- fc-lang/ta.orth                | 4 ++--
- fc-lang/te.orth                | 4 ++--
- fc-lang/tg.orth                | 4 ++--
- fc-lang/th.orth                | 4 ++--
- fc-lang/ti_er.orth             | 4 ++--
- fc-lang/ti_et.orth             | 4 ++--
- fc-lang/tig.orth               | 4 ++--
- fc-lang/tn.orth                | 4 ++--
- fc-lang/to.orth                | 4 ++--
- fc-lang/tr.orth                | 4 ++--
- fc-lang/ts.orth                | 4 ++--
- fc-lang/tt.orth                | 4 ++--
- fc-lang/tw.orth                | 4 ++--
- fc-lang/tyv.orth               | 4 ++--
- fc-lang/ug.orth                | 4 ++--
- fc-lang/uk.orth                | 4 ++--
- fc-lang/ur.orth                | 4 ++--
- fc-lang/ve.orth                | 4 ++--
- fc-lang/vi.orth                | 4 ++--
- fc-lang/vo.orth                | 4 ++--
- fc-lang/vot.orth               | 4 ++--
- fc-lang/wa.orth                | 4 ++--
- fc-lang/wen.orth               | 4 ++--
- fc-lang/wo.orth                | 4 ++--
- fc-lang/xh.orth                | 4 ++--
- fc-lang/yap.orth               | 4 ++--
- fc-lang/yi.orth                | 4 ++--
- fc-lang/yo.orth                | 4 ++--
- fc-lang/zh_cn.orth             | 4 ++--
- fc-lang/zh_hk.orth             | 4 ++--
- fc-lang/zh_mo.orth             | 4 ++--
- fc-lang/zh_sg.orth             | 4 ++--
- fc-lang/zh_tw.orth             | 4 ++--
- fc-lang/zu.orth                | 4 ++--
- fc-list/Makefile.am            | 4 ++--
- fc-list/fc-list.c              | 4 ++--
- fc-match/Makefile.am           | 4 ++--
- fc-match/fc-match.c            | 4 ++--
- fc-pattern/Makefile.am                 | 4 ++--
- fc-pattern/fc-pattern.c        | 4 ++--
- fc-query/Makefile.am           | 4 ++--
- fc-query/fc-query.c            | 4 ++--
- fc-scan/Makefile.am            | 4 ++--
- fc-scan/fc-scan.c              | 4 ++--
- fontconfig/fcfreetype.h        | 4 ++--
- fontconfig/fcprivate.h                 | 4 ++--
- fontconfig/fontconfig.h        | 4 ++--
- src/Makefile.am                | 4 ++--
- src/fcatomic.c                         | 4 ++--
- src/fcblanks.c                         | 4 ++--
- src/fccache.c                  | 4 ++--
- src/fccfg.c                    | 4 ++--
- src/fccharset.c                | 4 ++--
- src/fcdbg.c                    | 4 ++--
- src/fcdefault.c                | 4 ++--
- src/fcdir.c                    | 4 ++--
- src/fcformat.c                         | 4 ++--
- src/fcfreetype.c               | 4 ++--
- src/fcfs.c                     | 4 ++--
- src/fcinit.c                   | 4 ++--
- src/fcint.h                    | 4 ++--
- src/fclang.c                   | 4 ++--
- src/fclist.c                   | 4 ++--
- src/fcmatch.c                  | 4 ++--
- src/fcname.c                   | 4 ++--
- src/fcpat.c                    | 4 ++--
- src/fcstr.c                    | 4 ++--
- src/fcxml.c                    | 4 ++--
+ fc-lang/Makefile.am             | 4 ++--
+ fc-lang/aa.orth                 | 4 ++--
+ fc-lang/ab.orth                 | 4 ++--
+ fc-lang/af.orth                 | 4 ++--
+ fc-lang/am.orth                 | 4 ++--
+ fc-lang/ar.orth                 | 4 ++--
+ fc-lang/ast.orth                | 4 ++--
+ fc-lang/av.orth                 | 4 ++--
+ fc-lang/ay.orth                 | 4 ++--
+ fc-lang/az_ir.orth              | 4 ++--
+ fc-lang/ba.orth                 | 4 ++--
+ fc-lang/be.orth                 | 4 ++--
+ fc-lang/bg.orth                 | 4 ++--
+ fc-lang/bh.orth                 | 4 ++--
+ fc-lang/bho.orth                | 4 ++--
+ fc-lang/bi.orth                 | 4 ++--
+ fc-lang/bin.orth                | 4 ++--
+ fc-lang/bm.orth                 | 4 ++--
+ fc-lang/bo.orth                 | 4 ++--
+ fc-lang/br.orth                 | 4 ++--
+ fc-lang/bs.orth                 | 4 ++--
+ fc-lang/bua.orth                | 4 ++--
+ fc-lang/ca.orth                 | 4 ++--
+ fc-lang/ce.orth                 | 4 ++--
+ fc-lang/ch.orth                 | 4 ++--
+ fc-lang/chm.orth                | 4 ++--
+ fc-lang/chr.orth                | 4 ++--
+ fc-lang/co.orth                 | 4 ++--
+ fc-lang/cs.orth                 | 4 ++--
+ fc-lang/cu.orth                 | 4 ++--
+ fc-lang/cv.orth                 | 4 ++--
+ fc-lang/cy.orth                 | 4 ++--
+ fc-lang/da.orth                 | 4 ++--
+ fc-lang/de.orth                 | 4 ++--
+ fc-lang/dz.orth                 | 4 ++--
+ fc-lang/el.orth                 | 4 ++--
+ fc-lang/en.orth                 | 4 ++--
+ fc-lang/eo.orth                 | 4 ++--
+ fc-lang/es.orth                 | 4 ++--
+ fc-lang/et.orth                 | 4 ++--
+ fc-lang/eu.orth                 | 4 ++--
+ fc-lang/fa.orth                 | 4 ++--
+ fc-lang/fc-lang.c               | 4 ++--
+ fc-lang/fc-lang.man             | 4 ++--
+ fc-lang/fclang.tmpl.h           | 4 ++--
+ fc-lang/ff.orth                 | 4 ++--
+ fc-lang/fi.orth                 | 4 ++--
+ fc-lang/fj.orth                 | 4 ++--
+ fc-lang/fo.orth                 | 4 ++--
+ fc-lang/fr.orth                 | 4 ++--
+ fc-lang/fur.orth                | 4 ++--
+ fc-lang/fy.orth                 | 4 ++--
+ fc-lang/ga.orth                 | 4 ++--
+ fc-lang/gd.orth                 | 4 ++--
+ fc-lang/gez.orth                | 4 ++--
+ fc-lang/gl.orth                 | 4 ++--
+ fc-lang/gn.orth                 | 4 ++--
+ fc-lang/gu.orth                 | 4 ++--
+ fc-lang/gv.orth                 | 4 ++--
+ fc-lang/ha.orth                 | 4 ++--
+ fc-lang/haw.orth                | 4 ++--
+ fc-lang/he.orth                 | 4 ++--
+ fc-lang/hi.orth                 | 4 ++--
+ fc-lang/ho.orth                 | 4 ++--
+ fc-lang/hr.orth                 | 4 ++--
+ fc-lang/hu.orth                 | 4 ++--
+ fc-lang/hy.orth                 | 4 ++--
+ fc-lang/ia.orth                 | 4 ++--
+ fc-lang/id.orth                 | 4 ++--
+ fc-lang/ie.orth                 | 4 ++--
+ fc-lang/ig.orth                 | 4 ++--
+ fc-lang/ik.orth                 | 4 ++--
+ fc-lang/io.orth                 | 4 ++--
+ fc-lang/is.orth                 | 4 ++--
+ fc-lang/it.orth                 | 4 ++--
+ fc-lang/iu.orth                 | 4 ++--
+ fc-lang/ja.orth                 | 4 ++--
+ fc-lang/ka.orth                 | 4 ++--
+ fc-lang/kaa.orth                | 4 ++--
+ fc-lang/ki.orth                 | 4 ++--
+ fc-lang/kk.orth                 | 4 ++--
+ fc-lang/kl.orth                 | 4 ++--
+ fc-lang/kn.orth                 | 4 ++--
+ fc-lang/ko.orth                 | 4 ++--
+ fc-lang/kok.orth                | 4 ++--
+ fc-lang/ku_am.orth              | 4 ++--
+ fc-lang/ku_ir.orth              | 4 ++--
+ fc-lang/kum.orth                | 4 ++--
+ fc-lang/kv.orth                 | 4 ++--
+ fc-lang/kw.orth                 | 4 ++--
+ fc-lang/ky.orth                 | 4 ++--
+ fc-lang/la.orth                 | 4 ++--
+ fc-lang/lb.orth                 | 4 ++--
+ fc-lang/lez.orth                | 4 ++--
+ fc-lang/ln.orth                 | 4 ++--
+ fc-lang/lo.orth                 | 4 ++--
+ fc-lang/lt.orth                 | 4 ++--
+ fc-lang/lv.orth                 | 4 ++--
+ fc-lang/mai.orth                | 4 ++--
+ fc-lang/mg.orth                 | 4 ++--
+ fc-lang/mh.orth                 | 4 ++--
+ fc-lang/mi.orth                 | 4 ++--
+ fc-lang/mk.orth                 | 4 ++--
+ fc-lang/ml.orth                 | 4 ++--
+ fc-lang/mn_cn.orth              | 4 ++--
+ fc-lang/mo.orth                 | 4 ++--
+ fc-lang/mr.orth                 | 4 ++--
+ fc-lang/mt.orth                 | 4 ++--
+ fc-lang/my.orth                 | 4 ++--
+ fc-lang/nb.orth                 | 4 ++--
+ fc-lang/nds.orth                | 4 ++--
+ fc-lang/ne.orth                 | 4 ++--
+ fc-lang/nl.orth                 | 4 ++--
+ fc-lang/nn.orth                 | 4 ++--
+ fc-lang/no.orth                 | 4 ++--
+ fc-lang/ny.orth                 | 4 ++--
+ fc-lang/oc.orth                 | 4 ++--
+ fc-lang/om.orth                 | 4 ++--
+ fc-lang/or.orth                 | 4 ++--
+ fc-lang/os.orth                 | 4 ++--
+ fc-lang/pes.orth                | 4 ++--
+ fc-lang/pl.orth                 | 4 ++--
+ fc-lang/prs.orth                | 4 ++--
+ fc-lang/ps_af.orth              | 4 ++--
+ fc-lang/ps_pk.orth              | 4 ++--
+ fc-lang/pt.orth                 | 4 ++--
+ fc-lang/rm.orth                 | 4 ++--
+ fc-lang/ro.orth                 | 4 ++--
+ fc-lang/ru.orth                 | 4 ++--
+ fc-lang/sa.orth                 | 4 ++--
+ fc-lang/sah.orth                | 4 ++--
+ fc-lang/sco.orth                | 4 ++--
+ fc-lang/se.orth                 | 4 ++--
+ fc-lang/sel.orth                | 4 ++--
+ fc-lang/sk.orth                 | 4 ++--
+ fc-lang/sl.orth                 | 4 ++--
+ fc-lang/sm.orth                 | 4 ++--
+ fc-lang/sma.orth                | 4 ++--
+ fc-lang/smj.orth                | 4 ++--
+ fc-lang/smn.orth                | 4 ++--
+ fc-lang/sms.orth                | 4 ++--
+ fc-lang/so.orth                 | 4 ++--
+ fc-lang/sq.orth                 | 4 ++--
+ fc-lang/sr.orth                 | 4 ++--
+ fc-lang/sv.orth                 | 4 ++--
+ fc-lang/sw.orth                 | 4 ++--
+ fc-lang/syr.orth                | 4 ++--
+ fc-lang/ta.orth                 | 4 ++--
+ fc-lang/te.orth                 | 4 ++--
+ fc-lang/tg.orth                 | 4 ++--
+ fc-lang/th.orth                 | 4 ++--
+ fc-lang/ti_er.orth              | 4 ++--
+ fc-lang/ti_et.orth              | 4 ++--
+ fc-lang/tig.orth                | 4 ++--
+ fc-lang/tn.orth                 | 4 ++--
+ fc-lang/to.orth                 | 4 ++--
+ fc-lang/tr.orth                 | 4 ++--
+ fc-lang/ts.orth                 | 4 ++--
+ fc-lang/tt.orth                 | 4 ++--
+ fc-lang/tw.orth                 | 4 ++--
+ fc-lang/tyv.orth                | 4 ++--
+ fc-lang/ug.orth                 | 4 ++--
+ fc-lang/uk.orth                 | 4 ++--
+ fc-lang/ur.orth                 | 4 ++--
+ fc-lang/ve.orth                 | 4 ++--
+ fc-lang/vi.orth                 | 4 ++--
+ fc-lang/vo.orth                 | 4 ++--
+ fc-lang/vot.orth                | 4 ++--
+ fc-lang/wa.orth                 | 4 ++--
+ fc-lang/wen.orth                | 4 ++--
+ fc-lang/wo.orth                 | 4 ++--
+ fc-lang/xh.orth                 | 4 ++--
+ fc-lang/yap.orth                | 4 ++--
+ fc-lang/yi.orth                 | 4 ++--
+ fc-lang/yo.orth                 | 4 ++--
+ fc-lang/zh_cn.orth              | 4 ++--
+ fc-lang/zh_hk.orth              | 4 ++--
+ fc-lang/zh_mo.orth              | 4 ++--
+ fc-lang/zh_sg.orth              | 4 ++--
+ fc-lang/zh_tw.orth              | 4 ++--
+ fc-lang/zu.orth                 | 4 ++--
+ fc-list/Makefile.am             | 4 ++--
+ fc-list/fc-list.c               | 4 ++--
+ fc-match/Makefile.am            | 4 ++--
+ fc-match/fc-match.c             | 4 ++--
+ fc-pattern/Makefile.am          | 4 ++--
+ fc-pattern/fc-pattern.c         | 4 ++--
+ fc-query/Makefile.am            | 4 ++--
+ fc-query/fc-query.c             | 4 ++--
+ fc-scan/Makefile.am             | 4 ++--
+ fc-scan/fc-scan.c               | 4 ++--
+ fontconfig/fcfreetype.h         | 4 ++--
+ fontconfig/fcprivate.h          | 4 ++--
+ fontconfig/fontconfig.h         | 4 ++--
+ src/Makefile.am                 | 4 ++--
+ src/fcatomic.c                  | 4 ++--
+ src/fcblanks.c                  | 4 ++--
+ src/fccache.c                   | 4 ++--
+ src/fccfg.c                     | 4 ++--
+ src/fccharset.c                 | 4 ++--
+ src/fcdbg.c                     | 4 ++--
+ src/fcdefault.c                 | 4 ++--
+ src/fcdir.c                     | 4 ++--
+ src/fcformat.c                  | 4 ++--
+ src/fcfreetype.c                | 4 ++--
+ src/fcfs.c                      | 4 ++--
+ src/fcinit.c                    | 4 ++--
+ src/fcint.h                     | 4 ++--
+ src/fclang.c                    | 4 ++--
+ src/fclist.c                    | 4 ++--
+ src/fcmatch.c                   | 4 ++--
+ src/fcname.c                    | 4 ++--
+ src/fcpat.c                     | 4 ++--
+ src/fcstr.c                     | 4 ++--
+ src/fcxml.c                     | 4 ++--
  257 files changed, 516 insertions(+), 517 deletions(-)
 
 commit 1f5c675fedd42bda49375ca7a9d6f3f8b2cd97bb
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 10 15:27:10 2010 -0500
+Date:   Wed Nov 10 15:27:10 2010 -0500
 
     Add more copyright owners
 
@@ -8118,7 +13180,7 @@ Date:    Wed Nov 10 15:27:10 2010 -0500
 
 commit 039b9fd090cf3fcd279eeb8c786070a94993a8ba
 Author: Jeremy Huddleston <jeremyhu@apple.com>
-Date:  Wed Nov 3 01:08:12 2010 -0700
+Date:   Wed Nov 3 01:08:12 2010 -0700
 
     fontconfig.pc.in: Add sysconfdir, localstatedir, and PACKAGE
 
@@ -8137,7 +13199,7 @@ Date:    Wed Nov 3 01:08:12 2010 -0700
 
 commit 81b542b50f82f8a0ad9f38f7d913fe5433631166
 Author: Jeremy Huddleston <jeremyhu@apple.com>
-Date:  Wed Oct 6 11:21:29 2010 -0700
+Date:   Wed Oct 6 11:21:29 2010 -0700
 
     fontconfig.pc: Add variables for confdir and cachedir
 
@@ -8148,7 +13210,7 @@ Date:    Wed Oct 6 11:21:29 2010 -0700
 
 commit caa4bec9459af0779d1d16ba66964593e5748e3c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Sep 21 13:18:05 2010 -0400
+Date:   Tue Sep 21 13:18:05 2010 -0400
 
     Bug 24729 - [ne_NP] Fix ortho file
 
@@ -8159,7 +13221,7 @@ Date:    Tue Sep 21 13:18:05 2010 -0400
 
 commit 0a023b24daa683d9c0be4e2ef6d50040c1c52316
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Sep 21 13:14:55 2010 -0400
+Date:   Tue Sep 21 13:14:55 2010 -0400
 
     [fc-lang] Support excluding characters
 
@@ -8171,18 +13233,18 @@ Date:  Tue Sep 21 13:14:55 2010 -0400
 
 commit 52960d05ebb8af34a302e3959978d2930a39fb39
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Sep 21 13:14:41 2010 -0400
+Date:   Tue Sep 21 13:14:41 2010 -0400
 
     Add new public API: FcCharSetDelChar()
 
- doc/fccharset.fncs     | 11 +++++++++++
+ doc/fccharset.fncs      | 11 +++++++++++
  fontconfig/fontconfig.h |  3 +++
- src/fccharset.c        | 17 +++++++++++++++++
+ src/fccharset.c         | 17 +++++++++++++++++
  3 files changed, 31 insertions(+)
 
 commit 9d8d0226d9ac5bc9956263a13454179eafc4ab82
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Sep 3 08:11:00 2010 -0400
+Date:   Fri Sep 3 08:11:00 2010 -0400
 
     Bug 29995 - fc-cat does not invoke FcFini()
 
@@ -8191,7 +13253,7 @@ Date:    Fri Sep 3 08:11:00 2010 -0400
 
 commit 25afea879d5b73c116e00c2c62b2a7ce9bcf803a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 18 11:31:31 2010 -0400
+Date:   Wed Aug 18 11:31:31 2010 -0400
 
     Add comments
 
@@ -8200,7 +13262,7 @@ Date:    Wed Aug 18 11:31:31 2010 -0400
 
 commit c2764d959c652f572bfefa00234448742bda2b08
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Aug 5 15:58:09 2010 -0400
+Date:   Thu Aug 5 15:58:09 2010 -0400
 
     Bug 29338 - fc-pattern.sgml, open para tag
 
@@ -8209,7 +13271,7 @@ Date:    Thu Aug 5 15:58:09 2010 -0400
 
 commit 78366844468c5fa785d05bb25be2d0023e60f5ee
 Author: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date:  Wed Jun 2 22:38:19 2010 -0400
+Date:   Wed Jun 2 22:38:19 2010 -0400
 
     Fix compiler warnings
 
@@ -8218,28 +13280,28 @@ Date:  Wed Jun 2 22:38:19 2010 -0400
 
 commit ba7b50ab3324887e1680a4a8961487706705c739
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Apr 20 23:18:00 2010 -0400
+Date:   Tue Apr 20 23:18:00 2010 -0400
 
     Add fc-pattern cmdline tool
 
- Makefile.am               |   3 +-
- configure.in              |   1 +
- fc-cache/fc-cache.sgml     |  1 +
- fc-cat/fc-cat.sgml        |   1 +
- fc-list/fc-list.sgml      |   1 +
- fc-match/fc-match.sgml     |  1 +
+ Makefile.am                |   3 +-
+ configure.in               |   1 +
+ fc-cache/fc-cache.sgml     |   1 +
+ fc-cat/fc-cat.sgml         |   1 +
+ fc-list/fc-list.sgml       |   1 +
+ fc-match/fc-match.sgml     |   1 +
  fc-pattern/Makefile.am     |  59 +++++++++++++
  fc-pattern/fc-pattern.c    | 195
  +++++++++++++++++++++++++++++++++++++++++++
  fc-pattern/fc-pattern.sgml | 204
  +++++++++++++++++++++++++++++++++++++++++++++
- fc-query/fc-query.sgml     |  1 +
- fc-scan/fc-scan.sgml      |   1 +
+ fc-query/fc-query.sgml     |   1 +
+ fc-scan/fc-scan.sgml       |   1 +
  11 files changed, 467 insertions(+), 1 deletion(-)
 
 commit ac5a2336436dadac699bb579d3f6ca30225dbb28
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Apr 12 12:49:53 2010 -0400
+Date:   Mon Apr 12 12:49:53 2010 -0400
 
     Fix comment
 
@@ -8248,36 +13310,36 @@ Date:  Mon Apr 12 12:49:53 2010 -0400
 
 commit 594dcef0f30ca27e27b95a9174087e8c61327e5f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Apr 12 12:18:50 2010 -0400
+Date:   Mon Apr 12 12:18:50 2010 -0400
 
     Remove all training whitespaces
 
  src/fcatomic.c   |   4 +-
- src/fccache.c   |  66 ++++++++++++------------
- src/fccfg.c     | 118 +++++++++++++++++++++----------------------
+ src/fccache.c    |  66 ++++++++++++------------
+ src/fccfg.c      | 118 +++++++++++++++++++++----------------------
  src/fccharset.c  | 150
  +++++++++++++++++++++++++++----------------------------
- src/fcdbg.c     |  14 +++---
+ src/fcdbg.c      |  14 +++---
  src/fcdefault.c  |   2 +-
- src/fcdir.c     |  14 +++---
+ src/fcdir.c      |  14 +++---
  src/fcfreetype.c |  88 ++++++++++++++++----------------
- src/fcfs.c      |   6 +--
- src/fcftint.h   |   2 +-
- src/fcinit.c    |   6 +--
- src/fcint.h     |  42 ++++++++--------
- src/fclang.c    |  28 +++++------
- src/fclist.c    |  30 +++++------
- src/fcmatch.c   |  32 ++++++------
+ src/fcfs.c       |   6 +--
+ src/fcftint.h    |   2 +-
+ src/fcinit.c     |   6 +--
+ src/fcint.h      |  42 ++++++++--------
+ src/fclang.c     |  28 +++++------
+ src/fclist.c     |  30 +++++------
+ src/fcmatch.c    |  32 ++++++------
  src/fcmatrix.c   |   6 +--
- src/fcname.c    |  28 +++++------
- src/fcpat.c     |  70 +++++++++++++-------------
- src/fcstr.c     |  74 +++++++++++++--------------
- src/ftglue.c    |  16 +++---
+ src/fcname.c     |  28 +++++------
+ src/fcpat.c      |  70 +++++++++++++-------------
+ src/fcstr.c      |  74 +++++++++++++--------------
+ src/ftglue.c     |  16 +++---
  20 files changed, 398 insertions(+), 398 deletions(-)
 
 commit d0d1f3904c9f6af9f39a5a085e454cde5ba9d44e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Apr 12 12:10:05 2010 -0400
+Date:   Mon Apr 12 12:10:05 2010 -0400
 
     More whitespace
 
@@ -8287,7 +13349,7 @@ Date:    Mon Apr 12 12:10:05 2010 -0400
 
 commit 2b0f3f1128e479dd3d32022336c967655e6c4821
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Apr 12 11:52:09 2010 -0400
+Date:   Mon Apr 12 11:52:09 2010 -0400
 
     Whitespace
 
@@ -8296,7 +13358,7 @@ Date:    Mon Apr 12 11:52:09 2010 -0400
 
 commit 632612b810f1c8eb5b75ba1465d10cb31af0cbf0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Apr 7 12:47:37 2010 -0400
+Date:   Wed Apr 7 12:47:37 2010 -0400
 
     Accept TT_PLATFORM_MICROSOFT, TT_MS_ID_SYMBOL_CS from name table
 
@@ -8321,7 +13383,7 @@ Date:    Wed Apr 7 12:47:37 2010 -0400
 
 commit 300b495dc400df401afaacfa4e986092ea119865
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 3 13:26:55 2010 -0500
+Date:   Wed Mar 3 13:26:55 2010 -0500
 
     Don't include unistd.h in fontconfig.h
 
@@ -8332,7 +13394,7 @@ Date:    Wed Mar 3 13:26:55 2010 -0500
 
 commit 111e5b6d690970fce1abaf39e01d6d2498c9cfb3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 26 01:47:56 2010 -0500
+Date:   Fri Feb 26 01:47:56 2010 -0500
 
     Bug 25152 Don't sleep(2) if all caches were uptodate
 
@@ -8341,7 +13403,7 @@ Date:    Fri Feb 26 01:47:56 2010 -0500
 
 commit 3cd1e673a9b518784183029d5cc1d2adae0cb29a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Feb 25 17:11:14 2010 -0500
+Date:   Thu Feb 25 17:11:14 2010 -0500
 
     Bug 26157 Solaris/Sun C 5.8: compilation of 2.8.0 and 2.7.3 fails
 
@@ -8350,7 +13412,7 @@ Date:    Thu Feb 25 17:11:14 2010 -0500
 
 commit 2c93614ea0d0d1d895abe6c44add436c58bd99f8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Feb 25 15:10:41 2010 -0500
+Date:   Thu Feb 25 15:10:41 2010 -0500
 
     Bug 18886 installation crashes if fontconfig already installed
 
@@ -8361,7 +13423,7 @@ Date:    Thu Feb 25 15:10:41 2010 -0500
 
 commit 2e375b68946cafa62dce3abebdd35e20ecbb0b46
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Feb 14 20:27:22 2010 -0500
+Date:   Sun Feb 14 20:27:22 2010 -0500
 
     More doc typo fixes
 
@@ -8370,7 +13432,7 @@ Date:    Sun Feb 14 20:27:22 2010 -0500
 
 commit 77be30cb9fde6540337a590e5d90e59996e07adc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Feb 14 20:20:00 2010 -0500
+Date:   Sun Feb 14 20:20:00 2010 -0500
 
     Fix doc typo
 
@@ -8379,7 +13441,7 @@ Date:    Sun Feb 14 20:20:00 2010 -0500
 
 commit d6351325056a94e2db0c8c533c7d16eb5c278861
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jan 26 12:45:09 2010 -0500
+Date:   Tue Jan 26 12:45:09 2010 -0500
 
     Add note about autogen.sh to INSTALL
 
@@ -8388,7 +13450,7 @@ Date:    Tue Jan 26 12:45:09 2010 -0500
 
 commit 0dbbf9f20b8a65af8a8a05ada653d99117192622
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jan 26 12:43:51 2010 -0500
+Date:   Tue Jan 26 12:43:51 2010 -0500
 
     Update INSTALL
 
@@ -8397,7 +13459,7 @@ Date:    Tue Jan 26 12:43:51 2010 -0500
 
 commit af4a82863f60dff79c4ce06a871b737899a3c9e3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 8 21:15:15 2009 -0500
+Date:   Tue Dec 8 21:15:15 2009 -0500
 
     Bug 25508 configure assumes bash > 2.0 is on system
 
@@ -8410,7 +13472,7 @@ Date:    Tue Dec 8 21:15:15 2009 -0500
 
 commit aabe0f9d7d427097ddfc69ceb6f48999fcd01f60
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 30 16:09:55 2009 -0500
+Date:   Mon Nov 30 16:09:55 2009 -0500
 
     [doc] Fix typo
 
@@ -8419,7 +13481,7 @@ Date:    Mon Nov 30 16:09:55 2009 -0500
 
 commit 38bd85b83b2114d9a18da7b0ea73e0cdad5c7ee4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Nov 20 18:44:04 2009 -0500
+Date:   Fri Nov 20 18:44:04 2009 -0500
 
     [fc-cache] Document -r argument in man page
 
@@ -8428,18 +13490,18 @@ Date:  Fri Nov 20 18:44:04 2009 -0500
 
 commit 4a3bef8ac3b91354c6c10b5f6af10ead9d4fe49a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 18:45:19 2009 -0500
+Date:   Wed Nov 18 18:45:19 2009 -0500
 
     Bump version to 2.8.0
 
- README                         | 32 ++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ README                  | 32 ++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  3 files changed, 33 insertions(+), 5 deletions(-)
 
 commit 2e44cbe1b9bf466718167e9e05077743df36ab21
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 18:45:06 2009 -0500
+Date:   Wed Nov 18 18:45:06 2009 -0500
 
     Bump libtool revision in preparation for release
 
@@ -8448,7 +13510,7 @@ Date:    Wed Nov 18 18:45:06 2009 -0500
 
 commit 91a73751dcd4fd2d2e4e8bcb98af53098c721224
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Wed Nov 18 21:56:16 2009 +0200
+Date:   Wed Nov 18 21:56:16 2009 +0200
 
     Improve zip "distribution"
 
@@ -8460,7 +13522,7 @@ Date:    Wed Nov 18 21:56:16 2009 +0200
 
 commit bb8fdae8ad6f0a857569b3e09cf21f1af6b4a41b
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Wed Nov 18 21:54:39 2009 +0200
+Date:   Wed Nov 18 21:54:39 2009 +0200
 
     Use correct autoconf variable
 
@@ -8473,7 +13535,7 @@ Date:    Wed Nov 18 21:54:39 2009 +0200
 
 commit 1845f3100d15927cc536bc3d38f140c139fb5614
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 14:39:34 2009 -0500
+Date:   Wed Nov 18 14:39:34 2009 -0500
 
     [fc-arch] Rename architecture names to better reflect what they are
 
@@ -8485,12 +13547,12 @@ Date:  Wed Nov 18 14:39:34 2009 -0500
 
     This leads to the following 6 archs (old name -> new name):
 
-       x86    -> le32d4
-       mipsel -> le32d8
-       x86-64 -> le64
-       m68k   -> be32d4
-       ppc    -> be32d8
-       ppc64  -> be64
+            x86    -> le32d4
+            mipsel -> le32d8
+            x86-64 -> le64
+            m68k   -> be32d4
+            ppc    -> be32d8
+            ppc64  -> be64
 
  fc-arch/fcarch.tmpl.h | 67
  ++++++++++++++++++++++++++-------------------------
@@ -8498,7 +13560,7 @@ Date:    Wed Nov 18 14:39:34 2009 -0500
 
 commit d5ebf48e34e9235cf10e9f7beb49af74823c3fc6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 14:08:00 2009 -0500
+Date:   Wed Nov 18 14:08:00 2009 -0500
 
     [fc-arch] Beautify the arch template
 
@@ -8508,7 +13570,7 @@ Date:    Wed Nov 18 14:08:00 2009 -0500
 
 commit d074706b507226427f5a4018e78fe120a01eb53d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:40:11 2009 -0500
+Date:   Wed Nov 18 09:40:11 2009 -0500
 
     [fc-case] Update CaseFolding.txt to Unicode 5.2.0
 
@@ -8518,7 +13580,7 @@ Date:    Wed Nov 18 09:40:11 2009 -0500
 
 commit 13781ba00b0ded28319ff417a254c620231973f1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:36:23 2009 -0500
+Date:   Wed Nov 18 09:36:23 2009 -0500
 
     [fc-glyphname] Remove Adobe glyphlist
 
@@ -8530,33 +13592,33 @@ Date:  Wed Nov 18 09:36:23 2009 -0500
 
 commit d2fb683796f41a68edec53f26e524fd06725eef8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:35:40 2009 -0500
+Date:   Wed Nov 18 09:35:40 2009 -0500
 
     Clean up Makefile's a bit
 
- fc-arch/Makefile.am     |  4 +---
- fc-case/Makefile.am     |  7 +++----
+ fc-arch/Makefile.am      |  4 +---
+ fc-case/Makefile.am      |  7 +++----
  fc-glyphname/Makefile.am |  3 ++-
- fc-lang/Makefile.am     |  2 +-
- src/Makefile.am         | 12 +++++++++---
+ fc-lang/Makefile.am      |  2 +-
+ src/Makefile.am          | 12 +++++++++---
  5 files changed, 16 insertions(+), 12 deletions(-)
 
 commit 192927225c447a8eaba613838aff93f82dee41d0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:26:24 2009 -0500
+Date:   Wed Nov 18 09:26:24 2009 -0500
 
     [fc-glyphname] Rename internal arrays to prefix with _fc_
 
     Although they were static, I was still surprised that gdb was seeing
     our variable "glyphs".  Not helpful.
 
- fc-glyphname/fc-glyphname.c | 6 +++---
- src/fcfreetype.c           | 13 ++++++-------
+ fc-glyphname/fc-glyphname.c |  6 +++---
+ src/fcfreetype.c            | 13 ++++++-------
  2 files changed, 9 insertions(+), 10 deletions(-)
 
 commit 3e5e83e12e051d6ac734f08609c6c584b0f0b807
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:26:01 2009 -0500
+Date:   Wed Nov 18 09:26:01 2009 -0500
 
     [src] Create fcglyphname.h automatically
 
@@ -8565,7 +13627,7 @@ Date:    Wed Nov 18 09:26:01 2009 -0500
 
 commit 040c98bcc40617ecbc9eb7e16b1714ebd256cfdc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:25:42 2009 -0500
+Date:   Wed Nov 18 09:25:42 2009 -0500
 
     [fc-glyphname] Cleanup Makefile.am
 
@@ -8574,7 +13636,7 @@ Date:    Wed Nov 18 09:25:42 2009 -0500
 
 commit 77f4e60a32971a815b85f187712191724a00b856
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Nov 18 09:10:05 2009 -0500
+Date:   Wed Nov 18 09:10:05 2009 -0500
 
     Remove bogus comment
 
@@ -8587,7 +13649,7 @@ Date:    Wed Nov 18 09:10:05 2009 -0500
 
 commit a90a3ad97a7cee10225190e13a576e55871b9441
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Nov 17 12:10:01 2009 -0500
+Date:   Tue Nov 17 12:10:01 2009 -0500
 
     Make sure fclang.h and fcarch.h are built
 
@@ -8596,7 +13658,7 @@ Date:    Tue Nov 17 12:10:01 2009 -0500
 
 commit a3b2426819836ab2454c6a7bad27c382f4a245bf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 18:29:26 2009 -0500
+Date:   Mon Nov 16 18:29:26 2009 -0500
 
     [lang] Fix serializing LangSet from older versions
 
@@ -8605,18 +13667,18 @@ Date:  Mon Nov 16 18:29:26 2009 -0500
 
 commit 8480c6f86327877fce729ebb01b52bd7a40ddfc5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 17:38:40 2009 -0500
+Date:   Mon Nov 16 17:38:40 2009 -0500
 
     [arch] Try to ensure proper FcLangSet alignment in arch
 
  fc-arch/fc-arch.c     |  5 +++--
  fc-arch/fcarch.tmpl.h | 16 ++++++++--------
- src/fclang.c         |  2 +-
+ src/fclang.c          |  2 +-
  3 files changed, 12 insertions(+), 11 deletions(-)
 
 commit dffcb2a083bc5f959ed96dbdf0f365ebc0e710cc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 17:00:50 2009 -0500
+Date:   Mon Nov 16 17:00:50 2009 -0500
 
     [xml] Remove unused code
 
@@ -8625,7 +13687,7 @@ Date:    Mon Nov 16 17:00:50 2009 -0500
 
 commit b2d910123008115813a5cd623389189a2d66880b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 16:57:53 2009 -0500
+Date:   Mon Nov 16 16:57:53 2009 -0500
 
     [int] Remove more unused macros
 
@@ -8634,7 +13696,7 @@ Date:    Mon Nov 16 16:57:53 2009 -0500
 
 commit 247c4f3df21582260c4799bdbda2be1c13cc8901
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:48:20 2009 -0500
+Date:   Mon Nov 16 15:48:20 2009 -0500
 
     Enable automake silent rules
 
@@ -8643,7 +13705,7 @@ Date:    Mon Nov 16 15:48:20 2009 -0500
 
 commit 963820fcbfdb537fd956f8863f8793cf22093c5d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:46:46 2009 -0500
+Date:   Mon Nov 16 15:46:46 2009 -0500
 
     [int] Remove fc_value_* macros that did nothing other than renaming
 
@@ -8654,7 +13716,7 @@ Date:    Mon Nov 16 15:46:46 2009 -0500
 
 commit 888f9427ae84195104855d2bb2fbb6d44067a998
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:43:08 2009 -0500
+Date:   Mon Nov 16 15:43:08 2009 -0500
 
     [int] Remove fc_storage_type() in favor of direct access to v->type
 
@@ -8665,7 +13727,7 @@ Date:    Mon Nov 16 15:43:08 2009 -0500
 
 commit 486fa46893d070485738de6e2c0d418650662d63
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:41:58 2009 -0500
+Date:   Mon Nov 16 15:41:58 2009 -0500
 
     Remove unused macros
 
@@ -8674,7 +13736,7 @@ Date:    Mon Nov 16 15:41:58 2009 -0500
 
 commit 1f4e6fecde22fd4ce8336b01a5c32c533fcb8bac
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:39:16 2009 -0500
+Date:   Mon Nov 16 15:39:16 2009 -0500
 
     Bump cache version up from 2 to 3 and fix FcLangSet caching/crash
 
@@ -8689,24 +13751,24 @@ Date:  Mon Nov 16 15:39:16 2009 -0500
     And change cache format, hence bumping from 2 to 3.
 
  fontconfig/fontconfig.h |  2 +-
- src/fcint.h            |  2 +-
- src/fclang.c           | 67
+ src/fcint.h             |  2 +-
+ src/fclang.c            | 67
  ++++++++++++++++++++++++++++++++++++++-----------
  3 files changed, 54 insertions(+), 17 deletions(-)
 
 commit 6b1fc678ca59df3f3f1ffac0e509cf485c9df0c0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 16:57:10 2009 -0500
+Date:   Mon Nov 16 16:57:10 2009 -0500
 
     [int] Define MIN/MAX/ABS macros
 
  src/fcfreetype.c | 3 ---
- src/fcint.h     | 4 ++++
+ src/fcint.h      | 4 ++++
  2 files changed, 4 insertions(+), 3 deletions(-)
 
 commit b393846860a390ebe35b19320b5eaf9272084042
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:17:56 2009 -0500
+Date:   Mon Nov 16 15:17:56 2009 -0500
 
     [fc-arch] Add FcAlign to arch signature
 
@@ -8716,40 +13778,40 @@ Date:  Mon Nov 16 15:17:56 2009 -0500
 
 commit 8009229bc5cd9b540ff56a47ddc32ccada2679b0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 16 15:12:52 2009 -0500
+Date:   Mon Nov 16 15:12:52 2009 -0500
 
     Move FcAlign to fcint.h
 
- src/fcint.h      | 8 ++++++++
+ src/fcint.h       | 8 ++++++++
  src/fcserialize.c | 8 --------
  2 files changed, 8 insertions(+), 8 deletions(-)
 
 commit 36ae1d9563cff4966b293f816cf9eb25c8ebb857
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 9 13:17:17 2009 -0500
+Date:   Mon Nov 9 13:17:17 2009 -0500
 
     Clarify default confdir and cachedir better.
 
-    Also remove --with-docdir. It can be set by setting docdir variable.
+    Also remove --with-docdir.  It can be set by setting docdir variable.
 
- configure.in   | 19 ++-----------------
+ configure.in    | 19 ++-----------------
  doc/Makefile.am |  2 --
  2 files changed, 2 insertions(+), 19 deletions(-)
 
 commit b322eb4d7a90778dc9f08c73036836deba7e463e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Sep 8 11:45:26 2009 -0400
+Date:   Tue Sep 8 11:45:26 2009 -0400
 
     Bump version to 2.7.3
 
- README                         | 14 ++++++++++++--
- configure.in           |  2 +-
+ README                  | 14 ++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 14 insertions(+), 4 deletions(-)
 
 commit afc845d930877ac62f6d5a5f50ea87b5182d0a4a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Sep 8 11:44:59 2009 -0400
+Date:   Tue Sep 8 11:44:59 2009 -0400
 
     Bump libtool version in preparation for release
 
@@ -8758,7 +13820,7 @@ Date:    Tue Sep 8 11:44:59 2009 -0400
 
 commit 5e544b32d8dc98737c7a268a6a5f877207284e9a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Sep 6 22:10:22 2009 -0400
+Date:   Sun Sep 6 22:10:22 2009 -0400
 
     Use default config in FcFileScan() and FcDirScan()
 
@@ -8771,7 +13833,7 @@ Date:    Sun Sep 6 22:10:22 2009 -0400
 
 commit 25436fd08fa6d0825a2f7c7b5d51e34873a05187
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Sep 2 20:03:42 2009 -0700
+Date:   Wed Sep 2 20:03:42 2009 -0700
 
     Updated Arabic, Persian, and Urdu orthographies
 
@@ -8794,7 +13856,7 @@ Date:    Wed Sep 2 20:03:42 2009 -0700
 
 commit d9d8b8826402ca75e882a427392bc8209ae8ff1a
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Sep 2 18:54:24 2009 -0700
+Date:   Wed Sep 2 18:54:24 2009 -0700
 
     Correct Ewe (ee) orthography to use U+025B (bug #20711)
 
@@ -8803,18 +13865,18 @@ Date:  Wed Sep 2 18:54:24 2009 -0700
 
 commit e52fdbd2bc1b9589ca0adc4b0c143034ff60dd18
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Aug 31 17:32:36 2009 -0400
+Date:   Mon Aug 31 17:32:36 2009 -0400
 
     Bump version to 2.7.2
 
- README                         | 19 +++++++++++++++++--
- configure.in           |  2 +-
+ README                  | 19 +++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 19 insertions(+), 4 deletions(-)
 
 commit a74cfb63cb6af3c357b9c33d9f28b9cea5ff3e72
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Aug 31 17:32:13 2009 -0400
+Date:   Mon Aug 31 17:32:13 2009 -0400
 
     Bump libtool version for release
 
@@ -8823,7 +13885,7 @@ Date:    Mon Aug 31 17:32:13 2009 -0400
 
 commit c5f0a65b36bc863d67bbf1f334262c35445ce610
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 25 20:40:30 2009 -0400
+Date:   Tue Aug 25 20:40:30 2009 -0400
 
     Revert "Fix FcNameUnparseLangSet()" and redo it
 
@@ -8836,7 +13898,7 @@ Date:    Tue Aug 25 20:40:30 2009 -0400
 
 commit d354a321ee51f0bb70a39faeed541d1a90477d7d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 25 20:39:20 2009 -0400
+Date:   Tue Aug 25 20:39:20 2009 -0400
 
     Bug 23419 - "contains" expression seems not working on the fontconfig
     rule
@@ -8845,12 +13907,12 @@ Date:  Tue Aug 25 20:39:20 2009 -0400
     5c6d1ff23bda4386984a1d6e4c024958f8f5547c
 
  fc-lang/fc-lang.c | 20 +++++++++++++++++---
- src/fclang.c     |  4 ++--
+ src/fclang.c      |  4 ++--
  2 files changed, 19 insertions(+), 5 deletions(-)
 
 commit f33a23133ecbcc981745051f7c34d96b33b57447
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 21 13:41:41 2009 -0400
+Date:   Fri Aug 21 13:41:41 2009 -0400
 
     Bug 22037 - No Fonts installed on a default install on Windows
     Server 2003
@@ -8862,7 +13924,7 @@ Date:    Fri Aug 21 13:41:41 2009 -0400
 
 commit 8b1ceef0b7f41703775c163d6ac595a5407e9159
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Fri Aug 14 00:16:18 2009 +0300
+Date:   Fri Aug 14 00:16:18 2009 +0300
 
     Use multi-byte codepage aware string function on Windows
 
@@ -8875,7 +13937,7 @@ Date:    Fri Aug 14 00:16:18 2009 +0300
 
 commit d15678127aeea96c9c8254a171c2f0af0bd7d140
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Fri Aug 14 00:08:17 2009 +0300
+Date:   Fri Aug 14 00:08:17 2009 +0300
 
     Fix heap corruption on Windows in FcEndElement()
 
@@ -8888,7 +13950,7 @@ Date:    Fri Aug 14 00:08:17 2009 +0300
 
 commit a1b6e34a9a17a4a675bdc993aa465b92d7122376
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Fri Aug 14 00:02:59 2009 +0300
+Date:   Fri Aug 14 00:02:59 2009 +0300
 
     Fix MinGW compilation
 
@@ -8900,7 +13962,7 @@ Date:    Fri Aug 14 00:02:59 2009 +0300
 
 commit 161620108bbb4e70f2817481e4d5bc26772fe67e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jul 28 14:24:21 2009 -0400
+Date:   Tue Jul 28 14:24:21 2009 -0400
 
     [ja.orth] Comment out FULLWIDTH YEN SIGN (#22942)
 
@@ -8909,7 +13971,7 @@ Date:    Tue Jul 28 14:24:21 2009 -0400
 
 commit 7c12181f7a75a434e2139f4bee794046258342cf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jul 28 14:23:10 2009 -0400
+Date:   Tue Jul 28 14:23:10 2009 -0400
 
     Improve charset printing
 
@@ -8919,18 +13981,18 @@ Date:  Tue Jul 28 14:23:10 2009 -0400
 
 commit d2c8ac373e9ac45df66627cfc42679636d017f6e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 27 17:53:26 2009 -0400
+Date:   Mon Jul 27 17:53:26 2009 -0400
 
     Bump version to 2.7.1
 
- README                         | 27 +++++++++++++++++++++++++--
- configure.in           |  4 ++--
+ README                  | 27 +++++++++++++++++++++++++--
+ configure.in            |  4 ++--
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 28 insertions(+), 5 deletions(-)
 
 commit 16630692ec590bd70f4e426125e358251e05435d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 27 17:51:17 2009 -0400
+Date:   Mon Jul 27 17:51:17 2009 -0400
 
     Update .gitignore
 
@@ -8939,7 +14001,7 @@ Date:    Mon Jul 27 17:51:17 2009 -0400
 
 commit 50d937b0e110ee21d9861b8fb973d62534db98ae
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 27 17:48:29 2009 -0400
+Date:   Mon Jul 27 17:48:29 2009 -0400
 
     Bump libtool versions that 2.7.0 (I forgot to do back then)
 
@@ -8948,7 +14010,7 @@ Date:    Mon Jul 27 17:48:29 2009 -0400
 
 commit 273e22c71f78281ade1c5c30a25ef10d214d7ea6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 27 15:07:12 2009 -0400
+Date:   Mon Jul 27 15:07:12 2009 -0400
 
     Hardcode /etc/fonts instead of @CONFDIR@ in docs (#22911)
 
@@ -8961,7 +14023,7 @@ Date:    Mon Jul 27 15:07:12 2009 -0400
 
 commit 21384990ffd045cc0f8379a325612aba6d810359
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 27 14:50:44 2009 -0400
+Date:   Mon Jul 27 14:50:44 2009 -0400
 
     [doc] Add ~/fonts.conf.d to user docs
 
@@ -8970,7 +14032,7 @@ Date:    Mon Jul 27 14:50:44 2009 -0400
 
 commit 7575c666619c58df00659d4e70b01104b8e114a5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Jul 25 16:38:52 2009 -0400
+Date:   Sat Jul 25 16:38:52 2009 -0400
 
     TT_MS_ID_UCS_4 is really UTF-16BE, not UTF-32
 
@@ -8981,17 +14043,17 @@ Date:  Sat Jul 25 16:38:52 2009 -0400
 
 commit 558581c434abf0d96c46cf3bb1454be6806e1ffc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 24 14:59:07 2009 -0400
+Date:   Fri Jul 24 14:59:07 2009 -0400
 
     Fix doc syntax (#22902)
 
  fc-match/fc-match.sgml | 3 ++-
- fc-scan/fc-scan.sgml  | 2 +-
+ fc-scan/fc-scan.sgml   | 2 +-
  2 files changed, 3 insertions(+), 2 deletions(-)
 
 commit 5c6d1ff23bda4386984a1d6e4c024958f8f5547c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jul 22 19:25:24 2009 -0400
+Date:   Wed Jul 22 19:25:24 2009 -0400
 
     Fix FcNameUnparseLangSet()
 
@@ -9002,7 +14064,7 @@ Date:    Wed Jul 22 19:25:24 2009 -0400
 
 commit d9741a7f1a73f718ab20b0582fff8aebeba01077
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jul 22 19:01:06 2009 -0400
+Date:   Wed Jul 22 19:01:06 2009 -0400
 
     Remove unused macros
 
@@ -9011,7 +14073,7 @@ Date:    Wed Jul 22 19:01:06 2009 -0400
 
 commit 792ce655cb06c678d4a4ff091866fd0531b141fb
 Author: Karl Tomlinson <karlt@karlt.net>
-Date:  Wed Jul 22 08:39:23 2009 -0400
+Date:   Wed Jul 22 08:39:23 2009 -0400
 
     Don't change the order of names unnecessarily (#20128)
 
@@ -9024,7 +14086,7 @@ Date:    Wed Jul 22 08:39:23 2009 -0400
 
 commit 327fc9d183ba193c307d0ecaec8ad1f4e6ca1330
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jul 21 15:41:47 2009 -0400
+Date:   Tue Jul 21 15:41:47 2009 -0400
 
     Use GetSystemWindowsDirectory() instead of GetWindowsDirectory()
     (#22037)
@@ -9034,7 +14096,7 @@ Date:    Tue Jul 21 15:41:47 2009 -0400
 
 commit 86dd857447f69cf89fd47259055b150f62519c17
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Jul 21 15:39:58 2009 -0400
+Date:   Tue Jul 21 15:39:58 2009 -0400
 
     Improve libtool version parsing (#22122)
 
@@ -9043,7 +14105,7 @@ Date:    Tue Jul 21 15:39:58 2009 -0400
 
 commit 16e55c7c85fc5771349172d6eb989dddd48c5c25
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jul 20 16:30:12 2009 -0400
+Date:   Mon Jul 20 16:30:12 2009 -0400
 
     Fix leak with string VStack objects
 
@@ -9052,7 +14114,7 @@ Date:    Mon Jul 20 16:30:12 2009 -0400
 
 commit c0ffd7733a735bf2e10834925c63f0039c408649
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jul 10 18:09:42 2009 +0100
+Date:   Fri Jul 10 18:09:42 2009 +0100
 
     Add Inconsolata to monospace config (#22710)
 
@@ -9062,34 +14124,34 @@ Date:  Fri Jul 10 18:09:42 2009 +0100
 
 commit 55e202a62d95e25cf2c4897afd66eab5711195c3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jun 28 14:14:46 2009 -0400
+Date:   Sun Jun 28 14:14:46 2009 -0400
 
     Remove unused ftglue code
 
  src/fcfreetype.c | 66
  ++++++++++++++++++++++++--------------------------------
- src/ftglue.c    | 62
+ src/ftglue.c     | 62
  ++--------------------------------------------------
- src/ftglue.h    | 33 ----------------------------
+ src/ftglue.h     | 33 ----------------------------
  3 files changed, 30 insertions(+), 131 deletions(-)
 
 commit 52742ff86b60b1d244c1e87611aff5ceee46e596
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jun 28 13:49:09 2009 -0400
+Date:   Sun Jun 28 13:49:09 2009 -0400
 
     Replace spaces with tabs in conf files
 
  conf.d/25-unhint-nonlatin.conf |  32 +++----
- conf.d/30-metric-aliases.conf |  48 +++++------
- conf.d/30-urw-aliases.conf    |  36 ++++----
- conf.d/65-fonts-persian.conf  | 184
+ conf.d/30-metric-aliases.conf  |  48 +++++------
+ conf.d/30-urw-aliases.conf     |  36 ++++----
+ conf.d/65-fonts-persian.conf   | 184
  ++++++++++++++++++++---------------------
- conf.d/90-synthetic.conf      |   8 +-
+ conf.d/90-synthetic.conf       |   8 +-
  5 files changed, 154 insertions(+), 154 deletions(-)
 
 commit 57cf838cccda12dd171d3834b3e9b1275467d9e2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Jun 28 13:46:41 2009 -0400
+Date:   Sun Jun 28 13:46:41 2009 -0400
 
     Fix win32 build
 
@@ -9098,7 +14160,7 @@ Date:    Sun Jun 28 13:46:41 2009 -0400
 
 commit 76374f0edef04e21859122dd8a2026b64fd2b273
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 24 15:19:13 2009 -0400
+Date:   Wed Jun 24 15:19:13 2009 -0400
 
     git-tag -s again
 
@@ -9107,19 +14169,19 @@ Date:  Wed Jun 24 15:19:13 2009 -0400
 
 commit 0f40912599a4be1b961c091733ed86d08a4e14e1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 24 15:04:11 2009 -0400
+Date:   Wed Jun 24 15:04:11 2009 -0400
 
     Bump version to 2.7.0
 
- README                         | 222
+ README                  | 222
  +++++++++++++++++++++++++++++++++++++++++++++++-
- configure.in           |   2 +-
+ configure.in            |   2 +-
  fontconfig/fontconfig.h |   2 +-
  3 files changed, 222 insertions(+), 4 deletions(-)
 
 commit 3734d6a5a2c5326bf1cd8b7cc7f3f07fe6943aa5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 24 15:03:32 2009 -0400
+Date:   Wed Jun 24 15:03:32 2009 -0400
 
     Remove keithp's GPG key id
 
@@ -9128,7 +14190,7 @@ Date:    Wed Jun 24 15:03:32 2009 -0400
 
 commit d07059b7a3f8044904d884818d5e03596e7cc1a2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jun 24 14:43:32 2009 -0400
+Date:   Wed Jun 24 14:43:32 2009 -0400
 
     Fix distcheck
 
@@ -9137,7 +14199,7 @@ Date:    Wed Jun 24 14:43:32 2009 -0400
 
 commit b65fa0c3113bd1e1cec38d05f8c4f45f78e3e044
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jun 11 07:08:10 2009 -0400
+Date:   Thu Jun 11 07:08:10 2009 -0400
 
     Bug 22154 -- fontconfig.pc doesn't include libxml2 link flags
 
@@ -9146,7 +14208,7 @@ Date:    Thu Jun 11 07:08:10 2009 -0400
 
 commit 3164ac76229d9817120015401c1f532934d0a3e2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 22:59:06 2009 -0400
+Date:   Fri Jun 5 22:59:06 2009 -0400
 
     [xml] Intern more strings
 
@@ -9155,7 +14217,7 @@ Date:    Fri Jun 5 22:59:06 2009 -0400
 
 commit 390c05e64a3716f6ea6fd81cf3ab63439051fbaa
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 22:32:31 2009 -0400
+Date:   Fri Jun 5 22:32:31 2009 -0400
 
     [xml] Allocate FcExpr's in a pool in FcConfig
 
@@ -9170,7 +14232,7 @@ Date:    Fri Jun 5 22:32:31 2009 -0400
 
 commit 398d436441d741d6f8edcc25ca01aa9715c0731c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 21:37:01 2009 -0400
+Date:   Fri Jun 5 21:37:01 2009 -0400
 
     [xml] Mark more symbols static
 
@@ -9180,7 +14242,7 @@ Date:    Fri Jun 5 21:37:01 2009 -0400
 
 commit a96ecbfa20fbc66fad3847b1d2bc6fb3cd712c91
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 18:40:46 2009 -0400
+Date:   Fri Jun 5 18:40:46 2009 -0400
 
     [xml] Centralize FcExpr allocation
 
@@ -9191,17 +14253,17 @@ Date:  Fri Jun 5 18:40:46 2009 -0400
 
 commit 5aebb3e299d877c4a66f409a7d448b2ac4e94be0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 18:27:47 2009 -0400
+Date:   Fri Jun 5 18:27:47 2009 -0400
 
     Remove unused prototypes and function
 
  src/fcint.h | 16 ++--------------
- src/fcxml.c | 6 ------
+ src/fcxml.c |  6 ------
  2 files changed, 2 insertions(+), 20 deletions(-)
 
 commit 900723f3d2396cfb606e5eceb8df0b71c4ffc0dd
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 18:16:38 2009 -0400
+Date:   Fri Jun 5 18:16:38 2009 -0400
 
     [charset] Grow internal FcCharset arrays exponentially
 
@@ -9211,7 +14273,7 @@ Date:    Fri Jun 5 18:16:38 2009 -0400
 
 commit cce69b07efd82056c8eb855ef7ac7e02c94439da
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 17:15:53 2009 -0400
+Date:   Fri Jun 5 17:15:53 2009 -0400
 
     Always set *changed in FcCharsetMerge
 
@@ -9220,7 +14282,7 @@ Date:    Fri Jun 5 17:15:53 2009 -0400
 
 commit 86bdf4598fb46f7f2a36151016a5d318da073d60
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 16:57:35 2009 -0400
+Date:   Fri Jun 5 16:57:35 2009 -0400
 
     Add XXX note about Unicode Plane 16
 
@@ -9229,17 +14291,17 @@ Date:  Fri Jun 5 16:57:35 2009 -0400
 
 commit efe5eae26b2443363b1000b3197d1731a40f8af9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jun 5 16:49:07 2009 -0400
+Date:   Fri Jun 5 16:49:07 2009 -0400
 
     Simplify FcValueSave() semantics
 
- src/fccfg.c | 3 ++-
+ src/fccfg.c |  3 ++-
  src/fcpat.c | 12 ++----------
  2 files changed, 4 insertions(+), 11 deletions(-)
 
 commit 8ea654b2aa6b4e97b369e299325da49807559511
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Jun 1 21:14:56 2009 -0400
+Date:   Mon Jun 1 21:14:56 2009 -0400
 
     Use/prefer WWS family/style (name table id 21/22)
 
@@ -9248,7 +14310,7 @@ Date:    Mon Jun 1 21:14:56 2009 -0400
 
 commit 76845a40c58b092a9b1812830dc98b6f32e13da6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon May 25 20:26:56 2009 -0400
+Date:   Mon May 25 20:26:56 2009 -0400
 
     Mark matchers array const (#21935)
 
@@ -9257,7 +14319,7 @@ Date:    Mon May 25 20:26:56 2009 -0400
 
 commit aa82a4f81d4d5e547c84266e66274d55e3843746
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Thu May 7 14:31:11 2009 -0700
+Date:   Thu May 7 14:31:11 2009 -0700
 
     Reorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)
 
@@ -9267,17 +14329,15 @@ Date:  Thu May 7 14:31:11 2009 -0700
 
     Signed-off-by: Behdad Esfahbod <behdad@behdad.org>
 
- fc-lang/Makefile.am | 5 +++--
- fc-lang/lah.orth    | 35 +++++++++++++++++++++++++++++++++++
- fc-lang/pa.orth     | 53
- +++++++++++++++++++++++++++++++++++++++++++++++++++++
- fc-lang/pa_in.orth  | 46 ----------------------------------------------
- fc-lang/pa_pk.orth  | 7 ++++---
- 5 files changed, 95 insertions(+), 51 deletions(-)
+ fc-lang/Makefile.am             |  5 +++--
+ fc-lang/lah.orth                | 35 +++++++++++++++++++++++++++++++++++
+ fc-lang/{pa_in.orth => pa.orth} | 17 ++++++++++++-----
+ fc-lang/pa_pk.orth              |  7 ++++---
+ 4 files changed, 54 insertions(+), 10 deletions(-)
 
 commit 58aa0c8ee83f7bbd232401583106387517d216a9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Apr 9 13:31:18 2009 -0400
+Date:   Thu Apr 9 13:31:18 2009 -0400
 
     Detect TrueType Collections by checking the font data header
 
@@ -9288,7 +14348,7 @@ Date:    Thu Apr 9 13:31:18 2009 -0400
 
 commit 1dd95fcb8bb9b5feeabee0dfe334448733f5cb4c
 Author: Serge van den Boom <svdb+freedesktop.org@stack.nl>
-Date:  Sun Apr 5 19:00:18 2009 -0400
+Date:   Sun Apr 5 19:00:18 2009 -0400
 
     Correctly handle mmap() failure (#21062)
 
@@ -9297,7 +14357,7 @@ Date:    Sun Apr 5 19:00:18 2009 -0400
 
 commit 35c51811515ab316c7279bd779f6685f2aaf7e81
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 25 23:40:40 2009 -0400
+Date:   Wed Mar 25 23:40:40 2009 -0400
 
     [fc-cache] Remove obsolete sentence from man page
 
@@ -9306,7 +14366,7 @@ Date:    Wed Mar 25 23:40:40 2009 -0400
 
 commit ffd6668b469508177c4baf7745ae42aee5b00322
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 18 19:28:52 2009 -0400
+Date:   Wed Mar 18 19:28:52 2009 -0400
 
     [fc-lang] Make LangSet representation in the cache files stable
 
@@ -9336,16 +14396,16 @@ Date:  Wed Mar 18 19:28:52 2009 -0400
     but at least the existing caches are still valid and don't cause bugs
     like the above.
 
- configure.in       |   7 --
+ configure.in        |   7 --
  fc-lang/Makefile.am | 248
  +++++++++++++++++++++++++++++++++++++++++++++++++++-
- fc-lang/fc-lang.c   | 49 +++++++----
- src/fclang.c       |   4 +-
+ fc-lang/fc-lang.c   |  49 +++++++----
+ src/fclang.c        |   4 +-
  4 files changed, 282 insertions(+), 26 deletions(-)
 
 commit 4d13536db49bdfba97f84f702325d1a99796c06b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 18 18:50:14 2009 -0400
+Date:   Wed Mar 18 18:50:14 2009 -0400
 
     [fcstr] Remove unused variable
 
@@ -9354,7 +14414,7 @@ Date:    Wed Mar 18 18:50:14 2009 -0400
 
 commit bb36e67685dc4139fc4199c57c9d74d97f7923c8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 18 18:43:09 2009 -0400
+Date:   Wed Mar 18 18:43:09 2009 -0400
 
     [fc-lang] Fix bug in country map generation
 
@@ -9367,7 +14427,7 @@ Date:    Wed Mar 18 18:43:09 2009 -0400
 
 commit 0f11354877323edc2145f687f9127d2de83c5b3b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Mar 17 12:52:48 2009 -0400
+Date:   Tue Mar 17 12:52:48 2009 -0400
 
     Revert "[conf] Disable hinting when emboldening (#19904)" (#20599)
 
@@ -9380,7 +14440,7 @@ Date:    Tue Mar 17 12:52:48 2009 -0400
 
 commit 7042e236495399aab4eaf268232177d4b1680a12
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 16 17:59:50 2009 -0400
+Date:   Mon Mar 16 17:59:50 2009 -0400
 
     [Makefile.am] Don't clean ChangeLog in distclean
 
@@ -9389,21 +14449,21 @@ Date:  Mon Mar 16 17:59:50 2009 -0400
 
 commit caeea376da54a6337bfcb1bb20f50c8c2302458f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Mar 13 17:26:21 2009 -0400
+Date:   Fri Mar 13 17:26:21 2009 -0400
 
     Document FcPatternFormat() format
 
- doc/Makefile.am          |   2 +
- doc/fcformat.fncs        | 301
+ doc/Makefile.am           |   2 +
+ doc/fcformat.fncs         | 301
  ++++++++++++++++++++++++++++++++++++++++++++++
- doc/fcpattern.fncs       |  20 ---
+ doc/fcpattern.fncs        |  20 ---
  doc/fontconfig-devel.sgml |   2 +
- src/fcformat.c                   |  94 ++++++++-------
+ src/fcformat.c            |  94 ++++++++-------
  5 files changed, 353 insertions(+), 66 deletions(-)
 
 commit f6d83439890c165e5a7f6a8a746ffdb189dbbd0d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Mar 13 12:11:13 2009 -0400
+Date:   Fri Mar 13 12:11:13 2009 -0400
 
     [fcformat] Fix default-value handling
 
@@ -9412,282 +14472,282 @@ Date:        Fri Mar 13 12:11:13 2009 -0400
 
 commit 3074a73b418b40135d4a4f4e0713fcf987d34795
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 16:00:08 2009 -0400
+Date:   Thu Mar 12 16:00:08 2009 -0400
 
     Replace 'KEITH PACKARD' with 'THE AUTHOR(S)' in license text in
     all files
 
- COPYING                        | 4 ++--
- Makefile.am                    | 4 ++--
- conf.d/65-fonts-persian.conf   | 2 +-
- conf.d/Makefile.am             | 4 ++--
- config/Makedefs.in             | 4 ++--
- configure.in                   | 4 ++--
- doc/Makefile.am                | 4 ++--
- doc/confdir.sgml.in            | 4 ++--
- doc/edit-sgml.c                | 4 ++--
- doc/fcatomic.fncs              | 4 ++--
- doc/fcblanks.fncs              | 4 ++--
- doc/fccache.fncs               | 4 ++--
- doc/fccharset.fncs             | 4 ++--
- doc/fcconfig.fncs              | 4 ++--
- doc/fcconstant.fncs            | 4 ++--
- doc/fcfile.fncs                | 4 ++--
- doc/fcfontset.fncs             | 4 ++--
- doc/fcfreetype.fncs            | 4 ++--
- doc/fcinit.fncs                | 4 ++--
- doc/fcmatrix.fncs              | 4 ++--
- doc/fcobjectset.fncs           | 4 ++--
- doc/fcobjecttype.fncs          | 4 ++--
- doc/fcpattern.fncs             | 4 ++--
- doc/fcstring.fncs              | 4 ++--
- doc/fcstrset.fncs              | 4 ++--
- doc/fcvalue.fncs               | 4 ++--
- doc/fontconfig-devel.sgml      | 8 ++++----
- doc/fontconfig-user.sgml       | 4 ++--
- doc/func.sgml                  | 4 ++--
- doc/version.sgml.in            | 4 ++--
- fc-arch/Makefile.am            | 4 ++--
- fc-arch/fcarch.tmpl.h          | 4 ++--
- fc-cache/Makefile.am           | 4 ++--
- fc-cache/fc-cache.c            | 4 ++--
- fc-case/Makefile.am            | 4 ++--
- fc-case/fc-case.c              | 4 ++--
- fc-case/fccase.tmpl.h          | 4 ++--
- fc-cat/Makefile.am             | 4 ++--
- fc-cat/fc-cat.c                | 4 ++--
- fc-glyphname/Makefile.am       | 4 ++--
- fc-glyphname/fc-glyphname.c    | 4 ++--
+ COPYING                         | 4 ++--
+ Makefile.am                     | 4 ++--
+ conf.d/65-fonts-persian.conf    | 2 +-
+ conf.d/Makefile.am              | 4 ++--
+ config/Makedefs.in              | 4 ++--
+ configure.in                    | 4 ++--
+ doc/Makefile.am                 | 4 ++--
+ doc/confdir.sgml.in             | 4 ++--
+ doc/edit-sgml.c                 | 4 ++--
+ doc/fcatomic.fncs               | 4 ++--
+ doc/fcblanks.fncs               | 4 ++--
+ doc/fccache.fncs                | 4 ++--
+ doc/fccharset.fncs              | 4 ++--
+ doc/fcconfig.fncs               | 4 ++--
+ doc/fcconstant.fncs             | 4 ++--
+ doc/fcfile.fncs                 | 4 ++--
+ doc/fcfontset.fncs              | 4 ++--
+ doc/fcfreetype.fncs             | 4 ++--
+ doc/fcinit.fncs                 | 4 ++--
+ doc/fcmatrix.fncs               | 4 ++--
+ doc/fcobjectset.fncs            | 4 ++--
+ doc/fcobjecttype.fncs           | 4 ++--
+ doc/fcpattern.fncs              | 4 ++--
+ doc/fcstring.fncs               | 4 ++--
+ doc/fcstrset.fncs               | 4 ++--
+ doc/fcvalue.fncs                | 4 ++--
+ doc/fontconfig-devel.sgml       | 8 ++++----
+ doc/fontconfig-user.sgml        | 4 ++--
+ doc/func.sgml                   | 4 ++--
+ doc/version.sgml.in             | 4 ++--
+ fc-arch/Makefile.am             | 4 ++--
+ fc-arch/fcarch.tmpl.h           | 4 ++--
+ fc-cache/Makefile.am            | 4 ++--
+ fc-cache/fc-cache.c             | 4 ++--
+ fc-case/Makefile.am             | 4 ++--
+ fc-case/fc-case.c               | 4 ++--
+ fc-case/fccase.tmpl.h           | 4 ++--
+ fc-cat/Makefile.am              | 4 ++--
+ fc-cat/fc-cat.c                 | 4 ++--
+ fc-glyphname/Makefile.am        | 4 ++--
+ fc-glyphname/fc-glyphname.c     | 4 ++--
  fc-glyphname/fcglyphname.tmpl.h | 4 ++--
- fc-lang/Makefile.am            | 4 ++--
- fc-lang/aa.orth                | 4 ++--
- fc-lang/ab.orth                | 4 ++--
- fc-lang/af.orth                | 4 ++--
- fc-lang/am.orth                | 4 ++--
- fc-lang/ar.orth                | 4 ++--
- fc-lang/ast.orth               | 4 ++--
- fc-lang/av.orth                | 4 ++--
- fc-lang/ay.orth                | 4 ++--
- fc-lang/az_ir.orth             | 4 ++--
- fc-lang/ba.orth                | 4 ++--
- fc-lang/be.orth                | 4 ++--
- fc-lang/bg.orth                | 4 ++--
- fc-lang/bh.orth                | 4 ++--
- fc-lang/bho.orth               | 4 ++--
- fc-lang/bi.orth                | 4 ++--
- fc-lang/bin.orth               | 4 ++--
- fc-lang/bm.orth                | 4 ++--
- fc-lang/bo.orth                | 4 ++--
- fc-lang/br.orth                | 4 ++--
- fc-lang/bs.orth                | 4 ++--
- fc-lang/bua.orth               | 4 ++--
- fc-lang/ca.orth                | 4 ++--
- fc-lang/ce.orth                | 4 ++--
- fc-lang/ch.orth                | 4 ++--
- fc-lang/chm.orth               | 4 ++--
- fc-lang/chr.orth               | 4 ++--
- fc-lang/co.orth                | 4 ++--
- fc-lang/cs.orth                | 4 ++--
- fc-lang/cu.orth                | 4 ++--
- fc-lang/cv.orth                | 4 ++--
- fc-lang/cy.orth                | 4 ++--
- fc-lang/da.orth                | 4 ++--
- fc-lang/de.orth                | 4 ++--
- fc-lang/dz.orth                | 4 ++--
- fc-lang/el.orth                | 4 ++--
- fc-lang/en.orth                | 4 ++--
- fc-lang/eo.orth                | 4 ++--
- fc-lang/es.orth                | 4 ++--
- fc-lang/et.orth                | 4 ++--
- fc-lang/eu.orth                | 4 ++--
- fc-lang/fa.orth                | 4 ++--
- fc-lang/fc-lang.c              | 4 ++--
- fc-lang/fc-lang.man            | 4 ++--
- fc-lang/fclang.tmpl.h          | 4 ++--
- fc-lang/ff.orth                | 4 ++--
- fc-lang/fi.orth                | 4 ++--
- fc-lang/fj.orth                | 4 ++--
- fc-lang/fo.orth                | 4 ++--
- fc-lang/fr.orth                | 4 ++--
- fc-lang/fur.orth               | 4 ++--
- fc-lang/fy.orth                | 4 ++--
- fc-lang/ga.orth                | 4 ++--
- fc-lang/gd.orth                | 4 ++--
- fc-lang/gez.orth               | 4 ++--
- fc-lang/gl.orth                | 4 ++--
- fc-lang/gn.orth                | 4 ++--
- fc-lang/gu.orth                | 4 ++--
- fc-lang/gv.orth                | 4 ++--
- fc-lang/ha.orth                | 4 ++--
- fc-lang/haw.orth               | 4 ++--
- fc-lang/he.orth                | 4 ++--
- fc-lang/hi.orth                | 4 ++--
- fc-lang/ho.orth                | 4 ++--
- fc-lang/hr.orth                | 4 ++--
- fc-lang/hu.orth                | 4 ++--
- fc-lang/hy.orth                | 4 ++--
- fc-lang/ia.orth                | 4 ++--
- fc-lang/id.orth                | 4 ++--
- fc-lang/ie.orth                | 4 ++--
- fc-lang/ig.orth                | 4 ++--
- fc-lang/ik.orth                | 4 ++--
- fc-lang/io.orth                | 4 ++--
- fc-lang/is.orth                | 4 ++--
- fc-lang/it.orth                | 4 ++--
- fc-lang/iu.orth                | 4 ++--
- fc-lang/ja.orth                | 4 ++--
- fc-lang/ka.orth                | 4 ++--
- fc-lang/kaa.orth               | 4 ++--
- fc-lang/ki.orth                | 4 ++--
- fc-lang/kk.orth                | 4 ++--
- fc-lang/kl.orth                | 4 ++--
- fc-lang/kn.orth                | 4 ++--
- fc-lang/ko.orth                | 4 ++--
- fc-lang/kok.orth               | 4 ++--
- fc-lang/ku_am.orth             | 4 ++--
- fc-lang/ku_ir.orth             | 4 ++--
- fc-lang/kum.orth               | 4 ++--
- fc-lang/kv.orth                | 4 ++--
- fc-lang/kw.orth                | 4 ++--
- fc-lang/ky.orth                | 4 ++--
- fc-lang/la.orth                | 4 ++--
- fc-lang/lb.orth                | 4 ++--
- fc-lang/lez.orth               | 4 ++--
- fc-lang/ln.orth                | 4 ++--
- fc-lang/lo.orth                | 4 ++--
- fc-lang/lt.orth                | 4 ++--
- fc-lang/lv.orth                | 4 ++--
- fc-lang/mai.orth               | 4 ++--
- fc-lang/mg.orth                | 4 ++--
- fc-lang/mh.orth                | 4 ++--
- fc-lang/mi.orth                | 4 ++--
- fc-lang/mk.orth                | 4 ++--
- fc-lang/ml.orth                | 4 ++--
- fc-lang/mn_cn.orth             | 4 ++--
- fc-lang/mo.orth                | 4 ++--
- fc-lang/mr.orth                | 4 ++--
- fc-lang/mt.orth                | 4 ++--
- fc-lang/my.orth                | 4 ++--
- fc-lang/nb.orth                | 4 ++--
- fc-lang/nds.orth               | 4 ++--
- fc-lang/ne.orth                | 4 ++--
- fc-lang/nl.orth                | 4 ++--
- fc-lang/nn.orth                | 4 ++--
- fc-lang/no.orth                | 4 ++--
- fc-lang/ny.orth                | 4 ++--
- fc-lang/oc.orth                | 4 ++--
- fc-lang/om.orth                | 4 ++--
- fc-lang/or.orth                | 4 ++--
- fc-lang/os.orth                | 4 ++--
- fc-lang/pa_in.orth             | 2 +-
- fc-lang/pl.orth                | 4 ++--
- fc-lang/ps_af.orth             | 4 ++--
- fc-lang/ps_pk.orth             | 4 ++--
- fc-lang/pt.orth                | 4 ++--
- fc-lang/rm.orth                | 4 ++--
- fc-lang/ro.orth                | 4 ++--
- fc-lang/ru.orth                | 4 ++--
- fc-lang/sa.orth                | 4 ++--
- fc-lang/sah.orth               | 4 ++--
- fc-lang/sco.orth               | 4 ++--
- fc-lang/se.orth                | 4 ++--
- fc-lang/sel.orth               | 4 ++--
- fc-lang/sk.orth                | 4 ++--
- fc-lang/sl.orth                | 4 ++--
- fc-lang/sm.orth                | 4 ++--
- fc-lang/sma.orth               | 4 ++--
- fc-lang/smj.orth               | 4 ++--
- fc-lang/smn.orth               | 4 ++--
- fc-lang/sms.orth               | 4 ++--
- fc-lang/so.orth                | 4 ++--
- fc-lang/sq.orth                | 4 ++--
- fc-lang/sr.orth                | 4 ++--
- fc-lang/sv.orth                | 4 ++--
- fc-lang/sw.orth                | 4 ++--
- fc-lang/syr.orth               | 4 ++--
- fc-lang/ta.orth                | 4 ++--
- fc-lang/te.orth                | 4 ++--
- fc-lang/tg.orth                | 4 ++--
- fc-lang/th.orth                | 4 ++--
- fc-lang/ti_er.orth             | 4 ++--
- fc-lang/ti_et.orth             | 4 ++--
- fc-lang/tig.orth               | 4 ++--
- fc-lang/tn.orth                | 4 ++--
- fc-lang/to.orth                | 4 ++--
- fc-lang/tr.orth                | 4 ++--
- fc-lang/ts.orth                | 4 ++--
- fc-lang/tt.orth                | 4 ++--
- fc-lang/tw.orth                | 4 ++--
- fc-lang/tyv.orth               | 4 ++--
- fc-lang/ug.orth                | 4 ++--
- fc-lang/uk.orth                | 4 ++--
- fc-lang/ur.orth                | 4 ++--
- fc-lang/ve.orth                | 4 ++--
- fc-lang/vi.orth                | 4 ++--
- fc-lang/vo.orth                | 4 ++--
- fc-lang/vot.orth               | 4 ++--
- fc-lang/wa.orth                | 4 ++--
- fc-lang/wen.orth               | 4 ++--
- fc-lang/wo.orth                | 4 ++--
- fc-lang/xh.orth                | 4 ++--
- fc-lang/yap.orth               | 4 ++--
- fc-lang/yi.orth                | 4 ++--
- fc-lang/yo.orth                | 4 ++--
- fc-lang/zh_cn.orth             | 4 ++--
- fc-lang/zh_hk.orth             | 4 ++--
- fc-lang/zh_mo.orth             | 4 ++--
- fc-lang/zh_sg.orth             | 4 ++--
- fc-lang/zh_tw.orth             | 4 ++--
- fc-lang/zu.orth                | 4 ++--
- fc-list/Makefile.am            | 4 ++--
- fc-list/fc-list.c              | 4 ++--
- fc-match/Makefile.am           | 4 ++--
- fc-match/fc-match.c            | 4 ++--
- fc-query/Makefile.am           | 4 ++--
- fc-query/fc-query.c            | 4 ++--
- fc-scan/Makefile.am            | 4 ++--
- fc-scan/fc-scan.c              | 4 ++--
- fontconfig/fcfreetype.h        | 4 ++--
- fontconfig/fcprivate.h                 | 4 ++--
- fontconfig/fontconfig.h        | 4 ++--
- src/Makefile.am                | 4 ++--
- src/fcatomic.c                         | 4 ++--
- src/fcblanks.c                         | 4 ++--
- src/fccache.c                  | 4 ++--
- src/fccfg.c                    | 4 ++--
- src/fccharset.c                | 4 ++--
- src/fcdbg.c                    | 4 ++--
- src/fcdefault.c                | 4 ++--
- src/fcdir.c                    | 4 ++--
- src/fcformat.c                         | 4 ++--
- src/fcfreetype.c               | 4 ++--
- src/fcfs.c                     | 4 ++--
- src/fcinit.c                   | 4 ++--
- src/fcint.h                    | 4 ++--
- src/fclang.c                   | 4 ++--
- src/fclist.c                   | 4 ++--
- src/fcmatch.c                  | 4 ++--
- src/fcname.c                   | 4 ++--
- src/fcpat.c                    | 4 ++--
- src/fcstr.c                    | 4 ++--
- src/fcxml.c                    | 4 ++--
+ fc-lang/Makefile.am             | 4 ++--
+ fc-lang/aa.orth                 | 4 ++--
+ fc-lang/ab.orth                 | 4 ++--
+ fc-lang/af.orth                 | 4 ++--
+ fc-lang/am.orth                 | 4 ++--
+ fc-lang/ar.orth                 | 4 ++--
+ fc-lang/ast.orth                | 4 ++--
+ fc-lang/av.orth                 | 4 ++--
+ fc-lang/ay.orth                 | 4 ++--
+ fc-lang/az_ir.orth              | 4 ++--
+ fc-lang/ba.orth                 | 4 ++--
+ fc-lang/be.orth                 | 4 ++--
+ fc-lang/bg.orth                 | 4 ++--
+ fc-lang/bh.orth                 | 4 ++--
+ fc-lang/bho.orth                | 4 ++--
+ fc-lang/bi.orth                 | 4 ++--
+ fc-lang/bin.orth                | 4 ++--
+ fc-lang/bm.orth                 | 4 ++--
+ fc-lang/bo.orth                 | 4 ++--
+ fc-lang/br.orth                 | 4 ++--
+ fc-lang/bs.orth                 | 4 ++--
+ fc-lang/bua.orth                | 4 ++--
+ fc-lang/ca.orth                 | 4 ++--
+ fc-lang/ce.orth                 | 4 ++--
+ fc-lang/ch.orth                 | 4 ++--
+ fc-lang/chm.orth                | 4 ++--
+ fc-lang/chr.orth                | 4 ++--
+ fc-lang/co.orth                 | 4 ++--
+ fc-lang/cs.orth                 | 4 ++--
+ fc-lang/cu.orth                 | 4 ++--
+ fc-lang/cv.orth                 | 4 ++--
+ fc-lang/cy.orth                 | 4 ++--
+ fc-lang/da.orth                 | 4 ++--
+ fc-lang/de.orth                 | 4 ++--
+ fc-lang/dz.orth                 | 4 ++--
+ fc-lang/el.orth                 | 4 ++--
+ fc-lang/en.orth                 | 4 ++--
+ fc-lang/eo.orth                 | 4 ++--
+ fc-lang/es.orth                 | 4 ++--
+ fc-lang/et.orth                 | 4 ++--
+ fc-lang/eu.orth                 | 4 ++--
+ fc-lang/fa.orth                 | 4 ++--
+ fc-lang/fc-lang.c               | 4 ++--
+ fc-lang/fc-lang.man             | 4 ++--
+ fc-lang/fclang.tmpl.h           | 4 ++--
+ fc-lang/ff.orth                 | 4 ++--
+ fc-lang/fi.orth                 | 4 ++--
+ fc-lang/fj.orth                 | 4 ++--
+ fc-lang/fo.orth                 | 4 ++--
+ fc-lang/fr.orth                 | 4 ++--
+ fc-lang/fur.orth                | 4 ++--
+ fc-lang/fy.orth                 | 4 ++--
+ fc-lang/ga.orth                 | 4 ++--
+ fc-lang/gd.orth                 | 4 ++--
+ fc-lang/gez.orth                | 4 ++--
+ fc-lang/gl.orth                 | 4 ++--
+ fc-lang/gn.orth                 | 4 ++--
+ fc-lang/gu.orth                 | 4 ++--
+ fc-lang/gv.orth                 | 4 ++--
+ fc-lang/ha.orth                 | 4 ++--
+ fc-lang/haw.orth                | 4 ++--
+ fc-lang/he.orth                 | 4 ++--
+ fc-lang/hi.orth                 | 4 ++--
+ fc-lang/ho.orth                 | 4 ++--
+ fc-lang/hr.orth                 | 4 ++--
+ fc-lang/hu.orth                 | 4 ++--
+ fc-lang/hy.orth                 | 4 ++--
+ fc-lang/ia.orth                 | 4 ++--
+ fc-lang/id.orth                 | 4 ++--
+ fc-lang/ie.orth                 | 4 ++--
+ fc-lang/ig.orth                 | 4 ++--
+ fc-lang/ik.orth                 | 4 ++--
+ fc-lang/io.orth                 | 4 ++--
+ fc-lang/is.orth                 | 4 ++--
+ fc-lang/it.orth                 | 4 ++--
+ fc-lang/iu.orth                 | 4 ++--
+ fc-lang/ja.orth                 | 4 ++--
+ fc-lang/ka.orth                 | 4 ++--
+ fc-lang/kaa.orth                | 4 ++--
+ fc-lang/ki.orth                 | 4 ++--
+ fc-lang/kk.orth                 | 4 ++--
+ fc-lang/kl.orth                 | 4 ++--
+ fc-lang/kn.orth                 | 4 ++--
+ fc-lang/ko.orth                 | 4 ++--
+ fc-lang/kok.orth                | 4 ++--
+ fc-lang/ku_am.orth              | 4 ++--
+ fc-lang/ku_ir.orth              | 4 ++--
+ fc-lang/kum.orth                | 4 ++--
+ fc-lang/kv.orth                 | 4 ++--
+ fc-lang/kw.orth                 | 4 ++--
+ fc-lang/ky.orth                 | 4 ++--
+ fc-lang/la.orth                 | 4 ++--
+ fc-lang/lb.orth                 | 4 ++--
+ fc-lang/lez.orth                | 4 ++--
+ fc-lang/ln.orth                 | 4 ++--
+ fc-lang/lo.orth                 | 4 ++--
+ fc-lang/lt.orth                 | 4 ++--
+ fc-lang/lv.orth                 | 4 ++--
+ fc-lang/mai.orth                | 4 ++--
+ fc-lang/mg.orth                 | 4 ++--
+ fc-lang/mh.orth                 | 4 ++--
+ fc-lang/mi.orth                 | 4 ++--
+ fc-lang/mk.orth                 | 4 ++--
+ fc-lang/ml.orth                 | 4 ++--
+ fc-lang/mn_cn.orth              | 4 ++--
+ fc-lang/mo.orth                 | 4 ++--
+ fc-lang/mr.orth                 | 4 ++--
+ fc-lang/mt.orth                 | 4 ++--
+ fc-lang/my.orth                 | 4 ++--
+ fc-lang/nb.orth                 | 4 ++--
+ fc-lang/nds.orth                | 4 ++--
+ fc-lang/ne.orth                 | 4 ++--
+ fc-lang/nl.orth                 | 4 ++--
+ fc-lang/nn.orth                 | 4 ++--
+ fc-lang/no.orth                 | 4 ++--
+ fc-lang/ny.orth                 | 4 ++--
+ fc-lang/oc.orth                 | 4 ++--
+ fc-lang/om.orth                 | 4 ++--
+ fc-lang/or.orth                 | 4 ++--
+ fc-lang/os.orth                 | 4 ++--
+ fc-lang/pa_in.orth              | 2 +-
+ fc-lang/pl.orth                 | 4 ++--
+ fc-lang/ps_af.orth              | 4 ++--
+ fc-lang/ps_pk.orth              | 4 ++--
+ fc-lang/pt.orth                 | 4 ++--
+ fc-lang/rm.orth                 | 4 ++--
+ fc-lang/ro.orth                 | 4 ++--
+ fc-lang/ru.orth                 | 4 ++--
+ fc-lang/sa.orth                 | 4 ++--
+ fc-lang/sah.orth                | 4 ++--
+ fc-lang/sco.orth                | 4 ++--
+ fc-lang/se.orth                 | 4 ++--
+ fc-lang/sel.orth                | 4 ++--
+ fc-lang/sk.orth                 | 4 ++--
+ fc-lang/sl.orth                 | 4 ++--
+ fc-lang/sm.orth                 | 4 ++--
+ fc-lang/sma.orth                | 4 ++--
+ fc-lang/smj.orth                | 4 ++--
+ fc-lang/smn.orth                | 4 ++--
+ fc-lang/sms.orth                | 4 ++--
+ fc-lang/so.orth                 | 4 ++--
+ fc-lang/sq.orth                 | 4 ++--
+ fc-lang/sr.orth                 | 4 ++--
+ fc-lang/sv.orth                 | 4 ++--
+ fc-lang/sw.orth                 | 4 ++--
+ fc-lang/syr.orth                | 4 ++--
+ fc-lang/ta.orth                 | 4 ++--
+ fc-lang/te.orth                 | 4 ++--
+ fc-lang/tg.orth                 | 4 ++--
+ fc-lang/th.orth                 | 4 ++--
+ fc-lang/ti_er.orth              | 4 ++--
+ fc-lang/ti_et.orth              | 4 ++--
+ fc-lang/tig.orth                | 4 ++--
+ fc-lang/tn.orth                 | 4 ++--
+ fc-lang/to.orth                 | 4 ++--
+ fc-lang/tr.orth                 | 4 ++--
+ fc-lang/ts.orth                 | 4 ++--
+ fc-lang/tt.orth                 | 4 ++--
+ fc-lang/tw.orth                 | 4 ++--
+ fc-lang/tyv.orth                | 4 ++--
+ fc-lang/ug.orth                 | 4 ++--
+ fc-lang/uk.orth                 | 4 ++--
+ fc-lang/ur.orth                 | 4 ++--
+ fc-lang/ve.orth                 | 4 ++--
+ fc-lang/vi.orth                 | 4 ++--
+ fc-lang/vo.orth                 | 4 ++--
+ fc-lang/vot.orth                | 4 ++--
+ fc-lang/wa.orth                 | 4 ++--
+ fc-lang/wen.orth                | 4 ++--
+ fc-lang/wo.orth                 | 4 ++--
+ fc-lang/xh.orth                 | 4 ++--
+ fc-lang/yap.orth                | 4 ++--
+ fc-lang/yi.orth                 | 4 ++--
+ fc-lang/yo.orth                 | 4 ++--
+ fc-lang/zh_cn.orth              | 4 ++--
+ fc-lang/zh_hk.orth              | 4 ++--
+ fc-lang/zh_mo.orth              | 4 ++--
+ fc-lang/zh_sg.orth              | 4 ++--
+ fc-lang/zh_tw.orth              | 4 ++--
+ fc-lang/zu.orth                 | 4 ++--
+ fc-list/Makefile.am             | 4 ++--
+ fc-list/fc-list.c               | 4 ++--
+ fc-match/Makefile.am            | 4 ++--
+ fc-match/fc-match.c             | 4 ++--
+ fc-query/Makefile.am            | 4 ++--
+ fc-query/fc-query.c             | 4 ++--
+ fc-scan/Makefile.am             | 4 ++--
+ fc-scan/fc-scan.c               | 4 ++--
+ fontconfig/fcfreetype.h         | 4 ++--
+ fontconfig/fcprivate.h          | 4 ++--
+ fontconfig/fontconfig.h         | 4 ++--
+ src/Makefile.am                 | 4 ++--
+ src/fcatomic.c                  | 4 ++--
+ src/fcblanks.c                  | 4 ++--
+ src/fccache.c                   | 4 ++--
+ src/fccfg.c                     | 4 ++--
+ src/fccharset.c                 | 4 ++--
+ src/fcdbg.c                     | 4 ++--
+ src/fcdefault.c                 | 4 ++--
+ src/fcdir.c                     | 4 ++--
+ src/fcformat.c                  | 4 ++--
+ src/fcfreetype.c                | 4 ++--
+ src/fcfs.c                      | 4 ++--
+ src/fcinit.c                    | 4 ++--
+ src/fcint.h                     | 4 ++--
+ src/fclang.c                    | 4 ++--
+ src/fclist.c                    | 4 ++--
+ src/fcmatch.c                   | 4 ++--
+ src/fcname.c                    | 4 ++--
+ src/fcpat.c                     | 4 ++--
+ src/fcstr.c                     | 4 ++--
+ src/fcxml.c                     | 4 ++--
  254 files changed, 508 insertions(+), 508 deletions(-)
 
 commit b9b01b6ed0849f770200fb6ae2a3ac0ca2166877
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 13:48:07 2009 -0400
+Date:   Thu Mar 12 13:48:07 2009 -0400
 
     Call git tools using "git cmd" instead of "git-cmd" syntax
 
     Recent git doesn't install the git-* commands in path.
 
- Makefile.am   |  2 +-
+ Makefile.am    |  2 +-
  new-version.sh | 10 +++++-----
  2 files changed, 6 insertions(+), 6 deletions(-)
 
 commit de69ee14d3ed094cd2bc4df603a03675c28d1b5b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 12:31:57 2009 -0400
+Date:   Thu Mar 12 12:31:57 2009 -0400
 
     [fcxml.c] Embed a static 64-byte attr buffer in FcPStack
 
@@ -9695,13 +14755,13 @@ Date:  Thu Mar 12 12:31:57 2009 -0400
     small test
     from 160 down to 6.
 
- src/fcstr.c | 4 ++--
+ src/fcstr.c |  4 ++--
  src/fcxml.c | 23 +++++++++++++++--------
  2 files changed, 17 insertions(+), 10 deletions(-)
 
 commit 39861b7d9c69e71b9a8fb0d0d04279520cb30f04
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 12:22:37 2009 -0400
+Date:   Thu Mar 12 12:22:37 2009 -0400
 
     [fcxml] Embed 64 static FcVStack objects in FcConfigParse
 
@@ -9714,7 +14774,7 @@ Date:    Thu Mar 12 12:22:37 2009 -0400
 
 commit 1d7b47da9da574a8adf39b0b5d11aab3d3cf4a37
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 11:58:04 2009 -0400
+Date:   Thu Mar 12 11:58:04 2009 -0400
 
     [fcxml] Embed 8 static FcPStack objects in FcConfigParse
 
@@ -9726,7 +14786,7 @@ Date:    Thu Mar 12 11:58:04 2009 -0400
 
 commit 532d8a1dbc2baebc2603d091952a640b954b6f71
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Mar 12 09:27:20 2009 -0400
+Date:   Thu Mar 12 09:27:20 2009 -0400
 
     [fcxml] Don't allocate attr array if there are no attributes
 
@@ -9738,34 +14798,34 @@ Date:  Thu Mar 12 09:27:20 2009 -0400
 
 commit 3ed70071cdc8a03229c009f5565c23948264a5e0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 11 14:07:15 2009 -0400
+Date:   Wed Mar 11 14:07:15 2009 -0400
 
     [fcstr,fcxml] Don't copy FcStrBuf contents when we would free it soon
 
-    We can simply NUL-terminate the buffer and use it. Reduces number of
+    We can simply NUL-terminate the buffer and use it.  Reduces number of
     mallocs called from FcStrBufDone in my small test from 631 down to 66.
 
- src/fcint.h | 3 +++
+ src/fcint.h |  3 +++
  src/fcstr.c | 13 +++++++++++++
  src/fcxml.c | 28 ++++++++++++++--------------
  3 files changed, 30 insertions(+), 14 deletions(-)
 
 commit 7d35c11b3304659d8be43913c9b125f2b5b38516
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Mar 11 13:56:09 2009 -0400
+Date:   Wed Mar 11 13:56:09 2009 -0400
 
     [fcstr.c] Embed a static 64-byte buffer in FcStrBuf
 
     Reduces number of mallocs called from FcStrBufChar in my small test
     from 900 down to 6.
 
- src/fcint.h | 1 +
+ src/fcint.h |  1 +
  src/fcstr.c | 11 +++++++++--
  2 files changed, 10 insertions(+), 2 deletions(-)
 
 commit 916640ce40b995d1d97244975139ec0c030483e4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Mar 10 02:15:37 2009 -0400
+Date:   Tue Mar 10 02:15:37 2009 -0400
 
     Fix Makefile's to not create target file in case of failure
 
@@ -9775,7 +14835,7 @@ Date:    Tue Mar 10 02:15:37 2009 -0400
 
 commit 26ce979e825d661be046b1440563115ddc5ea4ab
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Mar 10 02:14:15 2009 -0400
+Date:   Tue Mar 10 02:14:15 2009 -0400
 
     Fix Fanti (fat) orth file (#20390)
 
@@ -9784,7 +14844,7 @@ Date:    Tue Mar 10 02:14:15 2009 -0400
 
 commit 49111c11fb5dca2af06004cc2ae443517f6c9557
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Mon Mar 2 22:48:37 2009 -0800
+Date:   Mon Mar 2 22:48:37 2009 -0800
 
     Add Sundanese (su) orthography (bug #20440)
 
@@ -9793,7 +14853,7 @@ Date:    Mon Mar 2 22:48:37 2009 -0800
 
 commit 0eaed16d34687bddc831d1ab3c50406c7c56792d
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Mon Mar 2 20:53:26 2009 -0800
+Date:   Mon Mar 2 20:53:26 2009 -0800
 
     Add Kanuri (kr) orthography (bug #20438)
 
@@ -9802,7 +14862,7 @@ Date:    Mon Mar 2 20:53:26 2009 -0800
 
 commit fe4838588b0b9eb84f66bd4ad70ee12013e0b49a
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Mon Mar 2 02:21:17 2009 -0800
+Date:   Mon Mar 2 02:21:17 2009 -0800
 
     Add Nauru (na) orthography (bug #20418)
 
@@ -9811,7 +14871,7 @@ Date:    Mon Mar 2 02:21:17 2009 -0800
 
 commit 9141b4bbe9a100200b09597f02521cd6e30d0f06
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 03:53:11 2009 -0800
+Date:   Sun Mar 1 03:53:11 2009 -0800
 
     Add Javanese (jv) orthography (bug #20403)
 
@@ -9820,7 +14880,7 @@ Date:    Sun Mar 1 03:53:11 2009 -0800
 
 commit dc6daae9494e30d8c2d9657bab04d8f88751f751
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 03:50:46 2009 -0800
+Date:   Sun Mar 1 03:50:46 2009 -0800
 
     Add Sichuan Yi (ii) orthography (bug #20402)
 
@@ -9829,7 +14889,7 @@ Date:    Sun Mar 1 03:50:46 2009 -0800
 
 commit 43517045f885c0e463c8a784c65f0b783658fc9b
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 03:46:48 2009 -0800
+Date:   Sun Mar 1 03:46:48 2009 -0800
 
     Add Shona (sn) orthography (bug #20394)
 
@@ -9838,7 +14898,7 @@ Date:    Sun Mar 1 03:46:48 2009 -0800
 
 commit 42a8008df14c7dcdd85ab7d3ce12b4191b807f27
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 03:30:58 2009 -0800
+Date:   Sun Mar 1 03:30:58 2009 -0800
 
     Add orthographies for Oshiwambo languages (bug #20401)
 
@@ -9852,7 +14912,7 @@ Date:    Sun Mar 1 03:30:58 2009 -0800
 
 commit f0b546372967434418aa6cfe6f2d709795fdff24
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 02:33:54 2009 -0800
+Date:   Sun Mar 1 02:33:54 2009 -0800
 
     Add Zhuang (za) orthography (bug #20399)
 
@@ -9861,7 +14921,7 @@ Date:    Sun Mar 1 02:33:54 2009 -0800
 
 commit 7886b147834decbcab6f556b1c43cc003e2bf893
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Mar 1 02:12:38 2009 -0800
+Date:   Sun Mar 1 02:12:38 2009 -0800
 
     Add Rundi (rn) orthography (bug #20398)
 
@@ -9870,7 +14930,7 @@ Date:    Sun Mar 1 02:12:38 2009 -0800
 
 commit 10a85249d9e79ae474c996d3e4f14d0ea8aa50b8
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 19:43:02 2009 -0800
+Date:   Sat Feb 28 19:43:02 2009 -0800
 
     Add Navajo (nv) orthography (bug #20395)
 
@@ -9879,7 +14939,7 @@ Date:    Sat Feb 28 19:43:02 2009 -0800
 
 commit bf20886085a18227702f67b70dd7ef5f0e919469
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 18:25:20 2009 -0800
+Date:   Sat Feb 28 18:25:20 2009 -0800
 
     Add Tahitian (ty) orthography (bug #20391)
 
@@ -9888,7 +14948,7 @@ Date:    Sat Feb 28 18:25:20 2009 -0800
 
 commit 0e05d7e5c730a1740d4c289a66f43f11a527c840
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 18:01:11 2009 -0800
+Date:   Sat Feb 28 18:01:11 2009 -0800
 
     Add Sango (sg) orthography (bug #20393)
 
@@ -9897,7 +14957,7 @@ Date:    Sat Feb 28 18:01:11 2009 -0800
 
 commit bdbdc64dd1e0a1727e2486c3320f9598695e4ab4
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 17:38:21 2009 -0800
+Date:   Sat Feb 28 17:38:21 2009 -0800
 
     Added Quechua (qu) orthography (bug #20392)
 
@@ -9906,7 +14966,7 @@ Date:    Sat Feb 28 17:38:21 2009 -0800
 
 commit 16159d0fae1d8d0d2ba6ac1fc7f845582dec351b
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 17:05:11 2009 -0800
+Date:   Sat Feb 28 17:05:11 2009 -0800
 
     Add Akan (ak) and Fanti (fat) orthographies (bug #20390)
 
@@ -9916,7 +14976,7 @@ Date:    Sat Feb 28 17:05:11 2009 -0800
 
 commit 881a7cd93b3358e371a25bc7ad4818baa3c8968b
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 16:29:07 2009 -0800
+Date:   Sat Feb 28 16:29:07 2009 -0800
 
     Add Herero (hz) orthograhy (bug #20387)
 
@@ -9925,7 +14985,7 @@ Date:    Sat Feb 28 16:29:07 2009 -0800
 
 commit bc701d2a5b7dc687ba25bafc5fea282adad37ecb
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sat Feb 28 16:03:51 2009 -0800
+Date:   Sat Feb 28 16:03:51 2009 -0800
 
     Add Ewe (ee) orthography (bug #20386)
 
@@ -9935,7 +14995,7 @@ Date:    Sat Feb 28 16:03:51 2009 -0800
 
 commit 5a83914b733755ff6c710ff398cb5668fdb74a19
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 27 14:41:07 2009 -0800
+Date:   Fri Feb 27 14:41:07 2009 -0800
 
     Update Serbo-Croatian (sh) orthography (bug #20368)
 
@@ -9944,7 +15004,7 @@ Date:    Fri Feb 27 14:41:07 2009 -0800
 
 commit 505ea8ce37dff9cc35dba6a98de4a31ed1ac5f8c
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Thu Feb 26 23:27:20 2009 -0800
+Date:   Thu Feb 26 23:27:20 2009 -0800
 
     Extend Crimean Tatar (crh) orthography (bug #19891)
 
@@ -9953,7 +15013,7 @@ Date:    Thu Feb 26 23:27:20 2009 -0800
 
 commit 4c7da799f3b90fb2f1117f9e9c45fa7fc1bd268c
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 18 21:21:01 2009 -0800
+Date:   Wed Feb 18 21:21:01 2009 -0800
 
     Add Divehi (dv) orthography (bug #20207)
 
@@ -9962,7 +15022,7 @@ Date:    Wed Feb 18 21:21:01 2009 -0800
 
 commit 5cac0a4fd681087562c84b3d2534cecff6876048
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 18 17:09:51 2009 -0800
+Date:   Wed Feb 18 17:09:51 2009 -0800
 
     Remove digits and symbols from some Indic orthographies (bug #20204)
 
@@ -9981,7 +15041,7 @@ Date:    Wed Feb 18 17:09:51 2009 -0800
 
 commit ea628d97706e842cb5555ceb5368fd972c941e0c
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 18 16:44:10 2009 -0800
+Date:   Wed Feb 18 16:44:10 2009 -0800
 
     Tighten Central Khmer (km) orthography (bug #20202)
 
@@ -9990,7 +15050,7 @@ Date:    Wed Feb 18 16:44:10 2009 -0800
 
 commit 4a5805d9c6b20b4c8f56f3b8201653e88e3706be
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 18 16:03:30 2009 -0800
+Date:   Wed Feb 18 16:03:30 2009 -0800
 
     Change Kashmiri (ks) orthography to Arabic script (bug #20200)
 
@@ -9999,39 +15059,34 @@ Date:  Wed Feb 18 16:03:30 2009 -0800
 
 commit cda57219229025db963d3db0f984974187a409f8
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 23:33:07 2009 -0800
+Date:   Tue Feb 17 23:33:07 2009 -0800
 
     Rename Fulah orthography from 'ful' to 'ff' (bug #20177)
 
- fc-lang/ff.orth  | 38 ++++++++++++++++++++++++++++++++++++++
- fc-lang/ful.orth | 38 --------------------------------------
- 2 files changed, 38 insertions(+), 38 deletions(-)
+ fc-lang/{ful.orth => ff.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit a32b79c3a5251916597bb871d2cd7698baeb5e58
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 22:45:17 2009 -0800
+Date:   Tue Feb 17 22:45:17 2009 -0800
 
     Rename Bambara orthography from 'bam' to 'bm' (bug #20175)
 
- fc-lang/bam.orth | 37 -------------------------------------
- fc-lang/bm.orth  | 37 +++++++++++++++++++++++++++++++++++++
- 2 files changed, 37 insertions(+), 37 deletions(-)
+ fc-lang/{bam.orth => bm.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit 74a0a28695a24e02bc623d1b2c1c72054ff03d52
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 22:40:50 2009 -0800
+Date:   Tue Feb 17 22:40:50 2009 -0800
 
     Rename Avaric orthography from 'ava' to 'av' (bug #20174)
 
- fc-lang/av.orth  | 97
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- fc-lang/ava.orth | 97
- --------------------------------------------------------
- 2 files changed, 97 insertions(+), 97 deletions(-)
+ fc-lang/{ava.orth => av.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit eba32fa3f3024fb94f75cdedaa8d4c17d786a761
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 22:09:53 2009 -0800
+Date:   Tue Feb 17 22:09:53 2009 -0800
 
     Update Azerbaijani in Latin (az_az) to present usage (bug #20173)
 
@@ -10043,7 +15098,7 @@ Date:   Tue Feb 17 22:09:53 2009 -0800
 
 commit 1c7bacc214f6e6e507f932230ec52744337cdf47
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 21:37:45 2009 -0800
+Date:   Tue Feb 17 21:37:45 2009 -0800
 
     Switch Uzbek (uz) orthography to Latin (bug #19851)
 
@@ -10053,7 +15108,7 @@ Date:   Tue Feb 17 21:37:45 2009 -0800
 
 commit dfd5d0937ce44b4a60b5ee7e2e82650a5e31a456
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 20:02:39 2009 -0800
+Date:   Tue Feb 17 20:02:39 2009 -0800
 
     Add Crimean Tatar (crh) orthography (bug #19891)
 
@@ -10062,7 +15117,7 @@ Date:   Tue Feb 17 20:02:39 2009 -0800
 
 commit 502c46c23d3e36dbfff29484486091f140756535
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 19:41:30 2009 -0800
+Date:   Tue Feb 17 19:41:30 2009 -0800
 
     Add Papiamento (pap_aw, pap_an) orthographies (bug #19891)
 
@@ -10072,7 +15127,7 @@ Date:   Tue Feb 17 19:41:30 2009 -0800
 
 commit b4cd4cb6cc2cfd6432bfd4a5b2ec9c63cf653f6d
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 17:30:15 2009 -0800
+Date:   Tue Feb 17 17:30:15 2009 -0800
 
     Add Blin (byn) orthography (bug #19891)
 
@@ -10081,21 +15136,20 @@ Date: Tue Feb 17 17:30:15 2009 -0800
 
 commit 4d7412a28b834830d0d1749852115846b3554932
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Tue Feb 17 17:03:54 2009 -0800
+Date:   Tue Feb 17 17:03:54 2009 -0800
 
     Divide Panjabi (pa) to that of Pakistan and India (bug #19890)
 
     Previous Panjabi orthography was in the Gurmukhi script only, while in
     Pakistan, the Arabic script (called Shahmukhi) is used for Panjani.
 
- fc-lang/pa.orth    | 46 ----------------------------------------------
- fc-lang/pa_in.orth | 46 ++++++++++++++++++++++++++++++++++++++++++++++
- fc-lang/pa_pk.orth | 28 ++++++++++++++++++++++++++++
- 3 files changed, 74 insertions(+), 46 deletions(-)
+ fc-lang/{pa.orth => pa_in.orth} |  6 +++---
+ fc-lang/pa_pk.orth              | 28 ++++++++++++++++++++++++++++
+ 2 files changed, 31 insertions(+), 3 deletions(-)
 
 commit 7a22c9d3471cd4963c529937df823148ab8e1a7d
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 20:04:42 2009 -0800
+Date:   Fri Feb 13 20:04:42 2009 -0800
 
     Add Ottoman Turkish (ota) orthography (bug #20114)
 
@@ -10104,7 +15158,7 @@ Date:   Fri Feb 13 20:04:42 2009 -0800
 
 commit b5675e4c920dbb146ab76d49b4807693749e8143
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 17:14:14 2009 -0800
+Date:   Fri Feb 13 17:14:14 2009 -0800
 
     Remove Euro Sign from all orthographies (bug #19865)
 
@@ -10121,7 +15175,7 @@ Date:   Fri Feb 13 17:14:14 2009 -0800
 
 commit f6993c880345b45abc0f7e7f0bb14dd0ddae0caa
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Mar 2 13:25:37 2009 +0330
+Date:   Mon Mar 2 13:25:37 2009 +0330
 
     [fc-lang] Continue parsing after an "include" (#20179)
 
@@ -10130,7 +15184,7 @@ Date:   Mon Mar 2 13:25:37 2009 +0330
 
 commit abe0e056d5a93dee80d8e964569563dc4d131a90
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 16:47:11 2009 -0800
+Date:   Fri Feb 13 16:47:11 2009 -0800
 
     Fix Bengali (bn) and Assamese (as) orthographies (bug #22924)
 
@@ -10142,7 +15196,7 @@ Date:   Fri Feb 13 16:47:11 2009 -0800
 
 commit 40b2904c8984db90cc35eecbec571552c2e4d120
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 16:07:14 2009 -0800
+Date:   Fri Feb 13 16:07:14 2009 -0800
 
     Add Sidamo (sid) and Wolaitta (wal) orthographies (bug #19891)
 
@@ -10152,7 +15206,7 @@ Date:   Fri Feb 13 16:07:14 2009 -0800
 
 commit d333969e0c809b3175193c7dda26703287d57fd4
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 15:52:23 2009 -0800
+Date:   Fri Feb 13 15:52:23 2009 -0800
 
     Add Sardinian (sc) orthography (bug #19891)
 
@@ -10161,7 +15215,7 @@ Date:   Fri Feb 13 15:52:23 2009 -0800
 
 commit 1ae2e9b479818835ba3ddddb3c613cdb5acf46d4
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Fri Feb 13 13:31:10 2009 -0800
+Date:   Fri Feb 13 13:31:10 2009 -0800
 
     Add Limburgan (li) orthography (bug #19891)
 
@@ -10170,7 +15224,7 @@ Date:   Fri Feb 13 13:31:10 2009 -0800
 
 commit d8a4ee921a3bf0e78dffcea8f27d457cc1bc378e
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 01:59:56 2009 -0800
+Date:   Wed Feb 11 01:59:56 2009 -0800
 
     Ad Ganda (lg) orthography (bug #19891)
 
@@ -10179,7 +15233,7 @@ Date:   Wed Feb 11 01:59:56 2009 -0800
 
 commit f4159adaa88d55118fe1c2c62b05600d0a8fbc0a
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 01:44:45 2009 -0800
+Date:   Wed Feb 11 01:44:45 2009 -0800
 
     Add Haitian Creole (ht) orthography (bug #19891)
 
@@ -10188,7 +15242,7 @@ Date:   Wed Feb 11 01:44:45 2009 -0800
 
 commit 190b4b5b2bd9a4822660b134639a759a5949c862
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 01:11:30 2009 -0800
+Date:   Wed Feb 11 01:11:30 2009 -0800
 
     Add Aragonese (an) orthography (bug #19891)
 
@@ -10197,7 +15251,7 @@ Date:   Wed Feb 11 01:11:30 2009 -0800
 
 commit 3541f01828be06e2a414fa5bcd9543dbb2c9e0fd
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 00:34:10 2009 -0800
+Date:   Wed Feb 11 00:34:10 2009 -0800
 
     Add Kurdish in Turkey (ku_tr) orthography (bug #19891)
 
@@ -10206,7 +15260,7 @@ Date:   Wed Feb 11 00:34:10 2009 -0800
 
 commit 3792f0199065cdf808d723eacf3fa86910453f70
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 00:22:53 2009 -0800
+Date:   Wed Feb 11 00:22:53 2009 -0800
 
     Use newly added Cyrillic letters for Kurdish (bug #20049)
 
@@ -10215,7 +15269,7 @@ Date:   Wed Feb 11 00:22:53 2009 -0800
 
 commit 0d8b15f00f11a5150d842a3bd10e8dd05413fb9c
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Wed Feb 11 00:05:16 2009 -0800
+Date:   Wed Feb 11 00:05:16 2009 -0800
 
     Add Chhattisgarhi (hne) orthography (bug #19891)
 
@@ -10224,7 +15278,7 @@ Date:   Wed Feb 11 00:05:16 2009 -0800
 
 commit 04ac14fc14131a66f0c391d8bb3894a01e556a05
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 13 17:18:11 2009 -0800
+Date:   Fri Feb 13 17:18:11 2009 -0800
 
     [fcformat] Add list of undocumented language features
 
@@ -10233,7 +15287,7 @@ Date:   Fri Feb 13 17:18:11 2009 -0800
 
 commit 384542fa915b27285ec22d899c4aa19be8c275f1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 13 16:41:37 2009 -0800
+Date:   Fri Feb 13 16:41:37 2009 -0800
 
     [fcformat] Add a 'pkgkit' builtin that prints tags for font packages
 
@@ -10252,7 +15306,7 @@ Date:   Fri Feb 13 16:41:37 2009 -0800
 
 commit 9d58d01c5c061c1fcfb3cca3a3a4622f9bbec727
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 13 16:33:58 2009 -0800
+Date:   Fri Feb 13 16:33:58 2009 -0800
 
     [fcformat] Enumerate langsets like we do arrays of values
 
@@ -10265,18 +15319,18 @@ Date: Fri Feb 13 16:33:58 2009 -0800
 
 commit d62b85af21777582ad720efd9c319fde97b67d82
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Feb 13 16:30:43 2009 -0800
+Date:   Fri Feb 13 16:30:43 2009 -0800
 
     [fclang] Implement FcLangSetGetLangs() (#18846)
 
- doc/fclangset.fncs     |  8 ++++++++
+ doc/fclangset.fncs      |  8 ++++++++
  fontconfig/fontconfig.h |  3 +++
- src/fclang.c           | 32 ++++++++++++++++++++++++++++++++
+ src/fclang.c            | 32 ++++++++++++++++++++++++++++++++
  3 files changed, 43 insertions(+)
 
 commit cdfb76585e7afbe739d00ed83a029ce1f909142f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Feb 12 21:48:22 2009 -0600
+Date:   Thu Feb 12 21:48:22 2009 -0600
 
     [fcformat] Implement array enumeration
 
@@ -10292,7 +15346,7 @@ Date:   Thu Feb 12 21:48:22 2009 -0600
 
 commit 0673ef3881d24820e627b9a8cd3a4b3e3889c545
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Feb 11 23:55:11 2009 -0500
+Date:   Wed Feb 11 23:55:11 2009 -0500
 
     [fcformat] Support 'default value' for simple tags
 
@@ -10305,7 +15359,7 @@ Date:   Wed Feb 11 23:55:11 2009 -0500
 
 commit 9c83a8376f7db19421fb42d311fba81b398c67b0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Feb 11 23:44:36 2009 -0500
+Date:   Wed Feb 11 23:44:36 2009 -0500
 
     [fcformat] Support indexing simple tags
 
@@ -10313,13 +15367,13 @@ Date: Wed Feb 11 23:44:36 2009 -0500
     element family.
 
  src/fcformat.c | 43 +++++++++++++++++++++++++++++++++++++++----
- src/fcint.h   |  5 +++++
- src/fcname.c  |  2 +-
+ src/fcint.h    |  5 +++++
+ src/fcname.c   |  2 +-
  3 files changed, 45 insertions(+), 5 deletions(-)
 
 commit d04a750764d89a7048f49d655fb7e4aabbcd10b3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 20:56:39 2009 -0500
+Date:   Tue Feb 10 20:56:39 2009 -0500
 
     [fcformat] Add support for builtin formats
 
@@ -10336,7 +15390,7 @@ Date:   Tue Feb 10 20:56:39 2009 -0500
 
 commit 85c7fb67ce9f77574f71de7d9b69867bb974cd48
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 18:57:34 2009 -0500
+Date:   Tue Feb 10 18:57:34 2009 -0500
 
     [fcformat] Refactor code to avoid malloc
 
@@ -10346,7 +15400,7 @@ Date:   Tue Feb 10 18:57:34 2009 -0500
 
 commit d4f7a4c6af5420afbbcf2217f9fe396623671294
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 06:22:55 2009 -0500
+Date:   Tue Feb 10 06:22:55 2009 -0500
 
     [fcformat] Start adding builtins
 
@@ -10355,7 +15409,7 @@ Date:   Tue Feb 10 06:22:55 2009 -0500
 
 commit c8f5933d13efa6705854d8f89b22d40cf720e68d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 05:57:10 2009 -0500
+Date:   Tue Feb 10 05:57:10 2009 -0500
 
     [fcformat] Implement 'delete', 'escape', and 'translate' filter
     functions
@@ -10374,7 +15428,7 @@ Date:   Tue Feb 10 05:57:10 2009 -0500
 
 commit b6a23028beb3b99022599344ebd8511c12dc7fd0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 05:05:53 2009 -0500
+Date:   Tue Feb 10 05:05:53 2009 -0500
 
     [fcformat] Add value-count syntax
 
@@ -10388,7 +15442,7 @@ Date:   Tue Feb 10 05:05:53 2009 -0500
 
 commit dccbbe83eff54097c55fdc560810cdc56b679a60
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 04:47:24 2009 -0500
+Date:   Tue Feb 10 04:47:24 2009 -0500
 
     [FcStrBuf] better handle malloc failure
 
@@ -10399,7 +15453,7 @@ Date:   Tue Feb 10 04:47:24 2009 -0500
 
 commit ced38254b49ab616df79930bbb798a93e5ce51fa
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 04:44:54 2009 -0500
+Date:   Tue Feb 10 04:44:54 2009 -0500
 
     [fcformat] Implement 'cescape', 'shescape', and 'xmlescape' converters
 
@@ -10409,7 +15463,7 @@ Date:   Tue Feb 10 04:44:54 2009 -0500
 
 commit 2017a5eb79a0774cc5bace8c76304e1a9ef157b9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 03:38:22 2009 -0500
+Date:   Tue Feb 10 03:38:22 2009 -0500
 
     [fcformat] Add simple converters
 
@@ -10423,7 +15477,7 @@ Date:   Tue Feb 10 03:38:22 2009 -0500
 
 commit 7717b25ffdd9507b0d73ef60b70b692f7286c0a2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 10 00:15:08 2009 -0500
+Date:   Tue Feb 10 00:15:08 2009 -0500
 
     [fcformat] Add conditionals
 
@@ -10437,7 +15491,7 @@ Date:   Tue Feb 10 00:15:08 2009 -0500
 
 commit 8c31a2434d5dfa475ef710ad52c992111caac424
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Feb 9 23:08:08 2009 -0500
+Date:   Mon Feb 9 23:08:08 2009 -0500
 
     [fcformat] Add element filtering and deletion
 
@@ -10448,18 +15502,18 @@ Date: Mon Feb 9 23:08:08 2009 -0500
     The deletion, '%{-elt1,elt2,elt3{subexpr}}' will evaluate subexpr
     with a the surrounding pattern sans the listed elements.
 
- doc/fcpattern.fncs  |  2 +-
- fc-list/fc-list.c   |  7 +-
- fc-match/fc-match.c |  6 +-
- fc-query/fc-query.c |  7 +-
- fc-scan/fc-scan.c   |  7 +-
+ doc/fcpattern.fncs  |   2 +-
+ fc-list/fc-list.c   |   7 +-
+ fc-match/fc-match.c |   6 +-
+ fc-query/fc-query.c |   7 +-
+ fc-scan/fc-scan.c   |   7 +-
  src/fcformat.c      | 214
  +++++++++++++++++++++++++++++++++++++++-------------
  6 files changed, 183 insertions(+), 60 deletions(-)
 
 commit d6506ff6eeb4a4cb0bfe827174e474c7b91ff045
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Feb 9 20:49:45 2009 -0500
+Date:   Mon Feb 9 20:49:45 2009 -0500
 
     [fcformat] Add support for subexpressions
 
@@ -10473,7 +15527,7 @@ Date:   Mon Feb 9 20:49:45 2009 -0500
 
 commit 27b3e2dddf6a89c66e8d79f4a28b1a0653e8e100
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Feb 9 19:13:07 2009 -0500
+Date:   Mon Feb 9 19:13:07 2009 -0500
 
     [fcformat] Refactor and restructure code for upcoming changes
 
@@ -10485,7 +15539,7 @@ Date:   Mon Feb 9 19:13:07 2009 -0500
 
 commit c493c3b770ab12ab1c61a4fb10419c490d2b5ba6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Feb 9 18:18:59 2009 -0500
+Date:   Mon Feb 9 18:18:59 2009 -0500
 
     [fcformat] Add support for width modifiers
 
@@ -10498,7 +15552,7 @@ Date:   Mon Feb 9 18:18:59 2009 -0500
 
 commit 967267556c762d2746f819eca85f3c59fbb95875
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Feb 5 23:37:16 2009 -0500
+Date:   Thu Feb 5 23:37:16 2009 -0500
 
     Further update Sinhala orthography (#19288)
 
@@ -10507,7 +15561,7 @@ Date:   Thu Feb 5 23:37:16 2009 -0500
 
 commit b697fa2523a6d3fe091e14710d14720a9e051bf1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Feb 5 02:46:16 2009 -0500
+Date:   Thu Feb 5 02:46:16 2009 -0500
 
     [cache] After writing cache to file, update the internal copy to
     reflect this
@@ -10523,7 +15577,7 @@ Date:   Thu Feb 5 02:46:16 2009 -0500
 
 commit ecce22d40cfbc50bbe19891035c06bbbeef5232f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Feb 4 15:58:36 2009 -0500
+Date:   Wed Feb 4 15:58:36 2009 -0500
 
     Update Sinhala orthography (#19288)
 
@@ -10534,7 +15588,7 @@ Date:   Wed Feb 4 15:58:36 2009 -0500
 
 commit 6bb5d72fe788f897e30ab39ac7585c624282303f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 3 21:06:15 2009 -0500
+Date:   Tue Feb 3 21:06:15 2009 -0500
 
     [fccache] Make sure the cache is current when reusing from open caches
 
@@ -10545,7 +15599,7 @@ Date:   Tue Feb 3 21:06:15 2009 -0500
 
 commit f9feb587faa5a3df0f03e5ba945d228b8b49ec51
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 3 20:50:29 2009 -0500
+Date:   Tue Feb 3 20:50:29 2009 -0500
 
     [win32] Do not remove leading '\\' such that network paths work
 
@@ -10556,7 +15610,7 @@ Date:   Tue Feb 3 20:50:29 2009 -0500
 
 commit 1cdf7efb224867c41b2dea48884d87c5fb67bdaf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 3 20:35:10 2009 -0500
+Date:   Tue Feb 3 20:35:10 2009 -0500
 
     [win32] Expand "APPSHAREFONTDIR" to ../share/fonts relative to
     binary location
@@ -10568,7 +15622,7 @@ Date:   Tue Feb 3 20:35:10 2009 -0500
 
 commit e62058abb9cf04b3f2270a45f3c0760287f12033
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 3 20:31:30 2009 -0500
+Date:   Tue Feb 3 20:31:30 2009 -0500
 
     [win32] Fix usage of GetFullPathName()
 
@@ -10581,7 +15635,7 @@ Date:   Tue Feb 3 20:31:30 2009 -0500
 
 commit c4d557ab90c7ef6eccb998550190ccccde80670d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Feb 3 17:15:52 2009 -0500
+Date:   Tue Feb 3 17:15:52 2009 -0500
 
     Add ICONV_LIBS to fontconfig.pc.in (#19606)
 
@@ -10590,7 +15644,7 @@ Date:   Tue Feb 3 17:15:52 2009 -0500
 
 commit 10609af4aa4030a15c19573198462fa002d2ef13
 Author: Mike FABIAN <mfabian@suse.de>
-Date:  Tue Feb 3 16:57:01 2009 -0500
+Date:   Tue Feb 3 16:57:01 2009 -0500
 
     [conf] Disable hinting when emboldening (#19904)
 
@@ -10606,7 +15660,7 @@ Date:   Tue Feb 3 16:57:01 2009 -0500
 
 commit fe00689cddb42df141d891c2cd5b4a8ea3a42816
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Mon Feb 2 00:27:58 2009 -0800
+Date:   Mon Feb 2 00:27:58 2009 -0800
 
     Remove punctuation symbols from Asturian orthography (bug #19893)
 
@@ -10617,29 +15671,25 @@ Date: Mon Feb 2 00:27:58 2009 -0800
 
 commit a4f651241e2db62bd058e773b4e5931d205af0f6
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 23:52:10 2009 -0800
+Date:   Sun Feb 1 23:52:10 2009 -0800
 
     Rename Igbo from "ibo" to "ig" (bug #19892)
 
- fc-lang/ibo.orth | 35 -----------------------------------
- fc-lang/ig.orth  | 35 +++++++++++++++++++++++++++++++++++
- 2 files changed, 35 insertions(+), 35 deletions(-)
+ fc-lang/{ibo.orth => ig.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit ff71a83c207891323b487d9cbec0658e16ca11c3
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 22:14:53 2009 -0800
+Date:   Sun Feb 1 22:14:53 2009 -0800
 
     Renamed az to az_az (bug #19889)
 
- fc-lang/az.orth    | 66
- ------------------------------------------------------
- fc-lang/az_az.orth | 66
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 66 insertions(+), 66 deletions(-)
+ fc-lang/{az.orth => az_az.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit e53956ee5e6340c5c8a78bf65e9c9df0757af439
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:46:23 2009 -0800
+Date:   Sun Feb 1 20:46:23 2009 -0800
 
     Add Berber orthographies in Latin and Tifinagh scripts (bug #19881)
 
@@ -10650,7 +15700,7 @@ Date:   Sun Feb 1 20:46:23 2009 -0800
 
 commit 3765a7483e1d313c6d0ced8a20cd5a258165f8e0
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:42:54 2009 -0800
+Date:   Sun Feb 1 20:42:54 2009 -0800
 
     Add Upper Sorbian (hsb) orthography (bug #19870)
 
@@ -10659,7 +15709,7 @@ Date:   Sun Feb 1 20:42:54 2009 -0800
 
 commit 9f54d9db2912287358c1c01771a1bc8263e9539a
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:41:14 2009 -0800
+Date:   Sun Feb 1 20:41:14 2009 -0800
 
     Add Kinyarwanda (rw) orthography (bug #19868)
 
@@ -10668,7 +15718,7 @@ Date:   Sun Feb 1 20:41:14 2009 -0800
 
 commit 3889de9e3c0a0b6aacd0558ce41953d9aa35878b
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:39:03 2009 -0800
+Date:   Sun Feb 1 20:39:03 2009 -0800
 
     Add Malay (ms) orthography (bug #19867)
 
@@ -10677,7 +15727,7 @@ Date:   Sun Feb 1 20:39:03 2009 -0800
 
 commit 0896d14ab7fe5a7233102f5ff7c59199f893c734
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:36:55 2009 -0800
+Date:   Sun Feb 1 20:36:55 2009 -0800
 
     Add Kashubian (csb) orth file (bug #19866)
 
@@ -10686,7 +15736,7 @@ Date:   Sun Feb 1 20:36:55 2009 -0800
 
 commit a32870457eb8f35a19193bc3e9e66db9948186fb
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:29:12 2009 -0800
+Date:   Sun Feb 1 20:29:12 2009 -0800
 
     Rename "ku" to "ku_am", add "ku_iq" (bug #19853).
 
@@ -10698,28 +15748,24 @@ Date: Sun Feb 1 20:29:12 2009 -0800
 
     Turkey and Syria need more research.
 
- fc-lang/ku.orth    | 94
- ------------------------------------------------------
- fc-lang/ku_am.orth | 94
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++
- fc-lang/ku_iq.orth | 27 ++++++++++++++++
- 3 files changed, 121 insertions(+), 94 deletions(-)
+ fc-lang/{ku.orth => ku_am.orth} |  4 ++--
+ fc-lang/ku_iq.orth              | 27 +++++++++++++++++++++++++++
+ 2 files changed, 29 insertions(+), 2 deletions(-)
 
 commit 2199c6e321c92cf42711180b483e3f1b0091d980
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:21:45 2009 -0800
+Date:   Sun Feb 1 20:21:45 2009 -0800
 
     Rename Venda from "ven" to "ve" (bug #19852)
 
     Since ISO 639-1 code exists, we should use it.
 
- fc-lang/ve.orth  | 34 ++++++++++++++++++++++++++++++++++
- fc-lang/ven.orth | 34 ----------------------------------
- 2 files changed, 34 insertions(+), 34 deletions(-)
+ fc-lang/{ven.orth => ve.orth} | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit d7dd87649c07b7b73cf4ecfe7273cb0fcedc5be0
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 20:00:15 2009 -0800
+Date:   Sun Feb 1 20:00:15 2009 -0800
 
     Change Turkmen orth from Cyrillic to Latin (bug #19849)
 
@@ -10729,7 +15775,7 @@ Date:   Sun Feb 1 20:00:15 2009 -0800
 
 commit b25a42963d70f9ead6bc026f57ae2433b4ac5e85
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 19:35:37 2009 -0800
+Date:   Sun Feb 1 19:35:37 2009 -0800
 
     Fix doubly encoded UTF-8 in comments (bug #19848)
 
@@ -10738,21 +15784,20 @@ Date: Sun Feb 1 19:35:37 2009 -0800
 
 commit f3c214a1cd799dc1eb965ced8107f52cc9dd065e
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 19:29:21 2009 -0800
+Date:   Sun Feb 1 19:29:21 2009 -0800
 
     Split Mongolian orth to Mongolia and China (bug #19847)
 
     The orth file for Mongolia uses Cyrillic, while that of
     China uses the classical Mongolian script.
 
- fc-lang/mn.orth    | 37 -------------------------------------
- fc-lang/mn_cn.orth | 37 +++++++++++++++++++++++++++++++++++++
- fc-lang/mn_mn.orth | 35 +++++++++++++++++++++++++++++++++++
- 3 files changed, 72 insertions(+), 37 deletions(-)
+ fc-lang/{mn.orth => mn_cn.orth} |  4 ++--
+ fc-lang/mn_mn.orth              | 35 +++++++++++++++++++++++++++++++++++
+ 2 files changed, 37 insertions(+), 2 deletions(-)
 
 commit 0d5f9a2592634e6f9c74f48bbad9f6b443d1b574
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 18:55:31 2009 -0800
+Date:   Sun Feb 1 18:55:31 2009 -0800
 
     Add Filipino orth, alias Tagalog to Filipino (bug #19846)
 
@@ -10766,7 +15811,7 @@ Date:   Sun Feb 1 18:55:31 2009 -0800
 
 commit 2bf7d799bf8c9e116f08864f4f62575a6a25b380
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 18:52:41 2009 -0800
+Date:   Sun Feb 1 18:52:41 2009 -0800
 
     Remove Sinhala characters not in modern use (bug #19288)
 
@@ -10775,7 +15820,7 @@ Date:   Sun Feb 1 18:52:41 2009 -0800
 
 commit 2f3b07fe80415873ef3e0e0a7e753a55e766986b
 Author: Roozbeh Pournader <roozbeh@gmail.com>
-Date:  Sun Feb 1 18:32:21 2009 -0800
+Date:   Sun Feb 1 18:32:21 2009 -0800
 
     Correct Sindhi orthography to use Arabic script (bug #17140)
 
@@ -10791,7 +15836,7 @@ Date:   Sun Feb 1 18:32:21 2009 -0800
 
 commit 574805478c19cdb487aea96922ff7177dd0844d7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sat Jan 31 03:38:19 2009 -0500
+Date:   Sat Jan 31 03:38:19 2009 -0500
 
     [fcfreetype] Fix typo in GB2312 encoding name string (#19845)
 
@@ -10803,27 +15848,27 @@ Date: Sat Jan 31 03:38:19 2009 -0500
 
 commit 575ee6cddd391857339f57331d2677fcc868369e
 Author: Karl Tomlinson <bugs.freedesktop@karlt.net>
-Date:  Tue Jan 27 03:35:51 2009 -0500
+Date:   Tue Jan 27 03:35:51 2009 -0500
 
     Change FcCharSetMerge API
 
-    To only work on writable charsets. Also, return a bool indicating
+    To only work on writable charsets.  Also, return a bool indicating
     whether
     the merge changed the charset.
 
     Also changes the implementation of FcCharSetMerge and
     FcCharSetIsSubset
 
- doc/fccharset.fncs     |  16 +++---
+ doc/fccharset.fncs      |  16 +++---
  fontconfig/fontconfig.h |   4 +-
- src/fccharset.c        | 129
+ src/fccharset.c         | 129
  ++++++++++++++++++++----------------------------
- src/fcmatch.c          |  64 +++++++++++++-----------
+ src/fcmatch.c           |  64 +++++++++++++-----------
  4 files changed, 99 insertions(+), 114 deletions(-)
 
 commit b8860e2faffa8b3f62b3c7aafd2d3b6962566f41
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Jan 23 14:17:08 2009 -0500
+Date:   Fri Jan 23 14:17:08 2009 -0500
 
     [fcmatch] Fix crash when no fonts are available.
 
@@ -10832,7 +15877,7 @@ Date:   Fri Jan 23 14:17:08 2009 -0500
 
 commit c08216c6f468ce22cb7c0c1959019a7caad3484a
 Author: Dan Nicholson <dbn.lists@gmail.com>
-Date:  Mon Jan 19 17:02:55 2009 -0500
+Date:   Mon Jan 19 17:02:55 2009 -0500
 
     Let make expand fc_cachedir/FC_CACHEDIR (bug #18675)
 
@@ -10847,11 +15892,11 @@ Date: Mon Jan 19 17:02:55 2009 -0500
 
 commit 98d765a53ba33d28283e499ebd1098d27cbe6d02
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 19:27:53 2009 -0500
+Date:   Thu Jan 15 19:27:53 2009 -0500
 
     Cleanup all manpage.* files
 
-    Recent doc2man generates files called manpage.log. This was
+    Recent doc2man generates files called manpage.log.  This was
     breaking build.
 
  doc/Makefile.am      | 5 ++---
@@ -10865,23 +15910,23 @@ Date: Thu Jan 15 19:27:53 2009 -0500
 
 commit 41af588f543ca5c0efaeb699992376d89cb35763
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 19:12:37 2009 -0500
+Date:   Thu Jan 15 19:12:37 2009 -0500
 
     [fc-match] Accept list of elements like fc-list (bug #13017)
 
     Also make --verbose not ignore list of elements and only print those.
     Update docs.
 
- fc-list/fc-list.c     | 29 ++++++++++++++---------------
- fc-list/fc-list.sgml  | 12 ++++++------
- fc-match/fc-match.c   | 48
+ fc-list/fc-list.c      | 29 ++++++++++++++---------------
+ fc-list/fc-list.sgml   | 12 ++++++------
+ fc-match/fc-match.c    | 48
  +++++++++++++++++++++++++++++++++++++-----------
  fc-match/fc-match.sgml | 29 ++++++++++++++++++++---------
  4 files changed, 77 insertions(+), 41 deletions(-)
 
 commit 263f16ced279b0c09834bb4ca0df87fd0f76dcaf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 19:12:27 2009 -0500
+Date:   Thu Jan 15 19:12:27 2009 -0500
 
     Oops, fix FcPatternFilter
 
@@ -10890,7 +15935,7 @@ Date:   Thu Jan 15 19:12:27 2009 -0500
 
 commit 6bffe1a95bfd6609358d38590ad638c688232575
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 18:39:48 2009 -0500
+Date:   Thu Jan 15 18:39:48 2009 -0500
 
     Add fc-scan too that runs FcFileScan/FcDirScan
 
@@ -10898,25 +15943,25 @@ Date: Thu Jan 15 18:39:48 2009 -0500
     instead
     of FcFreeTypeQuery.
 
- .gitignore            |   2 +
- Makefile.am           |   2 +-
- configure.in          |   1 +
- doc/fcfile.fncs       |  18 ++---
+ .gitignore             |   2 +
+ Makefile.am            |   2 +-
+ configure.in           |   1 +
+ doc/fcfile.fncs        |  18 ++---
  fc-cache/fc-cache.sgml |   1 +
- fc-cat/fc-cat.sgml    |   1 +
- fc-list/fc-list.sgml  |   7 +-
+ fc-cat/fc-cat.sgml     |   1 +
+ fc-list/fc-list.sgml   |   7 +-
  fc-match/fc-match.sgml |   7 +-
  fc-query/fc-query.sgml |   5 +-
- fc-scan/Makefile.am   |  59 ++++++++++++++++
- fc-scan/fc-scan.c     | 181
+ fc-scan/Makefile.am    |  59 ++++++++++++++++
+ fc-scan/fc-scan.c      | 181
  +++++++++++++++++++++++++++++++++++++++++++++++++
- fc-scan/fc-scan.sgml  | 176
+ fc-scan/fc-scan.sgml   | 176
  +++++++++++++++++++++++++++++++++++++++++++++++
  12 files changed, 442 insertions(+), 18 deletions(-)
 
 commit 4074fd254e5ad707448d3665a034e0fbdf6de033
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 18:35:09 2009 -0500
+Date:   Thu Jan 15 18:35:09 2009 -0500
 
     Revive FcConfigScan() (bug #17121)
 
@@ -10929,7 +15974,7 @@ Date:   Thu Jan 15 18:35:09 2009 -0500
 
 commit 46e405cb9ab5870bda1947f3afd80f8f54c7ac75
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 15 17:34:26 2009 -0500
+Date:   Thu Jan 15 17:34:26 2009 -0500
 
     Oops.  Fix usage output.
 
@@ -10938,7 +15983,7 @@ Date:   Thu Jan 15 17:34:26 2009 -0500
 
 commit 25a09eb9bf2d993228a3d98d1dd271f55efb2358
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 8 03:04:34 2009 -0500
+Date:   Thu Jan 8 03:04:34 2009 -0500
 
     Don't use FcCharSetCopy in FcCharSetMerge
 
@@ -10950,21 +15995,21 @@ Date: Thu Jan 8 03:04:34 2009 -0500
 
 commit d230cf144f84c8a50b932c8b89daa55c1a3620d8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Jan 7 20:15:20 2009 -0500
+Date:   Wed Jan 7 20:15:20 2009 -0500
 
     Make FcCharSetMerge() public
 
     That's needed for apps to be abled to do pruning themselves without
     the performance penalty of recreating new charsets all the time.
 
- doc/fccharset.fncs     | 13 +++++++++++++
+ doc/fccharset.fncs      | 13 +++++++++++++
  fontconfig/fontconfig.h |  3 +++
- src/fcint.h            |  3 ---
+ src/fcint.h             |  3 ---
  3 files changed, 16 insertions(+), 3 deletions(-)
 
 commit 3b725d0a318623bba08a9f7c75e4fe71527f5dec
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Jan 1 16:29:01 2009 -0500
+Date:   Thu Jan 1 16:29:01 2009 -0500
 
     [doc] Note that fontset returned by FcConfigGetFonts should not
     be modified
@@ -10974,7 +16019,7 @@ Date:   Thu Jan 1 16:29:01 2009 -0500
 
 commit 6d764a3f9b89f21b5c2cdf48cbd913b9706d42b2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Dec 31 20:16:40 2008 -0500
+Date:   Wed Dec 31 20:16:40 2008 -0500
 
     [fcmatch] Move FcFontSetMatch() functionality into
     FcFontSetMatchInternal()
@@ -10989,7 +16034,7 @@ Date:   Wed Dec 31 20:16:40 2008 -0500
 
 commit a5a384c5ffb479e095092c2aaedd406f8785280a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Dec 31 19:44:32 2008 -0500
+Date:   Wed Dec 31 19:44:32 2008 -0500
 
     [fcmatch] When matching, reserve score 0 for when elements don't exist
 
@@ -11001,7 +16046,7 @@ Date:   Wed Dec 31 19:44:32 2008 -0500
     By starting
     j from one, scores for when the element exists in both pattern
     and font
-    can never be zero. The score zero is reserved for when the element is
+    can never be zero.  The score zero is reserved for when the element is
     NOT available in both font and pattern.  We will use this property
     later.
 
@@ -11009,7 +16054,7 @@ Date:   Wed Dec 31 19:44:32 2008 -0500
     think of
     is that if a font family exists both as a bitmap font and a scalable
     version, and when requesting it at the size of the bitmap version,
-    previously the font returned was nondeterministic. Now the scalable
+    previously the font returned was nondeterministic.  Now the scalable
     version will always be preferred.
 
  src/fcmatch.c | 2 +-
@@ -11017,14 +16062,14 @@ Date: Wed Dec 31 19:44:32 2008 -0500
 
 commit c7641f2872329197250db6ffe194df3d33ff42b3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Dec 31 19:35:27 2008 -0500
+Date:   Wed Dec 31 19:35:27 2008 -0500
 
     [fcmatch] Use larger multipliers to enforce order
 
     Previously the matcher multiplied comparison results by 100 and added
-    index value to it. With long lists of families (lots of aliases),
+    index value to it.  With long lists of families (lots of aliases),
     reaching 100 is not that hard.  That could result in a non-match early
-    in the list to be preferred over a match late in the list. Changing
+    in the list to be preferred over a match late in the list.  Changing
     the multiplier from 100 to 1000 should fix that.
 
     To keep things relatively in order, the lang multiplier is changed
@@ -11035,7 +16080,7 @@ Date:   Wed Dec 31 19:35:27 2008 -0500
 
 commit 1b43ccc805f26a78934267d92275cd19b5648e91
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Dec 31 18:10:31 2008 -0500
+Date:   Wed Dec 31 18:10:31 2008 -0500
 
     [fcmatch.c] Fix debug formatting
 
@@ -11044,7 +16089,7 @@ Date:   Wed Dec 31 18:10:31 2008 -0500
 
 commit a291cfc710c5989ba3e787ae20911d3176bea307
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Dec 31 18:06:07 2008 -0500
+Date:   Wed Dec 31 18:06:07 2008 -0500
 
     Fix comparison of family names to ignore leading space properly
 
@@ -11058,31 +16103,31 @@ Date: Wed Dec 31 18:06:07 2008 -0500
 
 commit 0c93b91db0cdf7c5e901477c266b45c8baeadd00
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 29 20:00:26 2008 -0500
+Date:   Mon Dec 29 20:00:26 2008 -0500
 
     Implement FcPatternFormat and use it in cmdline tools (bug #17107)
 
     Still need to add more features, but the API is there, and used
     by cmdline tools with -f or --format.
 
- doc/fcpattern.fncs     |  18 ++++++
- fc-list/fc-list.c      |  38 ++++++++----
- fc-list/fc-list.sgml   |  22 ++++++-
- fc-match/fc-match.c    |  31 +++++++---
+ doc/fcpattern.fncs      |  18 ++++++
+ fc-list/fc-list.c       |  38 ++++++++----
+ fc-list/fc-list.sgml    |  22 ++++++-
+ fc-match/fc-match.c     |  31 +++++++---
  fc-match/fc-match.sgml  |  47 ++++++++++-----
- fc-query/fc-query.c    |  25 +++++++-
+ fc-query/fc-query.c     |  25 +++++++-
  fc-query/fc-query.sgml  |  36 +++++++----
  fontconfig/fontconfig.h |   3 +
- src/Makefile.am        |   1 +
- src/fcformat.c                 | 155
+ src/Makefile.am         |   1 +
+ src/fcformat.c          | 155
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h            |   5 ++
- src/fcname.c           |   2 +-
+ src/fcint.h             |   5 ++
+ src/fcname.c            |   2 +-
  12 files changed, 333 insertions(+), 50 deletions(-)
 
 commit 5cf04b201fb5e9dc989d30cf5c30f7575dda56bc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 29 19:27:00 2008 -0500
+Date:   Mon Dec 29 19:27:00 2008 -0500
 
     [.gitignore] Update
 
@@ -11091,11 +16136,11 @@ Date: Mon Dec 29 19:27:00 2008 -0500
 
 commit f9806ab4b9bfa88a782008156511e29f37ce967d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Dec 29 18:58:29 2008 -0500
+Date:   Mon Dec 29 18:58:29 2008 -0500
 
     Remove special-casing of FC_FILE in FcPatternPrint()
 
-    I can't understand why the special case is needed. Indeed,
+    I can't understand why the special case is needed.  Indeed,
     removing it
     does not make any difference in the "fc-match --verbose" output, and
     that's the only time fc-match uses FcPatternPrint.
@@ -11105,7 +16150,7 @@ Date:   Mon Dec 29 18:58:29 2008 -0500
 
 commit 8ae1e3d5dc323542e7def06a42deea62c7ba7027
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 16:54:44 2008 -0500
+Date:   Sun Dec 28 16:54:44 2008 -0500
 
     Explicitly chmod() directories (bug #18934)
 
@@ -11113,19 +16158,19 @@ Date: Sun Dec 28 16:54:44 2008 -0500
 
       - after mkdir(), we immediately chmod(), such that we are not
       affected
-       by stupid umask's.
+        by stupid umask's.
 
       - if a directory we want to use is not writable but exists, we try a
-       chmod on it.  This is to recover from stupid umask's having
-       affected
-       us with older versions.
+        chmod on it.  This is to recover from stupid umask's having
+        affected
+        us with older versions.
 
  src/fccache.c | 14 +++++++++++---
  1 file changed, 11 insertions(+), 3 deletions(-)
 
 commit b6cf885a0a71a0e8f03832fe038e57e6f2778974
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 09:03:29 2008 -0500
+Date:   Sun Dec 28 09:03:29 2008 -0500
 
     Don't use identifier named complex
 
@@ -11134,7 +16179,7 @@ Date:   Sun Dec 28 09:03:29 2008 -0500
 
 commit 627dd913cf1588436936bc8731c7dd9c96baee90
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 08:06:07 2008 -0500
+Date:   Sun Dec 28 08:06:07 2008 -0500
 
     [65-fonts-persian.conf] Set foundry in target=scan instead of
     target=font
@@ -11144,7 +16189,7 @@ Date:   Sun Dec 28 08:06:07 2008 -0500
 
 commit 030983185bb6f3f3885dc2e4d80fec330455f11c
 Author: Harshula Jayasuriya <harshula@gmail.com>
-Date:  Sun Dec 28 06:13:19 2008 -0500
+Date:   Sun Dec 28 06:13:19 2008 -0500
 
     Fix Sinhala coverage (bug #19288)
 
@@ -11153,7 +16198,7 @@ Date:   Sun Dec 28 06:13:19 2008 -0500
 
 commit 6ca36812b4ece5368468278a9ff18f5a9c62b39f
 Author: Alexey Khoroshilov <khoroshilov@linuxtesting.org>
-Date:  Sun Dec 28 05:15:45 2008 -0500
+Date:   Sun Dec 28 05:15:45 2008 -0500
 
     Use human-readable file names in the docs (bug #16278)
 
@@ -11162,7 +16207,7 @@ Date:   Sun Dec 28 05:15:45 2008 -0500
 
 commit f26062b277e1781876a30d3170fca8bbba2409ab
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 04:58:14 2008 -0500
+Date:   Sun Dec 28 04:58:14 2008 -0500
 
     Implement fc-list --quiet ala grep (bug #17141)
 
@@ -11173,18 +16218,18 @@ Date: Sun Dec 28 04:58:14 2008 -0500
 
 commit 00c0972acae849ca3b18a7c76894c078185d3be4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 04:48:54 2008 -0500
+Date:   Sun Dec 28 04:48:54 2008 -0500
 
     Fix compile with old FreeType that doesn't have FT_Select_Size()
     (bug #17498)
 
- configure.in    | 10 +---------
+ configure.in     | 10 +---------
  src/fcfreetype.c |  2 ++
  2 files changed, 3 insertions(+), 9 deletions(-)
 
 commit 350dc5f35091e7e5635a6cf239e4cad56e992d01
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 04:26:26 2008 -0500
+Date:   Sun Dec 28 04:26:26 2008 -0500
 
     Use __builtin_popcount() when available (bug #17592)
 
@@ -11193,7 +16238,7 @@ Date:   Sun Dec 28 04:26:26 2008 -0500
 
 commit 4c209d5f0c217ff9d8f3b517017212d6362b07a8
 Author: Rahul Bhalerao <b.rahul.pm@gmail.com>
-Date:  Sun Dec 28 04:10:53 2008 -0500
+Date:   Sun Dec 28 04:10:53 2008 -0500
 
     Add config for new Indic fonts (bug #17856)
 
@@ -11202,20 +16247,20 @@ Date: Sun Dec 28 04:10:53 2008 -0500
 
 commit f69db8d49cbd929b80527719be6c0b1e6d49ccac
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 04:06:01 2008 -0500
+Date:   Sun Dec 28 04:06:01 2008 -0500
 
     Consistently use FcStat() over stat() in all places
 
  src/fcatomic.c | 2 +-
- src/fccache.c | 7 +------
- src/fccfg.c   | 2 +-
- src/fcdir.c   | 4 ++--
- src/fcint.h   | 7 +++++++
+ src/fccache.c  | 7 +------
+ src/fccfg.c    | 2 +-
+ src/fcdir.c    | 4 ++--
+ src/fcint.h    | 7 +++++++
  5 files changed, 12 insertions(+), 10 deletions(-)
 
 commit 9e2ed2513bb4c2ecc7ee09c48c1dc677ea58a723
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 04:00:09 2008 -0500
+Date:   Sun Dec 28 04:00:09 2008 -0500
 
     [fccache] Consistently use FcStat() over stat() (bug #18195)
 
@@ -11224,7 +16269,7 @@ Date:   Sun Dec 28 04:00:09 2008 -0500
 
 commit ee2463fbcbe105a413021aa870e8a3f0094a1a24
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 03:40:21 2008 -0500
+Date:   Sun Dec 28 03:40:21 2008 -0500
 
     Cleanup symlinks in "make uninstall" (bug #18885)
 
@@ -11233,7 +16278,7 @@ Date:   Sun Dec 28 03:40:21 2008 -0500
 
 commit fe8e8a1dd777ab53f57c4d31dc9547b3e4ba0d70
 Author: Harald Fernengel <harry@kdevelop.org>
-Date:  Sun Dec 28 03:23:58 2008 -0500
+Date:   Sun Dec 28 03:23:58 2008 -0500
 
     Don't use variables named 'bool' (bug #18851)
 
@@ -11242,7 +16287,7 @@ Date:   Sun Dec 28 03:23:58 2008 -0500
 
 commit a9ac5c52a658920f1054a12435d8c07205953153
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Sun Dec 28 03:08:38 2008 -0500
+Date:   Sun Dec 28 03:08:38 2008 -0500
 
     [.gitignore] Update
 
@@ -11251,7 +16296,7 @@ Date:   Sun Dec 28 03:08:38 2008 -0500
 
 commit 1c7f4de80cc4819b504707ae143a2d718af42733
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Dec 2 06:07:41 2008 -0500
+Date:   Tue Dec 2 06:07:41 2008 -0500
 
     Fix two more doc typos
 
@@ -11260,7 +16305,7 @@ Date:   Tue Dec 2 06:07:41 2008 -0500
 
 commit 355ed50b185b7879a5c95e1f8697824c6dec6f9f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Sep 22 18:51:11 2008 -0400
+Date:   Mon Sep 22 18:51:11 2008 -0400
 
     Don't call FcPatternGetCharSet in FcSortWalk unless we need to
     (#17361)
@@ -11271,19 +16316,19 @@ Date: Mon Sep 22 18:51:11 2008 -0400
 
 commit 799691c901ea2d8561980c763a7e78383f1cceec
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Sep 22 18:16:30 2008 -0400
+Date:   Mon Sep 22 18:16:30 2008 -0400
 
     Don't leak FcValues string loaded through fcxml.c (#17661)
 
     Patch from Caolan McNamara.
 
  src/fcpat.c | 10 +++++-----
- src/fcxml.c | 2 ++
+ src/fcxml.c |  2 ++
  2 files changed, 7 insertions(+), 5 deletions(-)
 
 commit 311da2316f5d40d9b8c72c9965f7d70330f3c498
 Author: Chris Wilson <chris@chris-wilson.co.uk>
-Date:  Wed Apr 23 09:07:28 2008 +0100
+Date:   Wed Apr 23 09:07:28 2008 +0100
 
     Reduce number of allocations during FcSortWalk().
 
@@ -11303,37 +16348,37 @@ Date: Wed Apr 23 09:07:28 2008 +0100
     fonts in the set.
 
     For example, profiling 'gedit UTF-8-demo.txt'
-       Allocator                   nAllocs         nBytes
+        Allocator               nAllocs         nBytes
     Before:
-       FcCharSetFindLeafCreate 62886       2012352
-       FcCharSetPutLeaf        9361        11441108
+        FcCharSetFindLeafCreate 62886           2012352
+        FcCharSetPutLeaf        9361            11441108
     After:
-       FcCharSetFindLeafCreate 1940        62080
-       FcCharSetPutLeaf        281                 190336
+        FcCharSetFindLeafCreate 1940            62080
+        FcCharSetPutLeaf        281             190336
 
     The savings are even more significant for applications like
     firefox-3.0b5
     which need to switch between large number of fonts.
     Before:
-       FcCharSetFindLeafCreate 4461192     142758144
-       FcCharSetPutLeaf            1124536         451574172
+        FcCharSetFindLeafCreate 4461192         142758144
+        FcCharSetPutLeaf        1124536         451574172
     After:
-       FcCharSetFindLeafCreate 80359       2571488
-       FcCharSetPutLeaf            18940           9720522
+        FcCharSetFindLeafCreate 80359           2571488
+        FcCharSetPutLeaf        18940           9720522
 
     Out of interest, the next most frequent allocations are
-       FcPatternObjectAddWithBinding 526029    10520580
-       tt_face_load_eblc           42103           2529892
+        FcPatternObjectAddWithBinding 526029    10520580
+        tt_face_load_eblc       42103           2529892
 
  src/fccharset.c | 62
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h    |  3 +++
- src/fcmatch.c  | 13 +++---------
+ src/fcint.h     |  3 +++
+ src/fcmatch.c   | 13 +++---------
  3 files changed, 68 insertions(+), 10 deletions(-)
 
 commit 8072f4b1304efc59fee5e61efc4c4b0fc05bb8fb
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 18:25:22 2008 -0400
+Date:   Fri Aug 22 18:25:22 2008 -0400
 
     Document how to free return value of FcNameUnparse()
 
@@ -11342,19 +16387,19 @@ Date: Fri Aug 22 18:25:22 2008 -0400
 
 commit 241fbde1ab28d7beb9b861d8804d0416f0d5589c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 18:08:07 2008 -0400
+Date:   Fri Aug 22 18:08:07 2008 -0400
 
     Add FcConfigReference() (#17124)
 
- doc/fcconfig.fncs      | 20 +++++++++++++++++---
+ doc/fcconfig.fncs       | 20 +++++++++++++++++---
  fontconfig/fontconfig.h |  3 +++
- src/fccfg.c            | 20 ++++++++++++++++++++
- src/fcint.h            |  2 ++
+ src/fccfg.c             | 20 ++++++++++++++++++++
+ src/fcint.h             |  2 ++
  4 files changed, 42 insertions(+), 3 deletions(-)
 
 commit 03dcaaa08fe324a058c427ab2da993fddaa7b3fd
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 17:49:02 2008 -0400
+Date:   Fri Aug 22 17:49:02 2008 -0400
 
     Document when config can be NULL (#17105)
 
@@ -11366,12 +16411,12 @@ Date: Fri Aug 22 17:49:02 2008 -0400
 
  doc/fcconfig.fncs  | 21 +++++++++++++++++++++
  doc/fcfontset.fncs |  3 +++
- src/fclist.c      |  3 +++
+ src/fclist.c       |  3 +++
  3 files changed, 27 insertions(+)
 
 commit 1439c8f21af1533a920b54333f79459f456a402e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 16:51:33 2008 -0400
+Date:   Fri Aug 22 16:51:33 2008 -0400
 
     Handle -h and --help according to GNU Coding Standards (#17104)
 
@@ -11381,22 +16426,22 @@ Date: Fri Aug 22 16:51:33 2008 -0400
     -? still works like before as that's what getopt returns upon unknown
     arguments.
 
- fc-cache/fc-cache.c   | 47
+ fc-cache/fc-cache.c    | 47
  +++++++++++++++++++++++++----------------------
  fc-cache/fc-cache.sgml |  4 ++--
- fc-cat/fc-cat.c       | 45 ++++++++++++++++++++++++---------------------
- fc-cat/fc-cat.sgml    |  4 ++--
- fc-list/fc-list.c     | 36 ++++++++++++++++++++----------------
- fc-list/fc-list.sgml  |  4 ++--
- fc-match/fc-match.c   | 44 ++++++++++++++++++++++++--------------------
+ fc-cat/fc-cat.c        | 45 ++++++++++++++++++++++++---------------------
+ fc-cat/fc-cat.sgml     |  4 ++--
+ fc-list/fc-list.c      | 36 ++++++++++++++++++++----------------
+ fc-list/fc-list.sgml   |  4 ++--
+ fc-match/fc-match.c    | 44 ++++++++++++++++++++++++--------------------
  fc-match/fc-match.sgml |  4 ++--
- fc-query/fc-query.c   | 40 ++++++++++++++++++++++------------------
+ fc-query/fc-query.c    | 40 ++++++++++++++++++++++------------------
  fc-query/fc-query.sgml |  4 ++--
  10 files changed, 125 insertions(+), 107 deletions(-)
 
 commit df243f93be4306e788aebf6b2ac4a7c1b97550ae
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 13:02:14 2008 -0400
+Date:   Fri Aug 22 13:02:14 2008 -0400
 
     Add WenQuanYi fonts to default conf (#17262, from Mandriva)
 
@@ -11405,7 +16450,7 @@ Date:   Fri Aug 22 13:02:14 2008 -0400
 
 commit f31d8b1b1a93334611353d7ea846f8006fda855c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Aug 22 03:51:57 2008 -0400
+Date:   Fri Aug 22 03:51:57 2008 -0400
 
     Add Sindhi .orth file. (#17140)
 
@@ -11414,7 +16459,7 @@ Date:   Fri Aug 22 03:51:57 2008 -0400
 
 commit b9f18922f112f2f551429b692d793dda7d02cd86
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Aug 21 17:17:04 2008 -0400
+Date:   Thu Aug 21 17:17:04 2008 -0400
 
     Update sr.orth to actul subset of Cyrillic used by Serbian (#17208)
 
@@ -11423,21 +16468,21 @@ Date: Thu Aug 21 17:17:04 2008 -0400
 
 commit 74e16ceeeab86f50c4b6bea12800f70110cd4794
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Aug 14 15:27:16 2008 -0400
+Date:   Thu Aug 14 15:27:16 2008 -0400
 
     Fix docs re 'orig' argument of FcPatternBuild and family
 
     Now call it 'p' or 'pattern', since it's modified in place.
     There is no copying.
 
- doc/fcpattern.fncs     |  6 +++---
+ doc/fcpattern.fncs      |  6 +++---
  fontconfig/fontconfig.h |  4 ++--
- src/fcpat.c            | 12 ++++++------
+ src/fcpat.c             | 12 ++++++------
  3 files changed, 11 insertions(+), 11 deletions(-)
 
 commit bb65f58f6354b8ad363021457852ad9e841cef89
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 16:45:18 2008 -0400
+Date:   Wed Aug 13 16:45:18 2008 -0400
 
     [doc] Fix signature of FcConfigHome()
 
@@ -11449,51 +16494,51 @@ Date: Wed Aug 13 16:45:18 2008 -0400
 
 commit e690fbb20ec41ef018a32ac01118a41103c01289
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 03:30:23 2008 -0400
+Date:   Wed Aug 13 03:30:23 2008 -0400
 
     Get rid of $Id$ tags
 
- COPYING                        | 2 +-
- Makefile.am                    | 2 +-
- conf.d/Makefile.am             | 2 +-
- configure.in                   | 2 +-
- doc/Makefile.am                | 2 +-
- doc/confdir.sgml.in            | 2 +-
- doc/edit-sgml.c                | 2 +-
- doc/fcatomic.fncs              | 2 +-
- doc/fcblanks.fncs              | 2 +-
- doc/fccharset.fncs             | 2 +-
- doc/fcconfig.fncs              | 2 +-
- doc/fcconstant.fncs            | 2 +-
- doc/fcfile.fncs                | 2 +-
- doc/fcfontset.fncs             | 2 +-
- doc/fcfreetype.fncs            | 2 +-
- doc/fcinit.fncs                | 2 +-
- doc/fcmatrix.fncs              | 2 +-
- doc/fcobjectset.fncs           | 2 +-
- doc/fcobjecttype.fncs          | 2 +-
- doc/fcpattern.fncs             | 2 +-
- doc/fcstring.fncs              | 2 +-
- doc/fcstrset.fncs              | 2 +-
- doc/fcvalue.fncs               | 2 +-
- doc/fontconfig-devel.sgml      | 2 +-
- doc/func.sgml                  | 2 +-
- doc/version.sgml.in            | 2 +-
- fc-cache/Makefile.am           | 2 +-
- fc-case/fc-case.c              | 2 +-
- fc-case/fccase.tmpl.h          | 2 +-
- fc-cat/Makefile.am             | 2 +-
- fc-glyphname/fc-glyphname.c    | 2 +-
+ COPYING                         | 2 +-
+ Makefile.am                     | 2 +-
+ conf.d/Makefile.am              | 2 +-
+ configure.in                    | 2 +-
+ doc/Makefile.am                 | 2 +-
+ doc/confdir.sgml.in             | 2 +-
+ doc/edit-sgml.c                 | 2 +-
+ doc/fcatomic.fncs               | 2 +-
+ doc/fcblanks.fncs               | 2 +-
+ doc/fccharset.fncs              | 2 +-
+ doc/fcconfig.fncs               | 2 +-
+ doc/fcconstant.fncs             | 2 +-
+ doc/fcfile.fncs                 | 2 +-
+ doc/fcfontset.fncs              | 2 +-
+ doc/fcfreetype.fncs             | 2 +-
+ doc/fcinit.fncs                 | 2 +-
+ doc/fcmatrix.fncs               | 2 +-
+ doc/fcobjectset.fncs            | 2 +-
+ doc/fcobjecttype.fncs           | 2 +-
+ doc/fcpattern.fncs              | 2 +-
+ doc/fcstring.fncs               | 2 +-
+ doc/fcstrset.fncs               | 2 +-
+ doc/fcvalue.fncs                | 2 +-
+ doc/fontconfig-devel.sgml       | 2 +-
+ doc/func.sgml                   | 2 +-
+ doc/version.sgml.in             | 2 +-
+ fc-cache/Makefile.am            | 2 +-
+ fc-case/fc-case.c               | 2 +-
+ fc-case/fccase.tmpl.h           | 2 +-
+ fc-cat/Makefile.am              | 2 +-
+ fc-glyphname/fc-glyphname.c     | 2 +-
  fc-glyphname/fcglyphname.tmpl.h | 2 +-
- fc-list/Makefile.am            | 2 +-
- fc-match/Makefile.am           | 2 +-
- fc-query/Makefile.am           | 2 +-
- src/Makefile.am                | 2 +-
+ fc-list/Makefile.am             | 2 +-
+ fc-match/Makefile.am            | 2 +-
+ fc-query/Makefile.am            | 2 +-
+ src/Makefile.am                 | 2 +-
  36 files changed, 36 insertions(+), 36 deletions(-)
 
 commit 3042050954ddbe205e3166c9910886839829e788
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 03:16:39 2008 -0400
+Date:   Wed Aug 13 03:16:39 2008 -0400
 
     [doc] Document that a zero rescanInterval disables automatic checks
     (#17103)
@@ -11503,18 +16548,18 @@ Date: Wed Aug 13 03:16:39 2008 -0400
 
 commit 41fc0fe68d88c1fdd38469a51a322dab6a30757d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 02:50:35 2008 -0400
+Date:   Wed Aug 13 02:50:35 2008 -0400
 
     Add FcPatternFilter() (#13016)
 
- doc/fcpattern.fncs     | 12 ++++++++++++
+ doc/fcpattern.fncs      | 12 ++++++++++++
  fontconfig/fontconfig.h |  3 +++
- src/fcpat.c            | 37 +++++++++++++++++++++++++++++++++++++
+ src/fcpat.c             | 37 +++++++++++++++++++++++++++++++++++++
  3 files changed, 52 insertions(+)
 
 commit e6f14d3c513a9f2e7d75c389db4f65aa0dc0502f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 02:47:12 2008 -0400
+Date:   Wed Aug 13 02:47:12 2008 -0400
 
     [doc] Add const decorator for FcPatternDuplicate()
 
@@ -11523,7 +16568,7 @@ Date:   Wed Aug 13 02:47:12 2008 -0400
 
 commit 29874098537e763e8e4cd3fefb1ecc0f36b808a5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 02:24:42 2008 -0400
+Date:   Wed Aug 13 02:24:42 2008 -0400
 
     Implement fc-list --verbose (#13015)
 
@@ -11532,7 +16577,7 @@ Date:   Wed Aug 13 02:24:42 2008 -0400
     then modified to use the object set from FcObjectGetSet() if
     provided object-set is NULL.
 
-    Alternatively FcObjectGetSet() can be made public. In that
+    Alternatively FcObjectGetSet() can be made public.  In that
     case fc-list can use that as a base if --verbose is included,
     and also add any elements provided by the user (though that has
     no effect, as all elements from the cache are already registered).
@@ -11541,27 +16586,27 @@ Date: Wed Aug 13 02:24:42 2008 -0400
 
  fc-list/fc-list.c    | 41 ++++++++++++++++++++++++-----------------
  fc-list/fc-list.sgml | 10 +++++++---
- src/fcint.h         |  3 +++
- src/fclist.c        | 10 ++++++++++
- src/fcname.c        | 14 ++++++++++++++
+ src/fcint.h          |  3 +++
+ src/fclist.c         | 10 ++++++++++
+ src/fcname.c         | 14 ++++++++++++++
  5 files changed, 58 insertions(+), 20 deletions(-)
 
 commit 77c0d8bce86ca088782d5631617c0ef681d91312
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 01:31:18 2008 -0400
+Date:   Wed Aug 13 01:31:18 2008 -0400
 
     Add fc-query (#13019)
 
- .gitignore              |   2 +
- Makefile.am             |   2 +-
- configure.in            |   1 +
+ .gitignore               |   2 +
+ Makefile.am              |   2 +-
+ configure.in             |   1 +
  doc/fontconfig-user.sgml |   2 +-
  fc-cache/fc-cache.sgml   |   1 +
- fc-cat/fc-cat.sgml      |   1 +
- fc-list/fc-list.sgml    |   1 +
+ fc-cat/fc-cat.sgml       |   1 +
+ fc-list/fc-list.sgml     |   1 +
  fc-match/fc-match.sgml   |   1 +
- fc-query/Makefile.am    |  59 ++++++++++++++++
- fc-query/fc-query.c     | 166
+ fc-query/Makefile.am     |  59 ++++++++++++++++
+ fc-query/fc-query.c      | 166
  ++++++++++++++++++++++++++++++++++++++++++++
  fc-query/fc-query.sgml   | 174
  +++++++++++++++++++++++++++++++++++++++++++++++
@@ -11569,19 +16614,19 @@ Date: Wed Aug 13 01:31:18 2008 -0400
 
 commit d5b6085c3e40b4e2605cab7ff6c8a621b961b2d2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Wed Aug 13 00:42:12 2008 -0400
+Date:   Wed Aug 13 00:42:12 2008 -0400
 
     Update man pages
 
  fc-cache/fc-cache.sgml | 16 ++++++++++------
- fc-cat/fc-cat.sgml    | 15 +++++++++++----
- fc-list/fc-list.sgml  | 12 ++++++++----
+ fc-cat/fc-cat.sgml     | 15 +++++++++++----
+ fc-list/fc-list.sgml   | 12 ++++++++----
  fc-match/fc-match.sgml | 30 +++++++++++++++++++++++-------
  4 files changed, 52 insertions(+), 21 deletions(-)
 
 commit 88261bafff30ec02b5a2180f1f9b786c8ff44e3d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 23:44:44 2008 -0400
+Date:   Tue Aug 12 23:44:44 2008 -0400
 
     [fc-match] Fix list of getopt options in --help
 
@@ -11590,7 +16635,7 @@ Date:   Tue Aug 12 23:44:44 2008 -0400
 
 commit 43291847c58002fca99984dcec4f1bbbb0d0f61d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 18:00:35 2008 -0400
+Date:   Tue Aug 12 18:00:35 2008 -0400
 
     Add ~/.fonts.conf.d to default config (#17100)
 
@@ -11599,7 +16644,7 @@ Date:   Tue Aug 12 18:00:35 2008 -0400
 
 commit 4f468454d80bf4f1d256f084afd69cabecf1243e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 17:54:45 2008 -0400
+Date:   Tue Aug 12 17:54:45 2008 -0400
 
     Update Thai default families (#16223)
 
@@ -11610,7 +16655,7 @@ Date:   Tue Aug 12 17:54:45 2008 -0400
 
 commit 2e08e0f243633386b6441784926f928359c92453
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 17:52:02 2008 -0400
+Date:   Tue Aug 12 17:52:02 2008 -0400
 
     [doc] Fix signatures of FcPatternGetFTFace and FcPatternGetLangSet
     (#16272)
@@ -11620,235 +16665,235 @@ Date:       Tue Aug 12 17:52:02 2008 -0400
 
 commit 317b849215ab16cfcd0dda0e424efc9216a74f28
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 16:34:24 2008 -0400
+Date:   Tue Aug 12 16:34:24 2008 -0400
 
     Replace RCS Id tags with the file name
 
- config/Makedefs.in     | 2 +-
- config/install.sh      | 2 +-
- fc-cache/fc-cache.c    | 2 +-
- fc-cat/fc-cat.c        | 2 +-
- fc-lang/aa.orth        | 2 +-
- fc-lang/ab.orth        | 2 +-
- fc-lang/af.orth        | 2 +-
- fc-lang/am.orth        | 2 +-
- fc-lang/ar.orth        | 2 +-
- fc-lang/ast.orth       | 2 +-
- fc-lang/ava.orth       | 2 +-
- fc-lang/ay.orth        | 2 +-
- fc-lang/az.orth        | 2 +-
- fc-lang/az_ir.orth     | 2 +-
- fc-lang/ba.orth        | 2 +-
- fc-lang/bam.orth       | 2 +-
- fc-lang/be.orth        | 2 +-
- fc-lang/bg.orth        | 2 +-
- fc-lang/bh.orth        | 2 +-
- fc-lang/bho.orth       | 2 +-
- fc-lang/bi.orth        | 2 +-
- fc-lang/bin.orth       | 2 +-
- fc-lang/bn.orth        | 2 +-
- fc-lang/bo.orth        | 2 +-
- fc-lang/br.orth        | 2 +-
- fc-lang/bs.orth        | 2 +-
- fc-lang/bua.orth       | 2 +-
- fc-lang/ca.orth        | 2 +-
- fc-lang/ce.orth        | 2 +-
- fc-lang/ch.orth        | 2 +-
- fc-lang/chm.orth       | 2 +-
- fc-lang/chr.orth       | 2 +-
- fc-lang/co.orth        | 2 +-
- fc-lang/cs.orth        | 2 +-
- fc-lang/cu.orth        | 2 +-
- fc-lang/cv.orth        | 2 +-
- fc-lang/cy.orth        | 2 +-
- fc-lang/da.orth        | 2 +-
- fc-lang/de.orth        | 2 +-
- fc-lang/dz.orth        | 2 +-
- fc-lang/el.orth        | 2 +-
- fc-lang/en.orth        | 2 +-
- fc-lang/eo.orth        | 2 +-
- fc-lang/es.orth        | 2 +-
- fc-lang/et.orth        | 2 +-
- fc-lang/eu.orth        | 2 +-
- fc-lang/fa.orth        | 2 +-
- fc-lang/fc-lang.c      | 2 +-
- fc-lang/fc-lang.man    | 2 +-
- fc-lang/fclang.tmpl.h  | 2 +-
- fc-lang/fi.orth        | 2 +-
- fc-lang/fj.orth        | 2 +-
- fc-lang/fo.orth        | 2 +-
- fc-lang/fr.orth        | 2 +-
- fc-lang/ful.orth       | 2 +-
- fc-lang/fur.orth       | 2 +-
- fc-lang/fy.orth        | 2 +-
- fc-lang/ga.orth        | 2 +-
- fc-lang/gd.orth        | 2 +-
- fc-lang/gez.orth       | 2 +-
- fc-lang/gl.orth        | 2 +-
- fc-lang/gn.orth        | 2 +-
- fc-lang/gu.orth        | 2 +-
- fc-lang/gv.orth        | 2 +-
- fc-lang/ha.orth        | 2 +-
- fc-lang/haw.orth       | 2 +-
- fc-lang/he.orth        | 2 +-
- fc-lang/hi.orth        | 2 +-
- fc-lang/ho.orth        | 2 +-
- fc-lang/hr.orth        | 2 +-
- fc-lang/hu.orth        | 2 +-
- fc-lang/hy.orth        | 2 +-
- fc-lang/ia.orth        | 2 +-
- fc-lang/ibo.orth       | 2 +-
- fc-lang/id.orth        | 2 +-
- fc-lang/ie.orth        | 2 +-
- fc-lang/ik.orth        | 2 +-
- fc-lang/io.orth        | 2 +-
- fc-lang/is.orth        | 2 +-
- fc-lang/it.orth        | 2 +-
- fc-lang/iu.orth        | 2 +-
- fc-lang/ja.orth        | 2 +-
- fc-lang/ka.orth        | 2 +-
- fc-lang/kaa.orth       | 2 +-
- fc-lang/ki.orth        | 2 +-
- fc-lang/kk.orth        | 2 +-
- fc-lang/kl.orth        | 2 +-
- fc-lang/km.orth        | 2 +-
- fc-lang/kn.orth        | 2 +-
- fc-lang/ko.orth        | 2 +-
- fc-lang/kok.orth       | 2 +-
- fc-lang/ks.orth        | 2 +-
- fc-lang/ku.orth        | 2 +-
- fc-lang/ku_ir.orth     | 2 +-
- fc-lang/kum.orth       | 2 +-
- fc-lang/kv.orth        | 2 +-
- fc-lang/kw.orth        | 2 +-
- fc-lang/ky.orth        | 2 +-
- fc-lang/la.orth        | 2 +-
- fc-lang/lb.orth        | 2 +-
- fc-lang/lez.orth       | 2 +-
- fc-lang/ln.orth        | 2 +-
- fc-lang/lo.orth        | 2 +-
- fc-lang/lt.orth        | 2 +-
- fc-lang/lv.orth        | 2 +-
- fc-lang/mai.orth       | 2 +-
- fc-lang/mg.orth        | 2 +-
- fc-lang/mh.orth        | 2 +-
- fc-lang/mi.orth        | 2 +-
- fc-lang/mk.orth        | 2 +-
- fc-lang/ml.orth        | 2 +-
- fc-lang/mn.orth        | 2 +-
- fc-lang/mo.orth        | 2 +-
- fc-lang/mr.orth        | 2 +-
- fc-lang/mt.orth        | 2 +-
- fc-lang/my.orth        | 2 +-
- fc-lang/nb.orth        | 2 +-
- fc-lang/nds.orth       | 2 +-
- fc-lang/ne.orth        | 2 +-
- fc-lang/nl.orth        | 2 +-
- fc-lang/nn.orth        | 2 +-
- fc-lang/no.orth        | 2 +-
- fc-lang/nr.orth        | 2 +-
- fc-lang/nso.orth       | 2 +-
- fc-lang/ny.orth        | 2 +-
- fc-lang/oc.orth        | 2 +-
- fc-lang/om.orth        | 2 +-
- fc-lang/or.orth        | 2 +-
- fc-lang/os.orth        | 2 +-
- fc-lang/pa.orth        | 2 +-
- fc-lang/pl.orth        | 2 +-
- fc-lang/ps_af.orth     | 2 +-
- fc-lang/ps_pk.orth     | 2 +-
- fc-lang/pt.orth        | 2 +-
- fc-lang/rm.orth        | 2 +-
- fc-lang/ro.orth        | 2 +-
- fc-lang/ru.orth        | 2 +-
- fc-lang/sa.orth        | 2 +-
- fc-lang/sah.orth       | 2 +-
- fc-lang/sco.orth       | 2 +-
- fc-lang/se.orth        | 2 +-
- fc-lang/sel.orth       | 2 +-
- fc-lang/sh.orth        | 2 +-
- fc-lang/shs.orth       | 2 +-
- fc-lang/si.orth        | 2 +-
- fc-lang/sk.orth        | 2 +-
- fc-lang/sl.orth        | 2 +-
- fc-lang/sm.orth        | 2 +-
- fc-lang/sma.orth       | 2 +-
- fc-lang/smj.orth       | 2 +-
- fc-lang/smn.orth       | 2 +-
- fc-lang/sms.orth       | 2 +-
- fc-lang/so.orth        | 2 +-
- fc-lang/sq.orth        | 2 +-
- fc-lang/sr.orth        | 2 +-
- fc-lang/ss.orth        | 2 +-
- fc-lang/st.orth        | 2 +-
- fc-lang/sv.orth        | 2 +-
- fc-lang/sw.orth        | 2 +-
- fc-lang/syr.orth       | 2 +-
- fc-lang/ta.orth        | 2 +-
- fc-lang/te.orth        | 2 +-
- fc-lang/tg.orth        | 2 +-
- fc-lang/th.orth        | 2 +-
- fc-lang/ti_er.orth     | 2 +-
- fc-lang/ti_et.orth     | 2 +-
- fc-lang/tig.orth       | 2 +-
- fc-lang/tk.orth        | 2 +-
- fc-lang/tl.orth        | 2 +-
- fc-lang/tn.orth        | 2 +-
- fc-lang/to.orth        | 2 +-
- fc-lang/tr.orth        | 2 +-
- fc-lang/ts.orth        | 2 +-
- fc-lang/tt.orth        | 2 +-
- fc-lang/tw.orth        | 2 +-
- fc-lang/tyv.orth       | 2 +-
- fc-lang/ug.orth        | 2 +-
- fc-lang/uk.orth        | 2 +-
- fc-lang/ur.orth        | 2 +-
- fc-lang/uz.orth        | 2 +-
- fc-lang/ven.orth       | 2 +-
- fc-lang/vi.orth        | 2 +-
- fc-lang/vo.orth        | 2 +-
- fc-lang/vot.orth       | 2 +-
- fc-lang/wa.orth        | 2 +-
- fc-lang/wen.orth       | 2 +-
- fc-lang/wo.orth        | 2 +-
- fc-lang/xh.orth        | 2 +-
- fc-lang/yap.orth       | 2 +-
- fc-lang/yi.orth        | 2 +-
- fc-lang/yo.orth        | 2 +-
- fc-lang/zh_cn.orth     | 2 +-
- fc-lang/zh_hk.orth     | 2 +-
- fc-lang/zh_mo.orth     | 2 +-
- fc-lang/zh_sg.orth     | 2 +-
- fc-lang/zh_tw.orth     | 2 +-
- fc-lang/zu.orth        | 2 +-
- fc-list/fc-list.c      | 2 +-
- fc-match/fc-match.c    | 2 +-
+ config/Makedefs.in      | 2 +-
+ config/install.sh       | 2 +-
+ fc-cache/fc-cache.c     | 2 +-
+ fc-cat/fc-cat.c         | 2 +-
+ fc-lang/aa.orth         | 2 +-
+ fc-lang/ab.orth         | 2 +-
+ fc-lang/af.orth         | 2 +-
+ fc-lang/am.orth         | 2 +-
+ fc-lang/ar.orth         | 2 +-
+ fc-lang/ast.orth        | 2 +-
+ fc-lang/ava.orth        | 2 +-
+ fc-lang/ay.orth         | 2 +-
+ fc-lang/az.orth         | 2 +-
+ fc-lang/az_ir.orth      | 2 +-
+ fc-lang/ba.orth         | 2 +-
+ fc-lang/bam.orth        | 2 +-
+ fc-lang/be.orth         | 2 +-
+ fc-lang/bg.orth         | 2 +-
+ fc-lang/bh.orth         | 2 +-
+ fc-lang/bho.orth        | 2 +-
+ fc-lang/bi.orth         | 2 +-
+ fc-lang/bin.orth        | 2 +-
+ fc-lang/bn.orth         | 2 +-
+ fc-lang/bo.orth         | 2 +-
+ fc-lang/br.orth         | 2 +-
+ fc-lang/bs.orth         | 2 +-
+ fc-lang/bua.orth        | 2 +-
+ fc-lang/ca.orth         | 2 +-
+ fc-lang/ce.orth         | 2 +-
+ fc-lang/ch.orth         | 2 +-
+ fc-lang/chm.orth        | 2 +-
+ fc-lang/chr.orth        | 2 +-
+ fc-lang/co.orth         | 2 +-
+ fc-lang/cs.orth         | 2 +-
+ fc-lang/cu.orth         | 2 +-
+ fc-lang/cv.orth         | 2 +-
+ fc-lang/cy.orth         | 2 +-
+ fc-lang/da.orth         | 2 +-
+ fc-lang/de.orth         | 2 +-
+ fc-lang/dz.orth         | 2 +-
+ fc-lang/el.orth         | 2 +-
+ fc-lang/en.orth         | 2 +-
+ fc-lang/eo.orth         | 2 +-
+ fc-lang/es.orth         | 2 +-
+ fc-lang/et.orth         | 2 +-
+ fc-lang/eu.orth         | 2 +-
+ fc-lang/fa.orth         | 2 +-
+ fc-lang/fc-lang.c       | 2 +-
+ fc-lang/fc-lang.man     | 2 +-
+ fc-lang/fclang.tmpl.h   | 2 +-
+ fc-lang/fi.orth         | 2 +-
+ fc-lang/fj.orth         | 2 +-
+ fc-lang/fo.orth         | 2 +-
+ fc-lang/fr.orth         | 2 +-
+ fc-lang/ful.orth        | 2 +-
+ fc-lang/fur.orth        | 2 +-
+ fc-lang/fy.orth         | 2 +-
+ fc-lang/ga.orth         | 2 +-
+ fc-lang/gd.orth         | 2 +-
+ fc-lang/gez.orth        | 2 +-
+ fc-lang/gl.orth         | 2 +-
+ fc-lang/gn.orth         | 2 +-
+ fc-lang/gu.orth         | 2 +-
+ fc-lang/gv.orth         | 2 +-
+ fc-lang/ha.orth         | 2 +-
+ fc-lang/haw.orth        | 2 +-
+ fc-lang/he.orth         | 2 +-
+ fc-lang/hi.orth         | 2 +-
+ fc-lang/ho.orth         | 2 +-
+ fc-lang/hr.orth         | 2 +-
+ fc-lang/hu.orth         | 2 +-
+ fc-lang/hy.orth         | 2 +-
+ fc-lang/ia.orth         | 2 +-
+ fc-lang/ibo.orth        | 2 +-
+ fc-lang/id.orth         | 2 +-
+ fc-lang/ie.orth         | 2 +-
+ fc-lang/ik.orth         | 2 +-
+ fc-lang/io.orth         | 2 +-
+ fc-lang/is.orth         | 2 +-
+ fc-lang/it.orth         | 2 +-
+ fc-lang/iu.orth         | 2 +-
+ fc-lang/ja.orth         | 2 +-
+ fc-lang/ka.orth         | 2 +-
+ fc-lang/kaa.orth        | 2 +-
+ fc-lang/ki.orth         | 2 +-
+ fc-lang/kk.orth         | 2 +-
+ fc-lang/kl.orth         | 2 +-
+ fc-lang/km.orth         | 2 +-
+ fc-lang/kn.orth         | 2 +-
+ fc-lang/ko.orth         | 2 +-
+ fc-lang/kok.orth        | 2 +-
+ fc-lang/ks.orth         | 2 +-
+ fc-lang/ku.orth         | 2 +-
+ fc-lang/ku_ir.orth      | 2 +-
+ fc-lang/kum.orth        | 2 +-
+ fc-lang/kv.orth         | 2 +-
+ fc-lang/kw.orth         | 2 +-
+ fc-lang/ky.orth         | 2 +-
+ fc-lang/la.orth         | 2 +-
+ fc-lang/lb.orth         | 2 +-
+ fc-lang/lez.orth        | 2 +-
+ fc-lang/ln.orth         | 2 +-
+ fc-lang/lo.orth         | 2 +-
+ fc-lang/lt.orth         | 2 +-
+ fc-lang/lv.orth         | 2 +-
+ fc-lang/mai.orth        | 2 +-
+ fc-lang/mg.orth         | 2 +-
+ fc-lang/mh.orth         | 2 +-
+ fc-lang/mi.orth         | 2 +-
+ fc-lang/mk.orth         | 2 +-
+ fc-lang/ml.orth         | 2 +-
+ fc-lang/mn.orth         | 2 +-
+ fc-lang/mo.orth         | 2 +-
+ fc-lang/mr.orth         | 2 +-
+ fc-lang/mt.orth         | 2 +-
+ fc-lang/my.orth         | 2 +-
+ fc-lang/nb.orth         | 2 +-
+ fc-lang/nds.orth        | 2 +-
+ fc-lang/ne.orth         | 2 +-
+ fc-lang/nl.orth         | 2 +-
+ fc-lang/nn.orth         | 2 +-
+ fc-lang/no.orth         | 2 +-
+ fc-lang/nr.orth         | 2 +-
+ fc-lang/nso.orth        | 2 +-
+ fc-lang/ny.orth         | 2 +-
+ fc-lang/oc.orth         | 2 +-
+ fc-lang/om.orth         | 2 +-
+ fc-lang/or.orth         | 2 +-
+ fc-lang/os.orth         | 2 +-
+ fc-lang/pa.orth         | 2 +-
+ fc-lang/pl.orth         | 2 +-
+ fc-lang/ps_af.orth      | 2 +-
+ fc-lang/ps_pk.orth      | 2 +-
+ fc-lang/pt.orth         | 2 +-
+ fc-lang/rm.orth         | 2 +-
+ fc-lang/ro.orth         | 2 +-
+ fc-lang/ru.orth         | 2 +-
+ fc-lang/sa.orth         | 2 +-
+ fc-lang/sah.orth        | 2 +-
+ fc-lang/sco.orth        | 2 +-
+ fc-lang/se.orth         | 2 +-
+ fc-lang/sel.orth        | 2 +-
+ fc-lang/sh.orth         | 2 +-
+ fc-lang/shs.orth        | 2 +-
+ fc-lang/si.orth         | 2 +-
+ fc-lang/sk.orth         | 2 +-
+ fc-lang/sl.orth         | 2 +-
+ fc-lang/sm.orth         | 2 +-
+ fc-lang/sma.orth        | 2 +-
+ fc-lang/smj.orth        | 2 +-
+ fc-lang/smn.orth        | 2 +-
+ fc-lang/sms.orth        | 2 +-
+ fc-lang/so.orth         | 2 +-
+ fc-lang/sq.orth         | 2 +-
+ fc-lang/sr.orth         | 2 +-
+ fc-lang/ss.orth         | 2 +-
+ fc-lang/st.orth         | 2 +-
+ fc-lang/sv.orth         | 2 +-
+ fc-lang/sw.orth         | 2 +-
+ fc-lang/syr.orth        | 2 +-
+ fc-lang/ta.orth         | 2 +-
+ fc-lang/te.orth         | 2 +-
+ fc-lang/tg.orth         | 2 +-
+ fc-lang/th.orth         | 2 +-
+ fc-lang/ti_er.orth      | 2 +-
+ fc-lang/ti_et.orth      | 2 +-
+ fc-lang/tig.orth        | 2 +-
+ fc-lang/tk.orth         | 2 +-
+ fc-lang/tl.orth         | 2 +-
+ fc-lang/tn.orth         | 2 +-
+ fc-lang/to.orth         | 2 +-
+ fc-lang/tr.orth         | 2 +-
+ fc-lang/ts.orth         | 2 +-
+ fc-lang/tt.orth         | 2 +-
+ fc-lang/tw.orth         | 2 +-
+ fc-lang/tyv.orth        | 2 +-
+ fc-lang/ug.orth         | 2 +-
+ fc-lang/uk.orth         | 2 +-
+ fc-lang/ur.orth         | 2 +-
+ fc-lang/uz.orth         | 2 +-
+ fc-lang/ven.orth        | 2 +-
+ fc-lang/vi.orth         | 2 +-
+ fc-lang/vo.orth         | 2 +-
+ fc-lang/vot.orth        | 2 +-
+ fc-lang/wa.orth         | 2 +-
+ fc-lang/wen.orth        | 2 +-
+ fc-lang/wo.orth         | 2 +-
+ fc-lang/xh.orth         | 2 +-
+ fc-lang/yap.orth        | 2 +-
+ fc-lang/yi.orth         | 2 +-
+ fc-lang/yo.orth         | 2 +-
+ fc-lang/zh_cn.orth      | 2 +-
+ fc-lang/zh_hk.orth      | 2 +-
+ fc-lang/zh_mo.orth      | 2 +-
+ fc-lang/zh_sg.orth      | 2 +-
+ fc-lang/zh_tw.orth      | 2 +-
+ fc-lang/zu.orth         | 2 +-
+ fc-list/fc-list.c       | 2 +-
+ fc-match/fc-match.c     | 2 +-
  fontconfig/fcfreetype.h | 2 +-
  fontconfig/fcprivate.h  | 2 +-
  fontconfig/fontconfig.h | 2 +-
- src/fcatomic.c                 | 2 +-
- src/fcblanks.c                 | 2 +-
- src/fccfg.c            | 2 +-
- src/fccharset.c        | 2 +-
- src/fcdbg.c            | 2 +-
- src/fcdefault.c        | 2 +-
- src/fcdir.c            | 2 +-
- src/fcfreetype.c       | 2 +-
- src/fcfs.c             | 2 +-
- src/fcinit.c           | 2 +-
- src/fcint.h            | 2 +-
- src/fclang.c           | 2 +-
- src/fclist.c           | 2 +-
- src/fcmatch.c          | 2 +-
- src/fcmatrix.c                 | 2 +-
- src/fcname.c           | 2 +-
- src/fcstr.c            | 2 +-
- src/fcxml.c            | 2 +-
+ src/fcatomic.c          | 2 +-
+ src/fcblanks.c          | 2 +-
+ src/fccfg.c             | 2 +-
+ src/fccharset.c         | 2 +-
+ src/fcdbg.c             | 2 +-
+ src/fcdefault.c         | 2 +-
+ src/fcdir.c             | 2 +-
+ src/fcfreetype.c        | 2 +-
+ src/fcfs.c              | 2 +-
+ src/fcinit.c            | 2 +-
+ src/fcint.h             | 2 +-
+ src/fclang.c            | 2 +-
+ src/fclist.c            | 2 +-
+ src/fcmatch.c           | 2 +-
+ src/fcmatrix.c          | 2 +-
+ src/fcname.c            | 2 +-
+ src/fcstr.c             | 2 +-
+ src/fcxml.c             | 2 +-
  220 files changed, 220 insertions(+), 220 deletions(-)
 
 commit aef608efed2feb867128e528cd9d39ee7e10a0ac
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 16:11:29 2008 -0400
+Date:   Tue Aug 12 16:11:29 2008 -0400
 
     Add orth file for Maithili mai.orth (#15821)
 
@@ -11857,7 +16902,7 @@ Date:   Tue Aug 12 16:11:29 2008 -0400
 
 commit 1bcf4ae5f2348d7956c435d34f2856ebfaccd6c8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 15:10:04 2008 -0400
+Date:   Tue Aug 12 15:10:04 2008 -0400
 
     When canonizing filenames, squash // and remove final / (#bug 16286)
 
@@ -11870,7 +16915,7 @@ Date:   Tue Aug 12 15:10:04 2008 -0400
 
 commit b21bea3731106ef30224f9255c4232d6e2607803
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 14:32:40 2008 -0400
+Date:   Tue Aug 12 14:32:40 2008 -0400
 
     [doc] Fix inaccuracy in FcFontRenderPrepare docs (#16985)
 
@@ -11879,7 +16924,7 @@ Date:   Tue Aug 12 14:32:40 2008 -0400
 
 commit e04afe83de409b880be9a854b34fb624bca5c3b0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Tue Aug 12 14:10:03 2008 -0400
+Date:   Tue Aug 12 14:10:03 2008 -0400
 
     Avoid C99ism in Win32 code (#16651)
 
@@ -11889,7 +16934,7 @@ Date:   Tue Aug 12 14:10:03 2008 -0400
 
 commit f7364e6273df6f660e6b01ea5189e88b34ba4602
 Author: Benjamin Close <Benjamin.Close@clearchain.com>
-Date:  Thu Feb 12 10:23:40 2009 +1030
+Date:   Thu Feb 12 10:23:40 2009 +1030
 
     Remove build manpage logfile if it exists
 
@@ -11898,7 +16943,7 @@ Date:   Thu Feb 12 10:23:40 2009 +1030
 
 commit 0e21b5a4d5609a5dd0f332b412d878b6f1037d29
 Author: Peter <pva@gentoo.org>
-Date:  Sun Jun 22 09:21:05 2008 -0700
+Date:   Sun Jun 22 09:21:05 2008 -0700
 
     Make sure alias files are built first (bug 16464)
 
@@ -11909,29 +16954,29 @@ Date: Sun Jun 22 09:21:05 2008 -0700
 
 commit a93b4c2aab1d79573abd646147596a8a34b19350
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 31 19:24:35 2008 -0700
+Date:   Sat May 31 19:24:35 2008 -0700
 
     Bump version to 2.6.0
 
- README                         | 6 ++++--
- configure.in           | 2 +-
+ README                  | 6 ++++--
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 4 ++--
  3 files changed, 7 insertions(+), 5 deletions(-)
 
 commit d0902ee0867bd11e4ff266876a69c258eee8d08d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 24 17:52:41 2008 -0700
+Date:   Sat May 24 17:52:41 2008 -0700
 
     Bump version to 2.5.93
 
- README                         | 34 ++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ README                  | 34 ++++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 34 insertions(+), 4 deletions(-)
 
 commit 8ade2369238a0b439192a847f12fcc9748a6d73a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 24 17:14:24 2008 -0700
+Date:   Sat May 24 17:14:24 2008 -0700
 
     Ignore empty <dir></dir> elements
 
@@ -11943,7 +16988,7 @@ Date:   Sat May 24 17:14:24 2008 -0700
 
 commit 83c5c357abc8d626680943537b4dbc020d6c378c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 24 17:01:12 2008 -0700
+Date:   Sat May 24 17:01:12 2008 -0700
 
     Oops. Fix for bug 15928 used wrong path for installed fc-cache.
 
@@ -11954,7 +16999,7 @@ Date:   Sat May 24 17:01:12 2008 -0700
 
 commit e91e7efd7b0e0ca6f9f2e718541f99331447b40a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 24 16:32:27 2008 -0700
+Date:   Sat May 24 16:32:27 2008 -0700
 
     Libs.private needs freetype libraries
 
@@ -11966,7 +17011,7 @@ Date:   Sat May 24 16:32:27 2008 -0700
 
 commit ad3fc667914d19435ade56adc8afe584d5605d10
 Author: Sayamindu Dasgupta <sayamindu@gmail.com>
-Date:  Sat May 24 16:15:27 2008 -0700
+Date:   Sat May 24 16:15:27 2008 -0700
 
     FcConfigUptoDate breaks if directory mtime is in the future. Bug
     14424.
@@ -11988,7 +17033,7 @@ Date:   Sat May 24 16:15:27 2008 -0700
 
 commit b808204023ab47eb06dc520665eb7a0473320a9b
 Author: Evgeniy Stepanov <eugeni.stepanov@gmail.com>
-Date:  Sat May 24 16:09:17 2008 -0700
+Date:   Sat May 24 16:09:17 2008 -0700
 
     Fix index/offset for 'decorative' matcher. Bug 15890.
 
@@ -12003,7 +17048,7 @@ Date:   Sat May 24 16:09:17 2008 -0700
 
 commit c6228a34b0ebaab3df395163b3b9246da2aa7d8c
 Author: Glen Low <glen.low@pixelglow.com>
-Date:  Sat May 24 15:59:35 2008 -0700
+Date:   Sat May 24 15:59:35 2008 -0700
 
     Fix Win32 build error: install tries to run fc-cache locally
     (bug 15928).
@@ -12023,7 +17068,7 @@ Date:   Sat May 24 15:59:35 2008 -0700
 
 commit 557f87f7337df1d78c04d2c993916d1d1748360f
 Author: Neskie Manuel <neskiem@gmail.com>
-Date:  Sat May 24 15:51:41 2008 -0700
+Date:   Sat May 24 15:51:41 2008 -0700
 
     Add Secwepemctsin Orthography. Bug 15996.
 
@@ -12032,7 +17077,7 @@ Date:   Sat May 24 15:51:41 2008 -0700
 
 commit a572f547fd46bf169b617108552ab0fa280f4813
 Author: Behdad Esfahbod <freedesktop@behdad.org>
-Date:  Sat May 24 15:48:00 2008 -0700
+Date:   Sat May 24 15:48:00 2008 -0700
 
     Persian conf update. (bug 16066).
 
@@ -12042,7 +17087,7 @@ Date:   Sat May 24 15:48:00 2008 -0700
 
 commit 0faca4ff826c214c5c5bb0ff7e64a09802230f9d
 Author: Alexey Khoroshilov <khoroshilov@linuxtesting.org>
-Date:  Sat May 24 15:44:00 2008 -0700
+Date:   Sat May 24 15:44:00 2008 -0700
 
     Fix FcStrDirname documentation. (bug 16068)
 
@@ -12060,7 +17105,7 @@ Date:   Sat May 24 15:44:00 2008 -0700
 
 commit 4dfb4aa1d4e1a3195d6f2f6873cb48d1d739a1bd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon May 5 08:30:44 2008 -0700
+Date:   Mon May 5 08:30:44 2008 -0700
 
     Add a copy of dolt.m4 to acinclude.m4.
 
@@ -12074,7 +17119,7 @@ Date:   Mon May 5 08:30:44 2008 -0700
 
 commit 8d0139b0e68b081c9cdbeaa025fb278105ebf50c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 19:08:31 2008 -0700
+Date:   Sun May 4 19:08:31 2008 -0700
 
     Freetype 2.3.5 (2007-jul-02) fixes indic font hinting. re-enable
     (bug 15822)
@@ -12092,7 +17137,7 @@ Date:   Sun May 4 19:08:31 2008 -0700
 
 commit 3a3f687b759ceb76fc1e6407980a4b2717a47219
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 01:27:42 2008 -0700
+Date:   Sun May 4 01:27:42 2008 -0700
 
     Add extended, caps, dunhill style mappings.
 
@@ -12104,7 +17149,7 @@ Date:   Sun May 4 01:27:42 2008 -0700
 
 commit 13a14cbf56d56c14d53e5f55d7fcc4bdec900994
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 01:26:40 2008 -0700
+Date:   Sun May 4 01:26:40 2008 -0700
 
     Fix a few memory tracking mistakes.
 
@@ -12114,14 +17159,14 @@ Date: Sun May 4 01:26:40 2008 -0700
 
  src/fcatomic.c  | 2 +-
  src/fccharset.c | 6 ++++++
- src/fcinit.c   | 2 ++
- src/fcpat.c    | 2 +-
- src/fcstr.c    | 9 +++++++--
+ src/fcinit.c    | 2 ++
+ src/fcpat.c     | 2 +-
+ src/fcstr.c     | 9 +++++++--
  5 files changed, 17 insertions(+), 4 deletions(-)
 
 commit c6c9400d67ffefa95100d03e6650ea901b05116b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 01:25:04 2008 -0700
+Date:   Sun May 4 01:25:04 2008 -0700
 
     Call FcFini to make memory debugging easier
 
@@ -12133,18 +17178,18 @@ Date: Sun May 4 01:25:04 2008 -0700
 
 commit d33d23ada05a688046e4cc0a48b149fbf44c9ce3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:39:07 2008 -0700
+Date:   Sat May 3 20:39:07 2008 -0700
 
     Bump version to 2.5.92
 
- README                         | 40 ++++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ README                  | 40 ++++++++++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 40 insertions(+), 4 deletions(-)
 
 commit 366887c3845973a6f81dd2e9e7aec60afbc61c32
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:38:29 2008 -0700
+Date:   Sat May 3 20:38:29 2008 -0700
 
     git ignore doltcompile
 
@@ -12153,7 +17198,7 @@ Date:   Sat May 3 20:38:29 2008 -0700
 
 commit 0b15b5f38b94ca1eda2b8b25de939776198c017a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:37:49 2008 -0700
+Date:   Sat May 3 20:37:49 2008 -0700
 
     Allow for RC versions in README update
 
@@ -12162,7 +17207,7 @@ Date:   Sat May 3 20:37:49 2008 -0700
 
 commit 19d124dc4f9a68e1c9ddce58bf79a5e11d2ccbfd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:23:37 2008 -0700
+Date:   Sat May 3 20:23:37 2008 -0700
 
     Deal with libtool 2.2 which doesn't let us use LT_ variables. (bug
     15692)
@@ -12174,14 +17219,14 @@ Date: Sat May 3 20:23:37 2008 -0700
 
     Rename the LT_ variables to LIBT_ to work around this restriction.
 
- configure.in     | 18 +++++++++---------
+ configure.in      | 18 +++++++++---------
  fontconfig-zip.in |  2 +-
  src/Makefile.am   |  6 +++---
  3 files changed, 13 insertions(+), 13 deletions(-)
 
 commit 0028f72bc818ca3bc343383fb644765ae12ce769
 Author: Carlo Bramini <carlo.bramix@libero.it>
-Date:  Sat May 3 20:17:16 2008 -0700
+Date:   Sat May 3 20:17:16 2008 -0700
 
     Add FreeType-dependent functions to fontconfig.def file. (bug 15415)
 
@@ -12194,7 +17239,7 @@ Date:   Sat May 3 20:17:16 2008 -0700
 
 commit bdbc26f3d970581a3248c245451f7fbfb1609601
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:14:07 2008 -0700
+Date:   Sat May 3 20:14:07 2008 -0700
 
     Make fc-match behave better when style is unknown (bug 15332)
 
@@ -12203,7 +17248,7 @@ Date:   Sat May 3 20:14:07 2008 -0700
 
 commit 3322ca855330631e0d849e6beca0c2d82390898f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:07:35 2008 -0700
+Date:   Sat May 3 20:07:35 2008 -0700
 
     Use of ":=" in src/Makefile.am is unportable (bug 14420)
 
@@ -12218,7 +17263,7 @@ Date:   Sat May 3 20:07:35 2008 -0700
 
     This is due to the following line (src/Makefile.am:143):
 
-       CLEANFILES := $(ALIAS_FILES)
+        CLEANFILES := $(ALIAS_FILES)
 
     Changing that to a standard assignment ("=") fixes the problem.
 
@@ -12232,7 +17277,7 @@ Date:   Sat May 3 20:07:35 2008 -0700
 
 commit df8ceebdbe735226bef602614921d517321c690f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 20:06:48 2008 -0700
+Date:   Sat May 3 20:06:48 2008 -0700
 
     Remove doltcompile in distclean
 
@@ -12241,7 +17286,7 @@ Date:   Sat May 3 20:06:48 2008 -0700
 
 commit 9ffa2fa7efa7815b8808e744c3601631fe1810d7
 Author: Ryan Schmidt <freedesktop-2008@ryandesign.com>
-Date:  Sat May 3 19:49:07 2008 -0700
+Date:   Sat May 3 19:49:07 2008 -0700
 
     fontconfig build fails if "head" is missing or unusable (bug 14304)
 
@@ -12256,7 +17301,7 @@ Date:   Sat May 3 19:49:07 2008 -0700
 
 commit 6d65081e35fc1ffae1212f173853b0693645192e
 Author: Dennis Schridde <lindevel@gmx.net>
-Date:  Sat May 3 19:45:31 2008 -0700
+Date:   Sat May 3 19:45:31 2008 -0700
 
     Proper config path for static libraries in win32
 
@@ -12280,7 +17325,7 @@ Date:   Sat May 3 19:45:31 2008 -0700
 
 commit ae6fac08029bce11487d2d20184b1cabb4e0ec34
 Author: Changwoo Ryu <cwryu@debian.org>
-Date:  Sat May 3 19:39:56 2008 -0700
+Date:   Sat May 3 19:39:56 2008 -0700
 
     Korean font in the default config - replacing baekmuk with un
     (bug 13569)
@@ -12299,7 +17344,7 @@ Date:   Sat May 3 19:39:56 2008 -0700
 
 commit 53aec111074cf7b46d15eb84a55791d3c95bc15e
 Author: Sylvain Pasche <sylvain.pasche@gmail.com>
-Date:  Sat May 3 19:33:45 2008 -0700
+Date:   Sat May 3 19:33:45 2008 -0700
 
     Fontconfig options for freetype sub-pixel filter configuration
 
@@ -12313,13 +17358,13 @@ Date: Sat May 3 19:33:45 2008 -0700
  doc/fontconfig-devel.sgml | 1 +
  doc/fontconfig-user.sgml  | 5 +++++
  fontconfig/fontconfig.h   | 9 ++++++++-
- src/fcint.h              | 3 ++-
- src/fcname.c             | 7 ++++++-
+ src/fcint.h               | 3 ++-
+ src/fcname.c              | 7 ++++++-
  5 files changed, 22 insertions(+), 3 deletions(-)
 
 commit c26344ecfc1d3b85671f5d948a10d5cc27c21c2f
 Author: Frederic Crozat <fcrozat@mandriva.com>
-Date:  Sat May 3 19:26:09 2008 -0700
+Date:   Sat May 3 19:26:09 2008 -0700
 
     Merge some of Mandriva configuration into upstream configuration. Bug
     13247
@@ -12329,15 +17374,15 @@ Date: Sat May 3 19:26:09 2008 -0700
     documenting fonts to common aliases.
 
  conf.d/25-unhint-nonlatin.conf | 20 +++++++++++
- conf.d/60-latin.conf          |  3 ++
- conf.d/65-nonlatin.conf       | 81
+ conf.d/60-latin.conf           |  3 ++
+ conf.d/65-nonlatin.conf        | 81
  ++++++++++++++++++++++++++++++++++++++----
- conf.d/69-unifont.conf                |  4 +++
+ conf.d/69-unifont.conf         |  4 +++
  4 files changed, 101 insertions(+), 7 deletions(-)
 
 commit c014142a207d6f3ac63580dfb0cacb243776f7c5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 19:09:57 2008 -0700
+Date:   Sat May 3 19:09:57 2008 -0700
 
     Add --all flag to fc-match to show the untrimmed list. Bug 13018.
 
@@ -12346,7 +17391,7 @@ Date:   Sat May 3 19:09:57 2008 -0700
 
 commit 8415442f9bb8ad624c9940adf187390468c70548
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 18:04:32 2008 -0700
+Date:   Sat May 3 18:04:32 2008 -0700
 
     Add some sample cursive and fantasy families.
 
@@ -12356,7 +17401,7 @@ Date:   Sat May 3 18:04:32 2008 -0700
 
 commit 73e8ae3ac8890af2dd8dd769686e2d34b749e3d0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 17:43:39 2008 -0700
+Date:   Sat May 3 17:43:39 2008 -0700
 
     Remove size and dpi values from bitmap fonts. Bug 8765.
 
@@ -12368,7 +17413,7 @@ Date:   Sat May 3 17:43:39 2008 -0700
 
 commit 60421f5d68e81478430c2d9c796eedbf6d43b3cf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 17:19:43 2008 -0700
+Date:   Sat May 3 17:19:43 2008 -0700
 
     Work around for bitmap-only TrueType fonts that are missing the
     glyf table.
@@ -12385,7 +17430,7 @@ Date:   Sat May 3 17:19:43 2008 -0700
 
 commit ef9db2e2d286c4c26a2cb06aef14d175c33d0898
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 3 17:18:01 2008 -0700
+Date:   Sat May 3 17:18:01 2008 -0700
 
     Use DOLT if available
 
@@ -12394,7 +17439,7 @@ Date:   Sat May 3 17:18:01 2008 -0700
 
 commit ba884599133e444b5f6d0b9b6981079cf8059b9f
 Author: Eric Anholt <eric@anholt.net>
-Date:  Fri Apr 18 11:52:41 2008 -0700
+Date:   Fri Apr 18 11:52:41 2008 -0700
 
     Fix build with !ENABLE_DOCS and no built manpages.
 
@@ -12406,18 +17451,18 @@ Date: Fri Apr 18 11:52:41 2008 -0700
 
 commit 0dffe625d43c1165f8b84f97e8ba098793e2cf7b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:58:25 2008 -0800
+Date:   Thu Jan 10 10:58:25 2008 -0800
 
     Bump version to 2.5.91
 
- README                         | 26 ++++++++++++++++++++++----
- configure.in           |  2 +-
+ README                  | 26 ++++++++++++++++++++++----
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 24 insertions(+), 6 deletions(-)
 
 commit b2cbf483ab520ff21ca2152f960498d181613608
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:58:22 2008 -0800
+Date:   Thu Jan 10 10:58:22 2008 -0800
 
     git-tag requires space after -m flag
 
@@ -12426,7 +17471,7 @@ Date:   Thu Jan 10 10:58:22 2008 -0800
 
 commit 51f1536479064c2d224860c15271a9b14c87fd62
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:56:52 2008 -0800
+Date:   Thu Jan 10 10:56:52 2008 -0800
 
     new-version.sh was mis-editing files
 
@@ -12435,7 +17480,7 @@ Date:   Thu Jan 10 10:56:52 2008 -0800
 
 commit 554dc2e7b7e3c1cb6409d0cd786cfbea480fcf69
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:48:00 2008 -0800
+Date:   Thu Jan 10 10:48:00 2008 -0800
 
     Add more files to .gitignore
 
@@ -12444,7 +17489,7 @@ Date:   Thu Jan 10 10:48:00 2008 -0800
 
 commit 94d4f51d854f33b158e7eef2df75a5b21e95fb27
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:43:33 2008 -0800
+Date:   Thu Jan 10 10:43:33 2008 -0800
 
     Distribute khmer font aliases
 
@@ -12454,19 +17499,19 @@ Date: Thu Jan 10 10:43:33 2008 -0800
 
 commit fba7c37f98658e3ee94bb454868885b7f3a8ec5e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 10:40:41 2008 -0800
+Date:   Thu Jan 10 10:40:41 2008 -0800
 
     Create new-version.sh to help with releases, update INSTALL
     instructions
 
- INSTALL       |  36 +++++------------
+ INSTALL        |  36 +++++------------
  new-version.sh | 121
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2 files changed, 131 insertions(+), 26 deletions(-)
 
 commit ad43ccaafa4f987b982afa2fff07ee8003c51a81
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 10 08:58:57 2008 -0800
+Date:   Thu Jan 10 08:58:57 2008 -0800
 
     Distribute new fcftint.h file
 
@@ -12475,7 +17520,7 @@ Date:   Thu Jan 10 08:58:57 2008 -0800
 
 commit 32fed4572754c2d484cd1605ff273c3fbfbd09bb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jan 8 12:34:19 2008 -0800
+Date:   Tue Jan 8 12:34:19 2008 -0800
 
     Eliminate references to freetype from utility Makefile.am's
 
@@ -12490,7 +17535,7 @@ Date:   Tue Jan 8 12:34:19 2008 -0800
 
 commit a0a1da22a4a8e66e47e2ec8ac0515741b8ad7a7f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jan 7 16:31:06 2008 -0800
+Date:   Mon Jan 7 16:31:06 2008 -0800
 
     Include fcftaliastail.h so that the freetype funcs are exported.
 
@@ -12498,36 +17543,36 @@ Date: Mon Jan 7 16:31:06 2008 -0800
     exports any freetype symbols.
 
  src/fcfreetype.c | 1 +
- src/fclang.c    | 1 +
- src/fcpat.c     | 1 +
+ src/fclang.c     | 1 +
+ src/fcpat.c      | 1 +
  3 files changed, 3 insertions(+)
 
 commit dbd065ad312921308add99fc4cb31457d9045e6a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jan 2 08:47:14 2008 -0800
+Date:   Wed Jan 2 08:47:14 2008 -0800
 
     Remove freetype requirement for build-time applications.
 
     This avoids requiring the freetype development files when cross
     compiling
 
- fc-arch/Makefile.am     |  2 +-
- fc-case/Makefile.am     |  2 +-
+ fc-arch/Makefile.am      |  2 +-
+ fc-case/Makefile.am      |  2 +-
  fc-glyphname/Makefile.am |  2 +-
- fc-lang/Makefile.am     |  2 +-
- src/Makefile.am         | 13 +++++++++---
- src/fcfreetype.c        |  1 +
- src/fcftint.h           | 54
+ fc-lang/Makefile.am      |  2 +-
+ src/Makefile.am          | 13 +++++++++---
+ src/fcfreetype.c         |  1 +
+ src/fcftint.h            | 54
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h             | 18 +---------------
- src/fclang.c            |  1 +
- src/fcpat.c             |  1 +
- src/makealias           |  6 ++++--
+ src/fcint.h              | 18 +---------------
+ src/fclang.c             |  1 +
+ src/fcpat.c              |  1 +
+ src/makealias            |  6 ++++--
  11 files changed, 76 insertions(+), 26 deletions(-)
 
 commit 0aa5fbaa0df9d6c7bee8e0839dd443de9c48a402
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 23 14:06:41 2007 -0800
+Date:   Sun Dec 23 14:06:41 2007 -0800
 
     Fix OOM failure case in FcPStackPush.
 
@@ -12540,7 +17585,7 @@ Date:   Sun Dec 23 14:06:41 2007 -0800
 
 commit 0f7870887adff6db3cffda5485418143f2bfa1f6
 Author: Hongbo Zhao <hongbo.zhao@gmail.com>
-Date:  Wed Dec 12 21:47:33 2007 -0800
+Date:   Wed Dec 12 21:47:33 2007 -0800
 
     Not_contain should use strstr, not strcmp on strings. (bug 13632)
 
@@ -12549,10 +17594,10 @@ Date: Wed Dec 12 21:47:33 2007 -0800
     on line 700,
 
     Original:
-         ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0;
+          ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0;
 
     Should change to:
-         ret = FcStrStrIgnoreCase (left.u.s, right.u.s) == 0;
+          ret = FcStrStrIgnoreCase (left.u.s, right.u.s) == 0;
 
     I think this is just a mistake when copy-n-paste similar codes in
     the same
@@ -12565,7 +17610,7 @@ Date:   Wed Dec 12 21:47:33 2007 -0800
 
 commit 6e5d2cb931f11f0aba8d187e49ddc7cc92a5be85
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Nov 25 16:35:55 2007 -0800
+Date:   Sun Nov 25 16:35:55 2007 -0800
 
     Move conf.avail/README to conf.d/README (bug 13392)
 
@@ -12578,18 +17623,18 @@ Date: Sun Nov 25 16:35:55 2007 -0800
 
 commit 8a0bd93e8a81b105206c1433e2da55b1acef1070
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Tue Nov 13 18:56:44 2007 -0800
+Date:   Tue Nov 13 18:56:44 2007 -0800
 
     Bump version number to 2.5
 
- README                         | 15 +++++++++++++--
- configure.in           |  2 +-
+ README                  | 15 +++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  3 files changed, 16 insertions(+), 5 deletions(-)
 
 commit 8a3dc4880c1182ea446cdbc0885e956c6517cf83
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Tue Nov 13 16:41:55 2007 -0800
+Date:   Tue Nov 13 16:41:55 2007 -0800
 
     Workaround for stat() brokenness in Microsoft's C library (bug 8526)
 
@@ -12633,16 +17678,16 @@ Date: Tue Nov 13 16:41:55 2007 -0800
     end-users, most of which who wouldn't know how to edit it anyway. And
     requiring an installer to edit it gets complicated.
 
- configure.in        |  6 +++-
+ configure.in         |  6 +++-
  fc-cache/Makefile.am |  3 ++
- src/fccache.c       | 93
+ src/fccache.c        | 93
  +++++++++++++++++++++++++++++++++++++++++++++++++++-
- src/fcxml.c         | 24 ++++++++++++++
+ src/fcxml.c          | 24 ++++++++++++++
  4 files changed, 124 insertions(+), 2 deletions(-)
 
 commit 1315db01b626aedd27e3e05bde96ce46c253629b
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Tue Nov 13 15:48:30 2007 -0800
+Date:   Tue Nov 13 15:48:30 2007 -0800
 
     Revert "Remove fcprivate.h, move the remaining macros to fcint.h."
 
@@ -12650,26 +17695,26 @@ Date: Tue Nov 13 15:48:30 2007 -0800
 
     Conflicts:
 
-       src/Makefile.am
+            src/Makefile.am
 
     Xft still uses the macros that are in fcprivate.h. Document those
     macros and
     include fcprivate.h in the published header files.
 
- doc/check-missing-doc  |   1 +
- doc/fcobjectset.fncs   |  11 +++++
- doc/fcpattern.fncs     |  12 ++++-
+ doc/check-missing-doc   |   1 +
+ doc/fcobjectset.fncs    |  11 +++++
+ doc/fcpattern.fncs      |  12 ++++-
  fontconfig/Makefile.am  |   3 +-
  fontconfig/fcprivate.h  | 123
  ++++++++++++++++++++++++++++++++++++++++++++++++
  fontconfig/fontconfig.h |   2 +-
- src/Makefile.am        |   3 +-
- src/fcint.h            |  95 +------------------------------------
+ src/Makefile.am         |   3 +-
+ src/fcint.h             |  95 +------------------------------------
  8 files changed, 152 insertions(+), 98 deletions(-)
 
 commit eaf4470a465cbfb95e2ba4df017d45f7b1d9c131
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Tue Nov 13 15:16:58 2007 -0800
+Date:   Tue Nov 13 15:16:58 2007 -0800
 
     Document that FcConfigGetFonts returns the internal fontset (bug
     13197)
@@ -12683,7 +17728,7 @@ Date:   Tue Nov 13 15:16:58 2007 -0800
 
 commit 3fb38716aefef0fac300dee059403c04c1cbaa6c
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Tue Nov 13 15:11:35 2007 -0800
+Date:   Tue Nov 13 15:11:35 2007 -0800
 
     Document that Match calls FcFontRenderPrepare (bug 13162).
 
@@ -12697,7 +17742,7 @@ Date:   Tue Nov 13 15:11:35 2007 -0800
 
 commit fab44f3cb63dc8bd1285dcbd6ad4f1f468f91daf
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Tue Nov 13 14:58:39 2007 -0800
+Date:   Tue Nov 13 14:58:39 2007 -0800
 
     Document several function return values (Bug 13145).
 
@@ -12716,7 +17761,7 @@ Date:   Tue Nov 13 14:58:39 2007 -0800
 
 commit ed7955a58f93927eb304ecf8d4d5274dbdc2362b
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Mon Nov 5 16:08:55 2007 -0800
+Date:   Mon Nov 5 16:08:55 2007 -0800
 
     Fix parallel build in doc directory.
 
@@ -12729,18 +17774,18 @@ Date: Mon Nov 5 16:08:55 2007 -0800
 
 commit 37e9d33950df03f76b6938ae5675ecfc853eb903
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Mon Nov 5 15:52:45 2007 -0800
+Date:   Mon Nov 5 15:52:45 2007 -0800
 
     Update version numbers to 2.4.92 (2.5 RC2)
 
- README                         | 49
+ README                  | 49
  +++++++++++++++++++++++++++++++++++++++++++++++--
  fontconfig/fontconfig.h |  2 +-
  2 files changed, 48 insertions(+), 3 deletions(-)
 
 commit a504f6b5394b96d2c6a24772b61705227a8e88ab
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 18:12:51 2007 -0500
+Date:   Mon Nov 5 18:12:51 2007 -0500
 
     Simplify/improve 30-metric-aliases.conf
 
@@ -12750,7 +17795,7 @@ Date:   Mon Nov 5 18:12:51 2007 -0500
 
 commit cbff442c69bfbb6895f5033dfcda325c0508cb3f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 17:07:36 2007 -0500
+Date:   Mon Nov 5 17:07:36 2007 -0500
 
     Remove list of available conf files from README.
     It was redundant and out-dated.
@@ -12760,7 +17805,7 @@ Date:   Mon Nov 5 17:07:36 2007 -0500
 
 commit 0294bda4800b94828b59139e6205730c74261c40
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 17:05:36 2007 -0500
+Date:   Mon Nov 5 17:05:36 2007 -0500
 
     Fix documented conf-file naming format in README
 
@@ -12769,7 +17814,7 @@ Date:   Mon Nov 5 17:05:36 2007 -0500
 
 commit 07d04da76c4009552866ae0d2f85659186ef77d6
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 17:01:44 2007 -0500
+Date:   Mon Nov 5 17:01:44 2007 -0500
 
     Remove 25-unhint-nonlatin.conf from default configuration by not
     linking it.
@@ -12779,7 +17824,7 @@ Date:   Mon Nov 5 17:01:44 2007 -0500
 
 commit 9bac30859b9b2b532b9028dc6fe1730b87e95686
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:46:19 2007 -0500
+Date:   Mon Nov 5 16:46:19 2007 -0500
 
     Oops, fix Makefile.am.
 
@@ -12788,48 +17833,48 @@ Date: Mon Nov 5 16:46:19 2007 -0500
 
 commit 93b4049c9ac6283fbf05a2a414ff3b4edaef822e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:43:49 2007 -0500
+Date:   Mon Nov 5 16:43:49 2007 -0500
 
     Remove 20-lohit-gujarati.conf.  It's covered by
     25-unhint-nonlatin.conf now.
 
  conf.d/20-lohit-gujarati.conf | 11 -----------
- conf.d/Makefile.am           |  2 --
+ conf.d/Makefile.am            |  2 --
  2 files changed, 13 deletions(-)
 
 commit 7465091fa90753440ed775de5783387bc4fd9cc4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:43:14 2007 -0500
+Date:   Mon Nov 5 16:43:14 2007 -0500
 
     Remove redundant/obsolete comments from conf files.
 
     Conf files had an initial comment mentioning the files' name.
-    This was outdated and wrong in most cases. There's no real use
+    This was outdated and wrong in most cases.  There's no real use
     in that.
 
- conf.d/10-autohint.conf         | 1 -
- conf.d/10-no-sub-pixel.conf     | 1 -
- conf.d/10-sub-pixel-bgr.conf    | 1 -
- conf.d/10-sub-pixel-rgb.conf    | 1 -
- conf.d/10-sub-pixel-vbgr.conf   | 1 -
- conf.d/10-sub-pixel-vrgb.conf   | 1 -
- conf.d/10-unhinted.conf         | 1 -
+ conf.d/10-autohint.conf          | 1 -
+ conf.d/10-no-sub-pixel.conf      | 1 -
+ conf.d/10-sub-pixel-bgr.conf     | 1 -
+ conf.d/10-sub-pixel-rgb.conf     | 1 -
+ conf.d/10-sub-pixel-vbgr.conf    | 1 -
+ conf.d/10-sub-pixel-vrgb.conf    | 1 -
+ conf.d/10-unhinted.conf          | 1 -
  conf.d/20-fix-globaladvance.conf | 1 -
  conf.d/20-unhint-small-vera.conf | 1 -
  conf.d/25-unhint-nonlatin.conf   | 1 -
- conf.d/30-metric-aliases.conf   | 1 -
- conf.d/30-urw-aliases.conf      | 1 -
- conf.d/50-user.conf             | 1 -
- conf.d/51-local.conf            | 1 -
- conf.d/65-fonts-persian.conf    | 1 -
- conf.d/70-no-bitmaps.conf       | 1 -
- conf.d/70-yes-bitmaps.conf      | 1 -
- conf.d/80-delicious.conf        | 1 -
+ conf.d/30-metric-aliases.conf    | 1 -
+ conf.d/30-urw-aliases.conf       | 1 -
+ conf.d/50-user.conf              | 1 -
+ conf.d/51-local.conf             | 1 -
+ conf.d/65-fonts-persian.conf     | 1 -
+ conf.d/70-no-bitmaps.conf        | 1 -
+ conf.d/70-yes-bitmaps.conf       | 1 -
+ conf.d/80-delicious.conf         | 1 -
  18 files changed, 18 deletions(-)
 
 commit 531a143858aa1b5c82ee20bdacc292c0a31b6cfb
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:40:25 2007 -0500
+Date:   Mon Nov 5 16:40:25 2007 -0500
 
     Use binding="same" in 30-urw-aliases.conf and remove duplicate
     entries.
@@ -12843,49 +17888,48 @@ Date: Mon Nov 5 16:40:25 2007 -0500
 
 commit 4b51f173c99152586db26b03752873a4b4020672
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:36:55 2007 -0500
+Date:   Mon Nov 5 16:36:55 2007 -0500
 
     Split 40-generic.conf into 40-nonlatin.conf and 45-latin.conf
 
- conf.d/40-generic.conf  | 80
- -------------------------------------------------
- conf.d/40-nonlatin.conf | 51 +++++++++++++++++++++++++++++++
- conf.d/45-latin.conf   | 56 ++++++++++++++++++++++++++++++++++
- conf.d/Makefile.am     |  6 ++--
- conf.d/README          |  5 ++--
- 5 files changed, 114 insertions(+), 84 deletions(-)
+ conf.d/40-nonlatin.conf                   | 51
+ +++++++++++++++++++++++++++++++
+ conf.d/{40-generic.conf => 45-latin.conf} | 24 ---------------
+ conf.d/Makefile.am                        |  6 ++--
+ conf.d/README                             |  5 +--
+ 4 files changed, 58 insertions(+), 28 deletions(-)
 
 commit 39968fb223bf2eeb5502553c8d316dc4914a32ba
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 16:14:35 2007 -0500
+Date:   Mon Nov 5 16:14:35 2007 -0500
 
     Add/update config files from Fedora.
 
  conf.d/25-unhint-nonlatin.conf | 228
  +++++++++++++++++++++++++++++++++++++++++
- conf.d/30-amt-aliases.conf    |  21 ----
- conf.d/30-metric-aliases.conf | 186 +++++++++++++++++++++++++++++++++
- conf.d/40-generic.conf                |  22 +++-
- conf.d/65-nonlatin.conf       |  45 ++++++++
- conf.d/Makefile.am            |   6 +-
- conf.d/README                 |   3 +-
+ conf.d/30-amt-aliases.conf     |  21 ----
+ conf.d/30-metric-aliases.conf  | 186 +++++++++++++++++++++++++++++++++
+ conf.d/40-generic.conf         |  22 +++-
+ conf.d/65-nonlatin.conf        |  45 ++++++++
+ conf.d/Makefile.am             |   6 +-
+ conf.d/README                  |   3 +-
  7 files changed, 483 insertions(+), 28 deletions(-)
 
 commit cf223cc7bcae94e839d7ac1e980f289cca5199b0
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 15:29:44 2007 -0500
+Date:   Mon Nov 5 15:29:44 2007 -0500
 
     Add FcGetLangs() and FcLangGetCharSet().
 
- doc/fclangset.fncs     | 16 ++++++++++++++++
+ doc/fclangset.fncs      | 16 ++++++++++++++++
  fontconfig/fontconfig.h |  6 ++++++
- src/fcint.h            |  3 ---
- src/fclang.c           | 20 ++++++++++++++++++--
+ src/fcint.h             |  3 ---
+ src/fclang.c            | 20 ++++++++++++++++++--
  4 files changed, 40 insertions(+), 5 deletions(-)
 
 commit 811995b79db16be39046dbbffcc5a7d66f88b731
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Mon Nov 5 15:29:03 2007 -0500
+Date:   Mon Nov 5 15:29:03 2007 -0500
 
     Fix trivial bugs in edit-sgml.c
 
@@ -12894,7 +17938,7 @@ Date:   Mon Nov 5 15:29:03 2007 -0500
 
 commit de1faa42d1425f80366707a730ea919c57e57b2f
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sun Nov 4 12:20:45 2007 -0800
+Date:   Sun Nov 4 12:20:45 2007 -0800
 
     Export FcConfig{G,S}etRescanInverval from .so, mark as deprecated.
 
@@ -12910,17 +17954,17 @@ Date: Sun Nov 4 12:20:45 2007 -0800
     instead of bumping the major version of the library (for removing
     APIs).
 
- configure.in           |  6 +++---
+ configure.in            |  6 +++---
  fontconfig/fontconfig.h | 13 +++++++++++++
- src/Makefile.am        |  5 +++--
- src/fccfg.c            | 16 ++++++++++++++++
- src/fcdeprecate.h      | 36 ++++++++++++++++++++++++++++++++++++
- src/fcint.h            |  1 +
+ src/Makefile.am         |  5 +++--
+ src/fccfg.c             | 16 ++++++++++++++++
+ src/fcdeprecate.h       | 36 ++++++++++++++++++++++++++++++++++++
+ src/fcint.h             |  1 +
  6 files changed, 72 insertions(+), 5 deletions(-)
 
 commit 69d3eb9cb8e58ab771170f68868748204a4793ab
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:43:48 2007 -0700
+Date:   Sat Nov 3 23:43:48 2007 -0700
 
     Ignore new generated documentation
 
@@ -12929,7 +17973,7 @@ Date:   Sat Nov 3 23:43:48 2007 -0700
 
 commit dc7b6f1d79b5508706be9242b79180727701e54f
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:42:32 2007 -0700
+Date:   Sat Nov 3 23:42:32 2007 -0700
 
     Link new function documentation into the fontconfig-devel.sgml
 
@@ -12938,7 +17982,7 @@ Date:   Sat Nov 3 23:42:32 2007 -0700
 
 commit dac27f2f1a766b042487827c726b3ccae147d282
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:41:38 2007 -0700
+Date:   Sat Nov 3 23:41:38 2007 -0700
 
     Formatting syntax mistake in doc/fclangset.fncs.
 
@@ -12949,7 +17993,7 @@ Date:   Sat Nov 3 23:41:38 2007 -0700
 
 commit 9bfb41ffefe41c90c8b16e155e04e6c6a5a2c1fd
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:23:55 2007 -0700
+Date:   Sat Nov 3 23:23:55 2007 -0700
 
     Generate fccache.sgml, fcdircache.sgml and fclangset.sgml.
 
@@ -12960,7 +18004,7 @@ Date:   Sat Nov 3 23:23:55 2007 -0700
 
 commit bfdc0047c670b0ac38bf050bbb81e0ef7299aa1f
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:23:09 2007 -0700
+Date:   Sat Nov 3 23:23:09 2007 -0700
 
     Fix formatting syntax in doc/fccache.fncs
 
@@ -12969,21 +18013,21 @@ Date: Sat Nov 3 23:23:09 2007 -0700
 
 commit f2772d6b45bcfc27618968fdbb08dcc50a18be22
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 23:03:11 2007 -0700
+Date:   Sat Nov 3 23:03:11 2007 -0700
 
     Replace incorrect documentation uses of 'char' with 'FcChar8'
     (bug 13002).
 
- doc/fcconfig.fncs        | 10 +++++-----
- doc/fcfile.fncs          |  6 +++---
- doc/fcfreetype.fncs      |  4 ++--
- doc/fcpattern.fncs       |  6 +++---
+ doc/fcconfig.fncs         | 10 +++++-----
+ doc/fcfile.fncs           |  6 +++---
+ doc/fcfreetype.fncs       |  4 ++--
+ doc/fcpattern.fncs        |  6 +++---
  doc/fontconfig-devel.sgml |  2 +-
  5 files changed, 14 insertions(+), 14 deletions(-)
 
 commit b4a3e834126a3cac7fbf2212087825f886be1f1d
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:53:12 2007 -0700
+Date:   Sat Nov 3 22:53:12 2007 -0700
 
     Remove references to FcConfigParse and FcConfigLoad.
 
@@ -12994,7 +18038,7 @@ Date:   Sat Nov 3 22:53:12 2007 -0700
 
 commit fc141b492bab23d58d248fc3b6d34bcb9c5faa99
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:45:31 2007 -0700
+Date:   Sat Nov 3 22:45:31 2007 -0700
 
     Have FcConfigSetCurrent accept the current configuration and simply
     return
@@ -13005,7 +18049,7 @@ Date:   Sat Nov 3 22:45:31 2007 -0700
 
 commit 7c6939793b1691b4b950a856cdcd31f1e020b14a
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:39:54 2007 -0700
+Date:   Sat Nov 3 22:39:54 2007 -0700
 
     Update documentation for stale FcConfigGetConfig function.
 
@@ -13016,7 +18060,7 @@ Date:   Sat Nov 3 22:39:54 2007 -0700
 
 commit 026fe895e487d0a9607a8506ab8be2ff6022ea19
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:31:16 2007 -0700
+Date:   Sat Nov 3 22:31:16 2007 -0700
 
     Update documentation for FcStrCopyFilename (bug 12964).
 
@@ -13031,32 +18075,32 @@ Date: Sat Nov 3 22:31:16 2007 -0700
 
 commit a190678e3c4497870679808dde418191407be91d
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:23:28 2007 -0700
+Date:   Sat Nov 3 22:23:28 2007 -0700
 
     Document previously undocumented functions. (bug 12963)
 
- doc/Makefile.am          |   3 ++
- doc/check-missing-doc    |   4 +-
- doc/fccache.fncs         |  68 +++++++++++++++++++++++++
- doc/fccharset.fncs       |  24 +++++++++
- doc/fcconfig.fncs        |  31 ++++++++++++
- doc/fcdircache.fncs      |  88 ++++++++++++++++++++++++++++++++
- doc/fcfile.fncs          |  29 ++++++-----
- doc/fcfontset.fncs       |  83 +++++++++++++++++++++++++++++++
- doc/fcfreetype.fncs      |  22 ++++++++
- doc/fclangset.fncs       | 124
+ doc/Makefile.am           |   3 ++
+ doc/check-missing-doc     |   4 +-
+ doc/fccache.fncs          |  68 +++++++++++++++++++++++++
+ doc/fccharset.fncs        |  24 +++++++++
+ doc/fcconfig.fncs         |  31 ++++++++++++
+ doc/fcdircache.fncs       |  88 ++++++++++++++++++++++++++++++++
+ doc/fcfile.fncs           |  29 ++++++-----
+ doc/fcfontset.fncs        |  83 +++++++++++++++++++++++++++++++
+ doc/fcfreetype.fncs       |  22 ++++++++
+ doc/fclangset.fncs        | 124
  ++++++++++++++++++++++++++++++++++++++++++++++
- doc/fcmatrix.fncs        |   2 +
- doc/fcpattern.fncs       |  52 ++++++++++++++++++-
- doc/fcstring.fncs        |  80 ++++++++++++++++++++++++------
- doc/fcstrset.fncs        |  11 ++++
- doc/fcvalue.fncs         |  21 ++++++++
+ doc/fcmatrix.fncs         |   2 +
+ doc/fcpattern.fncs        |  52 ++++++++++++++++++-
+ doc/fcstring.fncs         |  80 ++++++++++++++++++++++++------
+ doc/fcstrset.fncs         |  11 ++++
+ doc/fcvalue.fncs          |  21 ++++++++
  doc/fontconfig-devel.sgml |  26 +++++++++-
  16 files changed, 638 insertions(+), 30 deletions(-)
 
 commit 9a54f8a1945e614e07446412a2df534fbc1f77cb
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 22:01:33 2007 -0700
+Date:   Sat Nov 3 22:01:33 2007 -0700
 
     Verify documentation covers exposed symbols.
 
@@ -13071,7 +18115,7 @@ Date:   Sat Nov 3 22:01:33 2007 -0700
 
 commit c833409f6b68c191ac354cd2fdeb183f73a65c4c
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 21:58:34 2007 -0700
+Date:   Sat Nov 3 21:58:34 2007 -0700
 
     Use FcLangDifferentTerritory instead of FcLangDifferentCountry.
 
@@ -13080,7 +18124,7 @@ Date:   Sat Nov 3 21:58:34 2007 -0700
 
 commit 9b84ecff92b8dccf6559a858e35762c0f664429a
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 21:57:51 2007 -0700
+Date:   Sat Nov 3 21:57:51 2007 -0700
 
     Don't check cache file time stamps when cleaning cache dir.
 
@@ -13093,7 +18137,7 @@ Date:   Sat Nov 3 21:57:51 2007 -0700
 
 commit 1d93c1752f03b833603ea31c2cfbd16868c44922
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 21:56:36 2007 -0700
+Date:   Sat Nov 3 21:56:36 2007 -0700
 
     Typo error in function name: Inverval -> interval
 
@@ -13102,7 +18146,7 @@ Date:   Sat Nov 3 21:56:36 2007 -0700
 
 commit b868a1447341ebe9962007069ec8658550e62483
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 21:55:39 2007 -0700
+Date:   Sat Nov 3 21:55:39 2007 -0700
 
     Track line numbers in sgml edit tool input.
 
@@ -13116,7 +18160,7 @@ Date:   Sat Nov 3 21:55:39 2007 -0700
 
 commit 088b582a26bce1ab3ec081a80fd6a6fe43223da5
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 21:54:49 2007 -0700
+Date:   Sat Nov 3 21:54:49 2007 -0700
 
     Clean up exported names in fontconfig.h.
 
@@ -13129,7 +18173,7 @@ Date:   Sat Nov 3 21:54:49 2007 -0700
 
 commit e37d10fa74217a6102003882d49ac323f28db678
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 14:16:29 2007 -0700
+Date:   Sat Nov 3 14:16:29 2007 -0700
 
     Make file_stat argument to FcDirCacheLoadFile optional.
 
@@ -13141,7 +18185,7 @@ Date:   Sat Nov 3 14:16:29 2007 -0700
 
 commit 2ddce88cde79d8bf8959d614af883999d5c66a85
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 13:44:59 2007 -0700
+Date:   Sat Nov 3 13:44:59 2007 -0700
 
     Document skipping of fonts from FcFileScan/FcDirScan.
 
@@ -13153,7 +18197,7 @@ Date:   Sat Nov 3 13:44:59 2007 -0700
 
 commit 5d82c4c85d201011e60adcf887d15341ecdd5729
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 13:26:16 2007 -0700
+Date:   Sat Nov 3 13:26:16 2007 -0700
 
     Correct documentation for FcConfigUptoDate (bug 12948).
 
@@ -13168,7 +18212,7 @@ Date:   Sat Nov 3 13:26:16 2007 -0700
 
 commit b607922909acfc7ae96de688ed34efd19cd038ac
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 13:09:01 2007 -0700
+Date:   Sat Nov 3 13:09:01 2007 -0700
 
     Remove fcprivate.h, move the remaining macros to fcint.h.
 
@@ -13182,13 +18226,13 @@ Date: Sat Nov 3 13:09:01 2007 -0700
  fontconfig/Makefile.am |   3 +-
  fontconfig/fcprivate.h | 123
  -------------------------------------------------
- src/Makefile.am       |   3 +-
- src/fcint.h           |  95 +++++++++++++++++++++++++++++++++++++-
+ src/Makefile.am        |   3 +-
+ src/fcint.h            |  95 +++++++++++++++++++++++++++++++++++++-
  4 files changed, 96 insertions(+), 128 deletions(-)
 
 commit 910db318ae67693f7bc17f0bdc61caaf555365ae
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Sat Nov 3 13:05:25 2007 -0700
+Date:   Sat Nov 3 13:05:25 2007 -0700
 
     Correct documentation for FcAtomicLock (Bug 12947).
 
@@ -13199,7 +18243,7 @@ Date:   Sat Nov 3 13:05:25 2007 -0700
 
 commit d0e2a0f3a37ace2d5de6f18e7871a8efaf6580c2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Fri Oct 26 02:02:19 2007 -0400
+Date:   Fri Oct 26 02:02:19 2007 -0400
 
     Port fonts-persian.conf to new alias syntax with binding="same"
 
@@ -13211,21 +18255,21 @@ Date: Fri Oct 26 02:02:19 2007 -0400
 
 commit 681bb379de1847cf288ba27cf29243c8395cff17
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 22:30:49 2007 -0700
+Date:   Thu Oct 25 22:30:49 2007 -0700
 
     Respect "binding" attribute in <alias> entries.
 
     This makes creating "same" aliases for renamed font families far
     easier.
 
- fonts.dtd   | 2 ++
+ fonts.dtd   |  2 ++
  src/fcxml.c | 58
  ++++++++++++++++++++++++++++++++++++----------------------
  2 files changed, 38 insertions(+), 22 deletions(-)
 
 commit 0602c605af04ea73af700b223ec4ac1dfd5a36f1
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:  Thu Oct 25 21:35:45 2007 -0700
+Date:   Thu Oct 25 21:35:45 2007 -0700
 
     Make fc-match --sort call FcFontRenderPrepare.
 
@@ -13236,7 +18280,7 @@ Date:   Thu Oct 25 21:35:45 2007 -0700
 
 commit ad27687f725faf7df83b161c77e99bc7bedf5b3d
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 21:23:36 2007 -0700
+Date:   Thu Oct 25 21:23:36 2007 -0700
 
     Also check configDirs mtimes in FcConfigUptoDate
 
@@ -13249,29 +18293,29 @@ Date: Thu Oct 25 21:23:36 2007 -0700
 
 commit 89d6119c0283969cb28dc6dfc8eac4cc1b52bf6a
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 15:19:14 2007 -0700
+Date:   Thu Oct 25 15:19:14 2007 -0700
 
     A few fixups for make distcheck
 
- Makefile.am    | 2 +-
+ Makefile.am     | 2 +-
  doc/Makefile.am | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit e66c65fd41928babb3ba2ae2dc58f13d25e57661
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 15:07:54 2007 -0700
+Date:   Thu Oct 25 15:07:54 2007 -0700
 
     Set version numbers to 2.4.91 (2.5 RC1)
 
- README                         | 59
+ README                  | 59
  +++++++++++++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 59 insertions(+), 4 deletions(-)
 
 commit 7a1a7c0c15793e77cb162dd3393971332896460e
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 14:36:24 2007 -0700
+Date:   Thu Oct 25 14:36:24 2007 -0700
 
     Build fix for Solaris 10 with GCC.
 
@@ -13283,18 +18327,18 @@ Date: Thu Oct 25 14:36:24 2007 -0700
 
 commit fc990b2e86008967f499fe0df88de8e074a3670e
 Author: Behdad Esfahbod <freedesktop@behdad.org>
-Date:  Thu Oct 25 14:20:06 2007 -0700
+Date:   Thu Oct 25 14:20:06 2007 -0700
 
     Update CaseFolding.txt to Unicode 5.1.0
 
  fc-case/CaseFolding.txt | 184
  ++++++++++++++++++++++++++++++++++++++++++++++--
- src/fcstr.c            |   2 +-
+ src/fcstr.c             |   2 +-
  2 files changed, 178 insertions(+), 8 deletions(-)
 
 commit 4ee9ca67867ec9517c90d6947bb88d3f25707746
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 20:25:21 2006 -0700
+Date:   Fri Sep 1 20:25:21 2006 -0700
 
     Match 'ultra' on word boundaries to detect ultra bold fonts. (bug
     2511)
@@ -13302,13 +18346,13 @@ Date: Fri Sep 1 20:25:21 2006 -0700
     Added FcStrContainsWord to detect strings on word boundaries.
 
  src/fcfreetype.c | 15 +++++++++++++--
- src/fcint.h     |  3 +++
- src/fcstr.c     | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
+ src/fcint.h      |  3 +++
+ src/fcstr.c      | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
  3 files changed, 65 insertions(+), 3 deletions(-)
 
 commit 349182784fdd0acf5d1262d8876c967f69dc30aa
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:51:38 2007 -0700
+Date:   Thu Oct 25 01:51:38 2007 -0700
 
     fontconfig needs configure option to use gnu iconv (bug 4083).
 
@@ -13321,7 +18365,7 @@ Date:   Thu Oct 25 01:51:38 2007 -0700
 
 commit 7f46cdbb87a4a2113effb45c6e67b00a86363234
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:35:32 2007 -0700
+Date:   Thu Oct 25 01:35:32 2007 -0700
 
     Ensure weight/slant values present even when style is supplied
     (bug 9313).
@@ -13336,7 +18380,7 @@ Date:   Thu Oct 25 01:35:32 2007 -0700
 
 commit 43d0454597dfb5375b1268edb79172779cc51113
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:26:09 2007 -0700
+Date:   Thu Oct 25 01:26:09 2007 -0700
 
     Distribute man source files for command line programs (bug 9678).
 
@@ -13352,13 +18396,13 @@ Date: Thu Oct 25 01:26:09 2007 -0700
 
 commit cf3e888b71a22e5c5875b96bf29557746044bd2b
 Author: Dwayne Bailey <dwayne@translate.org.za>
-Date:  Thu Oct 25 01:16:06 2007 -0700
+Date:   Thu Oct 25 01:16:06 2007 -0700
 
     Add/fix *.orth files for South African languages
 
     This adds the missing orth files for Ndebele (South) (nr), Northern
     Sotho
-    (nso), Swati (ss) and Southern Sotho (st). It also fixes the Tswana
+    (nso), Swati (ss) and Southern Sotho (st).  It also fixes the Tswana
     (tn)
     orth file.
 
@@ -13373,7 +18417,7 @@ Date:   Thu Oct 25 01:16:06 2007 -0700
 
 commit 28a4ea7f714956d34f7ac65354577b87bec5620d
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:09:11 2007 -0700
+Date:   Thu Oct 25 01:09:11 2007 -0700
 
     Fix parallel build in fontconfig/docs (bug 10481).
 
@@ -13382,7 +18426,7 @@ Date:   Thu Oct 25 01:09:11 2007 -0700
 
 commit 79641a3b0c2b4a0c2e1a315028f0e54a9d846003
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:03:40 2007 -0700
+Date:   Thu Oct 25 01:03:40 2007 -0700
 
     Handle UltraBlack weight.
 
@@ -13391,12 +18435,12 @@ Date: Thu Oct 25 01:03:40 2007 -0700
     encoding it as fontconfig weight 215.
 
  fontconfig/fontconfig.h | 2 ++
- src/fcfreetype.c       | 7 ++++++-
+ src/fcfreetype.c        | 7 ++++++-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit d02f6a70f1cb4cdad882ffe429918a119641ddbb
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 01:02:58 2007 -0700
+Date:   Thu Oct 25 01:02:58 2007 -0700
 
     Oops. Left debugging printf in previous commit.
 
@@ -13405,7 +18449,7 @@ Date:   Thu Oct 25 01:02:58 2007 -0700
 
 commit 61139cf638becf023a9d5e01c90adc5aa19f83c5
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 00:49:19 2007 -0700
+Date:   Thu Oct 25 00:49:19 2007 -0700
 
     Spelling errors in documentation. (bug 10879).
 
@@ -13417,7 +18461,7 @@ Date:   Thu Oct 25 00:49:19 2007 -0700
 
 commit feecc86cea6bd1cb588f68e06b85d85727289989
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 00:46:41 2007 -0700
+Date:   Thu Oct 25 00:46:41 2007 -0700
 
     There is no U+1257 (bug 10899).
 
@@ -13429,7 +18473,7 @@ Date:   Thu Oct 25 00:46:41 2007 -0700
 
 commit 4657944d0c39a640b2e30dfbd95f13d79a99460b
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 00:41:28 2007 -0700
+Date:   Thu Oct 25 00:41:28 2007 -0700
 
     FcInit should return FcFalse when FcInitLoadConfigAndFonts fails. (bug
     10976)
@@ -13441,7 +18485,7 @@ Date:   Thu Oct 25 00:41:28 2007 -0700
 
 commit 28baf727367513ad06ddb1c53daff062e8f39e8c
 Author: Tilman Sauerbeck <tilman@code-monkey.de>
-Date:  Thu Oct 25 00:38:44 2007 -0700
+Date:   Thu Oct 25 00:38:44 2007 -0700
 
     Store FcVendorFoundries in read-only memory.
 
@@ -13453,7 +18497,7 @@ Date:   Thu Oct 25 00:38:44 2007 -0700
 
 commit 481f6c23079b6dbf5239478f2bb22ee4c72404b4
 Author: Tilman Sauerbeck <tilman@code-monkey.de>
-Date:  Thu Oct 25 00:36:37 2007 -0700
+Date:   Thu Oct 25 00:36:37 2007 -0700
 
     Store FcNoticeFoundries in read-only memory.
 
@@ -13465,7 +18509,7 @@ Date:   Thu Oct 25 00:36:37 2007 -0700
 
 commit a72ef35ce68efa3687dee84d49dc40a5ccd22917
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 25 00:22:04 2007 -0700
+Date:   Thu Oct 25 00:22:04 2007 -0700
 
     Replace makealias pattern with something supported by POSIX grep
     (bug 11083)
@@ -13480,7 +18524,7 @@ Date:   Thu Oct 25 00:22:04 2007 -0700
 
 commit 369b6b5bfbab57bbc7fb6482f6fd9c88e5057e5a
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Wed Oct 24 21:59:33 2007 -0700
+Date:   Wed Oct 24 21:59:33 2007 -0700
 
     Add BRAILLE PATTERN BLANK to list of blank glyphs.
 
@@ -13491,7 +18535,7 @@ Date:   Wed Oct 24 21:59:33 2007 -0700
 
 commit 007cae508c831561c7a4f06092858ea7bf517e2e
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Wed Oct 24 21:52:56 2007 -0700
+Date:   Wed Oct 24 21:52:56 2007 -0700
 
     Move <cachedir> elements to the end of fonts.conf.
 
@@ -13504,7 +18548,7 @@ Date:   Wed Oct 24 21:52:56 2007 -0700
 
 commit d50cfeb805f7dec304c1d51d7a7c1c35f55d2e68
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Wed Oct 24 21:47:40 2007 -0700
+Date:   Wed Oct 24 21:47:40 2007 -0700
 
     Leave generated headers out of distribution (bug 12734).
 
@@ -13515,15 +18559,15 @@ Date: Wed Oct 24 21:47:40 2007 -0700
     this generates the wrong result (fcarch.h). Leaving them out of the
     distribution forces them to be built.
 
- fc-arch/Makefile.am     | 4 +---
- fc-case/Makefile.am     | 4 +---
+ fc-arch/Makefile.am      | 4 +---
+ fc-case/Makefile.am      | 4 +---
  fc-glyphname/Makefile.am | 4 +---
- fc-lang/Makefile.am     | 4 +---
+ fc-lang/Makefile.am      | 4 +---
  4 files changed, 4 insertions(+), 12 deletions(-)
 
 commit 1bd0b5ba7365fc7b4ef39e46efc66a6f25c052c5
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 09:48:31 2007 -0700
+Date:   Thu Oct 18 09:48:31 2007 -0700
 
     Eliminate relocations from FcCodePageRange structure (bug 10982).
 
@@ -13535,7 +18579,7 @@ Date:   Thu Oct 18 09:48:31 2007 -0700
 
 commit 96925b99c0551c4ed6bf7099473d0d36964f52cd
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 09:43:22 2007 -0700
+Date:   Thu Oct 18 09:43:22 2007 -0700
 
     Eliminate relocations for glyph name table.
 
@@ -13545,12 +18589,12 @@ Date: Thu Oct 18 09:43:22 2007 -0700
     table indices, shrinking table size and elimninating relocations.
 
  fc-glyphname/fc-glyphname.c | 28 ++++++++++++++++++++--------
- src/fcfreetype.c           | 16 ++++++++--------
+ src/fcfreetype.c            | 16 ++++++++--------
  2 files changed, 28 insertions(+), 16 deletions(-)
 
 commit bc5e8adb4d05d1d03007951f46aaacc63c3b2197
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 09:41:00 2007 -0700
+Date:   Thu Oct 18 09:41:00 2007 -0700
 
     Must not insert cache into hash table before completely validating.
 
@@ -13566,7 +18610,7 @@ Date:   Thu Oct 18 09:41:00 2007 -0700
 
 commit e85789a99770dbd1a4abe9da3eadb355c19f5216
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 08:58:14 2007 -0700
+Date:   Thu Oct 18 08:58:14 2007 -0700
 
     Place language name in constant array instead of pointer.
 
@@ -13576,12 +18620,12 @@ Date: Thu Oct 18 08:58:14 2007 -0700
     relocations.
 
  fc-lang/fc-lang.c | 2 +-
- src/fclang.c     | 2 +-
+ src/fclang.c      | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 26437d4924b0f53f03915e5f3616992eb1fb72e7
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 08:56:42 2007 -0700
+Date:   Thu Oct 18 08:56:42 2007 -0700
 
     FcConfigParseAndLoad doc was missing the last param.
 
@@ -13592,24 +18636,24 @@ Date: Thu Oct 18 08:56:42 2007 -0700
 
 commit 07e646cc8422bda778ecf1c084129556a39a0f2a
 Author: Mike FABIAN <mfabian@suse.de>
-Date:  Thu Oct 18 05:44:28 2007 -0700
+Date:   Thu Oct 18 05:44:28 2007 -0700
 
     Avoid crashes if config files contain junk.
 
     If ~/.fonts.conf contains:
 
       <edit mode="assign_replace" name="spacing">
-        <int>mono</int>
-          </edit>
+         <int>mono</int>
+           </edit>
 
     fontconfig crashes:
 
-       mfabian@magellan:~$ fc-match sans
-           Fontconfig error: "~/.fonts.conf", line 46: "mono": not
-           a valid
-       integer
-           セグメンテーション違反です (core dumped)
-               mfabian@magellan:~$
+        mfabian@magellan:~$ fc-match sans
+            Fontconfig error: "~/.fonts.conf", line 46: "mono": not
+            a valid
+            integer
+                セグメンテーション違反です (core dumped)
+                    mfabian@magellan:~$
 
     Of course the above is nonsense, “mono” is no valid integer
     indeed.
@@ -13629,7 +18673,7 @@ Date:   Thu Oct 18 05:44:28 2007 -0700
 
 commit fa9a7448d83da498b3494fd0ff7d756569f94425
 Author: Hideki Yamane <henrich@iijmio-mail.jp>
-Date:  Thu Oct 18 05:17:36 2007 -0700
+Date:   Thu Oct 18 05:17:36 2007 -0700
 
     Handle Japanese fonts better. (debian bug #435971)
 
@@ -13640,7 +18684,7 @@ Date:   Thu Oct 18 05:17:36 2007 -0700
 
 commit 2a3e3c442de4c675e28e754dea0fe2f7f0686ade
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 05:05:59 2007 -0700
+Date:   Thu Oct 18 05:05:59 2007 -0700
 
     Have fc-cache remove invalid cache files from cache directories.
 
@@ -13656,7 +18700,7 @@ Date:   Thu Oct 18 05:05:59 2007 -0700
 
 commit 238489030a64fa883f8f9fc3d73247b7f7257899
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 05:04:39 2007 -0700
+Date:   Thu Oct 18 05:04:39 2007 -0700
 
     Don't use X_OK bit when checking for writable directories (bug 12438)
 
@@ -13669,12 +18713,12 @@ Date: Thu Oct 18 05:04:39 2007 -0700
     sensible access control.
 
  fc-cache/fc-cache.c | 2 +-
- src/fccache.c      | 4 ++--
+ src/fccache.c       | 4 ++--
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 commit 2b0d3d8af5a83604972e4e0fe80802e448d6dd11
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 05:01:41 2007 -0700
+Date:   Thu Oct 18 05:01:41 2007 -0700
 
     Verbose message about cleaning directories was imprecise
 
@@ -13687,7 +18731,7 @@ Date:   Thu Oct 18 05:01:41 2007 -0700
 
 commit 50124d1e484b84796abb7d8a6c1995edaff23e80
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 04:58:31 2007 -0700
+Date:   Thu Oct 18 04:58:31 2007 -0700
 
     Improve verbose messages from fc-cache.
 
@@ -13702,7 +18746,7 @@ Date:   Thu Oct 18 04:58:31 2007 -0700
 
 commit e12f718f65fc874e9170761f670930124815663e
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 04:54:51 2007 -0700
+Date:   Thu Oct 18 04:54:51 2007 -0700
 
     Remove unneeded call to access(2) in fc-cache.
 
@@ -13718,7 +18762,7 @@ Date:   Thu Oct 18 04:54:51 2007 -0700
 
 commit f7da903d370dcf662a301930b003485f25db618f
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 04:31:33 2007 -0700
+Date:   Thu Oct 18 04:31:33 2007 -0700
 
     Make FC_FULLNAME include all fullname entries, elide nothing. [bug
     12827]
@@ -13735,7 +18779,7 @@ Date:   Thu Oct 18 04:31:33 2007 -0700
 
 commit 144ca878311af885db820a35db31563ba87ee6ad
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 04:29:13 2007 -0700
+Date:   Thu Oct 18 04:29:13 2007 -0700
 
     Comment about mmaping cache files was misleading.
 
@@ -13744,7 +18788,7 @@ Date:   Thu Oct 18 04:29:13 2007 -0700
 
 commit db6f19f13b1719617c54a1658b8faa31da56e1d4
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 04:13:51 2007 -0700
+Date:   Thu Oct 18 04:13:51 2007 -0700
 
     Store font directory mtime in cache file.
 
@@ -13759,15 +18803,15 @@ Date: Thu Oct 18 04:13:51 2007 -0700
     new programs will need new cache files.
 
  fc-arch/fcarch.tmpl.h | 14 +++++------
- src/fccache.c        | 64
+ src/fccache.c         | 64
  +++++++++++++++++++++++++++++++++------------------
- src/fcdir.c          |  8 ++++++-
- src/fcint.h          |  5 ++--
+ src/fcdir.c           |  8 ++++++-
+ src/fcint.h           |  5 ++--
  4 files changed, 58 insertions(+), 33 deletions(-)
 
 commit 00268a50e8b99e80ff25ee2a77a925398f89693f
 Author: Keith Packard <keithp@koto.keithp.com>
-Date:  Thu Oct 18 03:52:29 2007 -0700
+Date:   Thu Oct 18 03:52:29 2007 -0700
 
     Fix ChangeLog generation to avoid circular make dependency
 
@@ -13776,7 +18820,7 @@ Date:   Thu Oct 18 03:52:29 2007 -0700
 
 commit 3ae9258f9e825ed576dc315ec79009188bb422e2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 5 12:31:03 2007 -0700
+Date:   Sun Aug 5 12:31:03 2007 -0700
 
     Free temporary string in FcDirCacheUnlink (Bug #11758)
 
@@ -13795,7 +18839,7 @@ Date:   Sun Aug 5 12:31:03 2007 -0700
 
 commit c80a08d6bf08a27ede95035f3f02cd5abfa2cafd
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Mar 12 10:32:23 2007 -0700
+Date:   Mon Mar 12 10:32:23 2007 -0700
 
     Work around FreeType bug when glyph name buffer is too small.
 
@@ -13810,7 +18854,7 @@ Date:   Mon Mar 12 10:32:23 2007 -0700
 
 commit fa741cd4fffbbaa5d4ba9a15f53550ac7817cc92
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Mar 12 10:30:51 2007 -0700
+Date:   Mon Mar 12 10:30:51 2007 -0700
 
     rehash increment could be zero, causing rehash infinite loop.
 
@@ -13821,7 +18865,7 @@ Date:   Mon Mar 12 10:30:51 2007 -0700
 
 commit 9b74b78fe87f75f7026bfb23ab43ef347e109ca6
 Author: Stephan Kulow <coolo@novell.com>
-Date:  Mon Mar 12 10:21:35 2007 -0700
+Date:   Mon Mar 12 10:21:35 2007 -0700
 
     Make FcPatternDuplicate copy the binding instead of always using
     Strong.
@@ -13837,19 +18881,19 @@ Date: Mon Mar 12 10:21:35 2007 -0700
 
 commit 2373f904265a05761039cfc5fe305bf588e831c5
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 16:09:47 2006 -0800
+Date:   Sat Dec 2 16:09:47 2006 -0800
 
     Update for version 2.4.2
 
- INSTALL                |  2 +-
- README                         | 36 ++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ INSTALL                 |  2 +-
+ README                  | 36 ++++++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 37 insertions(+), 5 deletions(-)
 
 commit e3b65ee06808cda296215b88111a259a200cc37c
 Author: Peter Breitenlohner <peb@mppmu.mpg.de>
-Date:  Sat Dec 2 15:09:57 2006 -0800
+Date:   Sat Dec 2 15:09:57 2006 -0800
 
     Fix fc-cat documentation (bug 8935).
 
@@ -13866,7 +18910,7 @@ Date:   Sat Dec 2 15:09:57 2006 -0800
 
 commit 61895ed16c0c06e4d6b2abeb8ff292d53b4ea499
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 15:06:13 2006 -0800
+Date:   Sat Dec 2 15:06:13 2006 -0800
 
     Add space between type and formal in devel man pages (bug 8935)
 
@@ -13890,7 +18934,7 @@ Date:   Sat Dec 2 15:06:13 2006 -0800
 
 commit b1aa20098f641a16d02e70a161450e6b85afe410
 Author: Peter Breitenlohner <peb@mppmu.mpg.de>
-Date:  Sat Dec 2 14:28:03 2006 -0800
+Date:   Sat Dec 2 14:28:03 2006 -0800
 
     Use <literal> instead of <sgmltag> when documenting fonts.conf. Bug
     8935.
@@ -13901,20 +18945,20 @@ Date: Sat Dec 2 14:28:03 2006 -0800
 
 commit 2cae0512cdf3544ff78b04f6c05a4cb585e50bb8
 Author: Peter Breitenlohner <peb@mppmu.mpg.de>
-Date:  Sat Dec 2 14:18:11 2006 -0800
+Date:   Sat Dec 2 14:18:11 2006 -0800
 
     A VPATH build of fontconfig-2.4.1 fails for various reasons. Bug 8933.
 
     VPATH builds without doctools breaks as it cannot find the distributed
     pre-formatted documentation.
 
- configure.in   |  2 +-
+ configure.in    |  2 +-
  doc/Makefile.am | 14 +++++++++-----
  2 files changed, 10 insertions(+), 6 deletions(-)
 
 commit 0f963b0d3ec417a39f6aa2ba22ba56c2a79d05aa
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 13:57:45 2006 -0800
+Date:   Sat Dec 2 13:57:45 2006 -0800
 
     Segfault scanning non-font files. Disallow scan edit of user
     vars. (#8767)
@@ -13931,7 +18975,7 @@ Date:   Sat Dec 2 13:57:45 2006 -0800
 
 commit c9c6875014661d4326100bae0464279d76bd657f
 Author: Kean Johnston <kean@armory.com>
-Date:  Sat Dec 2 13:36:56 2006 -0800
+Date:   Sat Dec 2 13:36:56 2006 -0800
 
     Don't use varargs CPP macros in fccache.c. (bug 8733)
 
@@ -13945,23 +18989,23 @@ Date: Sat Dec 2 13:36:56 2006 -0800
 
 commit 72ffe6536a6825a32095c8185aff836a12326ac5
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 13:22:27 2006 -0800
+Date:   Sat Dec 2 13:22:27 2006 -0800
 
     Add FcFreeTypeQueryFace external API. Bug #7311.
 
     Expose ability to build an FcPattern directly from an FT_Face
     object.
 
- configure.in           |  4 ++--
- doc/fcfreetype.fncs    | 17 ++++++++++++++++-
+ configure.in            |  4 ++--
+ doc/fcfreetype.fncs     | 17 ++++++++++++++++-
  fontconfig/fcfreetype.h |  6 ++++++
- src/fcfreetype.c       | 50
+ src/fcfreetype.c        | 50
  +++++++++++++++++++++++++++----------------------
  4 files changed, 52 insertions(+), 25 deletions(-)
 
 commit 5e234d9e764d8c52d93b918a5c92b7956c95882b
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 13:14:23 2006 -0800
+Date:   Sat Dec 2 13:14:23 2006 -0800
 
     Fix grep pattern in makealias to work on non-Gnu grep (bug 8368).
 
@@ -13975,7 +19019,7 @@ Date:   Sat Dec 2 13:14:23 2006 -0800
 
 commit 2b77216ee21de95ec352672aa025195a83925b32
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 13:04:05 2006 -0800
+Date:   Sat Dec 2 13:04:05 2006 -0800
 
     Avoid writing uninitialized structure pad bytes to cache files.
 
@@ -13990,7 +19034,7 @@ Date:   Sat Dec 2 13:04:05 2006 -0800
 
 commit 64d7e303df441f274ee194a401dcd14dfb58af7e
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 12:14:49 2006 -0800
+Date:   Sat Dec 2 12:14:49 2006 -0800
 
     Warn (and recover) from config file without <cachedir> elements.
 
@@ -14011,7 +19055,7 @@ Date:   Sat Dec 2 12:14:49 2006 -0800
 
 commit 253ec7609c13b46c717c801206ebb1a6c7f06e27
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Dec 2 11:47:07 2006 -0800
+Date:   Sat Dec 2 11:47:07 2006 -0800
 
     Use explicit platform/nameid order when scanning ttf files.
 
@@ -14022,19 +19066,19 @@ Date: Sat Dec 2 11:47:07 2006 -0800
 
     The platform order is:
 
-       microsoft, apple unicode, macintosh, (other)
+            microsoft, apple unicode, macintosh, (other)
 
     The family nameid order is:
 
-       preferred family, font family
+            preferred family, font family
 
     The fullname nameid order is:
 
-       mac full name, full name
+            mac full name, full name
 
     The style nameid order is
 
-       preferred subfamily, font subfamily
+            preferred subfamily, font subfamily
 
     This will change the names visible to users in various application
     UIs, but
@@ -14053,7 +19097,7 @@ Date:   Sat Dec 2 11:47:07 2006 -0800
 
 commit b5803016d74856eb44b05876f0d7178bfec0df47
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Nov 12 17:15:55 2006 -0800
+Date:   Sun Nov 12 17:15:55 2006 -0800
 
     FcStrCanonAbsoluteFilename should be static.
 
@@ -14062,7 +19106,7 @@ Date:   Sun Nov 12 17:15:55 2006 -0800
 
 commit bae5db78ddab473695a7efee374a75d6fe02426f
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Nov 12 17:15:24 2006 -0800
+Date:   Sun Nov 12 17:15:24 2006 -0800
 
     Add sparc64 architecture string.
 
@@ -14071,7 +19115,7 @@ Date:   Sun Nov 12 17:15:24 2006 -0800
 
 commit 0334e5a294dd6a36c94936f6c9c709e86773cf64
 Author: Mike FABIAN <mfabian@suse.de>
-Date:  Fri Oct 27 10:26:50 2006 -0700
+Date:   Fri Oct 27 10:26:50 2006 -0700
 
     Do not clean cache files for different architectures
 
@@ -14086,7 +19130,7 @@ Date:   Fri Oct 27 10:26:50 2006 -0700
 
 commit 0596d7296c94b2bb9817338b8c1a76da91673fb9
 Author: Han-Wen Nienhuys <hanwen@xs4all.nl>
-Date:  Sun Sep 17 17:03:33 2006 -0700
+Date:   Sun Sep 17 17:03:33 2006 -0700
 
     More fixes for Win32 building (bug 8311)
 
@@ -14102,7 +19146,7 @@ Date:   Sun Sep 17 17:03:33 2006 -0700
 
 commit 1de7a4cc09172bbc99912e1410f46fc16c1a05ec
 Author: Han-Wen Nienhuys <hanwen@xs4all.nl>
-Date:  Sun Sep 17 14:34:46 2006 -0700
+Date:   Sun Sep 17 14:34:46 2006 -0700
 
     FcStrCanonFileName buggy for mingw. (bug 8311)
 
@@ -14124,7 +19168,7 @@ Date:   Sun Sep 17 14:34:46 2006 -0700
 
 commit cc104e6a910427db009be36ec34125962889ecb8
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 17 14:20:18 2006 -0700
+Date:   Sun Sep 17 14:20:18 2006 -0700
 
     Detect and use available random number generator (bug 8308)
 
@@ -14136,7 +19180,7 @@ Date:   Sun Sep 17 14:20:18 2006 -0700
 
 commit 706a1b367abc4589c7eccfd7cea3af1029bc2d8c
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 17 14:09:12 2006 -0700
+Date:   Sun Sep 17 14:09:12 2006 -0700
 
     Build fontconfig.def from header files when needed.
 
@@ -14145,7 +19189,7 @@ Date:   Sun Sep 17 14:09:12 2006 -0700
     header files
     to ensure it exports the public API.
 
- configure.in         |   1 -
+ configure.in          |   1 -
  src/Makefile.am       |  18 ++-
  src/fontconfig.def.in | 303
  --------------------------------------------------
@@ -14153,7 +19197,7 @@ Date:   Sun Sep 17 14:09:12 2006 -0700
 
 commit 6262fefe54823476070053d53eb3f52fd516ebfe
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 17 13:50:31 2006 -0700
+Date:   Sun Sep 17 13:50:31 2006 -0700
 
     Remove documentation for non-existant FcConfigNormalizeFontDir.
 
@@ -14166,18 +19210,18 @@ Date: Sun Sep 17 13:50:31 2006 -0700
 
 commit b9cc1c4ed81c8caefb5b857f37fdc24e804a5ef9
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 15 10:12:15 2006 -0700
+Date:   Fri Sep 15 10:12:15 2006 -0700
 
     Update for version 2.4.1
 
- README                         | 13 +++++++++++--
- configure.in           |  2 +-
+ README                  | 13 +++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 13 insertions(+), 4 deletions(-)
 
 commit 97c3d5b692c7a45dc1d923fe04b6f2e011583d2d
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 15 00:23:40 2006 -0700
+Date:   Fri Sep 15 00:23:40 2006 -0700
 
     Reimplement FcConfigAppFontAddDir; function was lost in 2.4.0.
 
@@ -14189,13 +19233,13 @@ Date: Fri Sep 15 00:23:40 2006 -0700
 
  src/fccfg.c | 86
  ++++++++++++++++++++++++++++++-------------------------------
- src/fcdir.c | 4 +--
- src/fcint.h | 3 ++-
+ src/fcdir.c |  4 +--
+ src/fcint.h |  3 ++-
  3 files changed, 46 insertions(+), 47 deletions(-)
 
 commit b190ad9da46ff2e8a9ede0afcb59a6c59641515b
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 13 18:55:45 2006 -0700
+Date:   Wed Sep 13 18:55:45 2006 -0700
 
     Add warning flags to fc-cache build. Clean up warnings in fc-cache.
 
@@ -14211,7 +19255,7 @@ Date:   Wed Sep 13 18:55:45 2006 -0700
 
 commit 7943a75b7d6750d8a71eb8316bd3bbcb32f1cc47
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 13 18:51:11 2006 -0700
+Date:   Wed Sep 13 18:51:11 2006 -0700
 
     Add signatures for m68k and mipsel (thanks debian buildd)
 
@@ -14220,7 +19264,7 @@ Date:   Wed Sep 13 18:51:11 2006 -0700
 
 commit fb47a1f752417d45ad0eac98526cf9de893fc9ca
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 11 11:10:48 2006 -0700
+Date:   Mon Sep 11 11:10:48 2006 -0700
 
     Add ppc64 signature. Bug 8227
 
@@ -14229,7 +19273,7 @@ Date:   Mon Sep 11 11:10:48 2006 -0700
 
 commit 0fc03ffe443f4bfb1c830eb75c14ca336f2186e1
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 11 11:09:26 2006 -0700
+Date:   Mon Sep 11 11:09:26 2006 -0700
 
     Update installation notes for 2.4 base.
 
@@ -14238,19 +19282,19 @@ Date: Mon Sep 11 11:09:26 2006 -0700
 
 commit 76c443222313577236c898f7644098e7cad80c75
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 22:08:40 2006 -0700
+Date:   Sat Sep 9 22:08:40 2006 -0700
 
     Update to version 2.4.0
 
- INSTALL                |  3 +++
- README                         | 38 ++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ INSTALL                 |  3 +++
+ README                  | 38 ++++++++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  4 files changed, 42 insertions(+), 5 deletions(-)
 
 commit 6c5619a08575943f75d2341e1a4931ec5faf716b
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 21:32:14 2006 -0700
+Date:   Sat Sep 9 21:32:14 2006 -0700
 
     Split much of the configuration into separate files. Renumber files
 
@@ -14261,52 +19305,37 @@ Date: Sat Sep 9 21:32:14 2006 -0700
     README and the files have been renumbered. Config files have been
     validated against the DTD and a few minor errors fixed.
 
- conf.d/10-autohint.conf         |   9 +
- conf.d/10-no-sub-pixel.conf     |   9 +
- conf.d/10-sub-pixel-bgr.conf    |   9 +
- conf.d/10-sub-pixel-rgb.conf    |   9 +
- conf.d/10-sub-pixel-vbgr.conf   |   9 +
- conf.d/10-sub-pixel-vrgb.conf   |   9 +
- conf.d/10-unhinted.conf         |   9 +
- conf.d/10-urw-aliases.conf      |  52 ----
- conf.d/15-amt-aliases.conf      |  21 --
- conf.d/20-lohit-gujarati.conf   |  11 +
- conf.d/20-unhint-small-vera.conf |  49 ++++
- conf.d/30-amt-aliases.conf      |  21 ++
- conf.d/30-unhint-small-vera.conf |  49 ----
- conf.d/30-urw-aliases.conf      |  52 ++++
- conf.d/40-generic.conf                  |  66 +++++
- conf.d/49-sansserif.conf        |  21 ++
- conf.d/60-LohitGujarati.conf    |   5 -
- conf.d/60-delicious.conf        |  20 --
- conf.d/60-fonts-persian.conf    | 539
- ---------------------------------------
- conf.d/60-latin.conf            |  42 +++
- conf.d/65-fonts-persian.conf    | 539
- +++++++++++++++++++++++++++++++++++++++
- conf.d/65-nonlatin.conf         |  38 +++
- conf.d/69-unifont.conf                  |  24 ++
- conf.d/70-no-bitmaps.conf       |  13 +
- conf.d/70-no-sub-pixel.conf     |   9 -
- conf.d/70-sub-pixel-bgr.conf    |   9 -
- conf.d/70-sub-pixel-rgb.conf    |   9 -
- conf.d/70-sub-pixel-vbgr.conf   |   9 -
- conf.d/70-sub-pixel-vrgb.conf   |   9 -
- conf.d/70-yes-bitmaps.conf      |  13 +
- conf.d/73-autohint.conf         |   9 -
- conf.d/73-unhinted.conf         |   9 -
- conf.d/76-no-bitmaps.conf       |  13 -
- conf.d/76-yes-bitmaps.conf      |  13 -
- conf.d/80-delicious.conf        |  20 ++
- conf.d/90-synthetic.conf        |  64 +++++
- conf.d/Makefile.am              |  55 ++--
- conf.d/README                   |  46 +++-
- fonts.conf.in                   | 207 ---------------
- 39 files changed, 1113 insertions(+), 1006 deletions(-)
+ conf.d/{73-autohint.conf => 10-autohint.conf}      |   0
+ .../{70-no-sub-pixel.conf => 10-no-sub-pixel.conf} |   0
+ ...70-sub-pixel-bgr.conf => 10-sub-pixel-bgr.conf} |   0
+ ...70-sub-pixel-rgb.conf => 10-sub-pixel-rgb.conf} |   0
+ ...-sub-pixel-vbgr.conf => 10-sub-pixel-vbgr.conf} |   0
+ ...-sub-pixel-vrgb.conf => 10-sub-pixel-vrgb.conf} |   0
+ conf.d/{73-unhinted.conf => 10-unhinted.conf}      |   0
+ conf.d/20-lohit-gujarati.conf                      |  11 ++
+ ...t-small-vera.conf => 20-unhint-small-vera.conf} |   0
+ .../{15-amt-aliases.conf => 30-amt-aliases.conf}   |   0
+ .../{10-urw-aliases.conf => 30-urw-aliases.conf}   |   2 +-
+ conf.d/40-generic.conf                             |  66 +++++++
+ conf.d/49-sansserif.conf                           |  21 +++
+ conf.d/60-LohitGujarati.conf                       |   5 -
+ conf.d/60-latin.conf                               |  42 +++++
+ ...60-fonts-persian.conf => 65-fonts-persian.conf} |   0
+ conf.d/65-nonlatin.conf                            |  38 ++++
+ conf.d/69-unifont.conf                             |  24 +++
+ conf.d/{76-no-bitmaps.conf => 70-no-bitmaps.conf}  |   0
+ .../{76-yes-bitmaps.conf => 70-yes-bitmaps.conf}   |   0
+ conf.d/{60-delicious.conf => 80-delicious.conf}    |   0
+ conf.d/90-synthetic.conf                           |  64 +++++++
+ conf.d/Makefile.am                                 |  55 +++---
+ conf.d/README                                      |  46 ++++-
+ fonts.conf.in                                      | 207
+ ---------------------
+ 25 files changed, 344 insertions(+), 237 deletions(-)
 
 commit 9596dce93b751c01770da175d208d78aeaf6ae00
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 21:30:06 2006 -0700
+Date:   Sat Sep 9 21:30:06 2006 -0700
 
     Don't display tests for DESTDIR on make install.
 
@@ -14318,7 +19347,7 @@ Date:   Sat Sep 9 21:30:06 2006 -0700
 
 commit d08feb851a585b6cfe3ef1f390d60dd8886249b2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 21:29:08 2006 -0700
+Date:   Sat Sep 9 21:29:08 2006 -0700
 
     Include cachedir in fonts.dtd.
 
@@ -14329,7 +19358,7 @@ Date:   Sat Sep 9 21:29:08 2006 -0700
 
 commit 9419bb34f6eac685fcf957faf6a38a5cdfa811d9
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 21:21:01 2006 -0700
+Date:   Sat Sep 9 21:21:01 2006 -0700
 
     Fix conf.d directory sorting.
 
@@ -14340,59 +19369,37 @@ Date: Sat Sep 9 21:21:01 2006 -0700
 
 commit 248b5903b7057b3c44ea1cd3a9b0d27624eba24a
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 19:37:22 2006 -0700
+Date:   Sat Sep 9 19:37:22 2006 -0700
 
     Rename conf.avail to conf.d
 
- Makefile.am                         |   2 +-
- conf.avail/10-urw-aliases.conf       |  52 ----
- conf.avail/15-amt-aliases.conf       |  21 --
- conf.avail/20-fix-globaladvance.conf |  29 --
- conf.avail/30-unhint-small-vera.conf |  49 ----
- conf.avail/50-user.conf             |   7 -
- conf.avail/51-local.conf            |   7 -
- conf.avail/60-LohitGujarati.conf     |   5 -
- conf.avail/60-delicious.conf        |  20 --
- conf.avail/60-fonts-persian.conf     | 539
- -----------------------------------
- conf.avail/70-no-sub-pixel.conf      |   9 -
- conf.avail/70-sub-pixel-bgr.conf     |   9 -
- conf.avail/70-sub-pixel-rgb.conf     |   9 -
- conf.avail/70-sub-pixel-vbgr.conf    |   9 -
- conf.avail/70-sub-pixel-vrgb.conf    |   9 -
- conf.avail/73-autohint.conf         |   9 -
- conf.avail/73-unhinted.conf         |   9 -
- conf.avail/76-no-bitmaps.conf       |  13 -
- conf.avail/76-yes-bitmaps.conf       |  13 -
- conf.avail/Makefile.am                      |  71 -----
- conf.avail/README                   |   8 -
- conf.d/10-urw-aliases.conf          |  52 ++++
- conf.d/15-amt-aliases.conf          |  21 ++
- conf.d/20-fix-globaladvance.conf     |  29 ++
- conf.d/30-unhint-small-vera.conf     |  49 ++++
- conf.d/50-user.conf                 |   7 +
- conf.d/51-local.conf                |   7 +
- conf.d/60-LohitGujarati.conf        |   5 +
- conf.d/60-delicious.conf            |  20 ++
- conf.d/60-fonts-persian.conf        | 539
- +++++++++++++++++++++++++++++++++++
- conf.d/70-no-sub-pixel.conf         |   9 +
- conf.d/70-sub-pixel-bgr.conf        |   9 +
- conf.d/70-sub-pixel-rgb.conf        |   9 +
- conf.d/70-sub-pixel-vbgr.conf       |   9 +
- conf.d/70-sub-pixel-vrgb.conf       |   9 +
- conf.d/73-autohint.conf             |   9 +
- conf.d/73-unhinted.conf             |   9 +
- conf.d/76-no-bitmaps.conf           |  13 +
- conf.d/76-yes-bitmaps.conf          |  13 +
- conf.d/Makefile.am                  |  71 +++++
- conf.d/README                       |   8 +
- configure.in                        |   1 -
- 42 files changed, 898 insertions(+), 899 deletions(-)
+ Makefile.am                                      | 2 +-
+ {conf.avail => conf.d}/10-urw-aliases.conf       | 0
+ {conf.avail => conf.d}/15-amt-aliases.conf       | 0
+ {conf.avail => conf.d}/20-fix-globaladvance.conf | 0
+ {conf.avail => conf.d}/30-unhint-small-vera.conf | 0
+ {conf.avail => conf.d}/50-user.conf              | 0
+ {conf.avail => conf.d}/51-local.conf             | 0
+ {conf.avail => conf.d}/60-LohitGujarati.conf     | 0
+ {conf.avail => conf.d}/60-delicious.conf         | 0
+ {conf.avail => conf.d}/60-fonts-persian.conf     | 0
+ {conf.avail => conf.d}/70-no-sub-pixel.conf      | 0
+ {conf.avail => conf.d}/70-sub-pixel-bgr.conf     | 0
+ {conf.avail => conf.d}/70-sub-pixel-rgb.conf     | 0
+ {conf.avail => conf.d}/70-sub-pixel-vbgr.conf    | 0
+ {conf.avail => conf.d}/70-sub-pixel-vrgb.conf    | 0
+ {conf.avail => conf.d}/73-autohint.conf          | 0
+ {conf.avail => conf.d}/73-unhinted.conf          | 0
+ {conf.avail => conf.d}/76-no-bitmaps.conf        | 0
+ {conf.avail => conf.d}/76-yes-bitmaps.conf       | 0
+ {conf.avail => conf.d}/Makefile.am               | 0
+ {conf.avail => conf.d}/README                    | 0
+ configure.in                                     | 1 -
+ 22 files changed, 1 insertion(+), 2 deletions(-)
 
 commit 9e292c889f1138b1af2f60621d7e2bfd8c490ff7
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 16:52:21 2006 -0700
+Date:   Sat Sep 9 16:52:21 2006 -0700
 
     Add XML headers to new conf files. Move link make commands to
     conf.avail dir
@@ -14406,14 +19413,14 @@ Date: Sat Sep 9 16:52:21 2006 -0700
  conf.avail/15-amt-aliases.conf       |  5 ++++
  conf.avail/20-fix-globaladvance.conf |  5 ++++
  conf.avail/30-unhint-small-vera.conf |  5 ++++
- conf.avail/Makefile.am                      | 22 +++++++++++++++
- conf.d/Makefile.am                  | 52
+ conf.avail/Makefile.am               | 22 +++++++++++++++
+ conf.d/Makefile.am                   | 52
  ------------------------------------
  6 files changed, 42 insertions(+), 52 deletions(-)
 
 commit 49b44b277f2a8a67009a3b68b178b2f1a4c7f72a
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 16:41:58 2006 -0700
+Date:   Sat Sep 9 16:41:58 2006 -0700
 
     Insert newly created caches into reference data structure.
 
@@ -14431,13 +19438,13 @@ Date: Sat Sep 9 16:41:58 2006 -0700
 commit 766a9b2f61458202be0fbf5745ce1e02ecd95c6e
 Merge: 5d2f7a9 164e267
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 15:49:24 2006 -0700
+Date:   Sat Sep 9 15:49:24 2006 -0700
 
     Merge branch 'jhcloos'
 
 commit 5d2f7a9d9224d4df1655cd1d6fd72646734b0272
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 9 10:04:42 2006 -0700
+Date:   Sat Sep 9 10:04:42 2006 -0700
 
     Accept locale environment variables that do not contain territory.
 
@@ -14452,7 +19459,7 @@ Date:   Sat Sep 9 10:04:42 2006 -0700
 
 commit 164e267d286eccbbdde69e8935a658dced4331b4
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Sat Sep 9 01:24:08 2006 -0400
+Date:   Sat Sep 9 01:24:08 2006 -0400
 
     Make conf.avail and conf.d work
 
@@ -14463,12 +19470,12 @@ Date: Sat Sep 9 01:24:08 2006 -0400
 
  conf.d/Makefile.am | 52
  ++++++++++++++++++++++++++++++++++++++++++++++++++++
- configure.in      |  1 +
+ configure.in       |  1 +
  2 files changed, 53 insertions(+)
 
 commit f6cfbe16bfc252b46532f699b496e4a41a1a1c22
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Sep 7 15:17:10 2006 -0700
+Date:   Thu Sep 7 15:17:10 2006 -0700
 
     Attempt to fix makealias usage for build on Mac OS X.
 
@@ -14482,7 +19489,7 @@ Date:   Thu Sep 7 15:17:10 2006 -0700
 
 commit 6cff1dca81b60fcd75e19f3ed827aae98f643fd1
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Sep 7 14:37:52 2006 -0700
+Date:   Thu Sep 7 14:37:52 2006 -0700
 
     Replace gnu-specific sed command with simple grep.
 
@@ -14492,12 +19499,12 @@ Date: Thu Sep 7 14:37:52 2006 -0700
     header file that was leaving one symbol out of the process.
 
  fontconfig/fontconfig.h | 2 +-
- src/makealias          | 2 +-
+ src/makealias           | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 31e0f0321057a7612ed5a7fa890dad09e6a53ee6
 Author: David Turner <david@freetype.org>
-Date:  Thu Sep 7 14:29:35 2006 -0700
+Date:   Thu Sep 7 14:29:35 2006 -0700
 
     Replace character discovery loop with simpler, faster version.
 
@@ -14513,7 +19520,7 @@ Date:   Thu Sep 7 14:29:35 2006 -0700
 
 commit 8d779ce4b3cdac796e20ca568654c0ef1c576809
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Sep 7 14:22:16 2006 -0700
+Date:   Thu Sep 7 14:22:16 2006 -0700
 
     Reference patterns in FcCacheCopySet.
 
@@ -14526,7 +19533,7 @@ Date:   Thu Sep 7 14:22:16 2006 -0700
 
 commit 4c34c0c52a4e943c6770a6178e5012a3d6fe96d0
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Sep 7 10:37:24 2006 -0700
+Date:   Thu Sep 7 10:37:24 2006 -0700
 
     Create fc_cachedir at install time. Bug 8157.
 
@@ -14535,19 +19542,19 @@ Date: Thu Sep 7 10:37:24 2006 -0700
 
 commit 88b6bebc3d648464ad9bcb7f106694ed85a84460
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 6 23:58:14 2006 -0700
+Date:   Wed Sep 6 23:58:14 2006 -0700
 
     Update for version 2.3.97.
 
- Makefile.am            |  2 +-
- README                         | 41 +++++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ Makefile.am             |  2 +-
+ README                  | 41 +++++++++++++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 42 insertions(+), 5 deletions(-)
 
 commit c3796ac6061373bcf0276a931036987c01741215
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 6 17:45:40 2006 -0700
+Date:   Wed Sep 6 17:45:40 2006 -0700
 
     Charset hashing depended on uniqueness of leaves.
 
@@ -14561,7 +19568,7 @@ Date:   Wed Sep 6 17:45:40 2006 -0700
 
 commit 08bef687018f2391c2f2b6fc3849878c121b67dd
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 6 17:43:08 2006 -0700
+Date:   Wed Sep 6 17:43:08 2006 -0700
 
     Parallel build fix for fcalias.h and fcaliastail.h
 
@@ -14574,7 +19581,7 @@ Date:   Wed Sep 6 17:43:08 2006 -0700
 
 commit 8e0b03f55085d6fd80f6a262b496303f5a74d2ad
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Sep 6 17:14:46 2006 -0700
+Date:   Wed Sep 6 17:14:46 2006 -0700
 
     Update architecture signatures for x86-64 and ppc.
 
@@ -14586,7 +19593,7 @@ Date:   Wed Sep 6 17:14:46 2006 -0700
 
 commit 23816bf9acbd6cc5dd942daaba3cc084ea70d99d
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Tue Sep 5 02:24:01 2006 -0700
+Date:   Tue Sep 5 02:24:01 2006 -0700
 
     Eliminate .so PLT entries for local symbols. (thanks to Arjan van
     de Ven)
@@ -14601,42 +19608,42 @@ Date: Tue Sep 5 02:24:01 2006 -0700
     discovered
     through this process
 
- .gitignore              |  2 ++
- fc-arch/Makefile.am     |  9 ++++++++-
- fc-case/Makefile.am     |  9 ++++++++-
+ .gitignore               |  2 ++
+ fc-arch/Makefile.am      |  9 ++++++++-
+ fc-case/Makefile.am      |  9 ++++++++-
  fc-glyphname/Makefile.am |  9 ++++++++-
- fc-lang/Makefile.am     |  9 ++++++++-
- fc-lang/fc-lang.c       |  1 -
+ fc-lang/Makefile.am      |  9 ++++++++-
+ fc-lang/fc-lang.c        |  1 -
  fontconfig/fontconfig.h  | 10 +++++-----
- src/Makefile.am         | 15 ++++++++++++++-
- src/fcatomic.c                  |  3 +++
- src/fcblanks.c                  |  3 +++
- src/fccache.c           |  3 +++
- src/fccfg.c             |  3 +++
- src/fccharset.c         |  3 +++
- src/fcdbg.c             |  3 +++
- src/fcdefault.c         |  3 +++
- src/fcdir.c             |  3 +++
- src/fcfreetype.c        |  4 ++++
- src/fcfs.c              |  3 +++
- src/fcinit.c            |  3 +++
- src/fcint.h             |  5 ++++-
- src/fclang.c            |  3 +++
- src/fclist.c            |  3 +++
- src/fcmatch.c           |  3 +++
- src/fcmatrix.c                  |  3 +++
- src/fcname.c            |  3 +++
- src/fcpat.c             |  3 +++
- src/fcserialize.c       |  3 +++
- src/fcstr.c             |  3 +++
- src/fcxml.c             |  3 +++
- src/ftglue.c            |  3 +++
- src/makealias           | 24 ++++++++++++++++++++++++
+ src/Makefile.am          | 15 ++++++++++++++-
+ src/fcatomic.c           |  3 +++
+ src/fcblanks.c           |  3 +++
+ src/fccache.c            |  3 +++
+ src/fccfg.c              |  3 +++
+ src/fccharset.c          |  3 +++
+ src/fcdbg.c              |  3 +++
+ src/fcdefault.c          |  3 +++
+ src/fcdir.c              |  3 +++
+ src/fcfreetype.c         |  4 ++++
+ src/fcfs.c               |  3 +++
+ src/fcinit.c             |  3 +++
+ src/fcint.h              |  5 ++++-
+ src/fclang.c             |  3 +++
+ src/fclist.c             |  3 +++
+ src/fcmatch.c            |  3 +++
+ src/fcmatrix.c           |  3 +++
+ src/fcname.c             |  3 +++
+ src/fcpat.c              |  3 +++
+ src/fcserialize.c        |  3 +++
+ src/fcstr.c              |  3 +++
+ src/fcxml.c              |  3 +++
+ src/ftglue.c             |  3 +++
+ src/makealias            | 24 ++++++++++++++++++++++++
  31 files changed, 145 insertions(+), 12 deletions(-)
 
 commit 323ecd0cd3b8eeb50c4af87d57f2ea7b19f37215
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 23:19:59 2006 -0700
+Date:   Mon Sep 4 23:19:59 2006 -0700
 
     Correct reference count when sharing cache file objects.
 
@@ -14649,7 +19656,7 @@ Date:   Mon Sep 4 23:19:59 2006 -0700
 
 commit afe5a6716058e4b952a6ec1ab3f328a1c069a8c4
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 22:39:51 2006 -0700
+Date:   Mon Sep 4 22:39:51 2006 -0700
 
     Oops, fc-lang broke when I added cache referencing.
 
@@ -14660,7 +19667,7 @@ Date:   Mon Sep 4 22:39:51 2006 -0700
 
 commit 17389539a046f7231447d531ef7f3d131c1d7515
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 22:26:24 2006 -0700
+Date:   Mon Sep 4 22:26:24 2006 -0700
 
     Make cache reference counting more efficient.
 
@@ -14677,7 +19684,7 @@ Date:   Mon Sep 4 22:26:24 2006 -0700
 
 commit 9e612141df7e693ef98071f102cecb5d777ceecb
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 22:20:25 2006 -0700
+Date:   Mon Sep 4 22:20:25 2006 -0700
 
     Reference count cache objects.
 
@@ -14693,17 +19700,17 @@ Date: Mon Sep 4 22:20:25 2006 -0700
     to actually
     look for changes in the font configuration.
 
- src/fccache.c  | 255
+ src/fccache.c   | 255
  ++++++++++++++++++++++++++++++++++++++++++--------------
- src/fccfg.c    |  22 +----
+ src/fccfg.c     |  22 +----
  src/fccharset.c |   5 ++
- src/fcint.h    |  16 ++--
- src/fcpat.c    |  10 ++-
+ src/fcint.h     |  16 ++--
+ src/fcpat.c     |  10 ++-
  5 files changed, 213 insertions(+), 95 deletions(-)
 
 commit 8fe2104a1e5771ac8079a438fa21e00f946be8b3
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 13:59:58 2006 -0700
+Date:   Mon Sep 4 13:59:58 2006 -0700
 
     Leave cache files mapped permanently.
 
@@ -14726,17 +19733,17 @@ Date: Mon Sep 4 13:59:58 2006 -0700
 
 commit 469010c1bdd5cc8801405ef809540bd4b17f41c1
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:57:19 2006 -0400
+Date:   Mon Sep 4 15:57:19 2006 -0400
 
     Update Makefile.am files
 
- Makefile.am           |  2 +-
+ Makefile.am            |  2 +-
  conf.avail/Makefile.am | 34 ++++++++++++++++++++--------------
  2 files changed, 21 insertions(+), 15 deletions(-)
 
 commit c3425fa671663b11aa5288a0b52a0618c5d075ef
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:47:52 2006 -0400
+Date:   Mon Sep 4 15:47:52 2006 -0400
 
     Move some section from fonts.conf into conf.avail files
 
@@ -14749,13 +19756,13 @@ Date: Mon Sep 4 15:47:52 2006 -0400
  conf.avail/15-amt-aliases.conf       |  16 +++++
  conf.avail/20-fix-globaladvance.conf |  24 +++++++
  conf.avail/30-unhint-small-vera.conf |  44 ++++++++++++
- fonts.conf.in                       | 133
+ fonts.conf.in                        | 133
  -----------------------------------
  5 files changed, 131 insertions(+), 133 deletions(-)
 
 commit 9a9fd975a1330e21f0184cdb237cfb2a2f19c098
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 12:46:01 2006 -0700
+Date:   Mon Sep 4 12:46:01 2006 -0700
 
     Can't typecheck values for objects with no known type.
 
@@ -14768,55 +19775,38 @@ Date: Mon Sep 4 12:46:01 2006 -0700
 
 commit 60018915891bd146271b687278782fe38b4c4461
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:45:28 2006 -0400
+Date:   Mon Sep 4 15:45:28 2006 -0400
 
     Re-order old conf.d files
 
     Make sure they continue to load after ~/.fonts.conf and local.conf
 
- conf.avail/20-LohitGujarati.conf  |   5 -
- conf.avail/20-fonts-persian.conf  | 539
- --------------------------------------
- conf.avail/30-no-sub-pixel.conf   |   9 -
- conf.avail/30-sub-pixel-bgr.conf  |   9 -
- conf.avail/30-sub-pixel-rgb.conf  |   9 -
- conf.avail/30-sub-pixel-vbgr.conf |   9 -
- conf.avail/30-sub-pixel-vrgb.conf |   9 -
- conf.avail/33-autohint.conf      |   9 -
- conf.avail/33-unhinted.conf      |   9 -
- conf.avail/36-no-bitmaps.conf    |  13 -
- conf.avail/36-yes-bitmaps.conf    |  13 -
- conf.avail/60-LohitGujarati.conf  |   5 +
- conf.avail/60-fonts-persian.conf  | 539
- ++++++++++++++++++++++++++++++++++++++
- conf.avail/70-no-sub-pixel.conf   |   9 +
- conf.avail/70-sub-pixel-bgr.conf  |   9 +
- conf.avail/70-sub-pixel-rgb.conf  |   9 +
- conf.avail/70-sub-pixel-vbgr.conf |   9 +
- conf.avail/70-sub-pixel-vrgb.conf |   9 +
- conf.avail/73-autohint.conf      |   9 +
- conf.avail/73-unhinted.conf      |   9 +
- conf.avail/76-no-bitmaps.conf    |  13 +
- conf.avail/76-yes-bitmaps.conf    |  13 +
- 22 files changed, 633 insertions(+), 633 deletions(-)
+ conf.avail/{20-LohitGujarati.conf => 60-LohitGujarati.conf}   | 0
+ conf.avail/{20-fonts-persian.conf => 60-fonts-persian.conf}   | 0
+ conf.avail/{30-no-sub-pixel.conf => 70-no-sub-pixel.conf}     | 0
+ conf.avail/{30-sub-pixel-bgr.conf => 70-sub-pixel-bgr.conf}   | 0
+ conf.avail/{30-sub-pixel-rgb.conf => 70-sub-pixel-rgb.conf}   | 0
+ conf.avail/{30-sub-pixel-vbgr.conf => 70-sub-pixel-vbgr.conf} | 0
+ conf.avail/{30-sub-pixel-vrgb.conf => 70-sub-pixel-vrgb.conf} | 0
+ conf.avail/{33-autohint.conf => 73-autohint.conf}             | 0
+ conf.avail/{33-unhinted.conf => 73-unhinted.conf}             | 0
+ conf.avail/{36-no-bitmaps.conf => 76-no-bitmaps.conf}         | 0
+ conf.avail/{36-yes-bitmaps.conf => 76-yes-bitmaps.conf}       | 0
+ 11 files changed, 0 insertions(+), 0 deletions(-)
 
 commit 31f8061b5d0a60f497eaafe6d38006ae71e53163
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:36:46 2006 -0400
+Date:   Mon Sep 4 15:36:46 2006 -0400
 
     Make room for chunks from fonts.conf in conf.avail
 
- conf.avail/10-LohitGujarati.conf |   5 -
- conf.avail/10-fonts-persian.conf | 539
- ---------------------------------------
- conf.avail/20-LohitGujarati.conf |   5 +
- conf.avail/20-fonts-persian.conf | 539
- +++++++++++++++++++++++++++++++++++++++
- 4 files changed, 544 insertions(+), 544 deletions(-)
+ conf.avail/{10-LohitGujarati.conf => 20-LohitGujarati.conf} | 0
+ conf.avail/{10-fonts-persian.conf => 20-fonts-persian.conf} | 0
+ 2 files changed, 0 insertions(+), 0 deletions(-)
 
 commit d55620c90676951fc70ec9430c2670edca2147cb
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:32:37 2006 -0400
+Date:   Mon Sep 4 15:32:37 2006 -0400
 
     Replace load of conf.d in fonts.conf.in
 
@@ -14825,7 +19815,7 @@ Date:   Mon Sep 4 15:32:37 2006 -0400
 
 commit f6e645c4993fff77d596dba734c09cdb255f4ca0
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:30:10 2006 -0400
+Date:   Mon Sep 4 15:30:10 2006 -0400
 
     Update Makefile.am to match conf.avail changes
 
@@ -14834,33 +19824,24 @@ Date: Mon Sep 4 15:30:10 2006 -0400
 
 commit cbdd74d6569b5975b86bd425b56b1b50aa73d2bb
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 15:27:29 2006 -0400
+Date:   Mon Sep 4 15:27:29 2006 -0400
 
     Number the remaining conf.avail files
 
- conf.avail/30-no-sub-pixel.conf   |  9 +++++++++
- conf.avail/30-sub-pixel-bgr.conf  |  9 +++++++++
- conf.avail/30-sub-pixel-rgb.conf  |  9 +++++++++
- conf.avail/30-sub-pixel-vbgr.conf |  9 +++++++++
- conf.avail/30-sub-pixel-vrgb.conf |  9 +++++++++
- conf.avail/33-autohint.conf      |  9 +++++++++
- conf.avail/33-unhinted.conf      |  9 +++++++++
- conf.avail/36-no-bitmaps.conf    | 13 +++++++++++++
- conf.avail/36-yes-bitmaps.conf    | 13 +++++++++++++
- conf.avail/autohint.conf         |  9 ---------
- conf.avail/no-bitmaps.conf       | 13 -------------
- conf.avail/no-sub-pixel.conf     |  9 ---------
- conf.avail/sub-pixel-bgr.conf    |  9 ---------
- conf.avail/sub-pixel-rgb.conf    |  9 ---------
- conf.avail/sub-pixel-vbgr.conf    |  9 ---------
- conf.avail/sub-pixel-vrgb.conf    |  9 ---------
- conf.avail/unhinted.conf         |  9 ---------
- conf.avail/yes-bitmaps.conf      | 13 -------------
- 18 files changed, 89 insertions(+), 89 deletions(-)
+ conf.avail/{no-sub-pixel.conf => 30-no-sub-pixel.conf}     | 0
+ conf.avail/{sub-pixel-bgr.conf => 30-sub-pixel-bgr.conf}   | 0
+ conf.avail/{sub-pixel-rgb.conf => 30-sub-pixel-rgb.conf}   | 0
+ conf.avail/{sub-pixel-vbgr.conf => 30-sub-pixel-vbgr.conf} | 0
+ conf.avail/{sub-pixel-vrgb.conf => 30-sub-pixel-vrgb.conf} | 0
+ conf.avail/{autohint.conf => 33-autohint.conf}             | 0
+ conf.avail/{unhinted.conf => 33-unhinted.conf}             | 0
+ conf.avail/{no-bitmaps.conf => 36-no-bitmaps.conf}         | 0
+ conf.avail/{yes-bitmaps.conf => 36-yes-bitmaps.conf}       | 0
+ 9 files changed, 0 insertions(+), 0 deletions(-)
 
 commit a04ac99f0f3e487c7611772442727a6eb4f44393
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 02:13:13 2006 -0700
+Date:   Mon Sep 4 02:13:13 2006 -0700
 
     Hide FreeType glue code from library ABI.
 
@@ -14871,7 +19852,7 @@ Date:   Mon Sep 4 02:13:13 2006 -0700
 
 commit 4984242e3681a50a9c19f352783f145f91ecb868
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Sep 4 00:47:07 2006 -0700
+Date:   Mon Sep 4 00:47:07 2006 -0700
 
     Hide private functions in shared library. Export functionality
     for utilities.
@@ -14889,118 +19870,103 @@ Date:       Mon Sep 4 00:47:07 2006 -0700
     version number
     in the process.
 
- configure.in           |   9 +-
- fc-cache/fc-cache.c    |  30 ++--
- fc-cat/Makefile.am     |   2 +-
- fc-cat/fc-cat.c        |  37 ++---
+ configure.in            |   9 +-
+ fc-cache/fc-cache.c     |  30 ++--
+ fc-cat/Makefile.am      |   2 +-
+ fc-cat/fc-cat.c         |  37 ++---
  fontconfig/fcfreetype.h |  14 +-
  fontconfig/fontconfig.h | 403
  ++++++++++++++++++++++++++++--------------------
- src/fccache.c          |  48 ++++++
- src/fccharset.c        |   5 -
- src/fcint.h            | 337 +++++++++++++++++++---------------------
+ src/fccache.c           |  48 ++++++
+ src/fccharset.c         |   5 -
+ src/fcint.h             | 337 +++++++++++++++++++---------------------
  9 files changed, 481 insertions(+), 404 deletions(-)
 
 commit 57b42cef2ad2f18618ca0748325fc800165bdc1b
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 01:33:09 2006 -0400
+Date:   Mon Sep 4 01:33:09 2006 -0400
 
     Move user and local conf file loading into conf.avail files
 
  conf.avail/50-user.conf  |  7 +++++++
  conf.avail/51-local.conf |  7 +++++++
- fonts.conf.in           | 11 -----------
+ fonts.conf.in            | 11 -----------
  3 files changed, 14 insertions(+), 11 deletions(-)
 
 commit 04ceb322c8e8c4bfc5f4df27d15e8353058a19b8
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 01:28:07 2006 -0400
+Date:   Mon Sep 4 01:28:07 2006 -0400
 
     Support all five possibilities for sub-pixel
 
     Make sub-pixel.conf be sub-pixel-rgb.conf and add the
     three other possibilites: bgr, vrgb and vbgr.
 
- conf.avail/sub-pixel-bgr.conf | 9 +++++++++
- conf.avail/sub-pixel-rgb.conf | 9 +++++++++
- conf.avail/sub-pixel-vbgr.conf | 9 +++++++++
- conf.avail/sub-pixel-vrgb.conf | 9 +++++++++
- conf.avail/sub-pixel.conf     | 9 ---------
- 5 files changed, 36 insertions(+), 9 deletions(-)
+ conf.avail/sub-pixel-bgr.conf                     | 9 +++++++++
+ conf.avail/{sub-pixel.conf => sub-pixel-rgb.conf} | 0
+ conf.avail/sub-pixel-vbgr.conf                    | 9 +++++++++
+ conf.avail/sub-pixel-vrgb.conf                    | 9 +++++++++
+ 4 files changed, 27 insertions(+)
 
 commit 085d12cd4bcc215a5fb2bc403148e68c45bd3d2a
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 01:24:02 2006 -0400
+Date:   Mon Sep 4 01:24:02 2006 -0400
 
     Standardize conf.avail number prefixing convention
 
     Always use \d- rather than just \d as prefix
 
- conf.avail/10-LohitGujarati.conf | 5 +++++
- conf.avail/10LohitGujarati.conf  | 5 -----
- 2 files changed, 5 insertions(+), 5 deletions(-)
+ conf.avail/{10LohitGujarati.conf => 10-LohitGujarati.conf} | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
 
 commit 709f32438d814f73b6ce677a48b81a238cd0d6aa
 Author: James Cloos <cloos@lugabout.jhcloos.org>
-Date:  Mon Sep 4 01:21:55 2006 -0400
+Date:   Mon Sep 4 01:21:55 2006 -0400
 
     Move files from conf.d to conf.avail
 
     All of the files in conf.d are now in conf.avail
     Makefile.am is updated to reflect the change
 
- Makefile.am                     |   2 +-
- conf.avail/10-fonts-persian.conf | 539
- +++++++++++++++++++++++++++++++++++++++
- conf.avail/10LohitGujarati.conf  |   5 +
- conf.avail/60-delicious.conf    |  20 ++
- conf.avail/Makefile.am                  |  40 +++
- conf.avail/README               |   8 +
- conf.avail/autohint.conf        |   9 +
- conf.avail/no-bitmaps.conf      |  13 +
- conf.avail/no-sub-pixel.conf    |   9 +
- conf.avail/sub-pixel.conf       |   9 +
- conf.avail/unhinted.conf        |   9 +
- conf.avail/yes-bitmaps.conf     |  13 +
- conf.d/10-fonts-persian.conf    | 539
- ---------------------------------------
- conf.d/10LohitGujarati.conf     |   5 -
- conf.d/60-delicious.conf        |  20 --
- conf.d/Makefile.am              |  40 ---
- conf.d/README                   |   8 -
- conf.d/autohint.conf            |   9 -
- conf.d/no-bitmaps.conf                  |  13 -
- conf.d/no-sub-pixel.conf        |   9 -
- conf.d/sub-pixel.conf           |   9 -
- conf.d/unhinted.conf            |   9 -
- conf.d/yes-bitmaps.conf         |  13 -
- 23 files changed, 675 insertions(+), 675 deletions(-)
+ Makefile.am                                  | 2 +-
+ {conf.d => conf.avail}/10-fonts-persian.conf | 0
+ {conf.d => conf.avail}/10LohitGujarati.conf  | 0
+ {conf.d => conf.avail}/60-delicious.conf     | 0
+ {conf.d => conf.avail}/Makefile.am           | 0
+ {conf.d => conf.avail}/README                | 0
+ {conf.d => conf.avail}/autohint.conf         | 0
+ {conf.d => conf.avail}/no-bitmaps.conf       | 0
+ {conf.d => conf.avail}/no-sub-pixel.conf     | 0
+ {conf.d => conf.avail}/sub-pixel.conf        | 0
+ {conf.d => conf.avail}/unhinted.conf         | 0
+ {conf.d => conf.avail}/yes-bitmaps.conf      | 0
+ 12 files changed, 1 insertion(+), 1 deletion(-)
 
 commit 34227592c23db4d462d36773532cef67731e2831
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 16:27:09 2006 -0700
+Date:   Sun Sep 3 16:27:09 2006 -0700
 
     Remove all .cvsignore files
 
- .cvsignore             | 35 -----------------------------------
- conf.d/.cvsignore      |  2 --
- doc/.cvsignore                 | 16 ----------------
- fc-cache/.cvsignore    |  6 ------
- fc-case/.cvsignore     |  6 ------
- fc-cat/.cvsignore      |  6 ------
+ .cvsignore              | 35 -----------------------------------
+ conf.d/.cvsignore       |  2 --
+ doc/.cvsignore          | 16 ----------------
+ fc-cache/.cvsignore     |  6 ------
+ fc-case/.cvsignore      |  6 ------
+ fc-cat/.cvsignore       |  6 ------
  fc-glyphname/.cvsignore |  6 ------
- fc-lang/.cvsignore     |  6 ------
- fc-list/.cvsignore     |  6 ------
- fc-match/.cvsignore    |  6 ------
- fontconfig/.cvsignore  |  2 --
- src/.cvsignore                 |  7 -------
- test/.cvsignore        |  2 --
+ fc-lang/.cvsignore      |  6 ------
+ fc-list/.cvsignore      |  6 ------
+ fc-match/.cvsignore     |  6 ------
+ fontconfig/.cvsignore   |  2 --
+ src/.cvsignore          |  7 -------
+ test/.cvsignore         |  2 --
  13 files changed, 106 deletions(-)
 
 commit 822ec78c54a24a0f1589154ac2d4906b02b111ef
 Merge: e79c648 fb2092c
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 16:07:11 2006 -0700
+Date:   Sun Sep 3 16:07:11 2006 -0700
 
     Merge branch 'fc-2_4_branch' to master
 
@@ -15008,7 +19974,7 @@ Date:   Sun Sep 3 16:07:11 2006 -0700
 
 commit fb2092c18fbf4af69e2cbafc265c4b0ad7e54346
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 15:20:46 2006 -0700
+Date:   Sun Sep 3 15:20:46 2006 -0700
 
     Finish INSTALL changes. .gitignore ChangeLog
 
@@ -15018,7 +19984,7 @@ Date:   Sun Sep 3 15:20:46 2006 -0700
 
 commit 2ec3ed0806cfd2cd17cae4117a7047451a52cf95
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 14:58:49 2006 -0700
+Date:   Sun Sep 3 14:58:49 2006 -0700
 
     Update instructions for doing a release. Autogen ChangeLog from
     git-log.
@@ -15029,7 +19995,7 @@ Date:   Sun Sep 3 14:58:49 2006 -0700
 
 commit d3c392b6693ce79fbab42e9a8cf543f6182c5917
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 14:46:17 2006 -0700
+Date:   Sun Sep 3 14:46:17 2006 -0700
 
     Remove ChangeLog
 
@@ -15039,19 +20005,19 @@ Date: Sun Sep 3 14:46:17 2006 -0700
 
 commit 0945cbe73019404c880be0de7f703ef77aec8a08
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Sep 3 14:42:48 2006 -0700
+Date:   Sun Sep 3 14:42:48 2006 -0700
 
     Change version to 2.3.96
 
- README                         | 67
+ README                  | 67
  +++++++++++++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 67 insertions(+), 4 deletions(-)
 
 commit 2a5ea80023657724e3e6ba629d828ab5e33bdb70
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 23:10:59 2006 -0700
+Date:   Sat Sep 2 23:10:59 2006 -0700
 
     Oops; missed the 60-delicious.conf file.
 
@@ -15063,7 +20029,7 @@ Date:   Sat Sep 2 23:10:59 2006 -0700
 
 commit e3b771a63e837b341bbd1e3e7e9c868244506f62
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 23:09:44 2006 -0700
+Date:   Sat Sep 2 23:09:44 2006 -0700
 
     Using uninitialized (and wrong) variable in FcStrCopyFilename.
 
@@ -15074,7 +20040,7 @@ Date:   Sat Sep 2 23:09:44 2006 -0700
 
 commit 04cedae0d5a720662bdc0de3d4cb97f6c77e7d1a
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 20:23:31 2006 -0700
+Date:   Sat Sep 2 20:23:31 2006 -0700
 
     Don't segfault when string values can't be parsed as charsets or
     langsets.
@@ -15088,7 +20054,7 @@ Date:   Sat Sep 2 20:23:31 2006 -0700
 
 commit fb6e30ab3ef74021978d260fb7f2c40a0b5a0b06
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 20:07:29 2006 -0700
+Date:   Sat Sep 2 20:07:29 2006 -0700
 
     Fix missing initialization/destruction of new 'scan' target subst
     list.
@@ -15102,7 +20068,7 @@ Date:   Sat Sep 2 20:07:29 2006 -0700
 
 commit c2c6976d1a88cc35143ffcc34f3c38d0a28d34f4
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 17:52:12 2006 -0700
+Date:   Sat Sep 2 17:52:12 2006 -0700
 
     Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
 
@@ -15129,24 +20095,24 @@ Date: Sat Sep 2 17:52:12 2006 -0700
     except
     for this value.
 
- conf.d/Makefile.am      |  1 +
+ conf.d/Makefile.am       |  1 +
  doc/fontconfig-user.sgml |  6 ++++--
  fontconfig/fontconfig.h  |  3 ++-
- fonts.dtd               |  6 +++++-
- src/fccfg.c             | 35 +++++++++++++++++++++++++++--------
- src/fcdbg.c             |  7 +++++++
- src/fcdefault.c         |  1 +
- src/fcdir.c             | 18 +++++++++++++++++-
- src/fcfreetype.c        | 34 +++++++++++++++++++++++++++++++++-
- src/fcint.h             |  2 ++
- src/fcmatch.c           | 33 ++++++++++++++++++++-------------
- src/fcname.c            | 34 ++++++++++++++++++++++++++++++----
- src/fcxml.c             |  4 ++++
+ fonts.dtd                |  6 +++++-
+ src/fccfg.c              | 35 +++++++++++++++++++++++++++--------
+ src/fcdbg.c              |  7 +++++++
+ src/fcdefault.c          |  1 +
+ src/fcdir.c              | 18 +++++++++++++++++-
+ src/fcfreetype.c         | 34 +++++++++++++++++++++++++++++++++-
+ src/fcint.h              |  2 ++
+ src/fcmatch.c            | 33 ++++++++++++++++++++-------------
+ src/fcname.c             | 34 ++++++++++++++++++++++++++++++----
+ src/fcxml.c              |  4 ++++
  13 files changed, 153 insertions(+), 31 deletions(-)
 
 commit 3b8a03c09d3a45f578680b5fe80255af9761b3fa
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 14:54:14 2006 -0700
+Date:   Sat Sep 2 14:54:14 2006 -0700
 
     Allow font caches to contain newer version numbers
 
@@ -15161,7 +20127,7 @@ Date:   Sat Sep 2 14:54:14 2006 -0700
 
 commit 9b511b290548ad2920cda94507a3311efc461e8a
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sat Sep 2 14:52:37 2006 -0700
+Date:   Sat Sep 2 14:52:37 2006 -0700
 
     Unify directory canonicalization into FcStrAddFilename.
 
@@ -15171,15 +20137,15 @@ Date: Sat Sep 2 14:52:37 2006 -0700
     that
     function at one point.
 
- fc-cache/fc-cache.c | 2 +-
- fc-cat/fc-cat.c     | 2 +-
- src/fcdir.c        | 17 ++++-------------
- src/fcstr.c        | 24 +++++++++++-------------
+ fc-cache/fc-cache.c |  2 +-
+ fc-cat/fc-cat.c     |  2 +-
+ src/fcdir.c         | 17 ++++-------------
+ src/fcstr.c         | 24 +++++++++++-------------
  4 files changed, 17 insertions(+), 28 deletions(-)
 
 commit 813258dc8e3a8c964af49abe810e76a95241926d
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 22:08:41 2006 -0700
+Date:   Fri Sep 1 22:08:41 2006 -0700
 
     Move Free family names to bottom of respective aliases. (bug 7429)
 
@@ -15195,7 +20161,7 @@ Date:   Fri Sep 1 22:08:41 2006 -0700
 
 commit 5cafbd4da08aa8110a94deba59dc631c39ef7285
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 22:04:52 2006 -0700
+Date:   Fri Sep 1 22:04:52 2006 -0700
 
     Document FC_DEBUG values (bug 6393). Document name \ escape syntax.
 
@@ -15210,7 +20176,7 @@ Date:   Fri Sep 1 22:04:52 2006 -0700
 
 commit 7295c6f5faa595422e0825aa2e91883147d5b50e
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 21:30:54 2006 -0700
+Date:   Fri Sep 1 21:30:54 2006 -0700
 
     Guess that mac roman names with lots of high bits are actually SJIS.
 
@@ -15227,7 +20193,7 @@ Date:   Fri Sep 1 21:30:54 2006 -0700
 
 commit db970d3596fbbc75f652f1a9fe7f7ce98e651ad2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 21:12:44 2006 -0700
+Date:   Fri Sep 1 21:12:44 2006 -0700
 
     Prefer Bitstream Vera to DejaVu families.
 
@@ -15244,7 +20210,7 @@ Date:   Fri Sep 1 21:12:44 2006 -0700
 
 commit 3bb1812f0d173b153415e2191ecdd27a95fc4b05
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 15:33:27 2006 -0700
+Date:   Fri Sep 1 15:33:27 2006 -0700
 
     Fonts matching lang not territory should satisfy sort pattern lang.
 
@@ -15259,7 +20225,7 @@ Date:   Fri Sep 1 15:33:27 2006 -0700
 
 commit cfccd4873a44da5b041368d5fca4f05180dcf041
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 13:22:45 2006 -0700
+Date:   Fri Sep 1 13:22:45 2006 -0700
 
     Really only rebuild caches for system fonts at make install time.
 
@@ -15271,7 +20237,7 @@ Date:   Fri Sep 1 13:22:45 2006 -0700
 
 commit caf996342b53bf2ca4eedbe54bc86b68456d7470
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:59:09 2006 -0700
+Date:   Fri Sep 1 12:59:09 2006 -0700
 
     Add Assamese orthography (as.orth). Bug #8050
 
@@ -15285,7 +20251,7 @@ Date:   Fri Sep 1 12:59:09 2006 -0700
 
 commit c9e6d2c8cc920937546faa63c889570fa7b4745c
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:45:43 2006 -0700
+Date:   Fri Sep 1 12:45:43 2006 -0700
 
     Chinese/Macau needs the Hong Kong orthography instead of Taiwan
     (bug 7884)
@@ -15308,19 +20274,19 @@ Date: Fri Sep 1 12:45:43 2006 -0700
 
 commit 5b8e43a48ea1a5fb4e54dd12fe965439df2bf95d
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:36:31 2006 -0700
+Date:   Fri Sep 1 12:36:31 2006 -0700
 
     Avoid #warning directives on non-GCC compilers. (bug 7683)
 
     Detect GCC and use #warning only on GCC systems.
 
- configure.in    | 4 +++-
+ configure.in     | 4 +++-
  src/fcfreetype.c | 2 ++
  2 files changed, 5 insertions(+), 1 deletion(-)
 
 commit ab2cb932b25af20896c08f4641dfa696ed651418
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:26:15 2006 -0700
+Date:   Fri Sep 1 12:26:15 2006 -0700
 
     Add @EXPAT_LIBS@ to Libs.private in fontconfig.pc (bug 7683)
 
@@ -15333,7 +20299,7 @@ Date:   Fri Sep 1 12:26:15 2006 -0700
 
 commit 1741499e2387f0c1e692801a1ef3c6ce5d043f9f
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:07:10 2006 -0700
+Date:   Fri Sep 1 12:07:10 2006 -0700
 
     Fix memory leaks in fc-cache directory cleaning code.
 
@@ -15344,7 +20310,7 @@ Date:   Fri Sep 1 12:07:10 2006 -0700
 
 commit fd7223c770e74730480bdf9ecf36f3152a12473e
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 12:05:04 2006 -0700
+Date:   Fri Sep 1 12:05:04 2006 -0700
 
     Only rebuild caches for system fonts at make install time.
 
@@ -15357,7 +20323,7 @@ Date:   Fri Sep 1 12:05:04 2006 -0700
 
 commit 8587d77ce64147b7fb324458ba100910ebba93f4
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 02:27:45 2006 -0700
+Date:   Fri Sep 1 02:27:45 2006 -0700
 
     Add some ignores
 
@@ -15366,7 +20332,7 @@ Date:   Fri Sep 1 02:27:45 2006 -0700
 
 commit 09bd9ae2be032efb05a8be7bae584fa18756d951
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 02:22:59 2006 -0700
+Date:   Fri Sep 1 02:22:59 2006 -0700
 
     Fontset pattern references are relative to fontset, not array.
 
@@ -15379,7 +20345,7 @@ Date:   Fri Sep 1 02:22:59 2006 -0700
 
 commit 18b6857c6476517db7932025847ae952feba758d
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 01:49:47 2006 -0700
+Date:   Fri Sep 1 01:49:47 2006 -0700
 
     Fix fc-lang to use new charset freezer API.
 
@@ -15390,12 +20356,12 @@ Date: Fri Sep 1 01:49:47 2006 -0700
 
  fc-lang/fc-lang.c | 30 ++++++++++++++++++------------
  src/fccharset.c   | 11 +++++------
- src/fcint.h      |  6 ++++++
+ src/fcint.h       |  6 ++++++
  3 files changed, 29 insertions(+), 18 deletions(-)
 
 commit bc5e487f2a1ad9946aa5c6e19cd75794fc38d530
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 01:15:14 2006 -0700
+Date:   Fri Sep 1 01:15:14 2006 -0700
 
     Pass directory information around in FcCache structure. Freeze
     charsets.
@@ -15408,23 +20374,23 @@ Date: Fri Sep 1 01:15:14 2006 -0700
     them to
     share across multiple fonts in the same cache.
 
- fc-cache/fc-cache.c        | 109 ++++-----
- fc-cat/fc-cat.c            |  83 ++-----
- fc-glyphname/fc-glyphname.c | 13 --
- src/fccache.c              | 300 ++++++++++--------------
- src/fccfg.c                | 169 ++++++++------
- src/fccharset.c            | 550
+ fc-cache/fc-cache.c         | 109 ++++-----
+ fc-cat/fc-cat.c             |  83 ++-----
+ fc-glyphname/fc-glyphname.c |  13 --
+ src/fccache.c               | 300 ++++++++++--------------
+ src/fccfg.c                 | 169 ++++++++------
+ src/fccharset.c             | 550
  +++++++++++++++++++++++---------------------
- src/fcdir.c                | 177 +++++++-------
- src/fcinit.c               |   1 -
- src/fcint.h                |  60 ++---
- src/fcpat.c                |   8 +
- src/fcserialize.c          |   3 +
+ src/fcdir.c                 | 177 +++++++-------
+ src/fcinit.c                |   1 -
+ src/fcint.h                 |  60 ++---
+ src/fcpat.c                 |   8 +
+ src/fcserialize.c           |   3 +
  11 files changed, 702 insertions(+), 771 deletions(-)
 
 commit aec8c90b450c115718fd87bc270e35ee6b605967
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Fri Sep 1 01:12:13 2006 -0700
+Date:   Fri Sep 1 01:12:13 2006 -0700
 
     Remove stale architecture signatures.
 
@@ -15435,7 +20401,7 @@ Date:   Fri Sep 1 01:12:13 2006 -0700
 
 commit 551b6b2cd7d94dd90a9eb22bdb752f264afc48ce
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 18:16:00 2006 -0700
+Date:   Thu Aug 31 18:16:00 2006 -0700
 
     Allow FcTypeLangSet to match either FcTypeLangSet or FcTypeString.
 
@@ -15447,7 +20413,7 @@ Date:   Thu Aug 31 18:16:00 2006 -0700
 
 commit bf0c80fc4996157dda7bed8b8b2e4c8a13611ada
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 18:14:45 2006 -0700
+Date:   Thu Aug 31 18:14:45 2006 -0700
 
     Change $(pkgcachedir) to $(fc_cachedir) in fc-cat and fc-cache
     Makefile.am
@@ -15461,23 +20427,23 @@ Date: Thu Aug 31 18:14:45 2006 -0700
 
 commit f57783d2e9c7362b1e5d5e3a967ba90fa49ade6e
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 14:38:18 2006 -0700
+Date:   Thu Aug 31 14:38:18 2006 -0700
 
     Revert ABI changes from version 2.3
 
     Accidental ABI changes and additions were discovered by looking at the
     differences in fontconfig.h. All of those have been reverted.
 
- fc-cache/fc-cache.c    |  4 ++--
- fc-list/fc-list.c      |  2 +-
+ fc-cache/fc-cache.c     |  4 ++--
+ fc-list/fc-list.c       |  2 +-
  fontconfig/fontconfig.h | 23 +++++------------------
- src/fccache.c          | 16 ++++++++++++++--
- src/fcint.h            |  6 ++++++
+ src/fccache.c           | 16 ++++++++++++++--
+ src/fcint.h             |  6 ++++++
  5 files changed, 28 insertions(+), 23 deletions(-)
 
 commit 0a87ce715e1862c56702f5be43af9f246aa34e68
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 11:56:43 2006 -0700
+Date:   Thu Aug 31 11:56:43 2006 -0700
 
     With no args, fc-cat now dumps all directories.
 
@@ -15490,13 +20456,13 @@ Date: Thu Aug 31 11:56:43 2006 -0700
 
  fc-cat/fc-cat.c | 119
  +++++++++++++++++++++++++++++++++++++++++++-------------
- src/fccache.c  |  16 +++++---
- src/fcint.h    |   2 +-
+ src/fccache.c   |  16 +++++---
+ src/fcint.h     |   2 +-
  3 files changed, 104 insertions(+), 33 deletions(-)
 
 commit d8ab9e6c42cb3513a6623df0c2866e1ebbd96485
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 09:42:49 2006 -0700
+Date:   Thu Aug 31 09:42:49 2006 -0700
 
     Automatically remove invalid cache files.
 
@@ -15507,13 +20473,13 @@ Date: Thu Aug 31 09:42:49 2006 -0700
  fc-cache/fc-cache.c  | 130
  ++++++++++++++++++++++++++++++++++++++++++++++++++-
  fc-cat/fc-cat.c      |   3 +-
- src/fccache.c       |   6 +--
- src/fcint.h         |   2 +-
+ src/fccache.c        |   6 +--
+ src/fcint.h          |   2 +-
  5 files changed, 135 insertions(+), 8 deletions(-)
 
 commit e9a564e2cd3cb40109a1133dbbcee9f938f141b3
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Thu Aug 31 09:07:32 2006 -0700
+Date:   Thu Aug 31 09:07:32 2006 -0700
 
     Serialized value lists were only including one value.
 
@@ -15526,32 +20492,32 @@ Date: Thu Aug 31 09:07:32 2006 -0700
 
 commit c50ea916b0e56520948804b67fc7df57bb490575
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 23:09:39 2006 -0700
+Date:   Wed Aug 30 23:09:39 2006 -0700
 
     Use intptr_t instead of off_t inside FcCache structure.
 
     This avoids OS-dependencies in the cache file structure.
 
- src/fcint.h      | 2 +-
+ src/fcint.h       | 2 +-
  src/fcserialize.c | 1 -
  2 files changed, 1 insertion(+), 2 deletions(-)
 
 commit 76abb77f26c43d069919f80e960c71c2242fb5c2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 22:23:25 2006 -0700
+Date:   Wed Aug 30 22:23:25 2006 -0700
 
     Fix fc-cat again. Sigh.
 
     Internal interfaces in cache management changed again...
 
  fc-cat/fc-cat.c | 37 +++++++++++++++++++++++++------------
- src/fccache.c  | 19 ++++++++++---------
- src/fcint.h    |  9 ++++++---
+ src/fccache.c   | 19 ++++++++++---------
+ src/fcint.h     |  9 ++++++---
  3 files changed, 41 insertions(+), 24 deletions(-)
 
 commit 2d3387fd720f33f80847ae6cbb83d94c9a52fde3
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 21:59:53 2006 -0700
+Date:   Wed Aug 30 21:59:53 2006 -0700
 
     Skip broken caches. Cache files are auto-written, don't rewrite
     in fc-cache.
@@ -15576,20 +20542,20 @@ Date: Wed Aug 30 21:59:53 2006 -0700
 
     Call FcFini from fc-match to make valgrind happy.
 
- fc-cache/fc-cache.c | 25 +++++----
- fc-match/fc-match.c |  1 +
- src/fccache.c      | 148
+ fc-cache/fc-cache.c |  25 +++++----
+ fc-match/fc-match.c |   1 +
+ src/fccache.c       | 148
  +++++++++++++++++++++++++++-------------------------
- src/fccfg.c        |  80 ++++++++--------------------
- src/fccharset.c     | 56 +++++++++++---------
- src/fcdir.c        |   2 +-
- src/fcint.h        |  19 +++++--
- src/fcxml.c        |  19 +++----
+ src/fccfg.c         |  80 ++++++++--------------------
+ src/fccharset.c     |  56 +++++++++++---------
+ src/fcdir.c         |   2 +-
+ src/fcint.h         |  19 +++++--
+ src/fcxml.c         |  19 +++----
  8 files changed, 169 insertions(+), 181 deletions(-)
 
 commit 09f9f6f62ac94f7b1a6df649a00c64f78ab132f5
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 18:50:58 2006 -0700
+Date:   Wed Aug 30 18:50:58 2006 -0700
 
     Rework Object name database to unify typechecking and object lookup.
 
@@ -15600,16 +20566,16 @@ Date: Wed Aug 30 18:50:58 2006 -0700
     avoid mis-typed pattern elements.
 
  fc-case/fc-case.c |  13 --
- src/fcint.h      |   7 +-
- src/fcmatch.c    |   9 +-
- src/fcname.c     | 389
+ src/fcint.h       |   7 +-
+ src/fcmatch.c     |   9 +-
+ src/fcname.c      | 389
  ++++++++++++++++++++++++++++++------------------------
- src/fcpat.c      |   2 +-
+ src/fcpat.c       |   2 +-
  5 files changed, 233 insertions(+), 187 deletions(-)
 
 commit c02886485b293179e8492cad9a34eb431dd4bfc9
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 13:51:03 2006 -0700
+Date:   Wed Aug 30 13:51:03 2006 -0700
 
     FcCharSetSerialize was using wrong offset for leaves. Make fc-cat
     work.
@@ -15623,16 +20589,16 @@ Date: Wed Aug 30 13:51:03 2006 -0700
 
  fc-cat/fc-cat.c | 134
  ++++++++++++++++++++++++++++++--------------------------
- src/fccache.c  |   6 +--
+ src/fccache.c   |   6 +--
  src/fccharset.c |   3 +-
- src/fcdbg.c    |  20 +++++++--
- src/fcint.h    |  15 +++++--
- src/fcpat.c    |   7 +++
+ src/fcdbg.c     |  20 +++++++--
+ src/fcint.h     |  15 +++++--
+ src/fcpat.c     |   7 +++
  6 files changed, 110 insertions(+), 75 deletions(-)
 
 commit e3096d90fd3e0ba8b62d2c6df4cfb24f08a0766c
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 04:24:03 2006 -0700
+Date:   Wed Aug 30 04:24:03 2006 -0700
 
     Fix build problems caused by cache rework.
 
@@ -15654,7 +20620,7 @@ Date:   Wed Aug 30 04:24:03 2006 -0700
 
 commit 7ce196733129b0e664c1bdc20f973f15167292f7
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Wed Aug 30 04:16:22 2006 -0700
+Date:   Wed Aug 30 04:16:22 2006 -0700
 
     Rework cache files to use offsets for all data structures.
 
@@ -15672,30 +20638,30 @@ Date: Wed Aug 30 04:16:22 2006 -0700
     everywhere in
     the library yet.
 
- fc-arch/fcarch.tmpl.h  |    3 +-
- fc-lang/fc-lang.c      |  185 +++++----
+ fc-arch/fcarch.tmpl.h   |    3 +-
+ fc-lang/fc-lang.c       |  185 +++++----
  fontconfig/fontconfig.h |    3 -
- src/Makefile.am        |    1 +
- src/fccache.c          |  581 +++++++++++----------------
- src/fccfg.c            |  102 +++--
- src/fccharset.c        |  493 ++++++++---------------
- src/fcdbg.c            |   43 +-
- src/fcdefault.c        |   64 +--
- src/fcfs.c             |  133 ++----
- src/fcint.h            |  477 +++++++++++++---------
- src/fclang.c           |  120 ++----
- src/fclist.c           |   86 ++--
- src/fcmatch.c          |  179 +++------
- src/fcname.c           |  142 ++-----
- src/fcpat.c            | 1025
+ src/Makefile.am         |    1 +
+ src/fccache.c           |  581 +++++++++++----------------
+ src/fccfg.c             |  102 +++--
+ src/fccharset.c         |  493 ++++++++---------------
+ src/fcdbg.c             |   43 +-
+ src/fcdefault.c         |   64 +--
+ src/fcfs.c              |  133 ++----
+ src/fcint.h             |  477 +++++++++++++---------
+ src/fclang.c            |  120 ++----
+ src/fclist.c            |   86 ++--
+ src/fcmatch.c           |  179 +++------
+ src/fcname.c            |  142 ++-----
+ src/fcpat.c             | 1025
  ++++++++++++++---------------------------------
- src/fcstr.c            |    1 +
- src/fcxml.c            |   15 +-
+ src/fcstr.c             |    1 +
+ src/fcxml.c             |   15 +-
  18 files changed, 1394 insertions(+), 2259 deletions(-)
 
 commit 2a9179d8895c1cc90d02917f7bb6fac30ffb6a62
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Aug 28 11:51:12 2006 -0700
+Date:   Mon Aug 28 11:51:12 2006 -0700
 
     Revert to original FcFontSetMatch algorithm to avoid losing fonts.
 
@@ -15712,7 +20678,7 @@ Date:   Mon Aug 28 11:51:12 2006 -0700
 
 commit ad05e3135b43f82c64d74f17dfec0b44fe7efcf0
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Aug 28 10:38:27 2006 -0700
+Date:   Mon Aug 28 10:38:27 2006 -0700
 
     Add ppc architecture
 
@@ -15721,7 +20687,7 @@ Date:   Mon Aug 28 10:38:27 2006 -0700
 
 commit 7a03bbdceb4ea5b673caf89bfcafa84211a456f0
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Aug 28 10:30:22 2006 -0700
+Date:   Mon Aug 28 10:30:22 2006 -0700
 
     During test run, remove cache directory to avoid stale cache usage.
 
@@ -15737,7 +20703,7 @@ Date:   Mon Aug 28 10:30:22 2006 -0700
 
 commit 1e4080ea49160c5af24400b8daf701412a0cc7cb
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Aug 28 10:07:43 2006 -0700
+Date:   Mon Aug 28 10:07:43 2006 -0700
 
     Add x86-64 architecture and signature.
 
@@ -15746,7 +20712,7 @@ Date:   Mon Aug 28 10:07:43 2006 -0700
 
 commit 7db39f729859827b246da242a26ddba13cb8c4b1
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Mon Aug 28 09:43:12 2006 -0700
+Date:   Mon Aug 28 09:43:12 2006 -0700
 
     Regenerate x86 line in fcarch.tmpl.h to match change in cache data.
 
@@ -15754,12 +20720,12 @@ Date: Mon Aug 28 09:43:12 2006 -0700
 
  fc-arch/Makefile.am   | 2 +-
  fc-arch/fcarch.tmpl.h | 2 +-
- src/fcdir.c          | 1 -
+ src/fcdir.c           | 1 -
  3 files changed, 2 insertions(+), 3 deletions(-)
 
 commit 0d9e31c810a36cddadff7572fdbb5a1b505e495e
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 23:40:51 2006 -0700
+Date:   Sun Aug 27 23:40:51 2006 -0700
 
     Eliminate ./ and ../ elements from font directory names when scanning.
 
@@ -15770,31 +20736,31 @@ Date: Sun Aug 27 23:40:51 2006 -0700
     current working directory.
 
  src/fcdir.c | 45 ++++++++++++++++++++++++++++++---------------
- src/fcint.h | 3 +++
+ src/fcint.h |  3 +++
  src/fcstr.c | 57
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  3 files changed, 90 insertions(+), 15 deletions(-)
 
 commit af180c40376690b7ced5262156fbe13c9ebba1e2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 22:24:39 2006 -0700
+Date:   Sun Aug 27 22:24:39 2006 -0700
 
     Fix up fc-cache and fc-cat for no global cache changes.
 
     fc-cache and fc-cat use internal (fcint.h) APIs that have
     changed with the elimination of the global cache.
 
- fc-cache/fc-cache.c |  2 +-
+ fc-cache/fc-cache.c |   2 +-
  fc-cat/fc-cat.c     | 119
  ++++++----------------------------------------------
- src/fccache.c      |  77 +++++++++++++++++++++++-----------
- src/fcdir.c        |  13 +++---
- src/fcint.h        |   4 ++
+ src/fccache.c       |  77 +++++++++++++++++++++++-----------
+ src/fcdir.c         |  13 +++---
+ src/fcint.h         |   4 ++
  5 files changed, 76 insertions(+), 139 deletions(-)
 
 commit 00f059e930f12ca7c66cf2ffbc6c4ae789912af7
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 21:53:48 2006 -0700
+Date:   Sun Aug 27 21:53:48 2006 -0700
 
     Eliminate global cache. Eliminate multi-arch cache code.
 
@@ -15805,17 +20771,17 @@ Date: Sun Aug 27 21:53:48 2006 -0700
     structure
     and simplifies the overall caching strategies greatly.
 
- fc-cache/fc-cache.c |   3 +-
- src/fccache.c      | 1051
+ fc-cache/fc-cache.c |    3 +-
+ src/fccache.c       | 1051
  ++++++---------------------------------------------
- src/fccfg.c        |   23 +-
- src/fcdir.c        |  164 ++++----
- src/fcint.h        |   70 +---
+ src/fccfg.c         |   23 +-
+ src/fcdir.c         |  164 ++++----
+ src/fcint.h         |   70 +---
  5 files changed, 203 insertions(+), 1108 deletions(-)
 
 commit cf65c0557e9fa1b86003d1ec8643f44f4344ebd2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 18:29:51 2006 -0700
+Date:   Sun Aug 27 18:29:51 2006 -0700
 
     Add architecture to cache filename.
 
@@ -15828,7 +20794,7 @@ Date:   Sun Aug 27 18:29:51 2006 -0700
 
 commit db50cbdaf592349c204ab0af0e7061ea72237044
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 18:19:39 2006 -0700
+Date:   Sun Aug 27 18:19:39 2006 -0700
 
     Eliminate NormalizeDir. Eliminate gratuitous stat/access calls
     per dir.
@@ -15842,16 +20808,16 @@ Date: Sun Aug 27 18:19:39 2006 -0700
     is loaded
     with an access and stat call.
 
- fc-cache/fc-cache.c |  7 ++--
- src/fccache.c      |  55 ++---------------------------
- src/fccfg.c        | 100
+ fc-cache/fc-cache.c |   7 ++--
+ src/fccache.c       |  55 ++---------------------------
+ src/fccfg.c         | 100
  ----------------------------------------------------
- src/fcdir.c        |   6 ----
+ src/fcdir.c         |   6 ----
  4 files changed, 4 insertions(+), 164 deletions(-)
 
 commit d2f786849c0c4503360a5c09469505b05164c6d2
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 17:04:01 2006 -0700
+Date:   Sun Aug 27 17:04:01 2006 -0700
 
     Write caches to first directory with permission. Valid cache in
     FcDirCacheOpen.
@@ -15873,7 +20839,7 @@ Date:   Sun Aug 27 17:04:01 2006 -0700
 
 commit 2b629781d74b5a7db1fff873ce5322e59a0f863a
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 16:25:07 2006 -0700
+Date:   Sun Aug 27 16:25:07 2006 -0700
 
     Construct short architecture name from architecture signature.
 
@@ -15886,8 +20852,8 @@ Date:   Sun Aug 27 16:25:07 2006 -0700
     be overridden
     with the --with-arch=ARCH configure option.
 
- Makefile.am          |   2 +-
- configure.in         |  17 ++++++
+ Makefile.am           |   2 +-
+ configure.in          |  17 ++++++
  fc-arch/Makefile.am   |  50 ++++++++++++++++++
  fc-arch/fc-arch.c     | 144
  ++++++++++++++++++++++++++++++++++++++++++++++++++
@@ -15896,7 +20862,7 @@ Date:   Sun Aug 27 16:25:07 2006 -0700
 
 commit 199a92241151c391d9becca4fae1cc7e5e32ca80
 Author: Keith Packard <keithp@neko.keithp.com>
-Date:  Sun Aug 27 16:21:16 2006 -0700
+Date:   Sun Aug 27 16:21:16 2006 -0700
 
     Add .gitignore
 
@@ -15906,34 +20872,34 @@ Date: Sun Aug 27 16:21:16 2006 -0700
 
 commit 7410e40bd93beb4ab1a577d084112413431cede2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Aug 4 16:13:00 2006 +0000
+Date:   Fri Aug 4 16:13:00 2006 +0000
 
     2006-08-04 Keith Packard (keithp@keithp.com) reviewed by: plam
     Make cache directories configurable. Simplify and correct some
     code which
-       deals with per-directory caches.
+        deals with per-directory caches.
 
- ChangeLog              |  24 ++++
- configure.in           |  22 +++-
- fc-cache/fc-cache.c    |   7 +-
+ ChangeLog               |  24 ++++
+ configure.in            |  22 +++-
+ fc-cache/fc-cache.c     |   7 +-
  fontconfig/fontconfig.h |   4 +-
- fonts.conf.in          |   5 +
- fonts.dtd              |  12 ++
- src/Makefile.am        |   3 +-
- src/fccache.c          | 323
+ fonts.conf.in           |   5 +
+ fonts.dtd               |  12 ++
+ src/Makefile.am         |   3 +-
+ src/fccache.c           | 323
  +++++++++++++++++++++++++-----------------------
- src/fccfg.c            |  28 ++++-
- src/fcdir.c            |   6 +-
- src/fcinit.c           |   2 +
- src/fcint.h            |  13 +-
- src/fcxml.c            |  17 +++
- test/fonts.conf.in     |   1 +
- test/run-test.sh       |   6 +-
+ src/fccfg.c             |  28 ++++-
+ src/fcdir.c             |   6 +-
+ src/fcinit.c            |   2 +
+ src/fcint.h             |  13 +-
+ src/fcxml.c             |  17 +++
+ test/fonts.conf.in      |   1 +
+ test/run-test.sh        |   6 +-
  15 files changed, 294 insertions(+), 179 deletions(-)
 
 commit 62a4a8459adaf26833e1dad0ee96ea5a4b8c3d54
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Jul 19 02:14:28 2006 +0000
+Date:   Wed Jul 19 02:14:28 2006 +0000
 
     2006-07-19 Jon Burgess (jburgess@uklinux.net) reviewed by: plam
     Fix file-descriptor leak in FcGlobalCacheDestroy.
@@ -15944,7 +20910,7 @@ Date:   Wed Jul 19 02:14:28 2006 +0000
 
 commit 1c14f2d96390ebafb390a953aa9b847e4a7303d7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Jun 2 18:48:30 2006 +0000
+Date:   Fri Jun 2 18:48:30 2006 +0000
 
     2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad
     Esfahbod
@@ -15956,30 +20922,30 @@ Date: Fri Jun 2 18:48:30 2006 +0000
 
 commit 31b7e6d7f58616ebdc6281c3230282a2d7b57d6d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 28 07:00:25 2006 +0000
+Date:   Fri Apr 28 07:00:25 2006 +0000
 
     2006-04-27 Paolo Borelli (pborelli@katamail.com) reviewed by: plam
     Make FcStrCopy slightly more efficient.
 
- ChangeLog   | 7 +++++++
+ ChangeLog   |  7 +++++++
  src/fcstr.c | 12 +++++++-----
  2 files changed, 14 insertions(+), 5 deletions(-)
 
 commit 0037aad501e18e53acd2590483b99aaa2a1fba8c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 27 08:13:45 2006 +0000
+Date:   Thu Apr 27 08:13:45 2006 +0000
 
     Keith Packard <keithp@keithp.com>
     Reduce transient memory usage during config file parsing by allocating
-       smaller buffers (64 seems to be a magic number).
+        smaller buffers (64 seems to be a magic number).
 
  ChangeLog   | 20 +++++++-------------
- src/fcstr.c | 2 +-
+ src/fcstr.c |  2 +-
  2 files changed, 8 insertions(+), 14 deletions(-)
 
 commit 529291bef436384a06db246fda30e08d5812de14
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 27 07:54:07 2006 +0000
+Date:   Thu Apr 27 07:54:07 2006 +0000
 
     Eliminate pattern freezing
 
@@ -15993,27 +20959,27 @@ Date: Thu Apr 27 07:54:07 2006 +0000
 
 commit c1c3ba06d5f5e00a1bfef4ef0dbf10f28fa86ce2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 27 07:11:44 2006 +0000
+Date:   Thu Apr 27 07:11:44 2006 +0000
 
     Make path names in cache files absolute (NB, cache format change) Stop
-       permitting cache files to be stored in font dirs. Bump cache
-       magic.
-       Don't include /fonts.cache-2 in cache hash construction.
+        permitting cache files to be stored in font dirs. Bump cache
+        magic.
+        Don't include /fonts.cache-2 in cache hash construction.
     reviewed by: Patrick Lam <plam@mit.edu>
 
- ChangeLog       |  30 +++++++++++++
- src/fccache.c   | 104 +++++++++++---------------------------------
+ ChangeLog        |  30 +++++++++++++
+ src/fccache.c    | 104 +++++++++++---------------------------------
  src/fcfreetype.c |  10 +----
- src/fcint.h     |   8 +---
- src/fclist.c    |   4 --
- src/fcmatch.c   |   3 --
- src/fcpat.c     | 130
+ src/fcint.h      |   8 +---
+ src/fclist.c     |   4 --
+ src/fcmatch.c    |   3 --
+ src/fcpat.c      | 130
  -------------------------------------------------------
  7 files changed, 57 insertions(+), 232 deletions(-)
 
 commit 3b013a034acac70f3ceee05505bf5bb4dd45963b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 26 14:50:41 2006 +0000
+Date:   Wed Apr 26 14:50:41 2006 +0000
 
     Really update for 2.3.95.
 
@@ -16022,22 +20988,22 @@ Date: Wed Apr 26 14:50:41 2006 +0000
 
 commit 73775d8f28bd8f5c40b524fe1ede63d3dfaff171
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 25 15:33:07 2006 +0000
+Date:   Tue Apr 25 15:33:07 2006 +0000
 
     Fix the issues with GNU libiconv vs. libc iconv (which especially
     appear on
-       Solarii). Approach suggested by Tim Mooney.
+        Solarii). Approach suggested by Tim Mooney.
     reviewed by: plam
 
- ChangeLog       | 12 +++++++++++-
- configure.in    | 37 +++++++++++++++++++++++++++++++++++--
+ ChangeLog        | 12 +++++++++++-
+ configure.in     | 37 +++++++++++++++++++++++++++++++++++--
  src/Makefile.am  |  2 +-
  src/fcfreetype.c |  3 +--
  4 files changed, 48 insertions(+), 6 deletions(-)
 
 commit 49512317264da1996bddf0b3c82d8d2de0c201eb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 25 06:12:06 2006 +0000
+Date:   Tue Apr 25 06:12:06 2006 +0000
 
     Include $(top_srcdir), $(top_srcdir)/src before anything else.
     Shuffle order of includes for building out of srcdir on win32.
@@ -16048,7 +21014,7 @@ Date:   Tue Apr 25 06:12:06 2006 +0000
 
 commit f045376c0831f068e8fd8fd61773a5ed83dede7f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 25 05:57:41 2006 +0000
+Date:   Tue Apr 25 05:57:41 2006 +0000
 
     Include $(top_srcdir), $(top_srcdir)/src before anything else.
     Shuffle order of includes for building out of srcdir on win32.
@@ -16057,29 +21023,29 @@ Date: Tue Apr 25 05:57:41 2006 +0000
  fc-cache/fc-cache.c | 15 ++++++++-------
  fc-cat/fc-cat.c     | 17 +++++++++--------
  fc-match/fc-match.c | 11 ++++++-----
- src/Makefile.am     | 6 +++---
- src/fccache.c      |  2 +-
- src/fccfg.c        |  2 +-
- src/fccharset.c     | 2 +-
- src/fcdbg.c        |  2 +-
- src/fcfreetype.c    | 2 +-
- src/fcfs.c         |  2 +-
- src/fcinit.c       |  2 +-
- src/fclist.c       |  2 +-
- src/fcmatch.c      |  2 +-
- src/fcmatrix.c      | 2 +-
- src/fcname.c       |  2 +-
- src/fcpat.c        |  2 +-
- src/fcstr.c        |  2 +-
- src/fcxml.c        |  2 +-
+ src/Makefile.am     |  6 +++---
+ src/fccache.c       |  2 +-
+ src/fccfg.c         |  2 +-
+ src/fccharset.c     |  2 +-
+ src/fcdbg.c         |  2 +-
+ src/fcfreetype.c    |  2 +-
+ src/fcfs.c          |  2 +-
+ src/fcinit.c        |  2 +-
+ src/fclist.c        |  2 +-
+ src/fcmatch.c       |  2 +-
+ src/fcmatrix.c      |  2 +-
+ src/fcname.c        |  2 +-
+ src/fcpat.c         |  2 +-
+ src/fcstr.c         |  2 +-
+ src/fcxml.c         |  2 +-
  18 files changed, 40 insertions(+), 37 deletions(-)
 
 commit 55e145b0250e5c233d9fed1f8f5efe690374cdf2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 20 16:57:50 2006 +0000
+Date:   Thu Apr 20 16:57:50 2006 +0000
 
     Prevent terrible perf regression by getting the if-condition right
-       (reported by Wouter Bolsterlee).
+        (reported by Wouter Bolsterlee).
 
  ChangeLog     | 8 +++++++-
  src/fcmatch.c | 2 +-
@@ -16087,7 +21053,7 @@ Date:   Thu Apr 20 16:57:50 2006 +0000
 
 commit 93f67dfc73601ea2f73c1fa2d9f4f13a84cf1232
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 19 16:53:50 2006 +0000
+Date:   Wed Apr 19 16:53:50 2006 +0000
 
     Dominic Lachowicz <cinamod@hotmail.com>
     Implement mmap-like code for Windows using MapViewOfFile.
@@ -16098,7 +21064,7 @@ Date:   Wed Apr 19 16:53:50 2006 +0000
 
 commit 56f8358364ad9078d99a35a12d7734884b8fccc2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 19 16:17:46 2006 +0000
+Date:   Wed Apr 19 16:17:46 2006 +0000
 
     Bump version to 2.3.95.
 
@@ -16107,20 +21073,20 @@ Date: Wed Apr 19 16:17:46 2006 +0000
 
 commit c001a192af784a3e7aa680cc925a4f6fc8f5b502
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 19 16:17:19 2006 +0000
+Date:   Wed Apr 19 16:17:19 2006 +0000
 
     Bail gracefully if the cache file does not contain enough data.
 
- ChangeLog              |  5 +++++
- README                         | 23 +++++++++++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  5 +++++
+ README                  | 23 +++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
- src/fccache.c          | 19 ++++++++++++++++++-
+ src/fccache.c           | 19 ++++++++++++++++++-
  5 files changed, 46 insertions(+), 5 deletions(-)
 
 commit a77572948ed9ce3e7fdffcfadd8772a5f962e4ed
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Apr 15 00:25:20 2006 +0000
+Date:   Sat Apr 15 00:25:20 2006 +0000
 
     Give the 'Standard Symbols L' match a strong (vs. weak) binding.
 
@@ -16130,10 +21096,10 @@ Date: Sat Apr 15 00:25:20 2006 +0000
 
 commit 8cfa0bbc822169c5c2dae8a0e089c225c5944558
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 14 18:35:16 2006 +0000
+Date:   Fri Apr 14 18:35:16 2006 +0000
 
     Fix Gecko-exposed segfault from my last hack to FcObjectToPtrLookup.
-       Simplify code and get things straight.
+        Simplify code and get things straight.
 
  ChangeLog    |  6 ++++++
  src/fcname.c | 20 +++++---------------
@@ -16141,11 +21107,11 @@ Date: Fri Apr 14 18:35:16 2006 +0000
 
 commit b43dbbdc92fc81d6f8e54b30c2d5062c1a20a105
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 14 15:40:58 2006 +0000
+Date:   Fri Apr 14 15:40:58 2006 +0000
 
     Actually, just add URW fonts as aliases for all of the PostScript
     fonts.
-       (reported by Miguel Rodriguez).
+        (reported by Miguel Rodriguez).
 
  ChangeLog     |  6 ++++++
  fonts.conf.in | 36 ++++++++++++++++++++++++++++++------
@@ -16153,7 +21119,7 @@ Date:   Fri Apr 14 15:40:58 2006 +0000
 
 commit ca2556f2632f80ae4ed7e5c9e5f5bf8f3e738992
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 14 14:51:22 2006 +0000
+Date:   Fri Apr 14 14:51:22 2006 +0000
 
     Add an alias 'Standard Symbols L' for 'Symbol'.
 
@@ -16163,28 +21129,28 @@ Date: Fri Apr 14 14:51:22 2006 +0000
 
 commit 2f02e38361b24032945e24f7f8480999bf9df1e2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 12 14:36:36 2006 +0000
+Date:   Wed Apr 12 14:36:36 2006 +0000
 
     Fix memory leak (Coverity defect #2089).
     Ignore script if subtable is missing (Coverity defect #2088).
     Fix possible null pointer dereference (Coverity defect #784)
     and memory
-       leak (Coverity defects #785, #786).
+        leak (Coverity defects #785, #786).
     Don't copy FcCharSet if we're going to throw it away anyway. (Reported
     by
-       Kenichi Handa).
+        Kenichi Handa).
     reviewed by: plam
 
- ChangeLog       | 21 +++++++++++++++++++++
- src/fccfg.c     |  4 +++-
+ ChangeLog        | 21 +++++++++++++++++++++
+ src/fccfg.c      |  4 +++-
  src/fcfreetype.c |  5 +----
- src/fcmatch.c   | 33 ++++++++++++++++++++-------------
- src/fcpat.c     |  7 ++++++-
+ src/fcmatch.c    | 33 ++++++++++++++++++++-------------
+ src/fcpat.c      |  7 ++++++-
  5 files changed, 51 insertions(+), 19 deletions(-)
 
 commit a56e89ab4f21aa6288345c63d2c43e55561632e0
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 12 03:02:57 2006 +0000
+Date:   Wed Apr 12 03:02:57 2006 +0000
 
     Fix bad behaviour on realloc resulting in crash.
     reviewed by: plam
@@ -16195,7 +21161,7 @@ Date:   Wed Apr 12 03:02:57 2006 +0000
 
 commit 5c90509c073b3879fd9e3a2dc9dddeb724757ccf
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Apr 12 02:38:28 2006 +0000
+Date:   Wed Apr 12 02:38:28 2006 +0000
 
     Don't crash if config is null (Coverity defect #984).
 
@@ -16205,26 +21171,26 @@ Date: Wed Apr 12 02:38:28 2006 +0000
 
 commit 2de24638b23f65b5586cebe3e9d9f4577a40673e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 11 16:54:24 2006 +0000
+Date:   Tue Apr 11 16:54:24 2006 +0000
 
     Missing bits from previous patches.
     Remove extra semi-colon.
     Fix memory leak in error case (Coverity defects #776, #985).
     Fix memory leaks (Coverity defects #779, #781) and memory use
     after free
-       (Coverity defect #780).
+        (Coverity defect #780).
     reviewed by: plam
 
- ChangeLog      | 18 ++++++++++++++++++
- src/fccfg.c    | 13 +++++++++----
+ ChangeLog       | 18 ++++++++++++++++++
+ src/fccfg.c     | 13 +++++++++----
  src/fccharset.c |  5 ++++-
- src/fclang.c   |  1 +
- src/fcxml.c    |  4 +++-
+ src/fclang.c    |  1 +
+ src/fcxml.c     |  4 +++-
  5 files changed, 35 insertions(+), 6 deletions(-)
 
 commit 04f7d3e7fd5069965bc74e678fc51b0412d15aa9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 11 14:20:59 2006 +0000
+Date:   Tue Apr 11 14:20:59 2006 +0000
 
     Properly convert static charsets to dynamic charsets.
     Fix memory leak in error case (Coverity defects #1820, #1821, #1822).
@@ -16235,45 +21201,45 @@ Date: Tue Apr 11 14:20:59 2006 +0000
     Remove dead code (Coverity defect #1194).
     Prevent potential null pointer access (Coverity defect #767),
     ensure error
-       value is read (Coverity defect #1195).
+        value is read (Coverity defect #1195).
     reviewed by: plam
 
- ChangeLog        | 29 +++++++++++++++++++++++++++++
+ ChangeLog         | 29 +++++++++++++++++++++++++++++
  fc-cat/fc-cat.c   |  4 +++-
  fc-lang/fc-lang.c |  3 +++
  src/fccharset.c   |  5 +++++
  src/fcfreetype.c  |  6 ++++--
- src/fclang.c     |  8 +++++++-
- src/fcname.c     |  8 --------
- src/fcpat.c      | 11 ++++++++++-
+ src/fclang.c      |  8 +++++++-
+ src/fcname.c      |  8 --------
+ src/fcpat.c       | 11 ++++++++++-
  8 files changed, 61 insertions(+), 13 deletions(-)
 
 commit af2ad236f037c7a53e73b9454f620de1a52f0422
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Apr 11 05:08:26 2006 +0000
+Date:   Tue Apr 11 05:08:26 2006 +0000
 
     Survive missing docbook2pdf.
     reviewed by: plam
 
- ChangeLog      | 11 +++++++++--
+ ChangeLog       | 11 +++++++++--
  doc/Makefile.am | 10 ++++++----
  2 files changed, 15 insertions(+), 6 deletions(-)
 
 commit 67ed0b729718233662255a181bdcdb136c04dc5b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 22:08:35 2006 +0000
+Date:   Mon Apr 10 22:08:35 2006 +0000
 
     Include more stub definitions to make HP-UX's C compiler happy.
 
- ChangeLog                  | 7 +++++++
- fc-case/fc-case.c          | 3 +++
+ ChangeLog                   | 7 +++++++
+ fc-case/fc-case.c           | 3 +++
  fc-glyphname/fc-glyphname.c | 3 +++
- fc-lang/fc-lang.c          | 3 +++
+ fc-lang/fc-lang.c           | 3 +++
  4 files changed, 16 insertions(+)
 
 commit ac0010940e626cb9193bb4ad0271f3820c7225ee
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 21:04:54 2006 +0000
+Date:   Mon Apr 10 21:04:54 2006 +0000
 
     Swap typo in order of ALIGN and dereferencing, fixing bug 6529.
 
@@ -16283,7 +21249,7 @@ Date:   Mon Apr 10 21:04:54 2006 +0000
 
 commit 3ea92166a0e45b0c7d7e9ecc0546317640c50336
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 19:33:03 2006 +0000
+Date:   Mon Apr 10 19:33:03 2006 +0000
 
     Fix string memory leak (Coverity defect #1823).
     Fix memory leak with hash collision (Coverity defect #1824).
@@ -16296,7 +21262,7 @@ Date:   Mon Apr 10 19:33:03 2006 +0000
 
 commit c814c301ee4dcc67eeacee9608fb716e67534356
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 16:12:55 2006 +0000
+Date:   Mon Apr 10 16:12:55 2006 +0000
 
     Don't leak header in non-error case (Coverity defect #1825).
     reviewed by: plam
@@ -16307,20 +21273,20 @@ Date: Mon Apr 10 16:12:55 2006 +0000
 
 commit 65448e8b2af9bec38f86ab45916a9bcc7726ae30
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 16:06:42 2006 +0000
+Date:   Mon Apr 10 16:06:42 2006 +0000
 
     src/fcdir.c (FcDirScanConfig) Don't leak in error cases (Coverity
     defects
-       #777, #1826)
+        #777, #1826)
     reviewed by: plam
 
- ChangeLog   | 6 ++++++
+ ChangeLog   |  6 ++++++
  src/fcdir.c | 54 +++++++++++++++++++++++++++++++++++++-----------------
  2 files changed, 43 insertions(+), 17 deletions(-)
 
 commit ae2aafe6028be658bd1de0fe2dd309799bf575f7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Apr 10 15:46:34 2006 +0000
+Date:   Mon Apr 10 15:46:34 2006 +0000
 
     Fix double free (spotted by Coverity, CID #1965).
     Check if pattern is not null before using it (Coverity defect #1883).
@@ -16329,21 +21295,21 @@ Date: Mon Apr 10 15:46:34 2006 +0000
     Don't leak directory name (Coverity defect #1827).
     reviewed by: plam
 
- ChangeLog          | 18 ++++++++++++++++++
- fc-match/fc-match.c | 6 ++++--
- src/fccache.c      | 10 +++++++---
- src/fccfg.c        |  1 +
+ ChangeLog           | 18 ++++++++++++++++++
+ fc-match/fc-match.c |  6 ++++--
+ src/fccache.c       | 10 +++++++---
+ src/fccfg.c         |  1 +
  4 files changed, 30 insertions(+), 5 deletions(-)
 
 commit 86abd75965f598dba79a3df68e7bc4c5082a5764
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 18:07:51 2006 +0000
+Date:   Fri Apr 7 18:07:51 2006 +0000
 
     LD_ADD missing dependencies for binaries. Reported by Edson Alves
     Pereira.
     reviewed by: plam
 
- ChangeLog           | 10 ++++++++++
+ ChangeLog            | 10 ++++++++++
  fc-cache/Makefile.am |  2 +-
  fc-cat/Makefile.am   |  2 +-
  fc-list/Makefile.am  |  3 +--
@@ -16352,52 +21318,52 @@ Date: Fri Apr 7 18:07:51 2006 +0000
 
 commit f23f5f388d93655af972083513ba4d505ec4f449
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 17:37:09 2006 +0000
+Date:   Fri Apr 7 17:37:09 2006 +0000
 
     SGI compilation fixes (reported by Christoph Bauer):
     1) reorder union definition of _FcChar;
     2) omit .stats =.
 
- ChangeLog        | 8 ++++++++
+ ChangeLog         | 8 ++++++++
  fc-lang/fc-lang.c | 2 +-
- src/fcint.h      | 8 ++++----
+ src/fcint.h       | 8 ++++----
  3 files changed, 13 insertions(+), 5 deletions(-)
 
 commit 44415a079a3e9951e0c2424edca4907a93a60db5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 17:27:39 2006 +0000
+Date:   Fri Apr 7 17:27:39 2006 +0000
 
     Portability fixes for HP-UX (reported by Christoph Bauer). Replace
-       '__inline__' by AC_C_INLINE and 'inline'. Replace '__alignof__' by
-       'fc_alignof'.
+        '__inline__' by AC_C_INLINE and 'inline'. Replace '__alignof__' by
+        'fc_alignof'.
     reviewed by: plam
 
- ChangeLog      | 15 +++++++++++++++
- configure.in   |  1 +
+ ChangeLog       | 15 +++++++++++++++
+ configure.in    |  1 +
  src/fccharset.c |  4 ++--
- src/fcfs.c     |  2 +-
- src/fcint.h    | 15 +++++++++------
- src/fclang.c   |  2 +-
- src/fcname.c   |  2 +-
- src/fcpat.c    |  6 +++---
+ src/fcfs.c      |  2 +-
+ src/fcint.h     | 15 +++++++++------
+ src/fclang.c    |  2 +-
+ src/fcname.c    |  2 +-
+ src/fcpat.c     |  6 +++---
  8 files changed, 33 insertions(+), 14 deletions(-)
 
 commit 91fe51b4f8cf792041bc5cad34797b87abd63e67
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 17:06:55 2006 +0000
+Date:   Fri Apr 7 17:06:55 2006 +0000
 
     Move up #include of config.h. Fail if neither inttypes.h nor
     stdint.h is
-       available. Fixes bug 6171.
+        available. Fixes bug 6171.
     reviewed by: plam
 
- ChangeLog   | 8 ++++++++
+ ChangeLog   |  8 ++++++++
  src/fcint.h | 11 +++++++----
  2 files changed, 15 insertions(+), 4 deletions(-)
 
 commit d6217cc6bcce0768ce1e01c077e90967ff91db5a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 04:42:32 2006 +0000
+Date:   Fri Apr 7 04:42:32 2006 +0000
 
     Patrick Lam <plam@mit.edu>
     Make fontconfig compile under MinGW:
@@ -16407,11 +21373,11 @@ Date: Fri Apr 7 04:42:32 2006 +0000
     4) use chsize instead of ftruncate; and
     5) update libtool exports file
 
- ChangeLog            |  18 +++
- configure.in         |   3 +-
+ ChangeLog             |  18 +++
+ configure.in          |   3 +-
  fc-cache/fc-cache.c   |   7 +
  fc-cat/fc-cat.c       |   1 -
- src/fccache.c        |  74 +++++++++-
+ src/fccache.c         |  74 +++++++++-
  src/fcfreetype.c      |   3 +-
  src/fontconfig.def.in | 370
  ++++++++++++++++++++++++++++++++++----------------
@@ -16419,7 +21385,7 @@ Date:   Fri Apr 7 04:42:32 2006 +0000
 
 commit 3a342c5a6ca6c27fdddf0c669392b7ab1d6e3f7e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Apr 7 04:19:49 2006 +0000
+Date:   Fri Apr 7 04:19:49 2006 +0000
 
     Eliminate warning.
 
@@ -16429,68 +21395,68 @@ Date: Fri Apr 7 04:19:49 2006 +0000
 
 commit e79c648c7a27a1afdde813105d0727e3ee6bc9fd
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 6 05:15:08 2006 +0000
+Date:   Thu Apr 6 05:15:08 2006 +0000
 
     file fc-match.sgml was initially added on branch fc-2_4_branch.
 
 commit 8b4e7628e1d8baca4f55fcdd76101b8b3e015044
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 6 05:15:08 2006 +0000
+Date:   Thu Apr 6 05:15:08 2006 +0000
 
     Update documentation for fc-match (SGML-ize it). (reported by Ilya
-       Konstantinov)
+        Konstantinov)
 
- ChangeLog             |   8 +++
- fc-match/.cvsignore   |   1 +
- fc-match/Makefile.am  |  27 +++++++-
- fc-match/fc-match.1   |  37 -----------
+ ChangeLog              |   8 +++
+ fc-match/.cvsignore    |   1 +
+ fc-match/Makefile.am   |  27 +++++++-
+ fc-match/fc-match.1    |  37 -----------
  fc-match/fc-match.sgml | 169
  +++++++++++++++++++++++++++++++++++++++++++++++++
  5 files changed, 203 insertions(+), 39 deletions(-)
 
 commit 392fa276dcae8d4c66607bbbd8dd30354a331afc
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 6 04:52:21 2006 +0000
+Date:   Thu Apr 6 04:52:21 2006 +0000
 
     Reduce amount of dirty rss by const'ing some data structures.
     Don't fail if we can't create or remove $(pkgcachedir) i.e.
-       /var/cache/fontconfig. (reported by Quanah Gibson-Mount).
+        /var/cache/fontconfig. (reported by Quanah Gibson-Mount).
     reviewed by: plam
 
- ChangeLog           | 15 +++++++++++++++
+ ChangeLog            | 15 +++++++++++++++
  fc-cache/Makefile.am |  4 ++--
  src/fcdefault.c      |  2 +-
- src/fcpat.c         |  2 +-
- src/fcxml.c         |  2 +-
+ src/fcpat.c          |  2 +-
+ src/fcxml.c          |  2 +-
  5 files changed, 20 insertions(+), 5 deletions(-)
 
 commit 0d745819a9ec491349d4e122a7d44d689b2d3479
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Apr 6 04:33:11 2006 +0000
+Date:   Thu Apr 6 04:33:11 2006 +0000
 
     Fix intel compiler warnings: make many variables static, eliminate
-       duplicate names, reduce variable scopes, unsigned/signed printf
-       formatting.
+        duplicate names, reduce variable scopes, unsigned/signed printf
+        formatting.
     reviewed by: plam
 
- ChangeLog                  | 16 ++++++++++++++++
- fc-case/fc-case.c          |  8 ++++----
+ ChangeLog                   | 16 ++++++++++++++++
+ fc-case/fc-case.c           |  8 ++++----
  fc-glyphname/fc-glyphname.c | 12 ++++++------
- fc-lang/fc-lang.c          |  8 ++++----
- fc-match/fc-match.c        |  2 +-
- src/fccache.c              | 11 ++++++-----
- src/fcfreetype.c           |  4 +---
- src/fclang.c               |  5 ++---
- src/fcxml.c                | 14 +++++++-------
+ fc-lang/fc-lang.c           |  8 ++++----
+ fc-match/fc-match.c         |  2 +-
+ src/fccache.c               | 11 ++++++-----
+ src/fcfreetype.c            |  4 +---
+ src/fclang.c                |  5 ++---
+ src/fcxml.c                 | 14 +++++++-------
  9 files changed, 47 insertions(+), 33 deletions(-)
 
 commit b17cf498be69f483e6355ae468f7239165df3ffb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 24 15:21:10 2006 +0000
+Date:   Fri Mar 24 15:21:10 2006 +0000
 
     Fix multiarch support (don't destroy multiarch files!)
     Require pkg-config. (Thanks Behdad; better solution wanted for libxml2
-       detection!)
+        detection!)
     reviewed by: plam
 
  ChangeLog     | 12 ++++++++++++
@@ -16501,27 +21467,27 @@ Date: Fri Mar 24 15:21:10 2006 +0000
 
 commit ba76916ff64d476d5c5564e46a5d4209cb942864
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Mar 23 04:22:28 2006 +0000
+Date:   Thu Mar 23 04:22:28 2006 +0000
 
     On Windows, unlink before rename. Reported by Tim Evans.
 
- ChangeLog     | 5 +++++
+ ChangeLog      | 5 +++++
  src/fcatomic.c | 3 +++
  2 files changed, 8 insertions(+)
 
 commit c02218223153b3022071e789def3fde8b556d6d6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Mar 23 04:21:10 2006 +0000
+Date:   Thu Mar 23 04:21:10 2006 +0000
 
     On Windows, unlink before rename. Reported by Tim Evans.
 
- ChangeLog     | 5 +++++
+ ChangeLog      | 5 +++++
  src/fcatomic.c | 3 +++
  2 files changed, 8 insertions(+)
 
 commit d8fda87d5e306eea6b07d0e4f8c6fb1cc2f25804
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 15 15:59:33 2006 +0000
+Date:   Wed Mar 15 15:59:33 2006 +0000
 
     Fix typos in orth files. Reported by Denis Jacquerye.
 
@@ -16531,23 +21497,23 @@ Date: Wed Mar 15 15:59:33 2006 +0000
 
 commit 04af4f56dcaa6bdfbc67c0bc184ac88ccdfb03c1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 15 15:58:59 2006 +0000
+Date:   Wed Mar 15 15:58:59 2006 +0000
 
     Fix typos in orth files. Reported by Denis Jacquerye.
 
- ChangeLog       | 6 ++++++
+ ChangeLog        | 6 ++++++
  fc-lang/ab.orth  | 2 +-
  fc-lang/ibo.orth | 2 +-
  3 files changed, 8 insertions(+), 2 deletions(-)
 
 commit fd11da8464309d6d562bdf2cd59e22cc3763c65a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 20:57:39 2006 +0000
+Date:   Wed Mar 8 20:57:39 2006 +0000
 
     Fix Makefile.am for removal of debian/ directory.
 
- ChangeLog          |  7 +++++++
- Makefile.am        | 35 +----------------------------------
+ ChangeLog           |  7 +++++++
+ Makefile.am         | 35 +----------------------------------
  config/config.guess | 51
  +++++++++++++++++++++++++++++++++++++++++----------
  config/config.sub   | 47 ++++++++++++++++++++++++++++++++++++++---------
@@ -16555,7 +21521,7 @@ Date:   Wed Mar 8 20:57:39 2006 +0000
 
 commit c957abedc73ac8f22bc56e04342ff3bb6cb29ad1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 20:38:39 2006 +0000
+Date:   Wed Mar 8 20:38:39 2006 +0000
 
     .cvsignore
     Ignore debian/ directory for CVS.
@@ -16566,74 +21532,74 @@ Date: Wed Mar 8 20:38:39 2006 +0000
 
 commit dcd49fcc23239be8fc0c3ca62a5fd3e059f19c02
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 20:33:42 2006 +0000
+Date:   Wed Mar 8 20:33:42 2006 +0000
 
     debian/*
     Now remove debian/ directory.
 
- ChangeLog                        |   5 +
- debian/README.Debian             |  45 ---
- debian/changelog                 | 718
+ ChangeLog                         |   5 +
+ debian/README.Debian              |  45 ---
+ debian/changelog                  | 718
  --------------------------------------
- debian/compat                    |   1 -
- debian/control                           |  80 -----
- debian/copyright                 |  29 --
+ debian/compat                     |   1 -
+ debian/control                    |  80 -----
+ debian/copyright                  |  29 --
  debian/fontconfig-udeb.install    |   3 -
- debian/fontconfig.config         |  10 -
- debian/fontconfig.defoma         | 162 ---------
- debian/fontconfig.dirs                   |   1 -
- debian/fontconfig.install        |   7 -
- debian/fontconfig.postinst       | 145 --------
- debian/fontconfig.postrm         |  26 --
- debian/fontconfig.templates      |  27 --
+ debian/fontconfig.config          |  10 -
+ debian/fontconfig.defoma          | 162 ---------
+ debian/fontconfig.dirs            |   1 -
+ debian/fontconfig.install         |   7 -
+ debian/fontconfig.postinst        | 145 --------
+ debian/fontconfig.postrm          |  26 --
+ debian/fontconfig.templates       |  27 --
  debian/libfontconfig1-dev.install |   7 -
- debian/libfontconfig1.install    |   1 -
- debian/local.conf.md5sum         |  18 -
- debian/rules                     |  40 ---
+ debian/libfontconfig1.install     |   1 -
+ debian/local.conf.md5sum          |  18 -
+ debian/rules                      |  40 ---
  18 files changed, 5 insertions(+), 1320 deletions(-)
 
 commit ccda304eac0cafabb765a8b04d3f0b9f0c9e8944
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 20:32:56 2006 +0000
+Date:   Wed Mar 8 20:32:56 2006 +0000
 
     debian/po/*
     .cvsignore
     Remove debian/ directory from sources. See Debian's subversion
     server at
-       svn://svn.debian.org/pkg-freedesktop/trunk/fontconfig instead.
-
- ChangeLog              |   8 +++
- debian/po/POTFILES.in  |   1 -
- debian/po/cs.po        | 127 -------------------------------------
- debian/po/da.po        | 146 -------------------------------------------
- debian/po/de.po        | 124 ------------------------------------
- debian/po/es.po        | 163
+        svn://svn.debian.org/pkg-freedesktop/trunk/fontconfig instead.
+
+ ChangeLog               |   8 +++
+ debian/po/POTFILES.in   |   1 -
+ debian/po/cs.po         | 127 -------------------------------------
+ debian/po/da.po         | 146 -------------------------------------------
+ debian/po/de.po         | 124 ------------------------------------
+ debian/po/es.po         | 163
  ------------------------------------------------
- debian/po/fr.po        | 159
+ debian/po/fr.po         | 159
  ----------------------------------------------
- debian/po/ja.po        |  88 --------------------------
- debian/po/nl.po        | 125 -------------------------------------
- debian/po/pt.po        | 112 ---------------------------------
- debian/po/pt_BR.po     | 148 -------------------------------------------
+ debian/po/ja.po         |  88 --------------------------
+ debian/po/nl.po         | 125 -------------------------------------
+ debian/po/pt.po         | 112 ---------------------------------
+ debian/po/pt_BR.po      | 148 -------------------------------------------
  debian/po/templates.pot |  84 -------------------------
- debian/po/tr.po        | 117 ----------------------------------
- debian/po/zh_CN.po     | 115 ----------------------------------
+ debian/po/tr.po         | 117 ----------------------------------
+ debian/po/zh_CN.po      | 115 ----------------------------------
  14 files changed, 8 insertions(+), 1509 deletions(-)
 
 commit 72b3e80625b6706edc1204fe1015b21c8d8300b8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 19:27:25 2006 +0000
+Date:   Wed Mar 8 19:27:25 2006 +0000
 
     file ln.orth was initially added on branch fc-2_4_branch.
 
 commit 2509fc7ac15e02992fe5c51f1c58d2f396447883
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 19:27:25 2006 +0000
+Date:   Wed Mar 8 19:27:25 2006 +0000
 
     Add orthography for Lingala.
     reviewed by: plam
 
- ChangeLog       |  8 ++++++++
+ ChangeLog        |  8 ++++++++
  fc-lang/iso639-1 |  2 +-
  fc-lang/iso639-2 |  2 +-
  fc-lang/ln.orth  | 43 +++++++++++++++++++++++++++++++++++++++++++
@@ -16641,69 +21607,69 @@ Date: Wed Mar 8 19:27:25 2006 +0000
 
 commit 37e3f33c7ec32432260b0ef750ac415763d6044f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 19:19:05 2006 +0000
+Date:   Wed Mar 8 19:19:05 2006 +0000
 
     Sort directory entries while scanning them from disk; prevents
     Heisenbugs
-       due to file ordering in a directory.
+        due to file ordering in a directory.
     reviewed by: plam
 
- ChangeLog   | 8 ++++++++
+ ChangeLog   |  8 ++++++++
  src/fcdir.c | 45 ++++++++++++++++++++++++++++++++++++++++++---
  2 files changed, 50 insertions(+), 3 deletions(-)
 
 commit e01166d52a1a597f32b57ac47154332c0c6ab1bf
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 19:16:10 2006 +0000
+Date:   Wed Mar 8 19:16:10 2006 +0000
 
     Add a configuration file that disables hinting for the Lohit
     Gujarati font
-       (since the hinting distort some glyphs quite badly).
+        (since the hinting distort some glyphs quite badly).
     reviewed by: keithp
 
- ChangeLog         | 9 +++++++++
+ ChangeLog          | 9 +++++++++
  conf.d/Makefile.am | 1 +
  2 files changed, 10 insertions(+)
 
 commit e3c6d3364c79838e5c30de072b97f7f091b1f81d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 19:10:57 2006 +0000
+Date:   Wed Mar 8 19:10:57 2006 +0000
 
     Sort directory entries while scanning them from disk; prevents
     Heisenbugs
-       due to file ordering in a directory.
+        due to file ordering in a directory.
     reviewed by: plam
 
- ChangeLog   | 8 ++++++++
+ ChangeLog   |  8 ++++++++
  src/fcdir.c | 44 +++++++++++++++++++++++++++++++++++++++++---
  2 files changed, 49 insertions(+), 3 deletions(-)
 
 commit d8951c0cc2474176910277e8ca840fba5d8f3655
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Mar 8 02:30:43 2006 +0000
+Date:   Wed Mar 8 02:30:43 2006 +0000
 
     Remove stuff we don't use, make get_{char,short,long} functions
     of ftglue
-       macros to be inlined.
+        macros to be inlined.
     Code cleanups (excess prototype, old-style function definition).
     reviewed by: plam
 
- ChangeLog       | 14 ++++++++++++++
+ ChangeLog        | 14 ++++++++++++++
  src/fcfreetype.c |  8 ++++----
- src/fcint.h     |  3 ---
- src/fcname.c    |  2 +-
- src/ftglue.c    | 55
+ src/fcint.h      |  3 ---
+ src/fcname.c     |  2 +-
+ src/ftglue.c     | 55
  ++++++++-----------------------------------------------
- src/ftglue.h    | 39 +++++++++++----------------------------
+ src/ftglue.h     | 39 +++++++++++----------------------------
  6 files changed, 38 insertions(+), 83 deletions(-)
 
 commit 9226e04c69d7cb472999b1d8bc0cfa3c28054ebe
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Mar 5 15:33:46 2006 +0000
+Date:   Sun Mar 5 15:33:46 2006 +0000
 
     Because we hacked FcPatternGet, we don't really need to expand
     the filename
-       again in FcPatternGetString.
+        again in FcPatternGetString.
 
  ChangeLog   | 6 ++++++
  src/fcpat.c | 3 ---
@@ -16711,20 +21677,20 @@ Date: Sun Mar 5 15:33:46 2006 +0000
 
 commit 618adbaf7bbad8441efb589417d7144476f828c7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Mar 5 06:05:50 2006 +0000
+Date:   Sun Mar 5 06:05:50 2006 +0000
 
     Ok, so some people (wine!) use FcPatternGet to fetch FC_FILE. Make
     that
-       work. Reported by Bernhard Rosenkraenzer.
+        work. Reported by Bernhard Rosenkraenzer.
 
- ChangeLog   | 6 +++++
+ ChangeLog   |  6 +++++
  src/fcpat.c | 73
  +++++++++++++++++++++++++++++++++----------------------------
  2 files changed, 46 insertions(+), 33 deletions(-)
 
 commit dc70c15aba6d14dbd5ce8bcd1bc36a39602fbc2c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 18:35:42 2006 +0000
+Date:   Fri Mar 3 18:35:42 2006 +0000
 
     Include inttypes.h instead of stdint.h if appropriate.
 
@@ -16734,52 +21700,52 @@ Date: Fri Mar 3 18:35:42 2006 +0000
 
 commit ead55be0eddcaa60ed3f7147091ada276e891ed9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 18:19:04 2006 +0000
+Date:   Fri Mar 3 18:19:04 2006 +0000
 
     More stub definitions and remove FcFileIsDir from fc-cat.
 
- ChangeLog                  |  6 ++++++
- fc-cat/fc-cat.c            | 10 ----------
+ ChangeLog                   |  6 ++++++
+ fc-cat/fc-cat.c             | 10 ----------
  fc-glyphname/fc-glyphname.c | 10 ++++++++++
  3 files changed, 16 insertions(+), 10 deletions(-)
 
 commit c003f5aec37e099d7f5a88d29cc4b2d5f1d002eb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 15:12:12 2006 +0000
+Date:   Fri Mar 3 15:12:12 2006 +0000
 
     Fix compilation on AIX with stub definitions (bug 6097).
 
- ChangeLog        |  5 +++++
+ ChangeLog         |  5 +++++
  fc-case/fc-case.c | 10 ++++++++++
  2 files changed, 15 insertions(+)
 
 commit bb6b19938e2c9d115abd4f36439c365b63713bb1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 06:35:53 2006 +0000
+Date:   Fri Mar 3 06:35:53 2006 +0000
 
     Get rid of C++-style comments.
 
- ChangeLog       | 8 ++++++++
- src/fccache.c   | 4 ++--
+ ChangeLog        | 8 ++++++++
+ src/fccache.c    | 4 ++--
  src/fcfreetype.c | 2 +-
- src/fcfs.c      | 8 ++++----
- src/fcpat.c     | 5 +++--
+ src/fcfs.c       | 8 ++++----
+ src/fcpat.c      | 5 +++--
  5 files changed, 18 insertions(+), 9 deletions(-)
 
 commit 5b4a40a955c9607e80a8da5a42a0da5923e3c509
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 06:12:55 2006 +0000
+Date:   Fri Mar 3 06:12:55 2006 +0000
 
     debian/changelog
     Enable creation of 2.3.94 Debian packages.
 
- ChangeLog       | 5 +++++
+ ChangeLog        | 5 +++++
  debian/changelog | 5 +++++
  2 files changed, 10 insertions(+)
 
 commit b36f2a39d0ad08d5ee6757f2e419021e63b39ea4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Mar 3 06:11:31 2006 +0000
+Date:   Fri Mar 3 06:11:31 2006 +0000
 
     Fix suspicious return expression which causes junk to be returned.
     reviewed by: plam
@@ -16790,137 +21756,137 @@ Date:       Fri Mar 3 06:11:31 2006 +0000
 
 commit b152a85bdc5c911883af4b0e7930cbe12531d179
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 24 19:32:58 2006 +0000
+Date:   Fri Feb 24 19:32:58 2006 +0000
 
     Fix placement of @s.
 
- ChangeLog   | 5 +++++
+ ChangeLog   |  5 +++++
  Makefile.am | 14 +++++++-------
  2 files changed, 12 insertions(+), 7 deletions(-)
 
 commit 63d2df3f92b633ba82bfb4fb388062a21e0a0178
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 24 19:19:09 2006 +0000
+Date:   Fri Feb 24 19:19:09 2006 +0000
 
     Bump version to 2.3.94.
 
- ChangeLog              |  8 ++++++++
- README                         | 47
+ ChangeLog               |  8 ++++++++
+ README                  | 47
  +++++++++++++++++++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 55 insertions(+), 4 deletions(-)
 
 commit 639475e873c797792fff63fbd8efd73e2b0695fd
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 24 18:52:17 2006 +0000
+Date:   Fri Feb 24 18:52:17 2006 +0000
 
     Remove unconditional emboldening (per Behdad's instructions).
     Add @s to hide some echos.
 
- ChangeLog                   |  9 +++++++++
- Makefile.am                 | 10 +++++-----
+ ChangeLog                    |  9 +++++++++
+ Makefile.am                  | 10 +++++-----
  conf.d/10-fonts-persian.conf |  6 ------
  3 files changed, 14 insertions(+), 11 deletions(-)
 
 commit 0cfaf27e334e599bb3dcf8f06140e9577718191d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 24 16:41:34 2006 +0000
+Date:   Fri Feb 24 16:41:34 2006 +0000
 
     Takashi Iwai <tiwai@suse.de> reviewed by: plam
     Fix double-free on error case.
 
- ChangeLog       | 8 ++++++++
+ ChangeLog        | 8 ++++++++
  src/fcfreetype.c | 1 +
  2 files changed, 9 insertions(+)
 
 commit cf5cf4cadb35c7ebabf025bf6781f69c390548c8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Feb 22 04:50:16 2006 +0000
+Date:   Wed Feb 22 04:50:16 2006 +0000
 
     Strip \r and whitespace from input; fixes bug 3454.
 
- ChangeLog        |  7 ++++++-
+ ChangeLog         |  7 ++++++-
  fc-lang/fc-lang.c | 11 +++++++----
  2 files changed, 13 insertions(+), 5 deletions(-)
 
 commit 69a3fc78e233957f9e1f6737eccada1494a937ae
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Feb 22 04:09:39 2006 +0000
+Date:   Wed Feb 22 04:09:39 2006 +0000
 
     Allocate large arrays statically in fc-lang to fix crashes under
-       MinGW/MSYS.
+        MinGW/MSYS.
 
- ChangeLog        |  6 ++++++
+ ChangeLog         |  6 ++++++
  fc-lang/fc-lang.c | 18 +++++++++---------
  2 files changed, 15 insertions(+), 9 deletions(-)
 
 commit 656b47f6988e001c5b6fdfee7a38dc8321e71454
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:56:41 2006 +0000
+Date:   Tue Feb 21 15:56:41 2006 +0000
 
     Pass the buck; make fontconfig not crash on pango badness.
 
- ChangeLog       | 5 +++++
+ ChangeLog        | 5 +++++
  src/fcfreetype.c | 4 ++++
  2 files changed, 9 insertions(+)
 
 commit 9fb0e0743eaf44099bdb9b3ff04b5fc7f73792a3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:53:43 2006 +0000
+Date:   Tue Feb 21 15:53:43 2006 +0000
 
     Use embeddedbitmap rather than rh_prefer_bitmap.
 
- ChangeLog                   | 5 +++++
+ ChangeLog                    | 5 +++++
  conf.d/10-fonts-persian.conf | 2 +-
  2 files changed, 6 insertions(+), 1 deletion(-)
 
 commit f2fb985c7a0e51109b1750e166e4244a833ffbe3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:50:19 2006 +0000
+Date:   Tue Feb 21 15:50:19 2006 +0000
 
     Eliminate redundancies.
     reviewed by: plam
 
- ChangeLog       | 11 +++++++++++
- src/fccache.c   |  3 ++-
- src/fcdir.c     |  3 ---
+ ChangeLog        | 11 +++++++++++
+ src/fccache.c    |  3 ++-
+ src/fcdir.c      |  3 ---
  src/fcfreetype.c |  1 -
- src/fcxml.c     |  3 +--
- src/ftglue.c    |  1 -
+ src/fcxml.c      |  3 +--
+ src/ftglue.c     |  1 -
  6 files changed, 14 insertions(+), 8 deletions(-)
 
 commit b023dbd38410521a459758498f99d3a48cdd313d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:40:18 2006 +0000
+Date:   Tue Feb 21 15:40:18 2006 +0000
 
     Eliminate unused vars reported by Intel's compiler.
     reviewed by: plam
 
- ChangeLog        | 10 ++++++++++
+ ChangeLog         | 10 ++++++++++
  fc-list/fc-list.c |  4 ++--
  src/fcfreetype.c  |  3 +--
- src/fcstr.c      |  3 +--
- src/fcxml.c      |  2 --
+ src/fcstr.c       |  3 +--
+ src/fcxml.c       |  2 --
  5 files changed, 14 insertions(+), 8 deletions(-)
 
 commit 2b90aee36399ec13ba3af929311b37d9494adab6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:29:54 2006 +0000
+Date:   Tue Feb 21 15:29:54 2006 +0000
 
     Remove one more archaic character.
     reviewed by: plam
 
- ChangeLog      | 7 +++++++
+ ChangeLog       | 7 +++++++
  fc-lang/ka.orth | 2 +-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit dacf81ed4c541174f0dbfe2898f3309657bf6116
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 15:24:28 2006 +0000
+Date:   Tue Feb 21 15:24:28 2006 +0000
 
     Freeze patterns created by configuration file for tiny memory savings
-       (every little bit helps).
+        (every little bit helps).
     reviewed by: plam, keithp
 
  ChangeLog   | 8 ++++++++
@@ -16929,34 +21895,34 @@ Date: Tue Feb 21 15:24:28 2006 +0000
 
 commit 9769b43d4a4d8fe5480b672124f764e5bac1f4c9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 21 14:12:41 2006 +0000
+Date:   Tue Feb 21 14:12:41 2006 +0000
 
     Initialize fontconfig library in fc-cat to avoid segfault.
     reviewed by: plam
 
- ChangeLog      |  7 +++++++
+ ChangeLog       |  7 +++++++
  fc-cat/fc-cat.c | 11 ++++++++++-
  2 files changed, 17 insertions(+), 1 deletion(-)
 
 commit 530e66b008c0d5b972b54046a5b15e76c8e989b6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 18 18:18:07 2006 +0000
+Date:   Sat Feb 18 18:18:07 2006 +0000
 
     Fix the underlying cause of the below segfault (must usually call
-       FcDirCacheHasCurrentArch after FcDirCacheValid).
+        FcDirCacheHasCurrentArch after FcDirCacheValid).
 
- ChangeLog          | 12 ++++++++++--
- fc-cache/fc-cache.c | 2 ++
- src/fccache.c      |  4 +++-
- src/fcdir.c        |  4 +++-
+ ChangeLog           | 12 ++++++++++--
+ fc-cache/fc-cache.c |  2 ++
+ src/fccache.c       |  4 +++-
+ src/fcdir.c         |  4 +++-
  4 files changed, 18 insertions(+), 4 deletions(-)
 
 commit a68ce9525dedc06fd4da102492e8d1c6137b3664
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 18 17:56:25 2006 +0000
+Date:   Sat Feb 18 17:56:25 2006 +0000
 
     Fix segfault (reported by fcrozat) caused by incorrect input on cache
-       files.
+        files.
 
  ChangeLog     |  6 ++++++
  src/fccache.c | 21 +++++++++++++--------
@@ -16964,7 +21930,7 @@ Date:   Sat Feb 18 17:56:25 2006 +0000
 
 commit 310817371cdd4163c8d2f138e4fc3295ff0afbc5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 17 14:44:42 2006 +0000
+Date:   Fri Feb 17 14:44:42 2006 +0000
 
     Bump up magic version; we changed the binary format.
 
@@ -16974,18 +21940,18 @@ Date: Fri Feb 17 14:44:42 2006 +0000
 
 commit 12f46c42fa583d8e23b8f97eebac77d7b0576ed2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 17 05:47:08 2006 +0000
+Date:   Fri Feb 17 05:47:08 2006 +0000
 
     Enable fc-cat to print out old-style cache info when given a directory
-       name.
+        name.
 
- ChangeLog      |  6 ++++++
+ ChangeLog       |  6 ++++++
  fc-cat/fc-cat.c | 26 +++++++++++++++++++++++++-
  2 files changed, 31 insertions(+), 1 deletion(-)
 
 commit 8c0d692125018052fa228721f30f760dfb0c0adf
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 16 17:50:04 2006 +0000
+Date:   Thu Feb 16 17:50:04 2006 +0000
 
     Deal correctly with changing FC_CACHE_MAGIC.
 
@@ -16995,61 +21961,61 @@ Date: Thu Feb 16 17:50:04 2006 +0000
 
 commit d2c0102944176744e440c4109bf7725240453cc7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 16 15:36:43 2006 +0000
+Date:   Thu Feb 16 15:36:43 2006 +0000
 
     Add -r --really-force option which blows away cache files and then
-       regenerates them.
+        regenerates them.
 
- ChangeLog          |  6 ++++++
+ ChangeLog           |  6 ++++++
  fc-cache/fc-cache.c | 25 ++++++++++++++++++-------
  2 files changed, 24 insertions(+), 7 deletions(-)
 
 commit 719f4b841f9763f2e4aa10a61cb2ffd41d9e8226
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 16 07:12:04 2006 +0000
+Date:   Thu Feb 16 07:12:04 2006 +0000
 
     Don't bail if fontconfig can't remove a dir cache file. Skip the ID
     of a
-       cache file when copying. Eliminate 'source file too small' bug in
-       FcDirCacheWrite.
+        cache file when copying. Eliminate 'source file too small' bug in
+        FcDirCacheWrite.
 
- ChangeLog          |  9 ++++++++-
+ ChangeLog           |  9 ++++++++-
  fc-cache/fc-cache.c | 16 ++++++++++------
- src/fccache.c      |  8 +++-----
+ src/fccache.c       |  8 +++-----
  3 files changed, 21 insertions(+), 12 deletions(-)
 
 commit f8a17f329815cfa5416142811b96d16f2a5cca93
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 13 22:19:30 2006 +0000
+Date:   Mon Feb 13 22:19:30 2006 +0000
 
     Fix memory leak in error condition code.
 
- ChangeLog       | 5 +++++
+ ChangeLog        | 5 +++++
  src/fcfreetype.c | 4 ++--
  2 files changed, 7 insertions(+), 2 deletions(-)
 
 commit 5657098e2940652065fcfd00e4cf2771d7df21ef
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 13 21:51:11 2006 +0000
+Date:   Mon Feb 13 21:51:11 2006 +0000
 
     Skip bitmap fonts which can't even get it together enough to declare a
-       family name; this appears to reproduce previous fontconfig
-       behaviour.
+        family name; this appears to reproduce previous fontconfig
+        behaviour.
     reviewed by: plam
 
- ChangeLog       | 8 ++++++++
+ ChangeLog        | 8 ++++++++
  src/fcfreetype.c | 5 +++++
  2 files changed, 13 insertions(+)
 
 commit d00c3cb5e046dfb04b446d8b0bb10880d190cc13
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 11 05:01:32 2006 +0000
+Date:   Sat Feb 11 05:01:32 2006 +0000
 
     Try to open /var/cache/fontconfig/[hashed name] before fonts.cache-2
     in a
-       directory, because /var/cache/fontconfig failures ought to
-       be fixable,
-       unlike fonts.cache-2 failures, which may leave you screwed.
+        directory, because /var/cache/fontconfig failures ought to
+        be fixable,
+        unlike fonts.cache-2 failures, which may leave you screwed.
     reviewed by: plam
 
  ChangeLog     |  9 +++++++++
@@ -17058,13 +22024,13 @@ Date: Sat Feb 11 05:01:32 2006 +0000
 
 commit 9e07e0a77b6b1c33a52a1ec4d845797e32125baf
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 11 04:50:46 2006 +0000
+Date:   Sat Feb 11 04:50:46 2006 +0000
 
     Use a tri-state to mark the fonts which didn't get blocked but
     were just
-       missing an element, to distinguish them from the fonts that
-       do match
-       the element.
+        missing an element, to distinguish them from the fonts that
+        do match
+        the element.
     reviewed by: plam
 
  ChangeLog     |  8 ++++++++
@@ -17073,11 +22039,11 @@ Date: Sat Feb 11 04:50:46 2006 +0000
 
 commit f11a184104a57c0d68afde8e7458c7b8473b6671
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 10 19:40:11 2006 +0000
+Date:   Fri Feb 10 19:40:11 2006 +0000
 
     Don't kill fonts because they don't declare an element that's
     being matched
-       on.
+        on.
     reviewed by: plam
 
  ChangeLog     | 7 +++++++
@@ -17086,11 +22052,11 @@ Date: Fri Feb 10 19:40:11 2006 +0000
 
 commit 879af7060b24c6d57eb29cf6cfe2f6bb04589261
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 9 18:44:14 2006 +0000
+Date:   Thu Feb 9 18:44:14 2006 +0000
 
     Define and pass O_BINARY to open if appropriate, for those platforms
     that
-       need it. Reported by Doodle.
+        need it. Reported by Doodle.
 
  ChangeLog     |  7 ++++---
  src/fccache.c | 30 +++++++++++++++++-------------
@@ -17098,11 +22064,11 @@ Date: Thu Feb 9 18:44:14 2006 +0000
 
 commit c7490074c57da387904cecfdf60595713c7bb89e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 9 16:19:42 2006 +0000
+Date:   Thu Feb 9 16:19:42 2006 +0000
 
     Fix attempt to close -1. Don't unboundedly grow bad caches
     (reported by
-       fcrozat).
+        fcrozat).
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 8 +++++---
@@ -17110,19 +22076,19 @@ Date: Thu Feb 9 16:19:42 2006 +0000
 
 commit a8c425301aeb8e417b0fa35567b2f8f64b450657
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Feb 9 15:25:57 2006 +0000
+Date:   Thu Feb 9 15:25:57 2006 +0000
 
     Fix problem with missing 'en' due to euro.patch: change cache
     file format
-       slightly to coincide with that generated by fc-lang.
+        slightly to coincide with that generated by fc-lang.
 
- ChangeLog      | 8 ++++++++
+ ChangeLog       | 8 ++++++++
  src/fccharset.c | 8 ++++----
  2 files changed, 12 insertions(+), 4 deletions(-)
 
 commit b10e77628c4d207ac60ae4000b1459ced9228d69
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Feb 8 03:34:17 2006 +0000
+Date:   Wed Feb 8 03:34:17 2006 +0000
 
     Fix warning.
 
@@ -17132,11 +22098,11 @@ Date: Wed Feb 8 03:34:17 2006 +0000
 
 commit 5c3deb2985586a06216afd0e6a0c136d4e67a58b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 22:09:01 2006 +0000
+Date:   Tue Feb 7 22:09:01 2006 +0000
 
     Don't reject dirs that can't be normalized (fixes lilypond, and
     is correct
-       in the context of application font directories.)
+        in the context of application font directories.)
     Use normalized directory name exclusively in FcCacheReadDirs.
     reviewed by: plam
 
@@ -17147,39 +22113,39 @@ Date: Tue Feb 7 22:09:01 2006 +0000
 
 commit efb11b36c4e24a619e7be1790834130ca4113c5b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 21:15:33 2006 +0000
+Date:   Tue Feb 7 21:15:33 2006 +0000
 
     Perf optimizations. Inline FcValueCanonicalize, reduce FcValueListPtrU
-       usage, remove redundant cast.
+        usage, remove redundant cast.
     reviewed by: plam
 
- ChangeLog   | 8 ++++++++
+ ChangeLog   |  8 ++++++++
  src/fcpat.c | 39 +++++++++++++++++++--------------------
  2 files changed, 27 insertions(+), 20 deletions(-)
 
 commit 6cc02fe6b95421f6e97af9008ad9ff4febe80c36
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 20:56:48 2006 +0000
+Date:   Tue Feb 7 20:56:48 2006 +0000
 
     src/fccharset.c (FcLangCharSetPopulate, FcCharSetInsertLeaf)
     Fix missing FcCacheBankToIndex in FcCharSetInsertLeaf. Declare
     extern for
-       static arrays as arrays, not pointers. (Part of the fix for 'fonts
-       don't have en' issue after Euro patch.)
+        static arrays as arrays, not pointers. (Part of the fix for 'fonts
+        don't have en' issue after Euro patch.)
     (I forgot to commit the ChangeLog last time.)
     reviewed by: plam
 
- ChangeLog      | 25 +++++++++++++++++++++++++
+ ChangeLog       | 25 +++++++++++++++++++++++++
  src/fccharset.c |  6 +++---
  2 files changed, 28 insertions(+), 3 deletions(-)
 
 commit a81f23c0cecdc5d4cb7a443fdd4527b5f0dbca8a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 03:53:32 2006 +0000
+Date:   Tue Feb 7 03:53:32 2006 +0000
 
     Fix hidden variable warning.
 
- ChangeLog        | 6 ++++++
+ ChangeLog         | 6 ++++++
  fc-lang/de.orth   | 1 +
  fc-lang/el.orth   | 1 +
  fc-lang/en.orth   | 1 +
@@ -17190,17 +22156,17 @@ Date: Tue Feb 7 03:53:32 2006 +0000
  fc-lang/it.orth   | 1 +
  fc-lang/nl.orth   | 1 +
  fc-lang/pt.orth   | 1 +
- src/fccache.c    | 1 -
+ src/fccache.c     | 1 -
  src/fccharset.c   | 9 +++++----
  13 files changed, 23 insertions(+), 9 deletions(-)
 
 commit 799157dbbf55d1bf13b1e63faf3b530979116aca
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 02:33:57 2006 +0000
+Date:   Tue Feb 7 02:33:57 2006 +0000
 
     Remove de-escaping logic because FcCacheWriteString doesn't escape
     anyway.
-       Do blockwise reading instead of byte-wise for performance.
+        Do blockwise reading instead of byte-wise for performance.
 
  ChangeLog     |  8 +++++++
  src/fccache.c | 72
@@ -17209,7 +22175,7 @@ Date:   Tue Feb 7 02:33:57 2006 +0000
 
 commit 8b413bb62c6743db10e7d210fb7924c9502fd60e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Feb 7 02:22:50 2006 +0000
+Date:   Tue Feb 7 02:22:50 2006 +0000
 
     Takashi Iwai <tiwai@suse.de>
     Don't loop infinitely on recursive symlinks (client-side).
@@ -17220,25 +22186,25 @@ Date: Tue Feb 7 02:22:50 2006 +0000
 
 commit 660acf8f2278df9276c9a1bff3533e9a74fd8c6b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 23:11:41 2006 +0000
+Date:   Mon Feb 6 23:11:41 2006 +0000
 
     Don't loop infinitely on recursive symlinks.
     reviewed by: plam
 
- ChangeLog          |  6 ++++++
+ ChangeLog           |  6 ++++++
  fc-cache/fc-cache.c | 18 ++++++++++++++++++
  2 files changed, 24 insertions(+)
 
 commit fff5a5af30142c933d8e9dddda61a6a994f44c28
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 22:44:02 2006 +0000
+Date:   Mon Feb 6 22:44:02 2006 +0000
 
     Skip subdirs when skipping over stale bits of global cache. Introduce
     state
-       machine into FcGlobalCacheDir to avoid doing inappropriate
-       operations
-       on global dir entries, e.g. writing out an out-of-date cache
-       entry.
+        machine into FcGlobalCacheDir to avoid doing inappropriate
+        operations
+        on global dir entries, e.g. writing out an out-of-date cache
+        entry.
     reviewed by: plam
 
  ChangeLog     |  12 ++++
@@ -17249,32 +22215,32 @@ Date: Mon Feb 6 22:44:02 2006 +0000
 
 commit 98592bbb1dbdb867994dcf463bdd36f98878fffc
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 21:52:15 2006 +0000
+Date:   Mon Feb 6 21:52:15 2006 +0000
 
     Hoist FcFileIsDir check out of FcFileScanConfig loop.
     reviewed by: plam
 
- ChangeLog   | 6 ++++++
+ ChangeLog   |  6 ++++++
  src/fcdir.c | 11 ++++-------
  2 files changed, 10 insertions(+), 7 deletions(-)
 
 commit a0aa54f6ee032efbca25bdf734ba62dd642b04a1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 19:25:45 2006 +0000
+Date:   Mon Feb 6 19:25:45 2006 +0000
 
     Don't rescan when trying to normalize a non-declared font dir. Don't
     add
-       font dirs multiple times (even if they're aliased).
+        font dirs multiple times (even if they're aliased).
     reviewed by: plam
 
- ChangeLog   | 9 +++++++
+ ChangeLog   |  9 +++++++
  src/fccfg.c | 78
  ++++++++++++++++++++++++++++++++++++++++---------------------
  2 files changed, 61 insertions(+), 26 deletions(-)
 
 commit 86e75dfb5d1434837537b40e829f00f9ffbb8183
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 14:44:46 2006 +0000
+Date:   Mon Feb 6 14:44:46 2006 +0000
 
     Explain apples/oranges comparison and fix compilation error.
     reviewed by: plam
@@ -17285,7 +22251,7 @@ Date:   Mon Feb 6 14:44:46 2006 +0000
 
 commit f076169d19574c6c548764d574a33bc4fe022ffb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Feb 6 14:14:21 2006 +0000
+Date:   Mon Feb 6 14:14:21 2006 +0000
 
     Insert check for integer overflow in # of fonts.
     reviewed by: plam
@@ -17296,12 +22262,12 @@ Date: Mon Feb 6 14:14:21 2006 +0000
 
 commit 788c4af232f5677d73e8e2e77e123cf566530ccb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Feb 5 04:11:08 2006 +0000
+Date:   Sun Feb 5 04:11:08 2006 +0000
 
     Make 'make distcheck' work with automake 1.6.3.
     reviewed by: plam
 
- ChangeLog           | 10 ++++++++++
+ ChangeLog            | 10 ++++++++++
  doc/Makefile.am      |  2 +-
  fc-cache/Makefile.am |  2 +-
  fc-cat/Makefile.am   |  2 +-
@@ -17310,24 +22276,24 @@ Date: Sun Feb 5 04:11:08 2006 +0000
 
 commit 68355f38774fe55d8010268291a170492b241a71
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Feb 5 02:57:21 2006 +0000
+Date:   Sun Feb 5 02:57:21 2006 +0000
 
     src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
     FcDirCacheConsume,
-       FcDirCacheWrite)
+        FcDirCacheWrite)
     Check I/O call return values and eliminate unused variable warnings.
     reviewed by: plam
 
- ChangeLog      | 13 ++++++++++++
+ ChangeLog       | 13 ++++++++++++
  fc-cat/fc-cat.c |  5 ++---
- src/fccache.c  | 66
+ src/fccache.c   | 66
  +++++++++++++++++++++++++++++++++++++++++++--------------
- src/fcxml.c    |  4 ++--
+ src/fcxml.c     |  4 ++--
  4 files changed, 67 insertions(+), 21 deletions(-)
 
 commit c4c47a7654196f37b625f337192b235e558ab890
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 4 00:09:42 2006 +0000
+Date:   Sat Feb 4 00:09:42 2006 +0000
 
     src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir)
     Fix memory leak.
@@ -17339,11 +22305,11 @@ Date: Sat Feb 4 00:09:42 2006 +0000
 
 commit a8e4d9eb395b45ab23f0c540f919ec432b46dea8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Feb 4 00:04:00 2006 +0000
+Date:   Sat Feb 4 00:04:00 2006 +0000
 
     Gracefully handle the case where a cache asserts that it has
     a negative
-       number of fonts, causing overflow.
+        number of fonts, causing overflow.
     reviewed by: plam
 
  ChangeLog  |  8 ++++++++
@@ -17352,7 +22318,7 @@ Date:   Sat Feb 4 00:04:00 2006 +0000
 
 commit 1af0f5741a95eed6f3a54140c360e0422fd13f62
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Feb 3 23:47:37 2006 +0000
+Date:   Fri Feb 3 23:47:37 2006 +0000
 
     Fix double free in error case.
 
@@ -17362,18 +22328,18 @@ Date: Fri Feb 3 23:47:37 2006 +0000
 
 commit 80ba0571f3bfdee854d6e69f55664f552f4b75a3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jan 31 07:30:23 2006 +0000
+Date:   Tue Jan 31 07:30:23 2006 +0000
 
     Stephan Kulow <coolo@suse.de> reviewed by: plam
     Replace 'stamp' target with mkinstalldirs.
 
- ChangeLog           |  8 ++++++++
+ ChangeLog            |  8 ++++++++
  fc-cache/Makefile.am | 13 +++----------
  2 files changed, 11 insertions(+), 10 deletions(-)
 
 commit 28aefd013d1896ffbf389596109eaec729d5d9a5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jan 31 07:16:22 2006 +0000
+Date:   Tue Jan 31 07:16:22 2006 +0000
 
     Toast broken global cache files.
     reviewed by: plam
@@ -17384,11 +22350,11 @@ Date: Tue Jan 31 07:16:22 2006 +0000
 
 commit 3616cbe251e47cf36018a7277d9ff78f1cb0965e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jan 31 04:42:20 2006 +0000
+Date:   Tue Jan 31 04:42:20 2006 +0000
 
     Actually use the directories that I added to the global cache. Fixes
     'make
-       check'.
+        check'.
 
  ChangeLog     |  6 ++++++
  src/fccache.c | 11 +++++++++--
@@ -17396,24 +22362,24 @@ Date: Tue Jan 31 04:42:20 2006 +0000
 
 commit 275cf6cd8350f8a9f29caabd5b1994c6324caaf6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jan 31 04:07:45 2006 +0000
+Date:   Tue Jan 31 04:07:45 2006 +0000
 
     Don't stop scanning if a directory in fonts.conf doesn't exist,
     because
-       subsequent directories might exist.
+        subsequent directories might exist.
     reviewed by: plam
 
- ChangeLog          |  8 ++++++++
+ ChangeLog           |  8 ++++++++
  fc-cache/fc-cache.c | 20 ++++++++++++++------
  2 files changed, 22 insertions(+), 6 deletions(-)
 
 commit 81d97094cf2a714417a9e73bb2f0f17f51ca3d95
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 16:31:56 2006 +0000
+Date:   Mon Jan 30 16:31:56 2006 +0000
 
     Make global cache work again after putting dir names into global cache
     (I
-       misplaced the recording of a file offset).
+        misplaced the recording of a file offset).
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 2 +-
@@ -17421,23 +22387,23 @@ Date: Mon Jan 30 16:31:56 2006 +0000
 
 commit 2c4e0124976724a7ae56bfee0ac4f7046c819ea8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 15:59:17 2006 +0000
+Date:   Mon Jan 30 15:59:17 2006 +0000
 
     Update fc-cat to handle subdir lists in global cache file.
     Another FcCacheReadString return value check.
 
- ChangeLog      |  9 +++++++++
+ ChangeLog       |  9 +++++++++
  fc-cat/fc-cat.c | 10 ++++++++++
- src/fccache.c  | 11 +++++++++--
+ src/fccache.c   | 11 +++++++++--
  3 files changed, 28 insertions(+), 2 deletions(-)
 
 commit c5411c4cae9389ad875fbbeedeaba0644f5e399f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 15:44:13 2006 +0000
+Date:   Mon Jan 30 15:44:13 2006 +0000
 
     Make fccache more resilient to broken cache files by checking
     return value
-       of FcCacheReadString all the time.
+        of FcCacheReadString all the time.
     reviewed by: plam
 
  ChangeLog     |  9 +++++++++
@@ -17446,31 +22412,31 @@ Date: Mon Jan 30 15:44:13 2006 +0000
 
 commit 946478e1a7f8c59a97c89f5c9029f30241a6cc0c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 14:43:04 2006 +0000
+Date:   Mon Jan 30 14:43:04 2006 +0000
 
     Remove references to dead fontconfig(3) manpages in other fontconfig
-       manpages.
+        manpages.
     reviewed by: plam
 
- ChangeLog          | 9 +++++++++
+ ChangeLog           | 9 +++++++++
  fc-lang/fc-lang.man | 2 --
  fc-match/fc-match.1 | 2 --
  3 files changed, 9 insertions(+), 4 deletions(-)
 
 commit af7a965f945ab5aafab13fb7b6e8d96c911b24fd
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 04:51:22 2006 +0000
+Date:   Mon Jan 30 04:51:22 2006 +0000
 
     Fix world's tiniest typo in code example.
     reviewed by: plam
 
- ChangeLog         | 7 +++++++
+ ChangeLog          | 7 +++++++
  doc/fcpattern.fncs | 2 +-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit 30c4189deb8412793d175bce255561a882ad81b7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 04:47:17 2006 +0000
+Date:   Mon Jan 30 04:47:17 2006 +0000
 
     Fix global cache reads of subdirectories.
     reviewed by: plam
@@ -17481,42 +22447,42 @@ Date: Mon Jan 30 04:47:17 2006 +0000
 
 commit 971cf18018a4f41bca196dd81989e67672e52112
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 30 04:27:53 2006 +0000
+Date:   Mon Jan 30 04:27:53 2006 +0000
 
     Add documentation for FcConfigNormalizeFontDir.
     Write directory information to global caches to fix make check
     (reported by
-       Ronny V. Vindenes). This changes the global cache format again.
+        Ronny V. Vindenes). This changes the global cache format again.
 
- ChangeLog        | 13 +++++++++++++
+ ChangeLog         | 13 +++++++++++++
  doc/fcconfig.fncs | 11 +++++++++++
- src/fccache.c    | 25 +++++++++++++++++++++++--
- src/fcdir.c      |  2 +-
- src/fcint.h      |  2 ++
+ src/fccache.c     | 25 +++++++++++++++++++++++--
+ src/fcdir.c       |  2 +-
+ src/fcint.h       |  2 ++
  5 files changed, 50 insertions(+), 3 deletions(-)
 
 commit 97293e07dd688b3d81cd6e7ecd5df4cdef4c87d8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Jan 27 05:47:59 2006 +0000
+Date:   Fri Jan 27 05:47:59 2006 +0000
 
     Move FcConfigNormalizeFontDir call so that it doesn't result in
     infinite
-       recursion (reported by Ronny V. Vindenes).
+        recursion (reported by Ronny V. Vindenes).
 
- ChangeLog              | 9 +++++++++
- fc-cache/fc-cache.c    | 6 +++++-
+ ChangeLog               | 9 +++++++++
+ fc-cache/fc-cache.c     | 6 +++++-
  fontconfig/fontconfig.h | 4 ++++
- src/fccache.c          | 8 --------
- src/fcint.h            | 4 ----
+ src/fccache.c           | 8 --------
+ src/fcint.h             | 4 ----
  5 files changed, 18 insertions(+), 13 deletions(-)
 
 commit 3cf9f5cec386ce97bb3cdd1dfe78d0d6999243ea
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Jan 27 00:27:37 2006 +0000
+Date:   Fri Jan 27 00:27:37 2006 +0000
 
     Add a couple of missing normalizations to make fc-cache work right;
     only
-       scan subdirectories once.
+        scan subdirectories once.
 
  ChangeLog     | 7 +++++++
  src/fccache.c | 8 ++++++++
@@ -17525,7 +22491,7 @@ Date:   Fri Jan 27 00:27:37 2006 +0000
 
 commit 4073203deb00cb1497f7cc8c1a7de25534070d2c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Jan 26 16:11:41 2006 +0000
+Date:   Thu Jan 26 16:11:41 2006 +0000
 
     Don't crash on non-existant directories in global cache.
     reviewed by: plam
@@ -17536,11 +22502,11 @@ Date: Thu Jan 26 16:11:41 2006 +0000
 
 commit f468f568b4aedef1606b0692addf47cb9f02b328
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Jan 26 16:09:12 2006 +0000
+Date:   Thu Jan 26 16:09:12 2006 +0000
 
     Stop trampling the directory name when writing out caches. (with Mike
-       Fabian:) Beef up FcConfigNormalizeFontDir to scan subdirs when
-       necessary. Don't scan directories that can't be normalized.
+        Fabian:) Beef up FcConfigNormalizeFontDir to scan subdirs when
+        necessary. Don't scan directories that can't be normalized.
 
  ChangeLog     | 11 +++++++++++
  src/fccache.c | 16 +++++++++++++---
@@ -17551,11 +22517,11 @@ Date: Thu Jan 26 16:09:12 2006 +0000
 
 commit 575a37b7975656f73162438635b4ba26e229b33f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Jan 25 14:52:49 2006 +0000
+Date:   Wed Jan 25 14:52:49 2006 +0000
 
     Fix additional memory leaks reported by Ronny V. Vindenes: don't
     invoke
-       FcValueSave on hashed static strings in FcPatternAddWithBinding.
+        FcValueSave on hashed static strings in FcPatternAddWithBinding.
     Add another st_dev check in FcDirCacheOpen.
 
  ChangeLog     | 11 +++++++++++
@@ -17566,48 +22532,48 @@ Date: Wed Jan 25 14:52:49 2006 +0000
 
 commit 16a71eff3ee0326db3794fa26548106a8a8697f6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Jan 25 02:54:37 2006 +0000
+Date:   Wed Jan 25 02:54:37 2006 +0000
 
     Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
-       fontconfig to treat A-X fonts differently from A-Y fonts;
-       please mail
-       the fontconfig list if this causes any problems.
+        fontconfig to treat A-X fonts differently from A-Y fonts;
+        please mail
+        the fontconfig list if this causes any problems.
     reviewed by: plam
 
- ChangeLog         | 10 ++++++++++
+ ChangeLog          | 10 ++++++++++
  fc-lang/zh_hk.orth |  2 +-
  src/fcfreetype.c   |  2 +-
  3 files changed, 12 insertions(+), 2 deletions(-)
 
 commit 6f9fcb51861fe3066e44a23817f1c700f3475ac0
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Jan 25 02:33:46 2006 +0000
+Date:   Wed Jan 25 02:33:46 2006 +0000
 
     Fix memory leaks reported by Ronny V. Vindenes.
 
- ChangeLog       | 6 ++++++
- src/fccache.c   | 9 ++++++++-
+ ChangeLog        | 6 ++++++
+ src/fccache.c    | 9 ++++++++-
  src/fcfreetype.c | 8 +++++++-
  3 files changed, 21 insertions(+), 2 deletions(-)
 
 commit 986e35979e56774c91f3214af9e8a6f71817dcfa
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Jan 19 19:20:30 2006 +0000
+Date:   Thu Jan 19 19:20:30 2006 +0000
 
     Fix for unaligned memory accesses.
     reviewed by: plam
 
- ChangeLog   | 9 ++++++++-
+ ChangeLog   |  9 ++++++++-
  src/fcpat.c | 12 ++++++++----
  2 files changed, 16 insertions(+), 5 deletions(-)
 
 commit 58bdd29619e6580477918f8c8d77aadbe5e427a4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Jan 18 15:41:15 2006 +0000
+Date:   Wed Jan 18 15:41:15 2006 +0000
 
     Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir
     calls to
-       avoid crashes.
+        avoid crashes.
     reviewed by: plam
 
  ChangeLog   | 8 ++++++++
@@ -17616,10 +22582,10 @@ Date: Wed Jan 18 15:41:15 2006 +0000
 
 commit eadadf489aff5f4a17a91f85909cb0dc27b2a494
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Jan 15 05:31:58 2006 +0000
+Date:   Sun Jan 15 05:31:58 2006 +0000
 
     Fix segfault when consuming zero-length caches in fc-cat (which has no
-       config, so FcConfigAddFontDir shouldn't be called.)
+        config, so FcConfigAddFontDir shouldn't be called.)
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 3 ++-
@@ -17627,69 +22593,69 @@ Date: Sun Jan 15 05:31:58 2006 +0000
 
 commit 8a0b0ed6d01e4e20ab6727211fe5823395a9b4c4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Jan 14 21:23:03 2006 +0000
+Date:   Sat Jan 14 21:23:03 2006 +0000
 
     Compare device numbers as well as inodes. Always normalize directory
     names
-       before comparing them.
+        before comparing them.
     Allocate extra space for appended '/' in directory name.
     reviewed by: plam
 
- ChangeLog              | 19 +++++++++++++++++++
- fc-cache/fc-cache.c    |  2 +-
- fc-cat/fc-cat.c        |  6 +++++-
+ ChangeLog               | 19 +++++++++++++++++++
+ fc-cache/fc-cache.c     |  2 +-
+ fc-cat/fc-cat.c         |  6 +++++-
  fontconfig/fontconfig.h |  2 +-
- src/fccache.c          | 19 ++++++++++++++-----
- src/fccfg.c            |  7 ++++---
- src/fcdir.c            |  2 +-
- src/fcint.h            |  6 ++++--
+ src/fccache.c           | 19 ++++++++++++++-----
+ src/fccfg.c             |  7 ++++---
+ src/fcdir.c             |  2 +-
+ src/fcint.h             |  6 ++++--
  8 files changed, 49 insertions(+), 14 deletions(-)
 
 commit df3efc11a9584e2099366c31ba64ac9346760321
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jan 10 13:15:05 2006 +0000
+Date:   Tue Jan 10 13:15:05 2006 +0000
 
     Explicitly add font dirs to config.fontDirs even if they're empty. Set
-       current config in fc-cache.c. Fix treatment of cache directory
-       as read
-       from cache file; don't use string equality to determine if we
-       have the
-       right file, use inode equality.
-
- ChangeLog          | 12 ++++++++++
- fc-cache/fc-cache.c | 1 +
- src/fccache.c      | 64
+        current config in fc-cache.c. Fix treatment of cache directory
+        as read
+        from cache file; don't use string equality to determine if we
+        have the
+        right file, use inode equality.
+
+ ChangeLog           | 12 ++++++++++
+ fc-cache/fc-cache.c |  1 +
+ src/fccache.c       | 64
  ++++++++++++++++++++++++++++-------------------------
  3 files changed, 47 insertions(+), 30 deletions(-)
 
 commit cd9bca69702900ca9b24319c76b2dc9432bb548f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 9 13:58:04 2006 +0000
+Date:   Mon Jan 9 13:58:04 2006 +0000
 
     Normalize font dirs by using the form, as given in fonts.conf,
     and recorded
-       in FcConfig's fontDirs string set, as canonical.
+        in FcConfig's fontDirs string set, as canonical.
     Actually update config.fontDirs as font directories are scanned.
 
- ChangeLog          | 14 ++++++++++++++
- fc-cache/fc-cache.c | 2 +-
- fc-cat/fc-cat.c     | 4 ++--
- src/fccache.c      | 21 ++++++++++++---------
- src/fccfg.c        | 23 +++++++++++++++++++++++
- src/fcdir.c        |  3 ++-
- src/fcint.h        |  6 +++++-
+ ChangeLog           | 14 ++++++++++++++
+ fc-cache/fc-cache.c |  2 +-
+ fc-cat/fc-cat.c     |  4 ++--
+ src/fccache.c       | 21 ++++++++++++---------
+ src/fccfg.c         | 23 +++++++++++++++++++++++
+ src/fcdir.c         |  3 ++-
+ src/fcint.h         |  6 +++++-
  7 files changed, 59 insertions(+), 14 deletions(-)
 
 commit 5576a5873dc9cd6e11234df6e64dbff18afe6378
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Jan 8 10:58:30 2006 +0000
+Date:   Sun Jan 8 10:58:30 2006 +0000
 
     Fix matching bug when multiple elements match; don't use the sum
     of all
-       scores, but the best score.
+        scores, but the best score.
     Also more perf opts, e.g. evaluate best over all font sets rather
     than on a
-       per-set basis (and other changes).
+        per-set basis (and other changes).
 
  src/fcmatch.c | 243
  ++++++++++++++++++++++++++++++++++------------------------
@@ -17697,25 +22663,25 @@ Date: Sun Jan 8 10:58:30 2006 +0000
 
 commit a6d3757d9802c8f5dc8632a8cf6703042f62e303
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Jan 8 10:58:05 2006 +0000
+Date:   Sun Jan 8 10:58:05 2006 +0000
 
     Fix matching bug when multiple elements match; don't use the sum
     of all
-       scores, but the best score.
+        scores, but the best score.
     Also more perf opts, e.g. evaluate best over all font sets rather
     than on a
-       per-set basis (and other changes).
+        per-set basis (and other changes).
 
  ChangeLog | 9 +++++++++
  1 file changed, 9 insertions(+)
 
 commit 05a98eaf4bd23fe1035660a9a2b1018abdfc9c6e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Jan 8 10:50:51 2006 +0000
+Date:   Sun Jan 8 10:50:51 2006 +0000
 
     Properly skip past dir caches that contain zero fonts (as occurs
     in global
-       caches.) Reported by Mike Fabian.
+        caches.) Reported by Mike Fabian.
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 4 ++++
@@ -17723,15 +22689,15 @@ Date: Sun Jan 8 10:50:51 2006 +0000
 
 commit 5fe09702f4fc4ec6d55f30b80999ce2c219bd966
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Jan 7 06:36:24 2006 +0000
+Date:   Sat Jan 7 06:36:24 2006 +0000
 
     Print out full pathname in fc-match -v as well. Reported by Frederic
-       Crozat.
+        Crozat.
     Fix bug where fc-match crashes when given __DUMMY__ property to
     match on.
     (I added the __DUMMY__ string to enable callers of FcObjectToPtrLookup
     to
-       distinguish an error return from a successful return. -PL)
+        distinguish an error return from a successful return. -PL)
     reviewed by: plam
 
  ChangeLog    | 18 ++++++++++++++++++
@@ -17741,61 +22707,61 @@ Date: Sat Jan 7 06:36:24 2006 +0000
 
 commit c60ec7cc6d1795922b742435965746e02e67f11c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Jan 5 15:12:22 2006 +0000
+Date:   Thu Jan 5 15:12:22 2006 +0000
 
     Add self to AUTHORS list.
     Minor change to global cache file format to fix fc-cat bug reported by
-       Frederic Crozat, and buglet with not globally caching directories
-       with
-       zero fonts cached.
+        Frederic Crozat, and buglet with not globally caching directories
+        with
+        zero fonts cached.
 
- AUTHORS        |  2 ++
- ChangeLog      | 18 ++++++++++++++++
+ AUTHORS         |  2 ++
+ ChangeLog       | 18 ++++++++++++++++
  fc-cat/fc-cat.c | 66
  +++++++++++++++++++++++++++++++++------------------------
- src/fccache.c  | 31 +++++++++++++--------------
- src/fcint.h    |  1 +
- src/fcpat.c    |  2 +-
+ src/fccache.c   | 31 +++++++++++++--------------
+ src/fcint.h     |  1 +
+ src/fcpat.c     |  2 +-
  6 files changed, 75 insertions(+), 45 deletions(-)
 
 commit 52ac91f7c1a8a6433851cbde8ccade618f0218e4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 2 17:20:23 2006 +0000
+Date:   Mon Jan 2 17:20:23 2006 +0000
 
     Fix double-free which occurs because FcValueCanonicalize doesn't
     create an
-       extra copy of the returned value, it only canonicalizes it.
+        extra copy of the returned value, it only canonicalizes it.
     reviewed by: plam
 
  ChangeLog   | 11 ++++++++++-
- src/fccfg.c | 1 +
+ src/fccfg.c |  1 +
  2 files changed, 11 insertions(+), 1 deletion(-)
 
 commit cea78a87910a88383699d5a386693d39aa3236f5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 2 17:18:22 2006 +0000
+Date:   Mon Jan 2 17:18:22 2006 +0000
 
     Fix version of .cache file (currently 1 -> currently 2). Reported
     by Jim
-       Osborn.
+        Osborn.
 
  ChangeLog | 6 ++++++
  1 file changed, 6 insertions(+)
 
 commit e9fd3c069aa415f9e7589dd1a871cd7727925364
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jan 2 17:13:48 2006 +0000
+Date:   Mon Jan 2 17:13:48 2006 +0000
 
     Fix version of .cache file (currently 1 -> currently 2). Reported
     by Jim
-       Osborn.
+        Osborn.
 
  doc/fontconfig-user.sgml | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit ebc157f9a1eb266d60d03ad3fa36dc2ba0250db1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Dec 21 20:00:20 2005 +0000
+Date:   Wed Dec 21 20:00:20 2005 +0000
 
     Shut up GCC warnings on amd.
     reviewed by: plam
@@ -17806,18 +22772,18 @@ Date: Wed Dec 21 20:00:20 2005 +0000
 
 commit 19ea60bc7c0186070d95f5effc815c546de1dcb0
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Dec 21 05:37:10 2005 +0000
+Date:   Wed Dec 21 05:37:10 2005 +0000
 
     Avoid check on _fcBankId nullness and fix case where it used to crash.
 
- ChangeLog      | 7 +++++++
+ ChangeLog       | 7 +++++++
  src/fccharset.c | 2 +-
- src/fcint.h    | 2 +-
+ src/fcint.h     | 2 +-
  3 files changed, 9 insertions(+), 2 deletions(-)
 
 commit 3bfae75d44db5ceae394194d2e6c7b81201ea685
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Dec 21 03:31:19 2005 +0000
+Date:   Wed Dec 21 03:31:19 2005 +0000
 
     Bump version to 2.3.93.
     Use open instead of fopen (requested by Phil Race for Sun).
@@ -17825,52 +22791,52 @@ Date: Wed Dec 21 03:31:19 2005 +0000
     Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
     dir.
 
- ChangeLog              | 20 ++++++++++++++++
- README                         | 17 ++++++++++++--
- configure.in           |  2 +-
- fc-cache/Makefile.am   |  8 +++++++
+ ChangeLog               | 20 ++++++++++++++++
+ README                  | 17 ++++++++++++--
+ configure.in            |  2 +-
+ fc-cache/Makefile.am    |  8 +++++++
  fontconfig/fontconfig.h |  2 +-
- src/fccache.c          | 62
+ src/fccache.c           | 62
  ++++++++++++++++++++++++++++++++++++++++---------
- src/fcxml.c            | 13 ++++++-----
+ src/fcxml.c             | 13 ++++++-----
  7 files changed, 103 insertions(+), 21 deletions(-)
 
 commit 6f767cec491d354150a11491905ba59cc77a2659
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Dec 20 20:35:47 2005 +0000
+Date:   Tue Dec 20 20:35:47 2005 +0000
 
     Restore code to skip over PCF fonts that have no encoded
     characters. (We
-       guess that a font is PCF by presence of the PIXEL_SIZE BDF
-       property.)
+        guess that a font is PCF by presence of the PIXEL_SIZE BDF
+        property.)
 
- ChangeLog                  | 8 ++++++++
+ ChangeLog                   | 8 ++++++++
  conf.d/10LohitGujarati.conf | 5 +++++
- src/fcfreetype.c           | 9 ++++++---
+ src/fcfreetype.c            | 9 ++++++---
  3 files changed, 19 insertions(+), 3 deletions(-)
 
 commit a7683cafe10925d09855f927cb7602a90e10516f
 Author: Carl Worth <cworth@cworth.org>
-Date:  Tue Dec 13 17:50:50 2005 +0000
+Date:   Tue Dec 13 17:50:50 2005 +0000
 
     Add a configuration file that disables hinting for the Lohit
     Gujarati font
-       (since the hinting distort some glyphs quite badly).
+        (since the hinting distort some glyphs quite badly).
     reviewed by: keithp
 
- ChangeLog                  | 8 ++++++++
+ ChangeLog                   | 8 ++++++++
  conf.d/10LohitGujarati.conf | 5 +++++
- conf.d/Makefile.am         | 1 +
+ conf.d/Makefile.am          | 1 +
  3 files changed, 14 insertions(+)
 
 commit ec760b178a7bb1a60fe2fe5e205ef82922fde5b6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Dec 12 20:45:54 2005 +0000
+Date:   Mon Dec 12 20:45:54 2005 +0000
 
     Read and write the original location as a fallback for the hashed
     cache
-       file locations. This is mostly for users to be able to have
-       per-directory cache files.
+        file locations. This is mostly for users to be able to have
+        per-directory cache files.
 
  ChangeLog     |  7 +++++++
  src/fccache.c | 41 ++++++++++++++++++++++++++++++++---------
@@ -17878,21 +22844,21 @@ Date: Mon Dec 12 20:45:54 2005 +0000
 
 commit 83b6739035fc17d97b8ce01d6a9b9ef6e78d694c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Dec 12 13:46:45 2005 +0000
+Date:   Mon Dec 12 13:46:45 2005 +0000
 
     Improve error message when fc-cache can't write the cache. Add missing
-       slash. Reported by Behdad. Incorporate Behdad's patch to create
-       /var/cache/fontconfig when appropriate.
+        slash. Reported by Behdad. Incorporate Behdad's patch to create
+        /var/cache/fontconfig when appropriate.
 
- ChangeLog           | 9 +++++++++
+ ChangeLog            | 9 +++++++++
  fc-cache/Makefile.am | 5 +++++
  fc-cache/fc-cache.c  | 4 +++-
- src/fccache.c       | 2 +-
+ src/fccache.c        | 2 +-
  4 files changed, 18 insertions(+), 2 deletions(-)
 
 commit 368104c381815aa9a0c8c878f1d2be0cc5330f10
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Dec 12 13:20:41 2005 +0000
+Date:   Mon Dec 12 13:20:41 2005 +0000
 
     Fix crash reported by Frederic Crozat when using libxml2.
     reviewed by: plam
@@ -17903,35 +22869,35 @@ Date: Mon Dec 12 13:20:41 2005 +0000
 
 commit ea44e2184198aba956e39ae63a4914544c9719fe
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Dec 9 16:36:45 2005 +0000
+Date:   Fri Dec 9 16:36:45 2005 +0000
 
     Migrate cache files from fonts directories to
     /var/cache/fontconfig. This
-       helps make fontconfig FHS-compliant, but requires that all
-       caches get
-       rebuilt.
+        helps make fontconfig FHS-compliant, but requires that all
+        caches get
+        rebuilt.
     Also, autogen.sh now needs the additional parameter
     --localstatedir=/var.
 
- ChangeLog              |  20 ++
- INSTALL                |   2 +-
- configure.in           |   7 +
- fc-cache/Makefile.am   |   2 +
- fc-cat/Makefile.am     |   2 +
- fc-cat/fc-cat.c        |  13 +-
+ ChangeLog               |  20 ++
+ INSTALL                 |   2 +-
+ configure.in            |   7 +
+ fc-cache/Makefile.am    |   2 +
+ fc-cat/Makefile.am      |   2 +
+ fc-cat/fc-cat.c         |  13 +-
  fontconfig/fontconfig.h |   1 +
- src/Makefile.am        |   2 +
- src/fccache.c          | 523
+ src/Makefile.am         |   2 +
+ src/fccache.c           | 523
  +++++++++++++++++++++++++++++++++++++++++++-----
  9 files changed, 519 insertions(+), 53 deletions(-)
 
 commit 204da5a8b88a73e54a9bab0537db7ff4fe8c6374
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Dec 8 05:54:27 2005 +0000
+Date:   Thu Dec 8 05:54:27 2005 +0000
 
     Because we've changed FcPatternAddString to use FcStrStaticName
     and not
-       FcValueSave, explicitly handle the case of a null string.
+        FcValueSave, explicitly handle the case of a null string.
 
  ChangeLog   | 6 ++++++
  src/fcpat.c | 7 +++++++
@@ -17939,17 +22905,17 @@ Date: Thu Dec 8 05:54:27 2005 +0000
 
 commit 982b598278315de60721740047a1b57f4a5895b8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Dec 7 03:55:25 2005 +0000
+Date:   Wed Dec 7 03:55:25 2005 +0000
 
     Fix warnings.
 
- ChangeLog      | 5 +++++
+ ChangeLog       | 5 +++++
  fc-cat/fc-cat.c | 9 +++------
  2 files changed, 8 insertions(+), 6 deletions(-)
 
 commit c6103dfb22de0664a6ab164d90d6959551e301c5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Dec 6 18:57:43 2005 +0000
+Date:   Tue Dec 6 18:57:43 2005 +0000
 
     Don't assign types to user object names.
 
@@ -17959,48 +22925,48 @@ Date: Tue Dec 6 18:57:43 2005 +0000
 
 commit 9ede93f1dc375c1f4d7e71d821887c01a367d995
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Dec 5 16:08:01 2005 +0000
+Date:   Mon Dec 5 16:08:01 2005 +0000
 
     Don't free strings that have been returned from FcStrStaticName.
 
- ChangeLog   | 5 +++++
+ ChangeLog   |  5 +++++
  src/fcpat.c | 21 +++++++++++++++++++--
  2 files changed, 24 insertions(+), 2 deletions(-)
 
 commit 6059daeddb7b44d9b2c0f4d94a08fb6ff79ff3ac
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Dec 1 07:12:45 2005 +0000
+Date:   Thu Dec 1 07:12:45 2005 +0000
 
     Add codepath for reading global cache files as well.
 
- ChangeLog      |  5 +++++
+ ChangeLog       |  5 +++++
  fc-cat/fc-cat.c | 61
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2 files changed, 66 insertions(+)
 
 commit 4edd0a0286c3c7fc3497afe8f5f68df118deb682
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Dec 1 06:27:07 2005 +0000
+Date:   Thu Dec 1 06:27:07 2005 +0000
 
     file 10-fonts-persian.conf was initially added on branch
     fc-2_4_branch.
 
 commit 2c6fead73fd6608fd50eb97c69a556fdac1b5c55
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Dec 1 06:27:07 2005 +0000
+Date:   Thu Dec 1 06:27:07 2005 +0000
 
     Add config file for Persian fonts from Sharif FarsiWeb, Inc.
     reviewed by: plam
 
- ChangeLog                   |  10 +-
+ ChangeLog                    |  10 +-
  conf.d/10-fonts-persian.conf | 545
  +++++++++++++++++++++++++++++++++++++++++++
- conf.d/Makefile.am          |   1 +
+ conf.d/Makefile.am           |   1 +
  3 files changed, 555 insertions(+), 1 deletion(-)
 
 commit cb6d97eb1baba6795bb8abdede69902b2440f371
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 30 22:13:21 2005 +0000
+Date:   Wed Nov 30 22:13:21 2005 +0000
 
     Only add a config file to the set of config files once.
     reviewed by: plam
@@ -18011,7 +22977,7 @@ Date:   Wed Nov 30 22:13:21 2005 +0000
 
 commit 93a27747a485624d4a89550036e12eeec96d4558
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 15:04:06 2005 +0000
+Date:   Tue Nov 29 15:04:06 2005 +0000
 
     src/fcint.h (FcCacheBankToIndex);
     Fix segfault by guarding array dereference.
@@ -18022,28 +22988,28 @@ Date: Tue Nov 29 15:04:06 2005 +0000
 
 commit b8948e85420469c83098a6b97d7979189a8734d9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 14:57:10 2005 +0000
+Date:   Tue Nov 29 14:57:10 2005 +0000
 
     Refactor FcCacheBankToIndex into an inlineable part (in fcint.h) which
-       checks the front of the list and a non-inlineable part which
-       finds and
-       moves the appropriate element to the front of the list.
+        checks the front of the list and a non-inlineable part which
+        finds and
+        moves the appropriate element to the front of the list.
     reviewed by: plam
 
- ChangeLog        | 14 ++++++++++++++
+ ChangeLog         | 14 ++++++++++++++
  fc-lang/fc-lang.c |  5 ++++-
- src/fccache.c    | 34 +++++++++++++++++-----------------
- src/fcint.h      |  9 ++++++++-
+ src/fccache.c     | 34 +++++++++++++++++-----------------
+ src/fcint.h       |  9 ++++++++-
  4 files changed, 43 insertions(+), 19 deletions(-)
 
 commit 9fad72abaf3da6f3e4a691a0e1a852f6a7353d56
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 06:23:00 2005 +0000
+Date:   Tue Nov 29 06:23:00 2005 +0000
 
     Make the perf guys hate me a bit less: hoist the directory-name
-       FcConfigAcceptFont check for cached fonts up to directory
-       cache read
-       time, rather than running it for each font.
+        FcConfigAcceptFont check for cached fonts up to directory
+        cache read
+        time, rather than running it for each font.
 
  ChangeLog     | 8 ++++++++
  src/fccache.c | 3 +++
@@ -18052,13 +23018,13 @@ Date: Tue Nov 29 06:23:00 2005 +0000
 
 commit 51af0509925e780eb3eb9014aac5e50b6bbbe0d1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 06:09:18 2005 +0000
+Date:   Tue Nov 29 06:09:18 2005 +0000
 
     Don't make FcPatternFindFullFname available to fccfg, it's not
     really safe.
-       Instead go through FcPatternGetString (sorry, perf guys.) Also,
-       use
-       globs for dirs as well.
+        Instead go through FcPatternGetString (sorry, perf guys.) Also,
+        use
+        globs for dirs as well.
 
  ChangeLog   | 9 +++++++++
  src/fccfg.c | 8 +++++---
@@ -18068,7 +23034,7 @@ Date:   Tue Nov 29 06:09:18 2005 +0000
 
 commit e0421d0289ae95a1c74e607f36c0d54f3d0dedd8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 00:21:05 2005 +0000
+Date:   Tue Nov 29 00:21:05 2005 +0000
 
     Fix segfault.
 
@@ -18078,34 +23044,34 @@ Date: Tue Nov 29 00:21:05 2005 +0000
 
 commit c4d3b6dad0ccb9b3ddfddb7305b4da26f494271d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 00:16:02 2005 +0000
+Date:   Tue Nov 29 00:16:02 2005 +0000
 
     Update autogenerated config.* files.
 
  config/config.guess | 535
  +++++++++++++++++++++++++++-------------------------
- config/config.sub   | 67 ++++---
+ config/config.sub   |  67 ++++---
  2 files changed, 314 insertions(+), 288 deletions(-)
 
 commit ced3f0a0abd84de73753956ec18e7316eda33a37
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 29 00:14:42 2005 +0000
+Date:   Tue Nov 29 00:14:42 2005 +0000
 
     Fix problem dating back at least to 2.3.2 where globs weren't
     being applied
-       to patterns loaded from a cache.
+        to patterns loaded from a cache.
     Fix some obvious spelling mistakes.
 
- ChangeLog               | 13 +++++++++++++
+ ChangeLog                | 13 +++++++++++++
  doc/fontconfig-user.sgml | 17 +++++++++--------
- src/fccfg.c             |  3 ++-
- src/fcint.h             |  3 +++
- src/fcpat.c             |  4 +---
+ src/fccfg.c              |  3 ++-
+ src/fcint.h              |  3 +++
+ src/fcpat.c              |  4 +---
  5 files changed, 28 insertions(+), 12 deletions(-)
 
 commit 1ed98a0c87931ae93ea3d46f3d0367a99218679c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Nov 28 10:54:11 2005 +0000
+Date:   Mon Nov 28 10:54:11 2005 +0000
 
     Stephan Kulow <coolo@suse.de> reviewed by: plam
     Don't kill all fonts during match (oops!)
@@ -18116,16 +23082,16 @@ Date: Mon Nov 28 10:54:11 2005 +0000
 
 commit aa472e5f1a83c5e09030b0c862a0c3e0df10dcaa
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Nov 28 01:40:53 2005 +0000
+Date:   Mon Nov 28 01:40:53 2005 +0000
 
     Stephan Kulow <coolo@suse.de> Michael Matz <matz@suse.de> reviewed
     by: plam
     Rewrite FcFontSetMatch to a path-finding based algorithm, i.e. inline
-       FcCompare into FcFontSetMatch and reorder the loops, adding
-       a boolean
-       array which blocks patterns from future consideration if
-       they're known
-       to not be best on some past criterion.
+        FcCompare into FcFontSetMatch and reorder the loops, adding
+        a boolean
+        array which blocks patterns from future consideration if
+        they're known
+        to not be best on some past criterion.
 
  src/fcmatch.c | 224
  +++++++++++++++++++++++++++++++++++++++++-----------------
@@ -18133,7 +23099,7 @@ Date:   Mon Nov 28 01:40:53 2005 +0000
 
 commit 200a44fed0c28bcf83a65e32c320471d9335d3c5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 26 05:05:14 2005 +0000
+Date:   Sat Nov 26 05:05:14 2005 +0000
 
     Fix incorrect merge.
     reviewed by: plam
@@ -18144,10 +23110,10 @@ Date: Sat Nov 26 05:05:14 2005 +0000
 
 commit cbe1df8150e4ed6e76bd258afe5a11529c909ddf
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 16:33:58 2005 +0000
+Date:   Fri Nov 25 16:33:58 2005 +0000
 
     Don't do random matching when bad objects are passed into
-       FcCompareValueList.
+        FcCompareValueList.
 
  ChangeLog     |  6 ++++++
  src/fcmatch.c | 58
@@ -18156,19 +23122,19 @@ Date: Fri Nov 25 16:33:58 2005 +0000
 
 commit 81fe99fdd0903ef8aa782fe427bc8f9510457ee9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 16:04:44 2005 +0000
+Date:   Fri Nov 25 16:04:44 2005 +0000
 
     Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
-       _fcPatternElts, _fcValueLists for consistency.
+        _fcPatternElts, _fcValueLists for consistency.
 
  ChangeLog   | 10 ++++++++++
- src/fcint.h | 8 ++++----
+ src/fcint.h |  8 ++++----
  src/fcpat.c | 50 +++++++++++++++++++++++++-------------------------
  3 files changed, 39 insertions(+), 29 deletions(-)
 
 commit d854eaf8a9c395a1cbca83a7620e087109f6eb87
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 15:54:24 2005 +0000
+Date:   Fri Nov 25 15:54:24 2005 +0000
 
     Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
     reviewed by: plam
@@ -18179,29 +23145,29 @@ Date: Fri Nov 25 15:54:24 2005 +0000
 
 commit 61571f3f2e77ffb221da9af2705af1d383dd6ea0
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 15:50:34 2005 +0000
+Date:   Fri Nov 25 15:50:34 2005 +0000
 
     Pass around FcCache *s to the Unserialize functions for extra
     consistency
-       (and less overhead, for what that's worth).
+        (and less overhead, for what that's worth).
 
- ChangeLog      | 13 +++++++++++++
- src/fccache.c  |  2 +-
+ ChangeLog       | 13 +++++++++++++
+ src/fccache.c   |  2 +-
  src/fccharset.c | 12 ++++++------
- src/fcfs.c     |  2 +-
- src/fcint.h    | 10 +++++-----
- src/fclang.c   |  8 ++++----
- src/fcname.c   |  2 +-
- src/fcpat.c    | 32 ++++++++++++++++----------------
+ src/fcfs.c      |  2 +-
+ src/fcint.h     | 10 +++++-----
+ src/fclang.c    |  8 ++++----
+ src/fcname.c    |  2 +-
+ src/fcpat.c     | 32 ++++++++++++++++----------------
  8 files changed, 47 insertions(+), 34 deletions(-)
 
 commit 9ab79bdfb7f8bfbe108d1c676b361f69f6a5b043
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 03:00:51 2005 +0000
+Date:   Fri Nov 25 03:00:51 2005 +0000
 
     Inline the *PtrU functions to gain perf. Remove unneeded params
     for the
-       FcCompare* functions.
+        FcCompare* functions.
     reviewed by: plam
 
  ChangeLog     | 12 +++++++++++-
@@ -18213,12 +23179,12 @@ Date: Fri Nov 25 03:00:51 2005 +0000
 
 commit 3f9f24e077cc079be362343be499ff0baf23e0a1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 25 02:16:42 2005 +0000
+Date:   Fri Nov 25 02:16:42 2005 +0000
 
     Fix the debian changelog so that debian/rules works again, make it
     create a
-       debian package for release 2.3.92-1. Acknowledge change in NMU of
-       debian package.
+        debian package for release 2.3.92-1. Acknowledge change in NMU of
+        debian package.
 
  debian/changelog | 13 +++++++++++++
  debian/control   |  1 +
@@ -18228,30 +23194,30 @@ Date: Fri Nov 25 02:16:42 2005 +0000
 
 commit 1c9fdccab95c9c5eebd0f9d8488d3ac7c46cbe53
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 24 21:40:20 2005 +0000
+Date:   Thu Nov 24 21:40:20 2005 +0000
 
     Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
     Check for type validity during FcPatternAddWithBinding, don't
     verify type
-       in FcFontMatch, don't call FcCanonicalize here (which always
-       does a
-       deep copy).
+        in FcFontMatch, don't call FcCanonicalize here (which always
+        does a
+        deep copy).
     reviewed by: plam
 
- ChangeLog              | 13 +++++++++++++
+ ChangeLog               | 13 +++++++++++++
  fontconfig/fontconfig.h |  3 ---
- src/fcint.h            |  3 +++
- src/fcmatch.c          | 22 +++++-----------------
- src/fcpat.c            | 22 +++++++++++++++++-----
+ src/fcint.h             |  3 +++
+ src/fcmatch.c           | 22 +++++-----------------
+ src/fcpat.c             | 22 +++++++++++++++++-----
  5 files changed, 38 insertions(+), 25 deletions(-)
 
 commit 4f8b266fd97e36961639c40d93225265c0f849c7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 24 20:20:26 2005 +0000
+Date:   Thu Nov 24 20:20:26 2005 +0000
 
     Make FcCompareString and FcCompareFamily less expensive. Only add
     a value
-       for FC_FAMILY if the proposed value is a string.
+        for FC_FAMILY if the proposed value is a string.
     reviewed by: plam
 
  ChangeLog     | 11 ++++++++++-
@@ -18261,11 +23227,11 @@ Date: Thu Nov 24 20:20:26 2005 +0000
 
 commit b97a34b5924b1279dd831426a94016ea8b65ea8d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 24 19:38:05 2005 +0000
+Date:   Thu Nov 24 19:38:05 2005 +0000
 
     Inline FcDebug invocations and only initialize once, in
     FcInit*. Improve
-       debug msg in FcPatternPrint.
+        debug msg in FcPatternPrint.
     reviewed by: plam
 
  ChangeLog    | 10 ++++++++++
@@ -18276,7 +23242,7 @@ Date:   Thu Nov 24 19:38:05 2005 +0000
 
 commit d2f459781cade98d1d07806d023e63f1fc289b0e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 23 17:01:27 2005 +0000
+Date:   Wed Nov 23 17:01:27 2005 +0000
 
     Properly apply fcrozat's patch.
 
@@ -18285,45 +23251,45 @@ Date: Wed Nov 23 17:01:27 2005 +0000
 
 commit f7c4624f5624f4dc981f75a4f74446de04bf69d1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 23 16:36:26 2005 +0000
+Date:   Wed Nov 23 16:36:26 2005 +0000
 
     2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
     Minor code warning cleanups.
 
- ChangeLog              | 8 ++++++++
- fc-cat/fc-cat.c        | 1 -
+ ChangeLog               | 8 ++++++++
+ fc-cat/fc-cat.c         | 1 -
  fontconfig/fontconfig.h | 2 +-
  3 files changed, 9 insertions(+), 2 deletions(-)
 
 commit b1297aa8977901075e95e40bc430fc823e1fb230
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 23 15:33:48 2005 +0000
+Date:   Wed Nov 23 15:33:48 2005 +0000
 
     2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
     Make getopt_long accept -s parameter to fc-match as well.
 
- ChangeLog          | 7 +++++++
+ ChangeLog           | 7 +++++++
  fc-match/fc-match.c | 2 +-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit 435fc66073ee83d17242bac2880e843489439cda
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 23 15:32:36 2005 +0000
+Date:   Wed Nov 23 15:32:36 2005 +0000
 
     2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
     Make getopt_long accept -s parameter to fc-match as well.
 
- ChangeLog          | 7 +++++++
+ ChangeLog           | 7 +++++++
  fc-match/fc-match.c | 2 +-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit adac22f290f1780f6d1424d6f93cc4453d4d489c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 22 04:46:55 2005 +0000
+Date:   Tue Nov 22 04:46:55 2005 +0000
 
     Manually perform inlining & partial redundancy elimination to
     reduce calls
-       to FcValueListPtrU.
+        to FcValueListPtrU.
     Only invoke strlen() when really necessary.
     reviewed by: plam
     reviewed by: plam
@@ -18335,15 +23301,15 @@ Date: Tue Nov 22 04:46:55 2005 +0000
 
 commit 8c24aa6b45ce7fa0b872ca2e9c3b96e1a5b720e4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 19 22:38:39 2005 +0000
+Date:   Sat Nov 19 22:38:39 2005 +0000
 
     Get rid of the use of freetype internal headers in fcfreetype.c, since
-       those headers will go away with freetype 2.2. Replace with public
-       domain ftglue code from pango. Note that the patch removes
-       some extra
-       error checking in FT_Get_BDF_Property() and comments out the
-       skipping
-       of empty pcf fonts.
+        those headers will go away with freetype 2.2. Replace with public
+        domain ftglue code from pango. Note that the patch removes
+        some extra
+        error checking in FT_Get_BDF_Property() and comments out the
+        skipping
+        of empty pcf fonts.
     reviewed by: plam
 
  ChangeLog | 2 ++
@@ -18351,21 +23317,21 @@ Date: Sat Nov 19 22:38:39 2005 +0000
 
 commit 246985e40e3296a6bb427026d8274fe8409f3776
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 19 22:37:24 2005 +0000
+Date:   Sat Nov 19 22:37:24 2005 +0000
 
     file ftglue.c was initially added on branch fc-2_4_branch.
 
 commit 824c7bf02515cde1cc562eb6a64b9857d03913fc
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 19 22:37:24 2005 +0000
+Date:   Sat Nov 19 22:37:24 2005 +0000
 
     Get rid of the use of freetype internal headers in fcfreetype.c, since
-       those headers will go away with freetype 2.2. Replace with public
-       domain ftglue code from pango. Note that the patch removes
-       some extra
-       error checking in FT_Get_BDF_Property() and comments out the
-       skipping
-       of empty pcf fonts.
+        those headers will go away with freetype 2.2. Replace with public
+        domain ftglue code from pango. Note that the patch removes
+        some extra
+        error checking in FT_Get_BDF_Property() and comments out the
+        skipping
+        of empty pcf fonts.
     reviewed by: plam
 
  src/ftglue.c | 349
@@ -18375,18 +23341,18 @@ Date: Sat Nov 19 22:37:24 2005 +0000
 
 commit 8ebf7725a8607b39ff505029b2a41369d67eb736
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 19 22:32:13 2005 +0000
+Date:   Sat Nov 19 22:32:13 2005 +0000
 
     Get rid of the use of freetype internal headers in fcfreetype.c, since
-       those headers will go away with freetype 2.2. Replace with public
-       domain ftglue code from pango. Note that the patch removes
-       some extra
-       error checking in FT_Get_BDF_Property() and comments out the
-       skipping
-       of empty pcf fonts.
+        those headers will go away with freetype 2.2. Replace with public
+        domain ftglue code from pango. Note that the patch removes
+        some extra
+        error checking in FT_Get_BDF_Property() and comments out the
+        skipping
+        of empty pcf fonts.
     reviewed by: plam
 
- ChangeLog       | 13 ++++++++++
+ ChangeLog        | 13 ++++++++++
  src/Makefile.am  |  4 ++-
  src/fcfreetype.c | 75
  ++++++++++++++++++++++++++------------------------------
@@ -18394,56 +23360,56 @@ Date: Sat Nov 19 22:32:13 2005 +0000
 
 commit a151acedc056783957f9875b1a21f13d0bb8bfe2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Nov 19 16:24:53 2005 +0000
+Date:   Sat Nov 19 16:24:53 2005 +0000
 
     Further fix of patch from 2005-11-04: miscounted numbers count
-       (numbers_count); didn't strip duplicate numbers (langBankNumbers);
-       and
-       leafidx_offset and numbers_offset in fcLangCharSets are wrong.
+        (numbers_count); didn't strip duplicate numbers (langBankNumbers);
+        and
+        leafidx_offset and numbers_offset in fcLangCharSets are wrong.
     Removed leafidx_count and numbers_count since they are the same and
-       replaced them with offset_count.
+        replaced them with offset_count.
     reviewed by: plam
 
- ChangeLog        | 12 ++++++++++++
+ ChangeLog         | 12 ++++++++++++
  fc-lang/fc-lang.c | 21 +++++++++++++--------
  2 files changed, 25 insertions(+), 8 deletions(-)
 
 commit 8f2a807810c006e771c0f7429ba218a1ffb1e6de
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 18 20:32:30 2005 +0000
+Date:   Fri Nov 18 20:32:30 2005 +0000
 
     Don't crash when fc-cat invoked with no arguments.
     Fix invalid read access caused by premature free and GCC4 warnings in
-       libxml2 codepath.
+        libxml2 codepath.
     reviewed by: plam
     reviewed by: plam
 
- ChangeLog      | 17 ++++++++++++++++-
+ ChangeLog       | 17 ++++++++++++++++-
  fc-cat/fc-cat.c |  3 +++
- src/fcxml.c    | 10 ++++++----
+ src/fcxml.c     | 10 ++++++----
  3 files changed, 25 insertions(+), 5 deletions(-)
 
 commit 82912b062b1bb902db54e5b79f4a2d6a33ccd8a0
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 18 04:21:10 2005 +0000
+Date:   Fri Nov 18 04:21:10 2005 +0000
 
     List iteration not needed in FcConfigValues, since it's building
     up the
-       list itself; we can just strip FcVoid elements during
-       construction.
+        list itself; we can just strip FcVoid elements during
+        construction.
     reviewed by: plam
 
- ChangeLog   | 9 +++++++++
+ ChangeLog   |  9 +++++++++
  src/fccfg.c | 17 ++++++-----------
  2 files changed, 15 insertions(+), 11 deletions(-)
 
 commit 38b2ecad5af4f7f7a55023afafaae075ecd3c753
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 17 16:46:07 2005 +0000
+Date:   Thu Nov 17 16:46:07 2005 +0000
 
     Fix crash on invalid constants in config files (forgot to update
     a pointer
-       upon list iteration.)
+        upon list iteration.)
 
  ChangeLog   | 6 ++++++
  src/fccfg.c | 1 +
@@ -18451,7 +23417,7 @@ Date:   Thu Nov 17 16:46:07 2005 +0000
 
 commit f28472fdb4e51a06283161f9e7a645d5354a37d2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 17 16:17:05 2005 +0000
+Date:   Thu Nov 17 16:17:05 2005 +0000
 
     Complain about invalid constants in config files.
     reviewed by: plam
@@ -18462,30 +23428,30 @@ Date: Thu Nov 17 16:17:05 2005 +0000
 
 commit 1c5b6345b9023dee7962468fccb678b5f2e56ce3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 17 15:43:39 2005 +0000
+Date:   Thu Nov 17 15:43:39 2005 +0000
 
     Don't add current_arch_start more than once.
     Fix ordering of ALIGN with respect to saving block_ptr; add another
     ALIGN
-       to fcfs.c.
+        to fcfs.c.
     reviewed by: plam
 
- ChangeLog      | 16 ++++++++++++++++
- src/fccache.c  |  2 +-
+ ChangeLog       | 16 ++++++++++++++++
+ src/fccache.c   |  2 +-
  src/fccharset.c | 12 ++++++++----
- src/fcfs.c     | 10 +++++++++-
- src/fcname.c   |  6 ++++--
- src/fcpat.c    |  1 +
+ src/fcfs.c      | 10 +++++++++-
+ src/fcname.c    |  6 ++++--
+ src/fcpat.c     |  1 +
  6 files changed, 39 insertions(+), 8 deletions(-)
 
 commit 8e351527bb87798e9b796e12a3b1ee6229536a28
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 16 17:49:01 2005 +0000
+Date:   Wed Nov 16 17:49:01 2005 +0000
 
     src/fccache.c (FcDirCacheProduce)
     Fix case where alignment bytes bumped up metadata->count causing
-       unwarranted failures to write cache files. (Reported by Stephan
-       Kulow).
+        unwarranted failures to write cache files. (Reported by Stephan
+        Kulow).
 
  ChangeLog     |  7 +++++++
  src/fccache.c | 15 +++++++++++----
@@ -18493,54 +23459,54 @@ Date: Wed Nov 16 17:49:01 2005 +0000
 
 commit 7fd7221e683d6c65b9199fd06d34d5215582748e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 16 15:55:17 2005 +0000
+Date:   Wed Nov 16 15:55:17 2005 +0000
 
     Add *NeededBytesAlign(), which overestimates the padding which
     is later
-       added by the new ALIGN macro. Fix alignment problems on ia64
-       and s390
-       by bumping up block_ptr appropriately. (Earlier version by Andreas
-       Schwab).
+        added by the new ALIGN macro. Fix alignment problems on ia64
+        and s390
+        by bumping up block_ptr appropriately. (Earlier version by Andreas
+        Schwab).
     Use sysconf to determine proper PAGESIZE value; this appears to be
-       POSIX-compliant. (reported by Andreas Schwab)
+        POSIX-compliant. (reported by Andreas Schwab)
     reviewed by: plam
 
- ChangeLog      | 23 +++++++++++++++++++++++
- src/fccache.c  | 21 +++++++++++++--------
+ ChangeLog       | 23 +++++++++++++++++++++++
+ src/fccache.c   | 21 +++++++++++++--------
  src/fccharset.c | 11 +++++++++++
- src/fcfs.c     | 10 ++++++++++
- src/fcint.h    | 18 ++++++++++++++++++
- src/fclang.c   |  8 ++++++++
- src/fcname.c   |  8 ++++++++
- src/fcpat.c    | 36 ++++++++++++++++++++++++++++++++++++
+ src/fcfs.c      | 10 ++++++++++
+ src/fcint.h     | 18 ++++++++++++++++++
+ src/fclang.c    |  8 ++++++++
+ src/fcname.c    |  8 ++++++++
+ src/fcpat.c     | 36 ++++++++++++++++++++++++++++++++++++
  8 files changed, 127 insertions(+), 8 deletions(-)
 
 commit 82f35f8bb4fe58ebc839531f4a63544dc07f0f5d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 4 19:31:26 2005 +0000
+Date:   Fri Nov 4 19:31:26 2005 +0000
 
     Fix bug 2878 (excessive relocations at startup for charsets,
     reported by
-       Ross Burton): fc-lang/fc-lang now creates the static form of the
-       langset, not the dynamic form, so that the charsets should now
-       be in
-       .rodata.
+        Ross Burton): fc-lang/fc-lang now creates the static form of the
+        langset, not the dynamic form, so that the charsets should now
+        be in
+        .rodata.
 
- ChangeLog        | 11 +++++++++++
+ ChangeLog         | 11 +++++++++++
  fc-lang/fc-lang.c | 59
  ++++++++++++++++++++++++++++++++++++++++---------------
  src/fccharset.c   | 18 +++++++++++++++++
- src/fcint.h      |  5 +++++
- src/fclang.c     | 16 ++++++++++++++-
+ src/fcint.h       |  5 +++++
+ src/fclang.c      | 16 ++++++++++++++-
  5 files changed, 92 insertions(+), 17 deletions(-)
 
 commit 50544b13c19c6a4a9fe9cf26cdd2170ddacf86d1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 4 16:48:32 2005 +0000
+Date:   Fri Nov 4 16:48:32 2005 +0000
 
     Add test for validity of directory caches that somehow got lost
     (reported
-       by make distcheck).
+        by make distcheck).
 
  ChangeLog   | 6 ++++++
  src/fcdir.c | 2 +-
@@ -18548,19 +23514,19 @@ Date: Fri Nov 4 16:48:32 2005 +0000
 
 commit e6d3e251ee26f1267585cbbd5a95dc1f7290e225
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Nov 4 06:17:00 2005 +0000
+Date:   Fri Nov 4 06:17:00 2005 +0000
 
     Bump version to 2.3.92.
 
- ChangeLog              |  8 ++++++++
- README                         | 29 +++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  8 ++++++++
+ README                  | 29 +++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 37 insertions(+), 4 deletions(-)
 
 commit ea9726b620bff44d45fa25c91a8ab7d31a813577
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 3 04:45:57 2005 +0000
+Date:   Thu Nov 3 04:45:57 2005 +0000
 
     Fix argument ordering problem in call to FcPatternTransferFullFname.
 
@@ -18570,22 +23536,22 @@ Date: Thu Nov 3 04:45:57 2005 +0000
 
 commit 7358dae49b328f5546d156246510601e2dd85d1c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Nov 3 04:23:22 2005 +0000
+Date:   Thu Nov 3 04:23:22 2005 +0000
 
     Fix warnings and embarrassing double-free error.
 
- ChangeLog       |  7 +++++++
+ ChangeLog        |  7 +++++++
  src/fcfreetype.c |  2 +-
- src/fcpat.c     | 14 +++++---------
+ src/fcpat.c      | 14 +++++---------
  3 files changed, 13 insertions(+), 10 deletions(-)
 
 commit efa9f2bd077da0ccc432b80baf87c2a3e7340f6a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 15:57:36 2005 +0000
+Date:   Wed Nov 2 15:57:36 2005 +0000
 
     Change the rule for artificial emboldening in fonts.conf.in. This
     enables
-       the support for artificial emboldening included in cairo.
+        the support for artificial emboldening included in cairo.
     reviewed by: plam
 
  ChangeLog     |  8 ++++++++
@@ -18594,52 +23560,52 @@ Date: Wed Nov 2 15:57:36 2005 +0000
 
 commit d7b3ac63675983c92092703c9c7da0d9e3c0b2ad
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 15:29:53 2005 +0000
+Date:   Wed Nov 2 15:29:53 2005 +0000
 
     Don't zero out full names for FC_REF_CONSTANT fonts; also, duplicate
     full
-       names when transferring, and free full names when freeing the
-       associated font. Reported by Jinghua Luo.
+        names when transferring, and free full names when freeing the
+        associated font. Reported by Jinghua Luo.
 
- ChangeLog   | 8 ++++++++
+ ChangeLog   |  8 ++++++++
  src/fcpat.c | 18 ++++++++++++++----
  2 files changed, 22 insertions(+), 4 deletions(-)
 
 commit 303bcf9b9df00ce2906db5c9414aeec96d1a55f9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 07:37:00 2005 +0000
+Date:   Wed Nov 2 07:37:00 2005 +0000
 
     Revert the previous patch and commit the correct patch: I forgot a
-       canonicalization in FcValueListSerialize, so that it would
-       choke on
-       already-serialized input files. Duh!
+        canonicalization in FcValueListSerialize, so that it would
+        choke on
+        already-serialized input files. Duh!
 
- ChangeLog          | 8 ++++++++
+ ChangeLog           | 8 ++++++++
  fc-cache/fc-cache.c | 9 ---------
- src/fcpat.c        | 1 +
+ src/fcpat.c         | 1 +
  3 files changed, 9 insertions(+), 9 deletions(-)
 
 commit c6b75577f3bf3019399e0a439d9cccf55e53999f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 07:01:25 2005 +0000
+Date:   Wed Nov 2 07:01:25 2005 +0000
 
     Forcibly rescan a directory before writing a fresh local cache
     file for
-       that directory, fixing the losing-fonts problem reported by
-       Mike Fabian
-       and also apparently the font cache file corruption.
+        that directory, fixing the losing-fonts problem reported by
+        Mike Fabian
+        and also apparently the font cache file corruption.
 
- ChangeLog          | 8 ++++++++
+ ChangeLog           | 8 ++++++++
  fc-cache/fc-cache.c | 9 +++++++++
  2 files changed, 17 insertions(+)
 
 commit 9090cb9eceec10581c9f927b2e895189d20d1d4c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 06:39:23 2005 +0000
+Date:   Wed Nov 2 06:39:23 2005 +0000
 
     Fix thinko: actually, the whole global cache is stale if the global
     cache
-       is older than the (newest) config file.
+        is older than the (newest) config file.
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 6 +++---
@@ -18647,11 +23613,11 @@ Date: Wed Nov 2 06:39:23 2005 +0000
 
 commit 2b25f00c501a4baf2096a9cb68b0be961251cfda
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Nov 2 06:29:14 2005 +0000
+Date:   Wed Nov 2 06:29:14 2005 +0000
 
     Declare the global cache of a directory's contents to be stale if the
-       directory is newer than the (newest) configuration file. S:
-       ----------------------------------------------------------------------
+        directory is newer than the (newest) configuration file. S:
+        ----------------------------------------------------------------------
 
  ChangeLog     |  8 ++++++++
  src/fccache.c | 12 +++++++++---
@@ -18661,10 +23627,10 @@ Date: Wed Nov 2 06:29:14 2005 +0000
 
 commit 793154ed8d4b2d832f81a893273c6504bac3f0b3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 1 06:57:25 2005 +0000
+Date:   Tue Nov 1 06:57:25 2005 +0000
 
     Copy the full pathname whenever duplicating an FcPattern; otherwise,
-       applications continue breaking.
+        applications continue breaking.
 
  ChangeLog     | 10 ++++++++++
  src/fcint.h   |  4 ++--
@@ -18675,44 +23641,44 @@ Date: Tue Nov 1 06:57:25 2005 +0000
 
 commit d6946c1a11695eb55a3fe60db5480df94570b1ba
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 1 05:52:28 2005 +0000
+Date:   Tue Nov 1 05:52:28 2005 +0000
 
     Fix small memory error (tried to free argv); use basename and dirname
-       correctly (they can modify their arguments).
+        correctly (they can modify their arguments).
 
- ChangeLog       | 7 +++++++
+ ChangeLog        | 7 +++++++
  fc-cat/fc-cat.c  | 4 +---
  src/fcfreetype.c | 2 +-
  3 files changed, 9 insertions(+), 4 deletions(-)
 
 commit e77c17184a6172d6368dd3193c791c4027065bbd
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Nov 1 05:26:27 2005 +0000
+Date:   Tue Nov 1 05:26:27 2005 +0000
 
     Reinstate basename patch, but keep a hash table linking FcPatterns
     to their
-       fully-qualified font names for clients' benefit. Clients only
-       pay for
-       the font names once they request the FC_FILE property from an
-       FcPattern, but the font name is malloc'd at that point (i.e. not
-       mmapped: that's impossible, since it may vary between machines.)
-       Clients do have to pay for a copy of the path name per cache file.
+        fully-qualified font names for clients' benefit. Clients only
+        pay for
+        the font names once they request the FC_FILE property from an
+        FcPattern, but the font name is malloc'd at that point (i.e. not
+        mmapped: that's impossible, since it may vary between machines.)
+        Clients do have to pay for a copy of the path name per cache file.
     Note that FcPatternGetString now does some rewriting if you ask for an
-       FC_FILE, appending the pathname as appropriate.
+        FC_FILE, appending the pathname as appropriate.
 
- ChangeLog       | 23 ++++++++++++++
+ ChangeLog        | 23 ++++++++++++++
  fc-cat/fc-cat.c  |  7 ++--
- src/fccache.c   | 40 ++++++++++++++++++++---
+ src/fccache.c    | 40 ++++++++++++++++++++---
  src/fcfreetype.c |  5 ++-
- src/fcint.h     |  9 ++++++
- src/fclist.c    |  8 +++++
- src/fcpat.c     | 97
+ src/fcint.h      |  9 ++++++
+ src/fclist.c     |  8 +++++
+ src/fcpat.c      | 97
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  7 files changed, 181 insertions(+), 8 deletions(-)
 
 commit be99726f672cef086b4256ad34163f6f9ed9d4a5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Oct 31 06:02:00 2005 +0000
+Date:   Mon Oct 31 06:02:00 2005 +0000
 
     Revert basename patch, which breaks fontconfig clients on my system.
 
@@ -18721,64 +23687,64 @@ Date: Mon Oct 31 06:02:00 2005 +0000
 
 commit 720298e773876037dd9af384a9cc16956600b5e7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 26 06:34:29 2005 +0000
+Date:   Wed Oct 26 06:34:29 2005 +0000
 
     Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether to load
-       embedded bitmaps or not.
+        embedded bitmaps or not.
     reviewed by: plam
 
- ChangeLog              | 11 +++++++++++
+ ChangeLog               | 11 +++++++++++
  fontconfig/fontconfig.h |  1 +
- fonts.conf.in          |  4 ++++
- src/fcdefault.c        |  1 +
- src/fcname.c           |  1 +
+ fonts.conf.in           |  4 ++++
+ src/fcdefault.c         |  1 +
+ src/fcname.c            |  1 +
  5 files changed, 18 insertions(+)
 
 commit 961d9b9993ae815d6ba723829724bf0685809091
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Oct 25 22:29:13 2005 +0000
+Date:   Tue Oct 25 22:29:13 2005 +0000
 
     Only add basename to patterns' FC_FILE element, not any part of the
-       dirname.
+        dirname.
 
- ChangeLog       | 6 ++++++
+ ChangeLog        | 6 ++++++
  src/fcfreetype.c | 3 ++-
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit 573da729101bfb81d2cafb7e442bbf5395ae9eef
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Oct 22 15:12:05 2005 +0000
+Date:   Sat Oct 22 15:12:05 2005 +0000
 
     Add some more consts, fixing more GCC4 warnings.
 
- ChangeLog       |  5 +++++
+ ChangeLog        |  5 +++++
  src/fcfreetype.c | 22 +++++++++++-----------
  2 files changed, 16 insertions(+), 11 deletions(-)
 
 commit 904426816df300fad816238f0f27ef595a6a539b
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Oct 22 14:21:14 2005 +0000
+Date:   Sat Oct 22 14:21:14 2005 +0000
 
     Support localized font family and style names. This has been
     reported to
-       break old apps like xfd, but modern (gtk+/qt/mozilla) apps
-       work fine.
+        break old apps like xfd, but modern (gtk+/qt/mozilla) apps
+        work fine.
     reviewed by: plam
 
- ChangeLog      |   7 ++++
+ ChangeLog       |   7 ++++
  src/fcdefault.c | 110
  +++++++++++++++++++++++++++++++-------------------------
- src/fcint.h    |   4 +++
- src/fclist.c   |  60 +++++++++++++++++++++++++++++--
+ src/fcint.h     |   4 +++
+ src/fclist.c    |  60 +++++++++++++++++++++++++++++--
  4 files changed, 130 insertions(+), 51 deletions(-)
 
 commit e58b50e88cbe3b55695101a0988306ea4646bbe4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Oct 21 20:24:30 2005 +0000
+Date:   Fri Oct 21 20:24:30 2005 +0000
 
     Destroy the global cache file if it's terminally broken. (reported
     by Mike
-       Fabian)
+        Fabian)
 
  ChangeLog     |  9 ++++++++-
  src/fccache.c | 16 +++++++++++++---
@@ -18786,42 +23752,42 @@ Date: Fri Oct 21 20:24:30 2005 +0000
 
 commit 2fa3f27e68834d55f0f451514a0658b247fddb0d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Oct 21 19:47:43 2005 +0000
+Date:   Fri Oct 21 19:47:43 2005 +0000
 
     Prevent fc-list from escaping strings when printing them.
 
- ChangeLog              |  7 +++++++
- fc-list/fc-list.c      |  2 +-
+ ChangeLog               |  7 +++++++
+ fc-list/fc-list.c       |  2 +-
  fontconfig/fontconfig.h |  3 +++
- src/fcname.c           | 16 +++++++++++-----
+ src/fcname.c            | 16 +++++++++++-----
  4 files changed, 22 insertions(+), 6 deletions(-)
 
 commit 250c1cd422ce6260ff58f2699043556d93729ef7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Oct 20 20:50:21 2005 +0000
+Date:   Thu Oct 20 20:50:21 2005 +0000
 
     Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
     reviewed by: plam
 
- ChangeLog              |  9 ++++++++-
+ ChangeLog               |  9 ++++++++-
  fontconfig/fontconfig.h | 12 ++++++++++--
  2 files changed, 18 insertions(+), 3 deletions(-)
 
 commit 21696e5bf08b67b57155e5b12e054456fd2b03e2
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Oct 14 21:02:31 2005 +0000
+Date:   Fri Oct 14 21:02:31 2005 +0000
 
     Add consts to variables so as to move arrays into .rodata.
     reviewed by: plam
 
- ChangeLog                  | 8 ++++++++
+ ChangeLog                   | 8 ++++++++
  fc-glyphname/fc-glyphname.c | 4 ++--
- src/fclang.c               | 4 ++--
+ src/fclang.c                | 4 ++--
  3 files changed, 12 insertions(+), 4 deletions(-)
 
 commit 15d7bd0a16af189194b665e789331a8f8c86f20d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Oct 14 20:56:27 2005 +0000
+Date:   Fri Oct 14 20:56:27 2005 +0000
 
     Check existence of directory cache file before attempting to unlink.
     reviewed by: plam
@@ -18832,7 +23798,7 @@ Date:   Fri Oct 14 20:56:27 2005 +0000
 
 commit 1178b569764caaf51d2dc55f1c2cf969a98cf61e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Oct 13 12:32:14 2005 +0000
+Date:   Thu Oct 13 12:32:14 2005 +0000
 
     Fix flipped return value on unlink. (Reported by Mike Fabian)
 
@@ -18842,11 +23808,11 @@ Date: Thu Oct 13 12:32:14 2005 +0000
 
 commit 2eb843740672da9319c190c48aea2cd98dc92725
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 12 07:55:42 2005 +0000
+Date:   Wed Oct 12 07:55:42 2005 +0000
 
     When fc-cache is run without --force, use directory cache files to
     speed up
-       fc-cache run time.
+        fc-cache run time.
 
  src/fccache.c | 4 ++--
  src/fcdir.c   | 3 +++
@@ -18855,11 +23821,11 @@ Date: Wed Oct 12 07:55:42 2005 +0000
 
 commit 23787a8f1b7a23c82f479b0e6906928b9920b9cc
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Oct 6 20:45:25 2005 +0000
+Date:   Thu Oct 6 20:45:25 2005 +0000
 
     Add padding to make valgrind and glibc not hate each other when
     calling
-       strlen().
+        strlen().
 
  ChangeLog    | 8 ++++++++
  src/fcname.c | 5 +++--
@@ -18868,18 +23834,18 @@ Date: Thu Oct 6 20:45:25 2005 +0000
 
 commit 008385c5fb957c1547fa1a29537d0c9fb8e3b38a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 21:12:57 2005 +0000
+Date:   Wed Oct 5 21:12:57 2005 +0000
 
     Use libtool -no-undefined flag on all platforms.
     reviewed by: plam & keithp
 
- ChangeLog      | 7 +++++++
+ ChangeLog       | 7 +++++++
  src/Makefile.am | 3 +--
  2 files changed, 8 insertions(+), 2 deletions(-)
 
 commit edffd3b964cde0f2cde86cc5c0cef180843c44e5
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 21:12:25 2005 +0000
+Date:   Wed Oct 5 21:12:25 2005 +0000
 
     Fix typo in manually applying patch.
 
@@ -18888,7 +23854,7 @@ Date:   Wed Oct 5 21:12:25 2005 +0000
 
 commit affc7d1849c26db10b344cfbe834d0bba764f419
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 19:40:35 2005 +0000
+Date:   Wed Oct 5 19:40:35 2005 +0000
 
     Modify config file to use Greek fonts before Asian fonts with
     Greek glyphs.
@@ -18900,7 +23866,7 @@ Date:   Wed Oct 5 19:40:35 2005 +0000
 
 commit 328929f5ea3f507426b0c021c11fef62794066df
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 19:38:40 2005 +0000
+Date:   Wed Oct 5 19:38:40 2005 +0000
 
     Modify config file to use Greek fonts before Asian fonts with
     Greek glyphs.
@@ -18912,22 +23878,22 @@ Date: Wed Oct 5 19:38:40 2005 +0000
 
 commit 1ed67f658c910ece44ab73bb5a1d08ea1c0246d3
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 19:32:41 2005 +0000
+Date:   Wed Oct 5 19:32:41 2005 +0000
 
     Use libtool -no-undefined flag on all platforms.
     reviewed by: plam & keithp
 
- ChangeLog      | 7 +++++++
+ ChangeLog       | 7 +++++++
  src/Makefile.am | 3 +--
  2 files changed, 8 insertions(+), 2 deletions(-)
 
 commit 751932ddb10d5ce798c56d82bc1f40a443237ac1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 18:41:55 2005 +0000
+Date:   Wed Oct 5 18:41:55 2005 +0000
 
     Implement move-to-front array for banks (perf regression reported
     by Ronny
-       V. Vindenes).
+        V. Vindenes).
 
  ChangeLog     |  6 ++++++
  src/fccache.c | 29 +++++++++++++++++++----------
@@ -18935,26 +23901,26 @@ Date: Wed Oct 5 18:41:55 2005 +0000
 
 commit 55c8fa4f08b86f4e9af97920a61943f5facd7822
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Oct 5 00:34:52 2005 +0000
+Date:   Wed Oct 5 00:34:52 2005 +0000
 
     Add new API which unlinks directory caches and checks dir caches for
-       existence of appropriate sections. Fix fc-cache to unlink
-       stale cache
-       files and save directory caches that lack relevant sections.
+        existence of appropriate sections. Fix fc-cache to unlink
+        stale cache
+        files and save directory caches that lack relevant sections.
 
- ChangeLog              | 11 +++++++++++
- fc-cache/fc-cache.c    |  6 +++++-
+ ChangeLog               | 11 +++++++++++
+ fc-cache/fc-cache.c     |  6 +++++-
  fontconfig/fontconfig.h |  6 ++++++
- src/fccache.c          | 44 ++++++++++++++++++++++++++++++++++----------
+ src/fccache.c           | 44 ++++++++++++++++++++++++++++++++++----------
  4 files changed, 56 insertions(+), 11 deletions(-)
 
 commit 6bf2380478f825a6135527133a03869e0ae18742
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Oct 3 19:51:11 2005 +0000
+Date:   Mon Oct 3 19:51:11 2005 +0000
 
     Ensure that a directory cache has the appropriate section before
     reporting
-       that it is valid (reported by Matthias Clasen).
+        that it is valid (reported by Matthias Clasen).
 
  ChangeLog     |  6 ++++++
  src/fccache.c | 15 +++++++++++++++
@@ -18962,37 +23928,37 @@ Date: Mon Oct 3 19:51:11 2005 +0000
 
 commit bc5784ff00230bf70e9cbe5c97e62e4f251e7000
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Oct 1 19:18:51 2005 +0000
+Date:   Sat Oct 1 19:18:51 2005 +0000
 
     Bump version number to 2.3.91.
 
- README                         | 15 ++++++++++++++-
- configure.in           |  2 +-
+ README                  | 15 ++++++++++++++-
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  3 files changed, 16 insertions(+), 3 deletions(-)
 
 commit e99f0f0a45b29ad195c96833c95771ccf7771fef
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 29 20:53:30 2005 +0000
+Date:   Thu Sep 29 20:53:30 2005 +0000
 
     Use libxml2 if requested (with --enable-libxml2) or if expat is not
-       available.
+        available.
     reviewed by: plam
 
- ChangeLog      |  11 ++++
- configure.in   | 162
+ ChangeLog       |  11 ++++
+ configure.in    | 162
  +++++++++++++++++++++++++++++++-------------------------
  src/Makefile.am |   3 +-
- src/fcxml.c    |  71 ++++++++++++++++++++++++-
+ src/fcxml.c     |  71 ++++++++++++++++++++++++-
  4 files changed, 174 insertions(+), 73 deletions(-)
 
 commit 649cc3616d11add9d5c39563f9f343614c2bb2eb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 29 05:14:04 2005 +0000
+Date:   Thu Sep 29 05:14:04 2005 +0000
 
     Fix multi-arch cache files: compute the position for the block to
     be added
-       using info from OrigFile, not NewFile.
+        using info from OrigFile, not NewFile.
 
  ChangeLog     | 6 ++++++
  src/fccache.c | 4 ++--
@@ -19000,11 +23966,11 @@ Date: Thu Sep 29 05:14:04 2005 +0000
 
 commit cd3109114ca6ee9ce2b454180dadea5aa04ce55d
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Sep 28 16:21:14 2005 +0000
+Date:   Wed Sep 28 16:21:14 2005 +0000
 
     Cast results of sizeof() to unsigned int to get rid of warnings
     on x86_64
-       (thanks Matthias Clasen).
+        (thanks Matthias Clasen).
 
  ChangeLog     |  8 +++++++-
  src/fccache.c | 38 +++++++++++++++++++-------------------
@@ -19012,7 +23978,7 @@ Date:   Wed Sep 28 16:21:14 2005 +0000
 
 commit 9ecb9a9a063e4f94deb6da8fd15656c9a7e480e7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Sep 28 00:23:39 2005 +0000
+Date:   Wed Sep 28 00:23:39 2005 +0000
 
     Update ChangeLog.
 
@@ -19021,7 +23987,7 @@ Date:   Wed Sep 28 00:23:39 2005 +0000
 
 commit 1d879de2d968ef2bd6317ba3c7be0e62b263a708
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Sep 28 00:23:15 2005 +0000
+Date:   Wed Sep 28 00:23:15 2005 +0000
 
     Use FcAtomic to rewrite cache files.
 
@@ -19031,29 +23997,29 @@ Date: Wed Sep 28 00:23:15 2005 +0000
 
 commit 099f9a86834060741dcbdf8b70e32f3a7338925f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Sep 27 15:52:58 2005 +0000
+Date:   Tue Sep 27 15:52:58 2005 +0000
 
     Don't unlink the fonts.cache-2 file even if there's no data to
     write; just
-       write an empty cache file. (thanks Lubos Lunak)
+        write an empty cache file. (thanks Lubos Lunak)
 
  src/fccache.c | 7 -------
  1 file changed, 7 deletions(-)
 
 commit 6aee8c6faa2906334b9d9f933440184a256d0b53
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Sep 27 05:43:08 2005 +0000
+Date:   Tue Sep 27 05:43:08 2005 +0000
 
     Allocate room for the subdirectory names in each directory
     cache. Thanks to
-       James Cloos for finding and diagnosing this bug!
+        James Cloos for finding and diagnosing this bug!
 
  src/fccache.c | 10 ++++++++--
  1 file changed, 8 insertions(+), 2 deletions(-)
 
 commit 2633bc38431468ce528407ee576cb29b0d1212c8
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Sep 27 05:26:59 2005 +0000
+Date:   Tue Sep 27 05:26:59 2005 +0000
 
     Fix .cvsignore file after copying across directories.
 
@@ -19062,18 +24028,18 @@ Date: Tue Sep 27 05:26:59 2005 +0000
 
 commit d75bef7bc8b2bb4ed7750ce5083b1e65a709d75a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 21:42:32 2005 +0000
+Date:   Fri Sep 23 21:42:32 2005 +0000
 
     Add comment about needing docbook-utils to run make distcheck;
     hope it'll
-       save pain to others later.
+        save pain to others later.
 
  INSTALL | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 35c2c7f1e979449e67551588f3440ff15e5c806c
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 14:41:40 2005 +0000
+Date:   Fri Sep 23 14:41:40 2005 +0000
 
     Update ChangeLog for 2.3.90.
 
@@ -19082,55 +24048,55 @@ Date: Fri Sep 23 14:41:40 2005 +0000
 
 commit d8c22de1f1c809ac6b0e1b3caa2cd9ad8046311a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 05:59:19 2005 +0000
+Date:   Fri Sep 23 05:59:19 2005 +0000
 
     file Makefile.am was initially added on branch fc-2_4_branch.
 
 commit f28f090d2537fc7dcc4fe71a84020a53d14027b4
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 05:59:19 2005 +0000
+Date:   Fri Sep 23 05:59:19 2005 +0000
 
     Add new command-line utility, fc-cat, to convert fonts.cache-2
     files into
-       fonts.cache-1 files (e.g. for grepping and validation of the mmap
-       codepath), as per James Cloos' request.
+        fonts.cache-1 files (e.g. for grepping and validation of the mmap
+        codepath), as per James Cloos' request.
     Remove done 'TODO' comment.
     Updates for development release 2.3.90.
 
- Makefile.am            |   2 +-
- README                         |   7 +-
- configure.in           |   3 +-
- fc-cache/fc-cache.c    |   1 -
+ Makefile.am             |   2 +-
+ README                  |   7 +-
+ configure.in            |   3 +-
+ fc-cache/fc-cache.c     |   1 -
  fc-cache/fc-cache.sgml  |   4 +-
- fc-cat/.cvsignore      |   6 +
- fc-cat/Makefile.am     |  55 ++++++++
- fc-cat/fc-cat.c        | 336
+ fc-cat/.cvsignore       |   6 +
+ fc-cat/Makefile.am      |  55 ++++++++
+ fc-cat/fc-cat.c         | 336
  ++++++++++++++++++++++++++++++++++++++++++++++++
- fc-cat/fc-cat.sgml     | 139 ++++++++++++++++++++
+ fc-cat/fc-cat.sgml      | 139 ++++++++++++++++++++
  fontconfig/fontconfig.h |   2 +-
  10 files changed, 548 insertions(+), 7 deletions(-)
 
 commit a9698bed6553c12d397593292ee9e81054244e85
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 04:09:37 2005 +0000
+Date:   Fri Sep 23 04:09:37 2005 +0000
 
     Update documentation -- fc-cache's man page now says that you need
     to run
-       fc-cache once per cached architecture; add some documentation
-       to the
-       FcCache structure.
+        fc-cache once per cached architecture; add some documentation
+        to the
+        FcCache structure.
     Make fc-cache write out fonts.cache-2 files for directories with
     no fonts
-       (i.e. only subdirectories).
+        (i.e. only subdirectories).
 
  fc-cache/fc-cache.sgml |  7 +++++++
- src/fccache.c         | 13 ++++++++-----
- src/fcint.h           |  8 ++++----
+ src/fccache.c          | 13 ++++++++-----
+ src/fcint.h            |  8 ++++----
  3 files changed, 19 insertions(+), 9 deletions(-)
 
 commit e3ff8a4ea66b3738a72558520f33eb5b8d44442e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 02:33:55 2005 +0000
+Date:   Fri Sep 23 02:33:55 2005 +0000
 
     Remove debugging printf (oops).
 
@@ -19139,7 +24105,7 @@ Date:   Fri Sep 23 02:33:55 2005 +0000
 
 commit bef069e19e72af1f7983e40a7ca5045f7d006bdd
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 02:08:40 2005 +0000
+Date:   Fri Sep 23 02:08:40 2005 +0000
 
     Convert fromcode to char[12] from char *.
 
@@ -19148,55 +24114,55 @@ Date: Fri Sep 23 02:08:40 2005 +0000
 
 commit c7beacf91698e8b0dcba2e813052538ec56dd268
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 23 01:48:33 2005 +0000
+Date:   Fri Sep 23 01:48:33 2005 +0000
 
     Small patch for output in case where lineno not defined.
 
  fc-lang/fc-lang.c |  2 +-
- src/fcint.h      | 14 +++++++-------
+ src/fcint.h       | 14 +++++++-------
  2 files changed, 8 insertions(+), 8 deletions(-)
 
 commit 67accef4d3e245c1dea341e633d82b14aa03432a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 22 23:45:53 2005 +0000
+Date:   Thu Sep 22 23:45:53 2005 +0000
 
     Fix more gcc4 warnings:
     - Cast sizeof to int, to shut up signedness warnings in comparison.
     - Add consts where appropriate.
     reviewed by: Patrick Lam <plam@mit.edu>
 
- doc/edit-sgml.c            |   4 +-
- fc-case/fc-case.c          |   8 +--
- fc-glyphname/fc-glyphname.c | 21 ++++---
- fc-lang/fc-lang.c          |  20 ++++---
- src/fccharset.c            |   3 +-
- src/fcdefault.c            |   6 +-
- src/fcfreetype.c           |  43 ++++++++------
- src/fcinit.c               |   2 +-
- src/fcmatch.c              |  18 +++---
- src/fcpat.c                |   3 +-
- src/fcxml.c                | 138
+ doc/edit-sgml.c             |   4 +-
+ fc-case/fc-case.c           |   8 +--
+ fc-glyphname/fc-glyphname.c |  21 ++++---
+ fc-lang/fc-lang.c           |  20 ++++---
+ src/fccharset.c             |   3 +-
+ src/fcdefault.c             |   6 +-
+ src/fcfreetype.c            |  43 ++++++++------
+ src/fcinit.c                |   2 +-
+ src/fcmatch.c               |  18 +++---
+ src/fcpat.c                 |   3 +-
+ src/fcxml.c                 | 138
  ++++++++++++++++++++++----------------------
  11 files changed, 142 insertions(+), 124 deletions(-)
 
 commit 141432505aecb158285ccc84ec5d7099e3c2efa7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 22 20:49:24 2005 +0000
+Date:   Thu Sep 22 20:49:24 2005 +0000
 
     Fix bug when clients use FcNameRegisterObjectTypes; fontconfig was
-       returning bogus (i.e. duplicate) FcObjectPtr values. Now use
-       negative
-       values for dynamic object strings and positive values for
-       built-in and
-       FcNameRegisterObjectType strings. Thanks to Matthias Clasen for
-       pinpointing this bus!
+        returning bogus (i.e. duplicate) FcObjectPtr values. Now use
+        negative
+        values for dynamic object strings and positive values for
+        built-in and
+        FcNameRegisterObjectType strings. Thanks to Matthias Clasen for
+        pinpointing this bus!
 
  src/fcname.c | 37 ++++++++++++++++++++++++++++---------
  1 file changed, 28 insertions(+), 9 deletions(-)
 
 commit 9fe2bd7ab07611559363d80efdf8d3efb4ea737e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 16 04:57:18 2005 +0000
+Date:   Fri Sep 16 04:57:18 2005 +0000
 
     Add missing FcValueCanonicalize on call to FcPatternAdd.
 
@@ -19205,82 +24171,82 @@ Date: Fri Sep 16 04:57:18 2005 +0000
 
 commit 13cdf607533ad592b896b738c5642f3685fd8053
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 15 20:36:44 2005 +0000
+Date:   Thu Sep 15 20:36:44 2005 +0000
 
     Revert ill-advised addition of FC_RENDER. Add strategy for handling
     objects
-       that aren't hardcoded into fontconfig, but generated by fontconfig
-       clients: keep another array of user-defined objects (indexed
-       after the
-       built-in objects).
+        that aren't hardcoded into fontconfig, but generated by fontconfig
+        clients: keep another array of user-defined objects (indexed
+        after the
+        built-in objects).
     Fix compilation warning (uninitialized variable).
     Add comment.
 
  fontconfig/fontconfig.h |  1 -
- src/fccache.c          |  1 +
- src/fccfg.c            |  2 +-
- src/fcname.c           | 98
+ src/fccache.c           |  1 +
+ src/fccfg.c             |  2 +-
+ src/fcname.c            | 98
  +++++++++++++++++++++++++++++++++++++++----------
  4 files changed, 80 insertions(+), 22 deletions(-)
 
 commit 0fa237d1e010a1ab9b8fb09079fbb364958d8cc7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Sep 11 05:17:28 2005 +0000
+Date:   Sun Sep 11 05:17:28 2005 +0000
 
     Add a global binding for the 'render' pattern element used by Xft;
     the lack
-       of said binding prevented programs from using FcPatterns
-       through Xft.
+        of said binding prevented programs from using FcPatterns
+        through Xft.
 
  fontconfig/fontconfig.h | 1 +
- src/fcname.c           | 2 +-
+ src/fcname.c            | 2 +-
  2 files changed, 2 insertions(+), 1 deletion(-)
 
 commit 8245771d5a42dac36024411a0da047b9a7dc42c6
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Sep 11 02:16:09 2005 +0000
+Date:   Sun Sep 11 02:16:09 2005 +0000
 
     Merge with HEAD and finish the GCC 4 cleanups (no more warnings!)
 
- ChangeLog                  |  19 +++++
- doc/fontconfig-user.sgml    |  4 +-
- fc-glyphname/fc-glyphname.c |  4 +-
- fc-lang/fc-lang.c          |   2 +-
- fc-match/fc-match.c        |   8 +-
- fontconfig/fcprivate.h      |  2 +-
- src/fccache.c              |  35 ++++----
- src/fccfg.c                |   2 +-
- src/fcdir.c                |   4 +-
- src/fcfreetype.c           | 191
+ ChangeLog                   |  19 +++++
+ doc/fontconfig-user.sgml    |   4 +-
+ fc-glyphname/fc-glyphname.c |   4 +-
+ fc-lang/fc-lang.c           |   2 +-
+ fc-match/fc-match.c         |   8 +-
+ fontconfig/fcprivate.h      |   2 +-
+ src/fccache.c               |  35 ++++----
+ src/fccfg.c                 |   2 +-
+ src/fcdir.c                 |   4 +-
+ src/fcfreetype.c            | 191
  ++++++++++++++++++++++++--------------------
- src/fcint.h                |  10 +--
- src/fclist.c               |   2 +-
- src/fcpat.c                |  80 +++++++++----------
- src/fcstr.c                |   2 +-
- src/fcxml.c                |  11 ++-
+ src/fcint.h                 |  10 +--
+ src/fclist.c                |   2 +-
+ src/fcpat.c                 |  80 +++++++++----------
+ src/fcstr.c                 |   2 +-
+ src/fcxml.c                 |  11 ++-
  15 files changed, 209 insertions(+), 167 deletions(-)
 
 commit 8cb4c56d9925bba17bce32c12f7e09d8f36b2e53
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Sep 7 15:38:46 2005 +0000
+Date:   Wed Sep 7 15:38:46 2005 +0000
 
     Robustness fixes: check return values from read and lseek; fix
-       uninitialized variables; ensure progress on FcCacheSkipToArch.
+        uninitialized variables; ensure progress on FcCacheSkipToArch.
 
  src/fccache.c | 34 +++++++++++++++++++++++-----------
  1 file changed, 23 insertions(+), 11 deletions(-)
 
 commit 03a212e525a34e2ceeac369bac669871d8cc681a
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Sep 3 04:56:56 2005 +0000
+Date:   Sat Sep 3 04:56:56 2005 +0000
 
     Really fix the global cache: make sure we're reading and writing
     the same
-       data format. Also match subdirectories when consuming cache
-       information. Also check dates for global cache: a dir is out of
-       date if
-       it is newer than the global cache; scan it manually if that's
-       the case.
+        data format. Also match subdirectories when consuming cache
+        information. Also check dates for global cache: a dir is out of
+        date if
+        it is newer than the global cache; scan it manually if that's
+        the case.
 
  src/fccache.c | 55
  ++++++++++++++++++++++++++++++++++++++-----------------
@@ -19290,28 +24256,28 @@ Date: Sat Sep 3 04:56:56 2005 +0000
 
 commit f6ee3db5f02eb8f41e3941e892964175cad0a898
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Sep 2 06:16:49 2005 +0000
+Date:   Fri Sep 2 06:16:49 2005 +0000
 
     Fix addressing in the global cache file, preventing infinite
     loops. Get rid
-       of unused variables.
+        of unused variables.
 
  src/fccache.c | 6 ++----
  1 file changed, 2 insertions(+), 4 deletions(-)
 
 commit 07b3e5766332ad1b2ec0ae613476a123ec9c5453
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 1 18:29:28 2005 +0000
+Date:   Thu Sep 1 18:29:28 2005 +0000
 
     Apply Matthias Clasen's patch to fix obvious bogosity (i.e. missing
-       FcObjectPtrU).
+        FcObjectPtrU).
 
  src/fcpat.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 0230c9f88706ee4629bca625f1acd133a4cb1d9f
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 1 06:59:44 2005 +0000
+Date:   Thu Sep 1 06:59:44 2005 +0000
 
     Fix embarassing attempt to free a static buffer.
 
@@ -19320,40 +24286,40 @@ Date: Thu Sep 1 06:59:44 2005 +0000
 
 commit 2304e38f9bc070ccd54f80187c208d93b6eeb373
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Sep 1 06:14:46 2005 +0000
+Date:   Thu Sep 1 06:14:46 2005 +0000
 
     :
     Save subdirectory names in cache files to save time. This completely
-       restores the original fontconfig API, BTW. Note that directories
-       without fonts don't get a cache file; but then how many files
-       would it
-       have in that directory...
+        restores the original fontconfig API, BTW. Note that directories
+        without fonts don't get a cache file; but then how many files
+        would it
+        have in that directory...
 
- fc-cache/fc-cache.c    |  2 +-
+ fc-cache/fc-cache.c     |  2 +-
  fontconfig/fontconfig.h |  2 +-
- src/fccache.c          | 40 ++++++++++++++++------------------------
- src/fcdir.c            |  4 ++--
- src/fcint.h            |  2 +-
+ src/fccache.c           | 40 ++++++++++++++++------------------------
+ src/fcdir.c             |  4 ++--
+ src/fcint.h             |  2 +-
  5 files changed, 21 insertions(+), 29 deletions(-)
 
 commit 5e678e9459f71878d72f72d3765f7dc7e8f3f643
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Aug 31 15:12:41 2005 +0000
+Date:   Wed Aug 31 15:12:41 2005 +0000
 
     Only load requested fonts for fc-cache, and cleanup memory handling:
-       *Serialize no longer mutates original FcPatterns, it creates a
-       new copy
-       in the supplied buffer. Fix thinkos in global cache freeing and in
-       FcCacheSkipToArch.
-
- fc-cache/fc-cache.c | 3 +--
- src/fccache.c      | 36 ++++++++++++++++--------------------
- src/fcfs.c         |  3 ---
+        *Serialize no longer mutates original FcPatterns, it creates a
+        new copy
+        in the supplied buffer. Fix thinkos in global cache freeing and in
+        FcCacheSkipToArch.
+
+ fc-cache/fc-cache.c |  3 +--
+ src/fccache.c       | 36 ++++++++++++++++--------------------
+ src/fcfs.c          |  3 ---
  3 files changed, 17 insertions(+), 25 deletions(-)
 
 commit fd77c154afb039b6b19f8e29c28dce652b2d060e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Aug 30 23:03:42 2005 +0000
+Date:   Tue Aug 30 23:03:42 2005 +0000
 
     Fix compilation error exposed with gcc 2.95.
 
@@ -19362,31 +24328,31 @@ Date: Tue Aug 30 23:03:42 2005 +0000
 
 commit eb0cf67144258acbee0a5bf369b6dfb950fcebb9
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Aug 30 05:55:13 2005 +0000
+Date:   Tue Aug 30 05:55:13 2005 +0000
 
     src/fcint.c
     The global cache now uses the same mmap-based cache infrastructure
     as the
-       per-directory caches. Furthermore, the global cache is
-       automatically
-       updated (if possible) whenever fontconfig is used. Rip out
-       remnants of
-       the old cache infrastructure.
-
- fc-cache/fc-cache.c |   3 -
- src/fccache.c      | 1156
+        per-directory caches. Furthermore, the global cache is
+        automatically
+        updated (if possible) whenever fontconfig is used. Rip out
+        remnants of
+        the old cache infrastructure.
+
+ fc-cache/fc-cache.c |    3 -
+ src/fccache.c       | 1156
  ++++++++++++---------------------------------------
- src/fcdir.c        |  144 ++-----
- src/fcint.h        |   97 +----
+ src/fcdir.c         |  144 ++-----
+ src/fcint.h         |   97 +----
  4 files changed, 307 insertions(+), 1093 deletions(-)
 
 commit 2dbe759762c3b7b779dbe52ef0d6ca50e51d4bf1
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sun Aug 28 05:20:23 2005 +0000
+Date:   Sun Aug 28 05:20:23 2005 +0000
 
     Emit and verify machine signature (sizeof (stuff) + endianness)
     in cache
-       files. Fix bugs in FcCacheBankToIndex.
+        files. Fix bugs in FcCacheBankToIndex.
 
  src/fccache.c | 152
  ++++++++++++++++++++++++++++++++--------------------------
@@ -19395,17 +24361,17 @@ Date: Sun Aug 28 05:20:23 2005 +0000
 
 commit 7f37423d8c1acc8ece0555e66ae7f857c22a77a7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Sat Aug 27 02:34:24 2005 +0000
+Date:   Sat Aug 27 02:34:24 2005 +0000
 
     Replace FcObjectStaticName by FcStrStaticName. Implement serialization
     of
-       'object' table (strings pointed to by FcPatternElt->object and
-       used as
-       keys) and loading of object table from cache file if more
-       strings are
-       present in cache file than in current version of fontconfig. Hash
-       the
-       object table in memory.
+        'object' table (strings pointed to by FcPatternElt->object and
+        used as
+        keys) and loading of object table from cache file if more
+        strings are
+        present in cache file than in current version of fontconfig. Hash
+        the
+        object table in memory.
 
  src/fccfg.c  |   4 +-
  src/fcfs.c   |  11 ++--
@@ -19418,21 +24384,21 @@ Date: Sat Aug 27 02:34:24 2005 +0000
 
 commit 1b7be377906048e4a3a8d6ab46ebaab8847a0573
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Aug 25 07:38:02 2005 +0000
+Date:   Thu Aug 25 07:38:02 2005 +0000
 
     Reinstate the old global cache code. For the forseeable future, it's
-       probably all right to use the global cache as it was previously
-       and
-       just store filenames and font info, as long as no mmap cache
-       exists in
-       the directory. Of course, if an mmap cache exists, use that
-       instead.
+        probably all right to use the global cache as it was previously
+        and
+        just store filenames and font info, as long as no mmap cache
+        exists in
+        the directory. Of course, if an mmap cache exists, use that
+        instead.
     If a directory cache does not exist or is invalid, load the fonts
     for just
-       that directory using the old codepath.
+        that directory using the old codepath.
     Fix premature free of the FcPatterns belonging to the FcFontSet
     which we
-       create from the mmapped files.
+        create from the mmapped files.
 
  src/fccache.c | 710
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
@@ -19442,102 +24408,102 @@ Date:       Thu Aug 25 07:38:02 2005 +0000
 
 commit 4262e0b3853bc2153270eb33d09a063f852f3f90
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Wed Aug 24 06:21:30 2005 +0000
+Date:   Wed Aug 24 06:21:30 2005 +0000
 
     Overhaul the serialization system to create one mmapable file per
     directory
-       and distribute bytes for each directory from a single malloc
-       for that
-       directory. Store pointers as differences between the data
-       pointed to
-       and the pointer's address (s_off = s - v). Don't serialize data
-       structures that never actually get serialized. Separate strings
-       used
-       for keys from strings used for values (in FcPatternElt and
-       FcValue,
-       respectively). Bump FC_CACHE_VERSION to 2.
-
- fc-cache/fc-cache.c    |   12 +-
- fc-lang/fc-lang.c      |    4 +-
+        and distribute bytes for each directory from a single malloc
+        for that
+        directory. Store pointers as differences between the data
+        pointed to
+        and the pointer's address (s_off = s - v). Don't serialize data
+        structures that never actually get serialized. Separate strings
+        used
+        for keys from strings used for values (in FcPatternElt and
+        FcValue,
+        respectively). Bump FC_CACHE_VERSION to 2.
+
+ fc-cache/fc-cache.c     |   12 +-
+ fc-lang/fc-lang.c       |    4 +-
  fontconfig/fcprivate.h  |    8 +-
  fontconfig/fontconfig.h |   51 +-
- src/fccache.c          |  415 ++++++++++------
- src/fccfg.c            |  109 +++--
- src/fccharset.c        |  333 +++++--------
- src/fcdbg.c            |   12 +-
- src/fcdir.c            |   17 +-
- src/fcfs.c             |  154 +++---
- src/fcinit.c           |    3 -
- src/fcint.h            |  276 ++++-------
- src/fclang.c           |  213 ++++-----
- src/fclist.c           |   57 ++-
- src/fcmatch.c          |   88 ++--
- src/fcmatrix.c                 |  100 +---
- src/fcname.c           |  101 +++-
- src/fcpat.c            | 1218
+ src/fccache.c           |  415 ++++++++++------
+ src/fccfg.c             |  109 +++--
+ src/fccharset.c         |  333 +++++--------
+ src/fcdbg.c             |   12 +-
+ src/fcdir.c             |   17 +-
+ src/fcfs.c              |  154 +++---
+ src/fcinit.c            |    3 -
+ src/fcint.h             |  276 ++++-------
+ src/fclang.c            |  213 ++++-----
+ src/fclist.c            |   57 ++-
+ src/fcmatch.c           |   88 ++--
+ src/fcmatrix.c          |  100 +---
+ src/fcname.c            |  101 +++-
+ src/fcpat.c             | 1218
  ++++++++++++++++++-----------------------------
- src/fcstr.c            |  291 +----------
- src/fcxml.c            |   13 +-
+ src/fcstr.c             |  291 +----------
+ src/fcxml.c             |   13 +-
  20 files changed, 1402 insertions(+), 2073 deletions(-)
 
 commit 71f94d0768725eb171e04748d9f561f58b258ae7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jul 25 20:39:19 2005 +0000
+Date:   Mon Jul 25 20:39:19 2005 +0000
 
     Various GCC 4 cleanups for signed vs unsigned char
     Match only [0-9]*.conf files in <include>{directory}</include>
     elements to
-       avoid loading *.rpmsave or .dpkg-old files. (otaylor)
-
- ChangeLog                  |  19 +++++
- doc/fontconfig-user.sgml    |  4 +-
- fc-glyphname/fc-glyphname.c |  4 +-
- fc-lang/fc-lang.c          |   2 +-
- fc-match/fc-match.c        |   8 +-
- src/fccfg.c                |   2 +-
- src/fcfreetype.c           | 191
+        avoid loading *.rpmsave or .dpkg-old files. (otaylor)
+
+ ChangeLog                   |  19 +++++
+ doc/fontconfig-user.sgml    |   4 +-
+ fc-glyphname/fc-glyphname.c |   4 +-
+ fc-lang/fc-lang.c           |   2 +-
+ fc-match/fc-match.c         |   8 +-
+ src/fccfg.c                 |   2 +-
+ src/fcfreetype.c            | 191
  ++++++++++++++++++++++++--------------------
- src/fcpat.c                |   2 +-
- src/fcstr.c                |   2 +-
- src/fcxml.c                |  11 ++-
+ src/fcpat.c                 |   2 +-
+ src/fcstr.c                 |   2 +-
+ src/fcxml.c                 |  11 ++-
  10 files changed, 144 insertions(+), 101 deletions(-)
 
 commit 212c9f437e959fbdc5fe344c67b8c1cf8ca63edb
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Mon Jul 25 04:10:09 2005 +0000
+Date:   Mon Jul 25 04:10:09 2005 +0000
 
     #ifdef out old cache stuff, replace with first version of new mmapping
-       cache. Add *Read and *Write procedures which mmap in and write
-       out the
-       fontconfig data structures to disk. Currently, create cache
-       in /tmp,
-       with different sections for each architecture (as returned
-       by uname's
-       .machine field. Run the fc-cache binary to create a new cache
-       file;
-       fontconfig then uses this cache file on subsequent runs, saving
-       lots of
-       memory. Also fixes a few bugs and leaks.
-
- fc-cache/fc-cache.c |  13 +-
- fc-lang/fc-lang.c   |   6 +
- src/fccache.c      | 1081
+        cache. Add *Read and *Write procedures which mmap in and write
+        out the
+        fontconfig data structures to disk. Currently, create cache
+        in /tmp,
+        with different sections for each architecture (as returned
+        by uname's
+        .machine field. Run the fc-cache binary to create a new cache
+        file;
+        fontconfig then uses this cache file on subsequent runs, saving
+        lots of
+        memory. Also fixes a few bugs and leaks.
+
+ fc-cache/fc-cache.c |   13 +-
+ fc-lang/fc-lang.c   |    6 +
+ src/fccache.c       | 1081
  ++++++++++++++-------------------------------------
- src/fccfg.c        |   16 +-
- src/fccharset.c     | 103 ++++-
- src/fcdir.c        |   17 +-
- src/fcfs.c         |   95 +++++
- src/fcinit.c       |    3 +
- src/fcint.h        |  148 ++++---
- src/fclang.c       |   28 ++
- src/fcmatrix.c      |  29 ++
- src/fcpat.c        |  241 ++++++++++--
- src/fcstr.c        |   76 +++-
+ src/fccfg.c         |   16 +-
+ src/fccharset.c     |  103 ++++-
+ src/fcdir.c         |   17 +-
+ src/fcfs.c          |   95 +++++
+ src/fcinit.c        |    3 +
+ src/fcint.h         |  148 ++++---
+ src/fclang.c        |   28 ++
+ src/fcmatrix.c      |   29 ++
+ src/fcpat.c         |  241 ++++++++++--
+ src/fcstr.c         |   76 +++-
  13 files changed, 963 insertions(+), 893 deletions(-)
 
 commit e1b9d091c661b0e1d1e9f73c5c55ad53959c55c7
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Fri Jul 15 18:49:12 2005 +0000
+Date:   Fri Jul 15 18:49:12 2005 +0000
 
     Forward port cworth's patch to branch.
 
@@ -19551,13 +24517,13 @@ Date: Fri Jul 15 18:49:12 2005 +0000
 
 commit 7850458d28ae2cb3b1d7fa9dd9fecd125cef5369
 Author: Carl Worth <cworth@cworth.org>
-Date:  Fri Jul 15 17:43:44 2005 +0000
+Date:   Fri Jul 15 17:43:44 2005 +0000
 
     Rename FcPatternThawAll to FcPatternFini.
     Pull the FcObjectStateName hash table out to file scope, and add
-       FcObjectStaticNameFini so that FcFini will cleanup this hash
-       table as
-       well.
+        FcObjectStaticNameFini so that FcFini will cleanup this hash
+        table as
+        well.
     Clear FILE* to NULL after fclose.
 
  ChangeLog    | 15 +++++++++++++++
@@ -19569,90 +24535,90 @@ Date: Fri Jul 15 17:43:44 2005 +0000
 
 commit 0fa680f0766a8f545b20a7935a19e9db5529f903
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Thu Jul 7 12:09:10 2005 +0000
+Date:   Thu Jul 7 12:09:10 2005 +0000
 
     Convert ObjectPtr from a fat structure to a simple index into an
     id table;
-       ids can be positive (for static strings) or negative (for dynamic
-       strings). Static strings belong to a single buffer, while dynamic
-       strings are independently allocated.
+        ids can be positive (for static strings) or negative (for dynamic
+        strings). Static strings belong to a single buffer, while dynamic
+        strings are independently allocated.
 
  fontconfig/fontconfig.h |   9 +-
- src/fccfg.c            |   7 +-
- src/fcname.c           |   2 +-
- src/fcpat.c            | 560
+ src/fccfg.c             |   7 +-
+ src/fcname.c            |   2 +-
+ src/fcpat.c             | 560
  ++++++++++++++++++++++++++++++++++--------------
- src/fcxml.c            |   2 +-
+ src/fcxml.c             |   2 +-
  5 files changed, 408 insertions(+), 172 deletions(-)
 
 commit cd2ec1a940888ebcbd323a8000d2fcced41ddf9e
 Author: Patrick Lam <plam@MIT.EDU>
-Date:  Tue Jun 28 03:41:02 2005 +0000
+Date:   Tue Jun 28 03:41:02 2005 +0000
 
     Add functionality to allow fontconfig data structure serialization.
     This patch allows the fundamental fontconfig data structures to be
-       serialized. I've converted everything from FcPattern down to be
-       able to
-       use *Ptr objects, which can be either static or dynamic (using
-       a union
-       which either contains a pointer or an index) and replaced
-       storage of
-       pointers in the heap with the appropriate *Ptr object. I then
-       changed
-       all writes of pointers to the heap with a *CreateDynamic call,
-       which
-       creates a dynamic Ptr object pointing to the same object as
-       before.
-       This way, the fundamental fontconfig semantics should be
-       unchanged; I
-       did not have to change external signatures this way, although
-       I did
-       change some internal signatures. When given a *Ptr object,
-       just run *U
-       to get back to a normal pointer; it gives the right answer
-       regardless
-       of whether we're using static or dynamic storage.
+        serialized. I've converted everything from FcPattern down to be
+        able to
+        use *Ptr objects, which can be either static or dynamic (using
+        a union
+        which either contains a pointer or an index) and replaced
+        storage of
+        pointers in the heap with the appropriate *Ptr object. I then
+        changed
+        all writes of pointers to the heap with a *CreateDynamic call,
+        which
+        creates a dynamic Ptr object pointing to the same object as
+        before.
+        This way, the fundamental fontconfig semantics should be
+        unchanged; I
+        did not have to change external signatures this way, although
+        I did
+        change some internal signatures. When given a *Ptr object,
+        just run *U
+        to get back to a normal pointer; it gives the right answer
+        regardless
+        of whether we're using static or dynamic storage.
     I've also implemented a Fc*Serialize call. Calling FcFontSetSerialize
-       converts the dynamic FcFontSets contained in the config object to
-       static FcFontSets and also converts its dependencies
-       (e.g. everything
-       you'd need to write to disk) to static objects. Note that you
-       have to
-       call Fc*PrepareSerialize first; this call will count the number of
-       objects that actually needs to be allocated, so that we can avoid
-       realloc. The Fc*Serialize calls then check the static pointers for
-       nullness, and allocate the buffers if necessary. I've tested the
-       execution of fc-list and fc-match after Fc*Serialize and they
-       appear to
-       work the same way.
-
- fc-lang/fc-lang.c      |  17 +-
+        converts the dynamic FcFontSets contained in the config object to
+        static FcFontSets and also converts its dependencies
+        (e.g. everything
+        you'd need to write to disk) to static objects. Note that you
+        have to
+        call Fc*PrepareSerialize first; this call will count the number of
+        objects that actually needs to be allocated, so that we can avoid
+        realloc. The Fc*Serialize calls then check the static pointers for
+        nullness, and allocate the buffers if necessary. I've tested the
+        execution of fc-list and fc-match after Fc*Serialize and they
+        appear to
+        work the same way.
+
+ fc-lang/fc-lang.c       |  17 +-
  fontconfig/fcprivate.h  |   8 +-
  fontconfig/fontconfig.h |  50 ++-
- src/fccache.c          |  32 ++
- src/fccfg.c            | 135 ++++----
- src/fccharset.c        | 371 ++++++++++++++++-----
- src/fcdbg.c            |  26 +-
- src/fcfs.c             |  36 ++
- src/fcint.h            | 212 +++++++++++-
- src/fclang.c           | 164 ++++++---
- src/fclist.c           | 104 +++---
- src/fcmatch.c          |  69 ++--
- src/fcmatrix.c                 |  71 +++-
- src/fcname.c           |  35 +-
- src/fcpat.c            | 866
+ src/fccache.c           |  32 ++
+ src/fccfg.c             | 135 ++++----
+ src/fccharset.c         | 371 ++++++++++++++++-----
+ src/fcdbg.c             |  26 +-
+ src/fcfs.c              |  36 ++
+ src/fcint.h             | 212 +++++++++++-
+ src/fclang.c            | 164 ++++++---
+ src/fclist.c            | 104 +++---
+ src/fcmatch.c           |  69 ++--
+ src/fcmatrix.c          |  71 +++-
+ src/fcname.c            |  35 +-
+ src/fcpat.c             | 866
  ++++++++++++++++++++++++++++++++++++++----------
- src/fcstr.c            | 219 ++++++++++--
- src/fcxml.c            |  13 +-
+ src/fcstr.c             | 219 ++++++++++--
+ src/fcxml.c             |  13 +-
  17 files changed, 1902 insertions(+), 526 deletions(-)
 
 commit f1a42f6b5f9bcd774d09002509b2872c04025c1b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jun 17 03:01:43 2005 +0000
+Date:   Fri Jun 17 03:01:43 2005 +0000
 
     Make FcOpNotContains use FcStrStr for strings so that it matches
     semantics
-       for !FcOpContains.
+        for !FcOpContains.
     reviewed by: keithp
 
  ChangeLog   | 8 ++++++++
@@ -19661,45 +24627,45 @@ Date: Fri Jun 17 03:01:43 2005 +0000
 
 commit adc7abacbf0e2eae882d035f10117fb009b71bdd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 20 16:21:39 2005 +0000
+Date:   Fri May 20 16:21:39 2005 +0000
 
     Move fontconfig source package to libs as per override
 
- ChangeLog       | 6 ++++++
+ ChangeLog        | 6 ++++++
  debian/changelog | 2 ++
  debian/control   | 2 +-
  3 files changed, 9 insertions(+), 1 deletion(-)
 
 commit a65a77aecfd2182589fd5fe1a1ec1ef1f250c795
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 20 15:56:51 2005 +0000
+Date:   Fri May 20 15:56:51 2005 +0000
 
     The ka.orth file requires several characters which are not used
     anymore in
-       modern Georgian and which are missing in the free Georgian
-       TrueType
-       fonts downloadable at:
+        modern Georgian and which are missing in the free Georgian
+        TrueType
+        fonts downloadable at:
     http://aiet.qartuli.net/docs/georgian_on_linux_en.php
     reviewed by: Mike Fabian Bug: 3352
 
- ChangeLog      | 11 +++++++++++
+ ChangeLog       | 11 +++++++++++
  fc-lang/ka.orth |  5 +++--
  2 files changed, 14 insertions(+), 2 deletions(-)
 
 commit 87c887464a6fc20310998146b8558179ebe18923
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 27 19:08:08 2005 +0000
+Date:   Wed Apr 27 19:08:08 2005 +0000
 
     Update date to real 2.3.2 release date. Fix change attributions
 
- ChangeLog       | 14 ++++++++++++++
- README                  |  5 +++--
+ ChangeLog        | 14 ++++++++++++++
+ README           |  5 +++--
  debian/changelog |  2 +-
  3 files changed, 18 insertions(+), 3 deletions(-)
 
 commit 5c1853cd4c9bd511f0ae9f644a2a30025116987e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 27 16:22:46 2005 +0000
+Date:   Wed Apr 27 16:22:46 2005 +0000
 
     Bump so revision for 2.3.2
     Fix a few minor leaks in error cases.
@@ -19709,60 +24675,60 @@ Date: Wed Apr 27 16:22:46 2005 +0000
 
 commit 1cb309adcb881409d669749bbca91056a0967ccf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Apr 23 04:32:23 2005 +0000
+Date:   Sat Apr 23 04:32:23 2005 +0000
 
     Update for version 2.3.2
 
- ChangeLog              |  8 ++++++++
- README                         | 11 +++++++++--
- configure.in           |  2 +-
- debian/changelog       |  7 +++++++
+ ChangeLog               |  8 ++++++++
+ README                  | 11 +++++++++--
+ configure.in            |  2 +-
+ debian/changelog        |  7 +++++++
  fontconfig/fontconfig.h |  2 +-
  5 files changed, 26 insertions(+), 4 deletions(-)
 
 commit 716ac8b8033794e2557ad567005dfff4dd95f031
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 21 19:03:53 2005 +0000
+Date:   Thu Apr 21 19:03:53 2005 +0000
 
     Don't force bitmap font enable in default configuration; allows
     users to
-       override this in ~/.fonts.conf
+        override this in ~/.fonts.conf
     Updated translations
     Destroy font configuration on exit to help valgrind
     Use own transcoding routines in preference to iconv which appears
     to have
-       leaks in some translators. Call iconv_close after using iconv
-       (oops).
+        leaks in some translators. Call iconv_close after using iconv
+        (oops).
     Prefer unicode encoding of Euro char as some fonts mis-encode Euro
     in other
-       ones.
+        ones.
     Must fetch bitmap glyphs to get width values to check for
-       monospace/dual-width fonts.
+        monospace/dual-width fonts.
 
- ChangeLog                 |  36 +++++++++++
- debian/fontconfig.postinst |  8 ++-
- debian/po/cs.po           | 154
+ ChangeLog                  |  36 +++++++++++
+ debian/fontconfig.postinst |   8 ++-
+ debian/po/cs.po            | 154
  +++++++++++++++++++--------------------------
- debian/po/da.po           |  94 ++++++++++-----------------
- debian/po/de.po           |  71 ++++++---------------
- debian/po/es.po           |  77 +++++++----------------
- debian/po/fr.po           |  77 +++++++----------------
- debian/po/ja.po           | 150
+ debian/po/da.po            |  94 ++++++++++-----------------
+ debian/po/de.po            |  71 ++++++---------------
+ debian/po/es.po            |  77 +++++++----------------
+ debian/po/fr.po            |  77 +++++++----------------
+ debian/po/ja.po            | 150
  +++++++++----------------------------------
- debian/po/nl.po           |  71 ++++++---------------
- debian/po/pt.po           |  71 ++++++---------------
- debian/po/pt_BR.po        |  77 +++++++----------------
+ debian/po/nl.po            |  71 ++++++---------------
+ debian/po/pt.po            |  71 ++++++---------------
+ debian/po/pt_BR.po         |  77 +++++++----------------
  debian/po/templates.pot    |  66 +++++--------------
- debian/po/tr.po           |  71 ++++++---------------
- debian/po/zh_CN.po        |  71 ++++++---------------
- fc-cache/fc-cache.c       |   1 +
- fonts.conf.in             |  37 +++++------
- src/fcfreetype.c          |  84 ++++++++++++++-----------
+ debian/po/tr.po            |  71 ++++++---------------
+ debian/po/zh_CN.po         |  71 ++++++---------------
+ fc-cache/fc-cache.c        |   1 +
+ fonts.conf.in              |  37 +++++------
+ src/fcfreetype.c           |  84 ++++++++++++++-----------
  17 files changed, 404 insertions(+), 812 deletions(-)
 
 commit 2ff4f0760a700bf7c6e1ed4c5072a524b02243ca
 Author: Ross Burton <ross@burtonini.com>
-Date:  Wed Apr 13 09:11:52 2005 +0000
+Date:   Wed Apr 13 09:11:52 2005 +0000
 
     Check that a pattern isn't already frozen in FcPatternFreeze
 
@@ -19772,11 +24738,11 @@ Date: Wed Apr 13 09:11:52 2005 +0000
 
 commit ae7d0f35938693d250f09165fb6486b9e0f4b9bd
 Author: Ross Burton <ross@burtonini.com>
-Date:  Thu Mar 31 19:16:49 2005 +0000
+Date:   Thu Mar 31 19:16:49 2005 +0000
 
     Put all FcPattern objects though FcObjectStaticName and do pointer
     trather
-       than string compares
+        than string compares
 
  ChangeLog     | 8 ++++++++
  src/fclist.c  | 5 +++--
@@ -19786,259 +24752,256 @@ Date:       Thu Mar 31 19:16:49 2005 +0000
 
 commit 156032744ee08a5d6a60e1bc1c2e0fc3702567d7
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Thu Mar 17 08:57:11 2005 +0000
+Date:   Thu Mar 17 08:57:11 2005 +0000
 
     Add the .dll to the dll name.
 
- ChangeLog            | 4 ++++
+ ChangeLog             | 4 ++++
  src/fontconfig.def.in | 2 +-
  2 files changed, 5 insertions(+), 1 deletion(-)
 
 commit 5f347d9cd50069a50174cc243acab64ee4e537a9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 10 22:06:20 2005 +0000
+Date:   Thu Mar 10 22:06:20 2005 +0000
 
     Update to reflect configuration changes
     Fix Autohint vs Autohinter mistake
     Adopt changes from Josselin Mouette for configuration descriptions
     Update
-       debian to version 2.3.1-2
+        debian to version 2.3.1-2
 
- ChangeLog                  | 11 +++++++++++
- debian/README.Debian       | 19 ++++++++++---------
- debian/changelog           | 10 ++++++++++
- debian/fontconfig.postinst  | 2 +-
+ ChangeLog                   | 11 +++++++++++
+ debian/README.Debian        | 19 ++++++++++---------
+ debian/changelog            | 10 ++++++++++
+ debian/fontconfig.postinst  |  2 +-
  debian/fontconfig.templates | 39 ++++++++-------------------------------
  5 files changed, 40 insertions(+), 41 deletions(-)
 
 commit 8c74026071aae6ad70a96b81398498dcb28c0255
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 9 04:57:42 2005 +0000
+Date:   Wed Mar 9 04:57:42 2005 +0000
 
     Update debian for 2.3.1
 
- ChangeLog       |  6 ++++++
+ ChangeLog        |  6 ++++++
  debian/changelog | 11 +++++++++++
- debian/rules    |  1 +
+ debian/rules     |  1 +
  3 files changed, 18 insertions(+)
 
 commit 79da4fe91ff0cee974e1ec7003857fb47c0f55d5
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Wed Mar 9 00:47:11 2005 +0000
+Date:   Wed Mar 9 00:47:11 2005 +0000
 
     Get the DLL from "bin" where modern libtools put it, not "lib".
     Check also drive letter prefix on Win32.
 
- ChangeLog        | 8 ++++++++
+ ChangeLog         | 8 ++++++++
  fontconfig-zip.in | 2 +-
- src/fccfg.c      | 4 +++-
+ src/fccfg.c       | 4 +++-
  3 files changed, 12 insertions(+), 2 deletions(-)
 
 commit d49dde9f900777f8482290dbafc6acb52a2b9432
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 8 23:39:02 2005 +0000
+Date:   Tue Mar 8 23:39:02 2005 +0000
 
     Update for 2.3.1
 
- ChangeLog              |  7 +++++++
- README                         | 12 ++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 12 ++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 19 insertions(+), 4 deletions(-)
 
 commit 76a8dfa3378fc1bd0397a95f2da56d5c6fb2540c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 5 23:50:55 2005 +0000
+Date:   Sat Mar 5 23:50:55 2005 +0000
 
     Include space and remove numbers from valid script tags. This
     ensures that
-       tags like 'lao ' work while rejecting those which have any digits.
-       Eliminate a spurious debugging variable (len)
+        tags like 'lao ' work while rejecting those which have any digits.
+        Eliminate a spurious debugging variable (len)
 
- ChangeLog       |  8 ++++++++
+ ChangeLog        |  8 ++++++++
  src/fcfreetype.c | 20 ++++++++++++--------
  2 files changed, 20 insertions(+), 8 deletions(-)
 
 commit 219f7818dacb5417ab9e481b1fc21a79511e5fe7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 5 23:34:57 2005 +0000
+Date:   Sat Mar 5 23:34:57 2005 +0000
 
     Rework GSUB/GPOS script parsing to survive broken fonts. Thanks
     for the
-       broken font go to Manish Singh
+        broken font go to Manish Singh
 
- ChangeLog       |  7 +++++++
+ ChangeLog        |  7 +++++++
  src/fcfreetype.c | 64
  ++++++++++++++++++++++++++++++++++++++------------------
  2 files changed, 51 insertions(+), 20 deletions(-)
 
 commit 97bde49a2b791de9ad66aed97ca07c22302da60d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 5 20:58:39 2005 +0000
+Date:   Sat Mar 5 20:58:39 2005 +0000
 
     Josselin Mouette:
     Include 2.3 release information in changelog Add Josselin Mouette
     as an
-       Uploader Set hinting_type to low priority configuration option
+        Uploader Set hinting_type to low priority configuration option
     Manish Singh:
     yes_bitmaps.conf -> yes-bitmaps.conf
     Funda Wang:
     Johap -> Johab
 
- ChangeLog                  | 20 ++++++++++++++++++++
- debian/changelog           | 13 +++++++++++--
- debian/control                     |  1 +
- debian/fontconfig.config    | 2 +-
- debian/fontconfig.postinst  | 2 +-
- debian/fontconfig.templates | 4 ++--
- debian/rules               |  4 ++--
- src/fcfreetype.c           |  2 +-
+ ChangeLog                   | 20 ++++++++++++++++++++
+ debian/changelog            | 13 +++++++++++--
+ debian/control              |  1 +
+ debian/fontconfig.config    |  2 +-
+ debian/fontconfig.postinst  |  2 +-
+ debian/fontconfig.templates |  4 ++--
+ debian/rules                |  4 ++--
+ src/fcfreetype.c            |  2 +-
  8 files changed, 39 insertions(+), 9 deletions(-)
 
 commit 683dc3c476f1ee514c252a05311efc7a97fbaee9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 3 06:20:57 2005 +0000
+Date:   Thu Mar 3 06:20:57 2005 +0000
 
     Move debian-specific conf file examples upstream.
     Sub-pixel configuration examples must smash subpixel value as
     Xft always
-       sets it from X.
+        sets it from X.
     Change sub-pixel rendering debconf descriptions from Enable/Disable to
-       Always/Never.
-
- ChangeLog                  | 22 ++++++++++++++++++++++
- Makefile.am                |  3 ---
- conf.d/Makefile.am         |  7 +++++--
- conf.d/autohint.conf       |  9 +++++++++
- conf.d/no-sub-pixel.conf    | 9 +++++++++
- conf.d/sub-pixel.conf      |  3 ---
- conf.d/unhinted.conf       |  9 +++++++++
- debian/autohint.conf       |  9 ---------
- debian/fontconfig.install   | 1 +
- debian/fontconfig.postinst  | 4 ++--
- debian/fontconfig.templates | 11 +++++------
- debian/no-sub-pixel.conf    | 12 ------------
- debian/unhinted.conf       |  9 ---------
- 13 files changed, 62 insertions(+), 46 deletions(-)
+        Always/Never.
+
+ ChangeLog                            | 22 ++++++++++++++++++++++
+ Makefile.am                          |  3 ---
+ conf.d/Makefile.am                   |  7 +++++--
+ {debian => conf.d}/autohint.conf     |  0
+ {debian => conf.d}/no-sub-pixel.conf |  3 ---
+ conf.d/sub-pixel.conf                |  3 ---
+ {debian => conf.d}/unhinted.conf     |  0
+ debian/fontconfig.install            |  1 +
+ debian/fontconfig.postinst           |  4 ++--
+ debian/fontconfig.templates          | 11 +++++------
+ 10 files changed, 35 insertions(+), 19 deletions(-)
 
 commit dc2e06ab0707f8e2ffd5fe5c1d2db38dd594b551
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 3 01:59:28 2005 +0000
+Date:   Thu Mar 3 01:59:28 2005 +0000
 
     Ignore more build detritus
     Add debian package construction stuff.
     Update to newer versions of these tools
     Get library manuals to build again (we love automake).
     Update debian build system to switch maintainers and deal with 2.3
-       functionality
+        functionality
 
- .cvsignore                       |   7 +
- ChangeLog                        |  53 +++
- Makefile.am                      |  50 ++-
- conf.d/.cvsignore                |   2 +
- config/config.guess              | 846
+ .cvsignore                        |   7 +
+ ChangeLog                         |  53 +++
+ Makefile.am                       |  50 ++-
+ conf.d/.cvsignore                 |   2 +
+ config/config.guess               | 846
  ++++++++++++++++++++------------------
- config/config.sub                | 449 ++++++++++++++------
- debian/README.Debian             |  44 ++
- debian/autohint.conf             |   9 +
- debian/changelog                 | 661 +++++++++++++++++++++++++++++
- debian/compat                    |   1 +
- debian/control                           |  78 ++++
- debian/copyright                 |  29 ++
+ config/config.sub                 | 449 ++++++++++++++------
+ debian/README.Debian              |  44 ++
+ debian/autohint.conf              |   9 +
+ debian/changelog                  | 661 +++++++++++++++++++++++++++++
+ debian/compat                     |   1 +
+ debian/control                    |  78 ++++
+ debian/copyright                  |  29 ++
  debian/fontconfig-udeb.install    |   3 +
- debian/fontconfig.config         |  10 +
- debian/fontconfig.defoma         | 162 ++++++++
- debian/fontconfig.dirs                   |   1 +
- debian/fontconfig.install        |   6 +
- debian/fontconfig.postinst       | 139 +++++++
- debian/fontconfig.postrm         |  26 ++
- debian/fontconfig.templates      |  51 +++
+ debian/fontconfig.config          |  10 +
+ debian/fontconfig.defoma          | 162 ++++++++
+ debian/fontconfig.dirs            |   1 +
+ debian/fontconfig.install         |   6 +
+ debian/fontconfig.postinst        | 139 +++++++
+ debian/fontconfig.postrm          |  26 ++
+ debian/fontconfig.templates       |  51 +++
  debian/libfontconfig1-dev.install |   7 +
- debian/libfontconfig1.install    |   1 +
- debian/local.conf.md5sum         |  18 +
- debian/no-sub-pixel.conf         |  12 +
- debian/po/POTFILES.in            |   1 +
- debian/po/cs.po                  | 154 +++++++
- debian/po/da.po                  | 174 ++++++++
- debian/po/de.po                  | 157 +++++++
- debian/po/es.po                  | 198 +++++++++
- debian/po/fr.po                  | 194 +++++++++
- debian/po/ja.po                  | 180 ++++++++
- debian/po/nl.po                  | 158 +++++++
- debian/po/pt.po                  | 145 +++++++
- debian/po/pt_BR.po               | 183 +++++++++
- debian/po/templates.pot          | 120 ++++++
- debian/po/tr.po                  | 150 +++++++
- debian/po/zh_CN.po               | 148 +++++++
- debian/rules                     |  39 ++
- debian/unhinted.conf             |   9 +
- doc/.cvsignore                           |   1 +
- doc/Makefile.am                  |  13 +-
+ debian/libfontconfig1.install     |   1 +
+ debian/local.conf.md5sum          |  18 +
+ debian/no-sub-pixel.conf          |  12 +
+ debian/po/POTFILES.in             |   1 +
+ debian/po/cs.po                   | 154 +++++++
+ debian/po/da.po                   | 174 ++++++++
+ debian/po/de.po                   | 157 +++++++
+ debian/po/es.po                   | 198 +++++++++
+ debian/po/fr.po                   | 194 +++++++++
+ debian/po/ja.po                   | 180 ++++++++
+ debian/po/nl.po                   | 158 +++++++
+ debian/po/pt.po                   | 145 +++++++
+ debian/po/pt_BR.po                | 183 +++++++++
+ debian/po/templates.pot           | 120 ++++++
+ debian/po/tr.po                   | 150 +++++++
+ debian/po/zh_CN.po                | 148 +++++++
+ debian/rules                      |  39 ++
+ debian/unhinted.conf              |   9 +
+ doc/.cvsignore                    |   1 +
+ doc/Makefile.am                   |  13 +-
  41 files changed, 4171 insertions(+), 518 deletions(-)
 
 commit 4afc00ca02bb3f49fe214463e0f194486f438b70
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 1 20:48:36 2005 +0000
+Date:   Tue Mar 1 20:48:36 2005 +0000
 
     Update for 2.3.0
 
- ChangeLog              |  7 +++++++
- README                         | 14 ++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 14 ++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  4 ++--
  4 files changed, 22 insertions(+), 5 deletions(-)
 
 commit 0c009d2b6df523bba7a10ad148287bed2df9ebd6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 1 20:36:48 2005 +0000
+Date:   Tue Mar 1 20:36:48 2005 +0000
 
     Generate and install PDF versions of the manuals
     Fix formatting
     Add missing exported functions, fix data types
     Add missing pattern elements.
     Add missing pattern elements. Document conf.d usage, clarify available
-       orthography list. Fix some config file attributes. Complete
-       list of
-       constants.
+        orthography list. Fix some config file attributes. Complete
+        list of
+        constants.
     Mark FC_SOURCE deprecated.
     Don't set FC_SOURCE any longer.
 
- ChangeLog                | 25 ++++++++++++++++
- doc/Makefile.am          | 18 +++++++++++-
- doc/fcpattern.fncs       |  3 +-
- doc/fcstring.fncs        | 40 +++++++++++++++++++++++--
+ ChangeLog                 | 25 ++++++++++++++++
+ doc/Makefile.am           | 18 +++++++++++-
+ doc/fcpattern.fncs        |  3 +-
+ doc/fcstring.fncs         | 40 +++++++++++++++++++++++--
  doc/fontconfig-devel.sgml | 10 ++++++-
  doc/fontconfig-user.sgml  | 74
  ++++++++++++++++++++++++++++++++++++++++-------
  fontconfig/fontconfig.h   |  2 +-
- src/fcfreetype.c         |  3 --
+ src/fcfreetype.c          |  3 --
  8 files changed, 156 insertions(+), 19 deletions(-)
 
 commit 414f720281b416736b92913f4bcbceac1a781cde
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 28 18:56:15 2005 +0000
+Date:   Mon Feb 28 18:56:15 2005 +0000
 
     Create prototype /etc/fonts/conf.d directory with a few sample
-       configuration files. Deprecate use of local.conf for local
-       customizations in favor of this directory based scheme which
-       is more
-       easily integrated into installation systems.
+        configuration files. Deprecate use of local.conf for local
+        customizations in favor of this directory based scheme which
+        is more
+        easily integrated into installation systems.
     Tag FC_EMBOLDEN as a boolean variable
 
- ChangeLog              | 18 ++++++++++++++++++
- Makefile.am            | 24 ++----------------------
- conf.d/Makefile.am     | 34 ++++++++++++++++++++++++++++++++++
- conf.d/README          |  8 ++++++++
+ ChangeLog               | 18 ++++++++++++++++++
+ Makefile.am             | 24 ++----------------------
+ conf.d/Makefile.am      | 34 ++++++++++++++++++++++++++++++++++
+ conf.d/README           |  8 ++++++++
  conf.d/no-bitmaps.conf  | 13 +++++++++++++
- conf.d/sub-pixel.conf  | 12 ++++++++++++
+ conf.d/sub-pixel.conf   | 12 ++++++++++++
  conf.d/yes-bitmaps.conf | 13 +++++++++++++
- configure.in           |  1 +
- src/fcname.c           |  1 +
+ configure.in            |  1 +
+ src/fcname.c            |  1 +
  9 files changed, 102 insertions(+), 22 deletions(-)
 
 commit 47b49bf14b5cd433366a02374dfaf1c27a57cc91
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 10 23:00:51 2005 +0000
+Date:   Thu Feb 10 23:00:51 2005 +0000
 
     Free patterns from fonts which are rejected by configuration
     (bug #2518)
@@ -20050,19 +25013,19 @@ Date: Thu Feb 10 23:00:51 2005 +0000
 
 commit afca783626534477f07b03d173bbe9f51e03b53b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jan 29 00:42:37 2005 +0000
+Date:   Sat Jan 29 00:42:37 2005 +0000
 
     Update for version 2.2.99
 
- ChangeLog              | 11 +++++++++--
- README                         | 16 ++++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               | 11 +++++++++--
+ README                  | 16 ++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 25 insertions(+), 6 deletions(-)
 
 commit 845a0bf37a6f8f16fe40f3037fa727cc9c5569f3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jan 29 00:33:47 2005 +0000
+Date:   Sat Jan 29 00:33:47 2005 +0000
 
     Add a few pointers
 
@@ -20072,11 +25035,11 @@ Date: Sat Jan 29 00:33:47 2005 +0000
 
 commit ca60d2b5c503cb58ed235cbdd82ac623cda307ff
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jan 28 23:55:14 2005 +0000
+Date:   Fri Jan 28 23:55:14 2005 +0000
 
     Polite typechecking for test and edit expressions. Helps catch
     errors in
-       the font configuration.
+        the font configuration.
 
  ChangeLog    |  10 +++
  src/fcint.h  |  12 +--
@@ -20087,7 +25050,7 @@ Date:   Fri Jan 28 23:55:14 2005 +0000
 
 commit 59e149e757795a7c0ec66c35b551a66e0da42098
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jan 16 01:41:24 2005 +0000
+Date:   Sun Jan 16 01:41:24 2005 +0000
 
     Have --with-expat set EXPAT_CFLAGS (bug 2278)
     reviewed by: Keith Packard <keithp@keithp.com>
@@ -20098,27 +25061,27 @@ Date: Sun Jan 16 01:41:24 2005 +0000
 
 commit d8ae9c92197f1f2782b9decb276f6da756ce882d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 13 18:31:50 2005 +0000
+Date:   Thu Jan 13 18:31:50 2005 +0000
 
     Add SEE ALSO section (bug 2085)
     Cross compiling fixes (bug 280)
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog               | 18 ++++++++++++++++++
- Makefile.am             | 17 ++++++++++++++++-
- configure.in            | 44
+ ChangeLog                | 18 ++++++++++++++++++
+ Makefile.am              | 17 ++++++++++++++++-
+ configure.in             | 44
  ++++++++++++++++++++++++++++++++++++++++++++
- doc/Makefile.am         |  8 ++++++--
+ doc/Makefile.am          |  8 ++++++--
  doc/fontconfig-user.sgml |  5 +++++
- fc-case/Makefile.am     |  8 ++++++--
+ fc-case/Makefile.am      |  8 ++++++--
  fc-glyphname/Makefile.am |  8 ++++++--
- fc-lang/Makefile.am     |  8 ++++++--
- src/fontconfig.def.in   |  2 +-
+ fc-lang/Makefile.am      |  8 ++++++--
+ src/fontconfig.def.in    |  2 +-
  9 files changed, 108 insertions(+), 10 deletions(-)
 
 commit 8759822e8fdaebcaaea82571d6b084003ca5751e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jan 13 18:10:42 2005 +0000
+Date:   Thu Jan 13 18:10:42 2005 +0000
 
     Update blanks list (Closes bug 86)
 
@@ -20128,10 +25091,10 @@ Date: Thu Jan 13 18:10:42 2005 +0000
 
 commit fce87a189b2e89a07e271ff7f1e3dab0d4b5b919
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jan 4 21:54:50 2005 +0000
+Date:   Tue Jan 4 21:54:50 2005 +0000
 
     Verify that every font pattern loaded from cache has both FC_FILE and
-       FC_FAMILY entries. Attempt to fix bug #2219.
+        FC_FAMILY entries. Attempt to fix bug #2219.
 
  ChangeLog     |  7 +++++++
  src/fccache.c | 10 +++++++++-
@@ -20139,40 +25102,40 @@ Date: Tue Jan 4 21:54:50 2005 +0000
 
 commit d53461812d46ffb2eaffb2c512e8740e8536e498
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Dec 29 19:44:51 2004 +0000
+Date:   Wed Dec 29 19:44:51 2004 +0000
 
     Update for version 2.2.98
 
- ChangeLog              |  7 +++++++
- README                         | 22 ++++++++++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 22 ++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 29 insertions(+), 4 deletions(-)
 
 commit 479f551f6df7fe78b5f3bedb40a4c0c4e10f2f50
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Dec 29 19:37:14 2004 +0000
+Date:   Wed Dec 29 19:37:14 2004 +0000
 
     Document ASCII limitations of Fc character conversion macros
     Fix off-by-one error in utf-8 case walking code. Add FcStrDowncase
     (useful
-       for testing case conversion functions)
+        for testing case conversion functions)
 
- ChangeLog              |  8 ++++++++
+ ChangeLog               |  8 ++++++++
  fontconfig/fontconfig.h | 10 +++++++---
- src/fcstr.c            | 21 ++++++++++++++++++++-
+ src/fcstr.c             | 21 ++++++++++++++++++++-
  3 files changed, 35 insertions(+), 4 deletions(-)
 
 commit 02748dd3b8830a60439340a768959231e669b55c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Dec 29 10:07:10 2004 +0000
+Date:   Wed Dec 29 10:07:10 2004 +0000
 
     Add territory database
     Reviewed by: Keith Packard
     Remove Han characters from Korean orthography
 
- .cvsignore          |     1 +
- ChangeLog           |    15 +
+ .cvsignore           |     1 +
+ ChangeLog            |    15 +
  fc-case/.cvsignore   |     6 +
  fc-lang/iso-3166.txt |   242 +
  fc-lang/ko.orth      | 18729
@@ -20181,10 +25144,10 @@ Date: Wed Dec 29 10:07:10 2004 +0000
 
 commit 2ba729ed3bde6512aaab00b50442b86cb013f94e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Dec 29 09:57:49 2004 +0000
+Date:   Wed Dec 29 09:57:49 2004 +0000
 
     Reorder utility programs to make sure fc-case is run before fc-lang as
-       fc-lang uses fcstr.c which uses fccase.h
+        fc-lang uses fcstr.c which uses fccase.h
     Fix broken XML
 
  ChangeLog     |  8 ++++++++
@@ -20194,48 +25157,48 @@ Date: Wed Dec 29 09:57:49 2004 +0000
 
 commit 192296d852011f4a2abb6e9fd1ee741fa7f81673
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Dec 29 09:15:17 2004 +0000
+Date:   Wed Dec 29 09:15:17 2004 +0000
 
     Adopt some RedHat suggestions for standard font configuration.
     Add new helper program 'fc-case' to construct case folding tables from
-       standard Unicode CaseFolding.txt file
+        standard Unicode CaseFolding.txt file
     Re-implement case insensitive functions with Unicode aware versions
-       (including full case folding mappings)
+        (including full case folding mappings)
 
- ChangeLog              |  26 ++
- Makefile.am            |   2 +-
- configure.in           |   1 +
+ ChangeLog               |  26 ++
+ Makefile.am             |   2 +-
+ configure.in            |   1 +
  fc-case/CaseFolding.txt | 924
  ++++++++++++++++++++++++++++++++++++++++++++++++
- fc-case/Makefile.am    |  52 +++
- fc-case/fc-case.c      | 363 +++++++++++++++++++
- fc-case/fccase.tmpl.h  |  25 ++
- fonts.conf.in          |  73 ++--
- src/fcint.h            |  34 ++
- src/fclist.c           |  16 +-
- src/fcstr.c            | 263 +++++++++++---
+ fc-case/Makefile.am     |  52 +++
+ fc-case/fc-case.c       | 363 +++++++++++++++++++
+ fc-case/fccase.tmpl.h   |  25 ++
+ fonts.conf.in           |  73 ++--
+ src/fcint.h             |  34 ++
+ src/fclist.c            |  16 +-
+ src/fcstr.c             | 263 +++++++++++---
  11 files changed, 1685 insertions(+), 94 deletions(-)
 
 commit 5cf8c5364f1b7a676f52b480fa55c571cadc6fda
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Dec 14 00:12:25 2004 +0000
+Date:   Tue Dec 14 00:12:25 2004 +0000
 
     I changed FcFontSetSort to respect the generic aliases better in
     the face
-       of language matching.
+        of language matching.
     What I did was to ammend the strict sort order used by FcFontSort
     so that
-       it 'satisfies' the language specified in the pattern by
-       locating the
-       best matching font supporting each pattern language and then
-       ignores
-       language in the remaining fonts for purposes of matching.
+        it 'satisfies' the language specified in the pattern by
+        locating the
+        best matching font supporting each pattern language and then
+        ignores
+        language in the remaining fonts for purposes of matching.
     So, when asking for 'sans:lang=en', you'll get an English font
     first, and
-       then the remaining fonts sorted with respect to the 'sans'
-       alias alone
-       -- pushing Kochi fonts ahead of other English-supporting Han
-       fonts.
+        then the remaining fonts sorted with respect to the 'sans'
+        alias alone
+        -- pushing Kochi fonts ahead of other English-supporting Han
+        fonts.
     reviewed by: Owen Taylor <otaylor@redhat.com>
 
  ChangeLog     | 17 +++++++++++++
@@ -20245,52 +25208,52 @@ Date: Tue Dec 14 00:12:25 2004 +0000
 
 commit 46a10637cde656967b60f1e028b24763022358bb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Dec 10 16:48:08 2004 +0000
+Date:   Fri Dec 10 16:48:08 2004 +0000
 
     Configuration changes to request synthetic emboldening of fonts. The
     actual
-       emboldening code will live in Xft.
+        emboldening code will live in Xft.
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog              | 10 ++++++++++
+ ChangeLog               | 10 ++++++++++
  fontconfig/fontconfig.h |  1 +
- fonts.conf.in          | 20 ++++++++++++++++++++
+ fonts.conf.in           | 20 ++++++++++++++++++++
  3 files changed, 31 insertions(+)
 
 commit 9af19286b0dcdf7636749b9efb64a50650554f2d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Dec 9 19:36:30 2004 +0000
+Date:   Thu Dec 9 19:36:30 2004 +0000
 
     Currently Russian (ru) requires 0406 and 0456 (І and і), but
     these were
-       eliminated in Russian in 1918 in favor of 0418 and 0438 (И
-       and и),
-       and don't even appear in KOI8-R. (The hypothesis that they
-       don't appear
-       in KOI8-R due to their similarity with Latin I and i is
-       eliminated by
-       their presence in KOI8-U.) I have a couple of fonts with Russian
-       support that don't have the letter.
+        eliminated in Russian in 1918 in favor of 0418 and 0438 (И
+        and и),
+        and don't even appear in KOI8-R. (The hypothesis that they
+        don't appear
+        in KOI8-R due to their similarity with Latin I and i is
+        eliminated by
+        their presence in KOI8-U.) I have a couple of fonts with Russian
+        support that don't have the letter.
     Therefore, 0406 and 0456 should be removed from or commented out
     of ru.orth
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog      | 16 ++++++++++++++++
+ ChangeLog       | 16 ++++++++++++++++
  fc-lang/ru.orth |  4 ++--
  2 files changed, 18 insertions(+), 2 deletions(-)
 
 commit 1c52c0f0600b4c61fb3b16d2d7b5fa35c3e1b7f0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Dec 7 01:36:26 2004 +0000
+Date:   Tue Dec 7 01:36:26 2004 +0000
 
     Reviewed by: Keith Packard <keithp@keithp.com>
     memoize strings and share a single copy for all uses. Note that
     this could
-       be improved further by using statically allocated blocks and
-       gluing
-       multiple strings together, but I'm basically lazy. In my
-       environment
-       with 800 font files, I get a savings of about 90KB.
+        be improved further by using statically allocated blocks and
+        gluing
+        multiple strings together, but I'm basically lazy. In my
+        environment
+        with 800 font files, I get a savings of about 90KB.
 
  ChangeLog    | 15 +++++++++++++++
  src/fcinit.c |  5 +++--
@@ -20302,346 +25265,346 @@ Date:       Tue Dec 7 01:36:26 2004 +0000
 
 commit 46b51147d10db21a4d5992074bcdc9022f45856b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Dec 7 01:14:46 2004 +0000
+Date:   Tue Dec 7 01:14:46 2004 +0000
 
     Change files from ISO-Latin-1 to UTF-8
 
- COPYING                        |   2 +-
- ChangeLog                      | 249
+ COPYING                         |   2 +-
+ ChangeLog                       | 249
  ++++++++++++++++++++++++++++++++++++++++
- Makefile.am                    |   2 +-
- config/Makedefs.in             |   2 +-
- configure.in                   |   2 +-
- doc/edit-sgml.c                |   2 +-
- doc/fcatomic.fncs              |   2 +-
- doc/fcblanks.fncs              |   2 +-
- doc/fccharset.fncs             |   2 +-
- doc/fcconfig.fncs              |   2 +-
- doc/fcconstant.fncs            |   2 +-
- doc/fcfile.fncs                |   2 +-
- doc/fcfontset.fncs             |   2 +-
- doc/fcfreetype.fncs            |   2 +-
- doc/fcinit.fncs                |   2 +-
- doc/fcmatrix.fncs              |   2 +-
- doc/fcobjectset.fncs           |   2 +-
- doc/fcobjecttype.fncs          |   2 +-
- doc/fcpattern.fncs             |   2 +-
- doc/fcstring.fncs              |   2 +-
- doc/fcstrset.fncs              |   2 +-
- doc/fcvalue.fncs               |   2 +-
- doc/fontconfig-devel.sgml      |   4 +-
- doc/fontconfig-user.sgml       |   2 +-
- doc/func.sgml                  |   2 +-
- doc/version.sgml.in            |   2 +-
- fc-cache/Makefile.am           |   2 +-
- fc-cache/fc-cache.c            |   2 +-
- fc-glyphname/Makefile.am       |   2 +-
- fc-glyphname/fc-glyphname.c    |   2 +-
+ Makefile.am                     |   2 +-
+ config/Makedefs.in              |   2 +-
+ configure.in                    |   2 +-
+ doc/edit-sgml.c                 |   2 +-
+ doc/fcatomic.fncs               |   2 +-
+ doc/fcblanks.fncs               |   2 +-
+ doc/fccharset.fncs              |   2 +-
+ doc/fcconfig.fncs               |   2 +-
+ doc/fcconstant.fncs             |   2 +-
+ doc/fcfile.fncs                 |   2 +-
+ doc/fcfontset.fncs              |   2 +-
+ doc/fcfreetype.fncs             |   2 +-
+ doc/fcinit.fncs                 |   2 +-
+ doc/fcmatrix.fncs               |   2 +-
+ doc/fcobjectset.fncs            |   2 +-
+ doc/fcobjecttype.fncs           |   2 +-
+ doc/fcpattern.fncs              |   2 +-
+ doc/fcstring.fncs               |   2 +-
+ doc/fcstrset.fncs               |   2 +-
+ doc/fcvalue.fncs                |   2 +-
+ doc/fontconfig-devel.sgml       |   4 +-
+ doc/fontconfig-user.sgml        |   2 +-
+ doc/func.sgml                   |   2 +-
+ doc/version.sgml.in             |   2 +-
+ fc-cache/Makefile.am            |   2 +-
+ fc-cache/fc-cache.c             |   2 +-
+ fc-glyphname/Makefile.am        |   2 +-
+ fc-glyphname/fc-glyphname.c     |   2 +-
  fc-glyphname/fcglyphname.tmpl.h |   2 +-
- fc-lang/Makefile.am            |   2 +-
- fc-lang/aa.orth                |   2 +-
- fc-lang/ab.orth                |   2 +-
- fc-lang/af.orth                |   2 +-
- fc-lang/am.orth                |   2 +-
- fc-lang/ar.orth                |   2 +-
- fc-lang/ast.orth               |   2 +-
- fc-lang/ava.orth               |   2 +-
- fc-lang/ay.orth                |   2 +-
- fc-lang/az.orth                |   2 +-
- fc-lang/az_ir.orth             |   2 +-
- fc-lang/ba.orth                |   2 +-
- fc-lang/bam.orth               |   2 +-
- fc-lang/be.orth                |   2 +-
- fc-lang/bg.orth                |   2 +-
- fc-lang/bh.orth                |   2 +-
- fc-lang/bho.orth               |   2 +-
- fc-lang/bi.orth                |   2 +-
- fc-lang/bin.orth               |   2 +-
- fc-lang/bn.orth                |   2 +-
- fc-lang/bo.orth                |   2 +-
- fc-lang/br.orth                |   2 +-
- fc-lang/bs.orth                |   2 +-
- fc-lang/bua.orth               |   2 +-
- fc-lang/ca.orth                |   2 +-
- fc-lang/ce.orth                |   2 +-
- fc-lang/ch.orth                |   2 +-
- fc-lang/chm.orth               |   2 +-
- fc-lang/chr.orth               |   2 +-
- fc-lang/co.orth                |   2 +-
- fc-lang/cs.orth                |   2 +-
- fc-lang/cu.orth                |   2 +-
- fc-lang/cv.orth                |   2 +-
- fc-lang/cy.orth                |   2 +-
- fc-lang/da.orth                |   2 +-
- fc-lang/de.orth                |   2 +-
- fc-lang/dz.orth                |   2 +-
- fc-lang/el.orth                |   2 +-
- fc-lang/en.orth                |   2 +-
- fc-lang/eo.orth                |   2 +-
- fc-lang/es.orth                |   2 +-
- fc-lang/et.orth                |   2 +-
- fc-lang/eu.orth                |   4 +-
- fc-lang/fa.orth                |   2 +-
- fc-lang/fc-lang.c              |   2 +-
- fc-lang/fc-lang.man            |   2 +-
- fc-lang/fclang.tmpl.h          |   2 +-
- fc-lang/fi.orth                |   2 +-
- fc-lang/fj.orth                |   2 +-
- fc-lang/fo.orth                |   2 +-
- fc-lang/fr.orth                |   2 +-
- fc-lang/ful.orth               |   2 +-
- fc-lang/fur.orth               |   2 +-
- fc-lang/fy.orth                |   4 +-
- fc-lang/ga.orth                |   2 +-
- fc-lang/gd.orth                |   2 +-
- fc-lang/gez.orth               |   2 +-
- fc-lang/gl.orth                |   2 +-
- fc-lang/gn.orth                |   4 +-
- fc-lang/gu.orth                |   2 +-
- fc-lang/gv.orth                |   2 +-
- fc-lang/ha.orth                |   2 +-
- fc-lang/haw.orth               |   2 +-
- fc-lang/he.orth                |   2 +-
- fc-lang/hi.orth                |   2 +-
- fc-lang/ho.orth                |   2 +-
- fc-lang/hr.orth                |   2 +-
- fc-lang/hu.orth                |   2 +-
- fc-lang/hy.orth                |   2 +-
- fc-lang/ia.orth                |   2 +-
- fc-lang/ibo.orth               |   2 +-
- fc-lang/id.orth                |   2 +-
- fc-lang/ie.orth                |   2 +-
- fc-lang/ik.orth                |   2 +-
- fc-lang/io.orth                |   2 +-
- fc-lang/is.orth                |   2 +-
- fc-lang/iso639-2               | 194 +++++++++++++++----------------
- fc-lang/it.orth                |   2 +-
- fc-lang/iu.orth                |   2 +-
- fc-lang/ja.orth                |   2 +-
- fc-lang/ka.orth                |   2 +-
- fc-lang/kaa.orth               |   2 +-
- fc-lang/ki.orth                |   2 +-
- fc-lang/kk.orth                |   2 +-
- fc-lang/kl.orth                |   2 +-
- fc-lang/km.orth                |   2 +-
- fc-lang/kn.orth                |   2 +-
- fc-lang/ko.orth                |   2 +-
- fc-lang/kok.orth               |   2 +-
- fc-lang/ks.orth                |   2 +-
- fc-lang/ku.orth                |   2 +-
- fc-lang/ku_ir.orth             |   2 +-
- fc-lang/kum.orth               |   2 +-
- fc-lang/kv.orth                |   2 +-
- fc-lang/kw.orth                |   2 +-
- fc-lang/ky.orth                |   2 +-
- fc-lang/la.orth                |   2 +-
- fc-lang/lb.orth                |   2 +-
- fc-lang/lez.orth               |   2 +-
- fc-lang/lo.orth                |   2 +-
- fc-lang/lt.orth                |   2 +-
- fc-lang/lv.orth                |   2 +-
- fc-lang/mg.orth                |   2 +-
- fc-lang/mh.orth                |   2 +-
- fc-lang/mi.orth                |   2 +-
- fc-lang/mk.orth                |   2 +-
- fc-lang/ml.orth                |   2 +-
- fc-lang/mn.orth                |   2 +-
- fc-lang/mo.orth                |   2 +-
- fc-lang/mr.orth                |   2 +-
- fc-lang/mt.orth                |   2 +-
- fc-lang/my.orth                |   2 +-
- fc-lang/nb.orth                |   4 +-
- fc-lang/nds.orth               |   2 +-
- fc-lang/ne.orth                |   2 +-
- fc-lang/nl.orth                |   2 +-
- fc-lang/nn.orth                |   2 +-
- fc-lang/no.orth                |   4 +-
- fc-lang/ny.orth                |   2 +-
- fc-lang/oc.orth                |   2 +-
- fc-lang/om.orth                |   2 +-
- fc-lang/or.orth                |   2 +-
- fc-lang/os.orth                |   2 +-
- fc-lang/pl.orth                |   2 +-
- fc-lang/ps_af.orth             |   2 +-
- fc-lang/ps_pk.orth             |   2 +-
- fc-lang/pt.orth                |   2 +-
- fc-lang/rm.orth                |   2 +-
- fc-lang/ro.orth                |   2 +-
- fc-lang/ru.orth                |   2 +-
- fc-lang/sa.orth                |   2 +-
- fc-lang/sah.orth               |   2 +-
- fc-lang/sco.orth               |   2 +-
- fc-lang/se.orth                |   4 +-
- fc-lang/sel.orth               |   2 +-
- fc-lang/sh.orth                |   2 +-
- fc-lang/si.orth                |   2 +-
- fc-lang/sk.orth                |   2 +-
- fc-lang/sl.orth                |   2 +-
- fc-lang/sm.orth                |   2 +-
- fc-lang/sma.orth               |   4 +-
- fc-lang/smj.orth               |   4 +-
- fc-lang/smn.orth               |   4 +-
- fc-lang/sms.orth               |   4 +-
- fc-lang/so.orth                |   2 +-
- fc-lang/sq.orth                |   2 +-
- fc-lang/sr.orth                |   2 +-
- fc-lang/sv.orth                |   2 +-
- fc-lang/sw.orth                |   2 +-
- fc-lang/syr.orth               |   2 +-
- fc-lang/ta.orth                |   2 +-
- fc-lang/te.orth                |   2 +-
- fc-lang/tg.orth                |   2 +-
- fc-lang/th.orth                |   2 +-
- fc-lang/ti_er.orth             |   2 +-
- fc-lang/ti_et.orth             |   2 +-
- fc-lang/tig.orth               |   2 +-
- fc-lang/tk.orth                |   2 +-
- fc-lang/tl.orth                |   2 +-
- fc-lang/tn.orth                |   2 +-
- fc-lang/to.orth                |   2 +-
- fc-lang/tr.orth                |   2 +-
- fc-lang/ts.orth                |   2 +-
- fc-lang/tt.orth                |   2 +-
- fc-lang/tw.orth                |   2 +-
- fc-lang/tyv.orth               |   2 +-
- fc-lang/ug.orth                |   2 +-
- fc-lang/uk.orth                |   2 +-
- fc-lang/ur.orth                |   2 +-
- fc-lang/uz.orth                |   2 +-
- fc-lang/ven.orth               |   2 +-
- fc-lang/vi.orth                |   2 +-
- fc-lang/vo.orth                |   4 +-
- fc-lang/vot.orth               |   2 +-
- fc-lang/wa.orth                |   2 +-
- fc-lang/wen.orth               |   2 +-
- fc-lang/wo.orth                |   2 +-
- fc-lang/xh.orth                |   2 +-
- fc-lang/yap.orth               |   2 +-
- fc-lang/yi.orth                |   2 +-
- fc-lang/yo.orth                |   2 +-
- fc-lang/zh_cn.orth             |   2 +-
- fc-lang/zh_hk.orth             |   2 +-
- fc-lang/zh_mo.orth             |   2 +-
- fc-lang/zh_sg.orth             |   2 +-
- fc-lang/zh_tw.orth             |   2 +-
- fc-lang/zu.orth                |   2 +-
- fc-list/Makefile.am            |   2 +-
- fc-list/fc-list.c              |   2 +-
- fc-match/Makefile.am           |   2 +-
- fc-match/fc-match.1            |   2 +-
- fc-match/fc-match.c            |   2 +-
- fontconfig/fcfreetype.h        |   2 +-
- fontconfig/fcprivate.h                 |   2 +-
- fontconfig/fontconfig.h        |   2 +-
- src/fcatomic.c                         |   2 +-
- src/fcblanks.c                         |   2 +-
- src/fccache.c                  |   2 +-
- src/fccfg.c                    |   2 +-
- src/fccharset.c                |   2 +-
- src/fcdbg.c                    |   2 +-
- src/fcdefault.c                |   2 +-
- src/fcdir.c                    |   2 +-
- src/fcfreetype.c               |   4 +-
- src/fcfs.c                     |   2 +-
- src/fcinit.c                   |   2 +-
- src/fcint.h                    |   2 +-
- src/fclang.c                   |   2 +-
- src/fclist.c                   |   2 +-
- src/fcmatch.c                  |   2 +-
- src/fcmatrix.c                         |   2 +-
- src/fcname.c                   |   2 +-
- src/fcpat.c                    |   2 +-
- src/fcstr.c                    |   2 +-
- src/fcxml.c                    |   2 +-
+ fc-lang/Makefile.am             |   2 +-
+ fc-lang/aa.orth                 |   2 +-
+ fc-lang/ab.orth                 |   2 +-
+ fc-lang/af.orth                 |   2 +-
+ fc-lang/am.orth                 |   2 +-
+ fc-lang/ar.orth                 |   2 +-
+ fc-lang/ast.orth                |   2 +-
+ fc-lang/ava.orth                |   2 +-
+ fc-lang/ay.orth                 |   2 +-
+ fc-lang/az.orth                 |   2 +-
+ fc-lang/az_ir.orth              |   2 +-
+ fc-lang/ba.orth                 |   2 +-
+ fc-lang/bam.orth                |   2 +-
+ fc-lang/be.orth                 |   2 +-
+ fc-lang/bg.orth                 |   2 +-
+ fc-lang/bh.orth                 |   2 +-
+ fc-lang/bho.orth                |   2 +-
+ fc-lang/bi.orth                 |   2 +-
+ fc-lang/bin.orth                |   2 +-
+ fc-lang/bn.orth                 |   2 +-
+ fc-lang/bo.orth                 |   2 +-
+ fc-lang/br.orth                 |   2 +-
+ fc-lang/bs.orth                 |   2 +-
+ fc-lang/bua.orth                |   2 +-
+ fc-lang/ca.orth                 |   2 +-
+ fc-lang/ce.orth                 |   2 +-
+ fc-lang/ch.orth                 |   2 +-
+ fc-lang/chm.orth                |   2 +-
+ fc-lang/chr.orth                |   2 +-
+ fc-lang/co.orth                 |   2 +-
+ fc-lang/cs.orth                 |   2 +-
+ fc-lang/cu.orth                 |   2 +-
+ fc-lang/cv.orth                 |   2 +-
+ fc-lang/cy.orth                 |   2 +-
+ fc-lang/da.orth                 |   2 +-
+ fc-lang/de.orth                 |   2 +-
+ fc-lang/dz.orth                 |   2 +-
+ fc-lang/el.orth                 |   2 +-
+ fc-lang/en.orth                 |   2 +-
+ fc-lang/eo.orth                 |   2 +-
+ fc-lang/es.orth                 |   2 +-
+ fc-lang/et.orth                 |   2 +-
+ fc-lang/eu.orth                 |   4 +-
+ fc-lang/fa.orth                 |   2 +-
+ fc-lang/fc-lang.c               |   2 +-
+ fc-lang/fc-lang.man             |   2 +-
+ fc-lang/fclang.tmpl.h           |   2 +-
+ fc-lang/fi.orth                 |   2 +-
+ fc-lang/fj.orth                 |   2 +-
+ fc-lang/fo.orth                 |   2 +-
+ fc-lang/fr.orth                 |   2 +-
+ fc-lang/ful.orth                |   2 +-
+ fc-lang/fur.orth                |   2 +-
+ fc-lang/fy.orth                 |   4 +-
+ fc-lang/ga.orth                 |   2 +-
+ fc-lang/gd.orth                 |   2 +-
+ fc-lang/gez.orth                |   2 +-
+ fc-lang/gl.orth                 |   2 +-
+ fc-lang/gn.orth                 |   4 +-
+ fc-lang/gu.orth                 |   2 +-
+ fc-lang/gv.orth                 |   2 +-
+ fc-lang/ha.orth                 |   2 +-
+ fc-lang/haw.orth                |   2 +-
+ fc-lang/he.orth                 |   2 +-
+ fc-lang/hi.orth                 |   2 +-
+ fc-lang/ho.orth                 |   2 +-
+ fc-lang/hr.orth                 |   2 +-
+ fc-lang/hu.orth                 |   2 +-
+ fc-lang/hy.orth                 |   2 +-
+ fc-lang/ia.orth                 |   2 +-
+ fc-lang/ibo.orth                |   2 +-
+ fc-lang/id.orth                 |   2 +-
+ fc-lang/ie.orth                 |   2 +-
+ fc-lang/ik.orth                 |   2 +-
+ fc-lang/io.orth                 |   2 +-
+ fc-lang/is.orth                 |   2 +-
+ fc-lang/iso639-2                | 194 +++++++++++++++----------------
+ fc-lang/it.orth                 |   2 +-
+ fc-lang/iu.orth                 |   2 +-
+ fc-lang/ja.orth                 |   2 +-
+ fc-lang/ka.orth                 |   2 +-
+ fc-lang/kaa.orth                |   2 +-
+ fc-lang/ki.orth                 |   2 +-
+ fc-lang/kk.orth                 |   2 +-
+ fc-lang/kl.orth                 |   2 +-
+ fc-lang/km.orth                 |   2 +-
+ fc-lang/kn.orth                 |   2 +-
+ fc-lang/ko.orth                 |   2 +-
+ fc-lang/kok.orth                |   2 +-
+ fc-lang/ks.orth                 |   2 +-
+ fc-lang/ku.orth                 |   2 +-
+ fc-lang/ku_ir.orth              |   2 +-
+ fc-lang/kum.orth                |   2 +-
+ fc-lang/kv.orth                 |   2 +-
+ fc-lang/kw.orth                 |   2 +-
+ fc-lang/ky.orth                 |   2 +-
+ fc-lang/la.orth                 |   2 +-
+ fc-lang/lb.orth                 |   2 +-
+ fc-lang/lez.orth                |   2 +-
+ fc-lang/lo.orth                 |   2 +-
+ fc-lang/lt.orth                 |   2 +-
+ fc-lang/lv.orth                 |   2 +-
+ fc-lang/mg.orth                 |   2 +-
+ fc-lang/mh.orth                 |   2 +-
+ fc-lang/mi.orth                 |   2 +-
+ fc-lang/mk.orth                 |   2 +-
+ fc-lang/ml.orth                 |   2 +-
+ fc-lang/mn.orth                 |   2 +-
+ fc-lang/mo.orth                 |   2 +-
+ fc-lang/mr.orth                 |   2 +-
+ fc-lang/mt.orth                 |   2 +-
+ fc-lang/my.orth                 |   2 +-
+ fc-lang/nb.orth                 |   4 +-
+ fc-lang/nds.orth                |   2 +-
+ fc-lang/ne.orth                 |   2 +-
+ fc-lang/nl.orth                 |   2 +-
+ fc-lang/nn.orth                 |   2 +-
+ fc-lang/no.orth                 |   4 +-
+ fc-lang/ny.orth                 |   2 +-
+ fc-lang/oc.orth                 |   2 +-
+ fc-lang/om.orth                 |   2 +-
+ fc-lang/or.orth                 |   2 +-
+ fc-lang/os.orth                 |   2 +-
+ fc-lang/pl.orth                 |   2 +-
+ fc-lang/ps_af.orth              |   2 +-
+ fc-lang/ps_pk.orth              |   2 +-
+ fc-lang/pt.orth                 |   2 +-
+ fc-lang/rm.orth                 |   2 +-
+ fc-lang/ro.orth                 |   2 +-
+ fc-lang/ru.orth                 |   2 +-
+ fc-lang/sa.orth                 |   2 +-
+ fc-lang/sah.orth                |   2 +-
+ fc-lang/sco.orth                |   2 +-
+ fc-lang/se.orth                 |   4 +-
+ fc-lang/sel.orth                |   2 +-
+ fc-lang/sh.orth                 |   2 +-
+ fc-lang/si.orth                 |   2 +-
+ fc-lang/sk.orth                 |   2 +-
+ fc-lang/sl.orth                 |   2 +-
+ fc-lang/sm.orth                 |   2 +-
+ fc-lang/sma.orth                |   4 +-
+ fc-lang/smj.orth                |   4 +-
+ fc-lang/smn.orth                |   4 +-
+ fc-lang/sms.orth                |   4 +-
+ fc-lang/so.orth                 |   2 +-
+ fc-lang/sq.orth                 |   2 +-
+ fc-lang/sr.orth                 |   2 +-
+ fc-lang/sv.orth                 |   2 +-
+ fc-lang/sw.orth                 |   2 +-
+ fc-lang/syr.orth                |   2 +-
+ fc-lang/ta.orth                 |   2 +-
+ fc-lang/te.orth                 |   2 +-
+ fc-lang/tg.orth                 |   2 +-
+ fc-lang/th.orth                 |   2 +-
+ fc-lang/ti_er.orth              |   2 +-
+ fc-lang/ti_et.orth              |   2 +-
+ fc-lang/tig.orth                |   2 +-
+ fc-lang/tk.orth                 |   2 +-
+ fc-lang/tl.orth                 |   2 +-
+ fc-lang/tn.orth                 |   2 +-
+ fc-lang/to.orth                 |   2 +-
+ fc-lang/tr.orth                 |   2 +-
+ fc-lang/ts.orth                 |   2 +-
+ fc-lang/tt.orth                 |   2 +-
+ fc-lang/tw.orth                 |   2 +-
+ fc-lang/tyv.orth                |   2 +-
+ fc-lang/ug.orth                 |   2 +-
+ fc-lang/uk.orth                 |   2 +-
+ fc-lang/ur.orth                 |   2 +-
+ fc-lang/uz.orth                 |   2 +-
+ fc-lang/ven.orth                |   2 +-
+ fc-lang/vi.orth                 |   2 +-
+ fc-lang/vo.orth                 |   4 +-
+ fc-lang/vot.orth                |   2 +-
+ fc-lang/wa.orth                 |   2 +-
+ fc-lang/wen.orth                |   2 +-
+ fc-lang/wo.orth                 |   2 +-
+ fc-lang/xh.orth                 |   2 +-
+ fc-lang/yap.orth                |   2 +-
+ fc-lang/yi.orth                 |   2 +-
+ fc-lang/yo.orth                 |   2 +-
+ fc-lang/zh_cn.orth              |   2 +-
+ fc-lang/zh_hk.orth              |   2 +-
+ fc-lang/zh_mo.orth              |   2 +-
+ fc-lang/zh_sg.orth              |   2 +-
+ fc-lang/zh_tw.orth              |   2 +-
+ fc-lang/zu.orth                 |   2 +-
+ fc-list/Makefile.am             |   2 +-
+ fc-list/fc-list.c               |   2 +-
+ fc-match/Makefile.am            |   2 +-
+ fc-match/fc-match.1             |   2 +-
+ fc-match/fc-match.c             |   2 +-
+ fontconfig/fcfreetype.h         |   2 +-
+ fontconfig/fcprivate.h          |   2 +-
+ fontconfig/fontconfig.h         |   2 +-
+ src/fcatomic.c                  |   2 +-
+ src/fcblanks.c                  |   2 +-
+ src/fccache.c                   |   2 +-
+ src/fccfg.c                     |   2 +-
+ src/fccharset.c                 |   2 +-
+ src/fcdbg.c                     |   2 +-
+ src/fcdefault.c                 |   2 +-
+ src/fcdir.c                     |   2 +-
+ src/fcfreetype.c                |   4 +-
+ src/fcfs.c                      |   2 +-
+ src/fcinit.c                    |   2 +-
+ src/fcint.h                     |   2 +-
+ src/fclang.c                    |   2 +-
+ src/fclist.c                    |   2 +-
+ src/fcmatch.c                   |   2 +-
+ src/fcmatrix.c                  |   2 +-
+ src/fcname.c                    |   2 +-
+ src/fcpat.c                     |   2 +-
+ src/fcstr.c                     |   2 +-
+ src/fcxml.c                     |   2 +-
  246 files changed, 603 insertions(+), 354 deletions(-)
 
 commit fc2cc873bb1a715844a1e6f885661bf433bdd7cf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 07:44:08 2004 +0000
+Date:   Sun Dec 5 07:44:08 2004 +0000
 
     Update links to new freedesktop.org locations
     Add uninstall-local to get rid of fonts.conf and local.conf if
     they match
-       the distributed versions. Fixes 'make distcheck'
+        the distributed versions. Fixes 'make distcheck'
 
- ChangeLog   | 8 ++++++++
- INSTALL     | 4 ++--
+ ChangeLog   |  8 ++++++++
+ INSTALL     |  4 ++--
  Makefile.am | 24 ++++++++++++++++++++++++
  3 files changed, 34 insertions(+), 2 deletions(-)
 
 commit 308dc9c3ea0be2e0823e547f2c612760db7539a2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 06:38:54 2004 +0000
+Date:   Sun Dec 5 06:38:54 2004 +0000
 
     Updates for version 2.2.97
 
- ChangeLog              |  7 +++++++
- README                         | 30 ++++++++++++++++++++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 30 ++++++++++++++++++++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 37 insertions(+), 4 deletions(-)
 
 commit 54560b013ff89f4d47b4b94f6ea9d1b2e91e20fd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 06:19:46 2004 +0000
+Date:   Sun Dec 5 06:19:46 2004 +0000
 
     Sleep for two seconds before exiting to make sure timestamps for
     future
-       changes have distinct mod times in the file system. Bug #1982.
+        changes have distinct mod times in the file system. Bug #1982.
     Add Punjabi orthography. Bug #1671.
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog          | 13 ++++++++++++-
- fc-cache/fc-cache.c | 8 ++++++++
+ ChangeLog           | 13 ++++++++++++-
+ fc-cache/fc-cache.c |  8 ++++++++
  fc-lang/pa.orth     | 46 ++++++++++++++++++++++++++++++++++++++++++++++
  3 files changed, 66 insertions(+), 1 deletion(-)
 
 commit c5a0b541df8be0b66f4ecf531570242693aac930
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 05:49:20 2004 +0000
+Date:   Sun Dec 5 05:49:20 2004 +0000
 
     Just remove the FC_FONTDATE -- it has locale issues and annoys redhat
-       multi-arch installs. Now that all X fonts are included without
-       prejudice, the chances of the date being at all interesting
-       are rather
-       limited. Bug #415.
+        multi-arch installs. Now that all X fonts are included without
+        prejudice, the chances of the date being at all interesting
+        are rather
+        limited. Bug #415.
     Add copyright and license
 
- ChangeLog      | 10 ++++++++++
- fonts.conf.in  |  2 +-
+ ChangeLog       | 10 ++++++++++
+ fonts.conf.in   |  2 +-
  src/Makefile.am | 23 +++++++++++++++++++++++
  3 files changed, 34 insertions(+), 1 deletion(-)
 
 commit 2d9c79c049d084c82fdda9a71c5a65502ae94cee
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 05:03:52 2004 +0000
+Date:   Sun Dec 5 05:03:52 2004 +0000
 
     Change default set of fonts to include all of /usr/X11R6/lib/X11/fonts
     (or
-       wherever the X fonts are located).
+        wherever the X fonts are located).
     Document new <include>directory-name</include> semantics
     add <include ignore_missing="yes">conf.d</include>
     Add selectfont to ignore bitmap fonts, add comment for selectfont
     which
-       accepts bitmap fonts.
+        accepts bitmap fonts.
     Allow <include> configuration elements to reference directories. Parse
     and
-       load all files of the form [0-9]* in sorted order.
+        load all files of the form [0-9]* in sorted order.
 
- ChangeLog               | 18 ++++++++++
- configure.in            | 23 ++++++-------
+ ChangeLog                | 18 ++++++++++
+ configure.in             | 23 ++++++-------
  doc/fontconfig-user.sgml | 17 +++++----
- fonts.conf.in           |  1 +
- local.conf              | 23 +++++++++++++
- src/fcdir.c             |  4 +--
- src/fcint.h             |  6 ++++
- src/fcxml.c             | 89
+ fonts.conf.in            |  1 +
+ local.conf               | 23 +++++++++++++
+ src/fcdir.c              |  4 +--
+ src/fcint.h              |  6 ++++
+ src/fcxml.c              | 89
  ++++++++++++++++++++++++++++++++++++++++++++++++
  8 files changed, 158 insertions(+), 23 deletions(-)
 
 commit 38e528e77673f0395ab802cd1040947e307f0c6c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 04:14:17 2004 +0000
+Date:   Sun Dec 5 04:14:17 2004 +0000
 
     Report command line for $srcdir/configure accurately. Bug #212.
 
@@ -20651,52 +25614,52 @@ Date: Sun Dec 5 04:14:17 2004 +0000
 
 commit e4125ef950ada3413a542dc457a4d36c5495dcd7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 04:11:11 2004 +0000
+Date:   Sun Dec 5 04:11:11 2004 +0000
 
     Check for non-empty face->family_name and face->style_name before
     using
-       those for the font. Empty names match everything. Bug #171.
+        those for the font. Empty names match everything. Bug #171.
 
- ChangeLog       |  7 +++++++
+ ChangeLog        |  7 +++++++
  src/fcfreetype.c | 12 +++++++-----
  2 files changed, 14 insertions(+), 5 deletions(-)
 
 commit 537e3d23fab449be154da8d49817364479924a61
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Dec 5 00:26:06 2004 +0000
+Date:   Sun Dec 5 00:26:06 2004 +0000
 
     Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where
     available.
-       This provides font file format information (BDF, Type 1, PCF,
-       TrueType)
-       for each font. Closes #109.
+        This provides font file format information (BDF, Type 1, PCF,
+        TrueType)
+        for each font. Closes #109.
 
- ChangeLog              | 10 ++++++++++
- configure.in           |  2 +-
+ ChangeLog               | 10 ++++++++++
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  1 +
- src/fcfreetype.c       | 14 ++++++++++++++
- src/fcname.c           |  1 +
+ src/fcfreetype.c        | 14 ++++++++++++++
+ src/fcname.c            |  1 +
  5 files changed, 27 insertions(+), 1 deletion(-)
 
 commit dbf68dd5fe2f936af53891a240601c727bdcf09d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Dec 4 22:06:52 2004 +0000
+Date:   Sat Dec 4 22:06:52 2004 +0000
 
     Fix typo.
     Add detection for font capabilities (bug #105)
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog               |  13 ++++
+ ChangeLog                |  13 ++++
  doc/fontconfig-user.sgml |   1 +
  fontconfig/fontconfig.h  |   1 +
- src/fcfreetype.c        | 188
+ src/fcfreetype.c         | 188
  +++++++++++++++++++++++++++++++++++++++++++++++
- src/fcname.c            |   1 +
+ src/fcname.c             |   1 +
  5 files changed, 204 insertions(+)
 
 commit 4f27c1c0a383e891890ab27c74226957ed7067aa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Dec 4 19:41:10 2004 +0000
+Date:   Sat Dec 4 19:41:10 2004 +0000
 
     Move existing fonts.conf to fonts.conf.bak
     Add detection of iconv
@@ -20709,32 +25672,32 @@ Date: Sat Dec 4 19:41:10 2004 +0000
     Expose FcListPatternMatchAny (which selectfont/*/pattern uses)
     Add new FcPatternRemove/FcPatternAppend. FcObjectStaticName stores
     computed
-       pattern element names which are required to be static.
+        pattern element names which are required to be static.
 
- ChangeLog                |   47 ++
- Makefile.am              |   13 +-
- configure.in             |    6 +-
- doc/fcpattern.fncs       |   11 +
+ ChangeLog                 |   47 ++
+ Makefile.am               |   13 +-
+ configure.in              |    6 +-
+ doc/fcpattern.fncs        |   11 +
  doc/fontconfig-devel.sgml |   13 +-
  doc/fontconfig-user.sgml  |   43 +-
- fc-lang/nb.orth          |    2 +-
- fontconfig/fontconfig.h   |   7 +
- fonts.dtd                |   19 +
- src/fccache.c            |    2 +-
- src/fccfg.c              |   55 ++-
- src/fcdir.c              |    2 +-
- src/fcfreetype.c         | 1085
+ fc-lang/nb.orth           |    2 +-
+ fontconfig/fontconfig.h   |    7 +
+ fonts.dtd                 |   19 +
+ src/fccache.c             |    2 +-
+ src/fccfg.c               |   55 ++-
+ src/fcdir.c               |    2 +-
+ src/fcfreetype.c          | 1085
  +++++++++++++++++++++++++++++++++------------
- src/fcint.h              |   21 +
- src/fclist.c             |    6 +-
- src/fcname.c             |    4 +
- src/fcpat.c              |   73 +++
- src/fcxml.c              |  162 +++++++
+ src/fcint.h               |   21 +
+ src/fclist.c              |    6 +-
+ src/fcname.c              |    4 +
+ src/fcpat.c               |   73 +++
+ src/fcxml.c               |  162 +++++++
  18 files changed, 1282 insertions(+), 289 deletions(-)
 
 commit c641c77d6f1a0b378e800c9e3502ae446839a8af
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Sep 9 14:31:18 2004 +0000
+Date:   Thu Sep 9 14:31:18 2004 +0000
 
     Remove spurious / after $(DESTDIR)
     reviewed by: keithp
@@ -20745,51 +25708,51 @@ Date: Thu Sep 9 14:31:18 2004 +0000
 
 commit b5f36ca0b54d30d790f84ce68ea43a1bd0e606e9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 30 20:06:41 2004 +0000
+Date:   Wed Jun 30 20:06:41 2004 +0000
 
     Update for 2.2.96
 
- ChangeLog              |  7 +++++++
- README                         | 12 ++++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 12 ++++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 19 insertions(+), 4 deletions(-)
 
 commit 28f93bc4122337f59afad31e610ce17c3d2b00a2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 30 18:41:52 2004 +0000
+Date:   Wed Jun 30 18:41:52 2004 +0000
 
     Provided by: Lubos Lunak <l.lunak@suse.cz>
     However FcConfigUptoDate() doesn't seem to work. See the attached
     patch.
-       First there's an obvious misplaced parenthesis making it return
-       always
-       false, and second, even this call fails to detect font changes
-       (e.g.
-       adding a new font to /usr/X11R6/lib/X11/fonts/truetype). The patch
-       should fix that as well. The problem seems to be triggered by my
-       fonts.conf specifying only /usr/X11R6/lib/X11/fonts , and
-       therefore
-       config->configDirs doesn't include subdirs, unlike
-       config->fontDirs.
+        First there's an obvious misplaced parenthesis making it return
+        always
+        false, and second, even this call fails to detect font changes
+        (e.g.
+        adding a new font to /usr/X11R6/lib/X11/fonts/truetype). The patch
+        should fix that as well. The problem seems to be triggered by my
+        fonts.conf specifying only /usr/X11R6/lib/X11/fonts , and
+        therefore
+        config->configDirs doesn't include subdirs, unlike
+        config->fontDirs.
 
  ChangeLog   | 14 ++++++++++++++
- src/fccfg.c | 4 ++--
+ src/fccfg.c |  4 ++--
  2 files changed, 16 insertions(+), 2 deletions(-)
 
 commit 3d1ea0e5d48e0dfa72080a3318e3c2157500da3d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jun 3 14:16:38 2004 +0000
+Date:   Thu Jun 3 14:16:38 2004 +0000
 
     Remove comma at end of FcResult enum definition.
 
- ChangeLog              | 5 +++++
+ ChangeLog               | 5 +++++
  fontconfig/fontconfig.h | 2 +-
  2 files changed, 6 insertions(+), 1 deletion(-)
 
 commit 087d899ccfab846c15ccd9197f3b79d7dd8dc5bb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 29 20:07:46 2004 +0000
+Date:   Sat May 29 20:07:46 2004 +0000
 
     Add steps to md5sum release
 
@@ -20799,7 +25762,7 @@ Date:   Sat May 29 20:07:46 2004 +0000
 
 commit e867aa336c4b0d80702f01b1ff390ca8c81dd73a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 29 19:49:52 2004 +0000
+Date:   Sat May 29 19:49:52 2004 +0000
 
     Add sh autogen.sh to INSTALL
 
@@ -20808,52 +25771,52 @@ Date: Sat May 29 19:49:52 2004 +0000
 
 commit d81271eb21db058d0e816044874b3a8b88439e82
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 29 19:36:32 2004 +0000
+Date:   Sat May 29 19:36:32 2004 +0000
 
     Update for 2.2.95
 
- ChangeLog              |  7 +++++++
- README                         | 11 +++++++++--
- configure.in           |  2 +-
+ ChangeLog               |  7 +++++++
+ README                  | 11 +++++++++--
+ configure.in            |  2 +-
  fontconfig/fontconfig.h |  2 +-
  4 files changed, 18 insertions(+), 4 deletions(-)
 
 commit ec0c740e392e6e05ae0fa204ebe191cbe27073cf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 29 19:32:41 2004 +0000
+Date:   Sat May 29 19:32:41 2004 +0000
 
     Add FcResultOutOfMemory to provide an accurate error when
     FcFontSetMatch
-       fails in this way
+        fails in this way
     Make #warning about lacking various FreeType features indicate which
-       version those features appeared so users know how to fix the
-       problem
-       (Thanks to Anton Tropashko)
+        version those features appeared so users know how to fix the
+        problem
+        (Thanks to Anton Tropashko)
 
- ChangeLog              | 12 ++++++++++++
+ ChangeLog               | 12 ++++++++++++
  fontconfig/fontconfig.h |  3 ++-
- src/fcfreetype.c       |  6 +++---
- src/fcmatch.c          |  3 +++
+ src/fcfreetype.c        |  6 +++---
+ src/fcmatch.c           |  3 +++
  4 files changed, 20 insertions(+), 4 deletions(-)
 
 commit 55a69bd0aeb4cde4e87c1c7cd04a9f10a1f4cb1a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 6 02:28:37 2004 +0000
+Date:   Thu May 6 02:28:37 2004 +0000
 
     Replace MIN/MAX/ABS macros which happen to have come from FreeType
     with
-       fontconfig-specific ones (FC_*)
+        fontconfig-specific ones (FC_*)
 
- ChangeLog       | 6 ++++++
+ ChangeLog        | 6 ++++++
  src/fcfreetype.c | 7 +++++--
  2 files changed, 11 insertions(+), 2 deletions(-)
 
 commit bd0ddac8f34dd6ef0a9385aacf3edc4c81023452
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Apr 24 02:54:40 2004 +0000
+Date:   Sat Apr 24 02:54:40 2004 +0000
 
     Extend release preparation instructions to include notification and
-       distribution steps
+        distribution steps
 
  ChangeLog |  6 ++++++
  INSTALL   | 11 +++++++++--
@@ -20861,19 +25824,19 @@ Date: Sat Apr 24 02:54:40 2004 +0000
 
 commit 626a70167d7805c20a157e945a1f380ae580661a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Apr 24 01:09:36 2004 +0000
+Date:   Sat Apr 24 01:09:36 2004 +0000
 
     Update to 2.2.94 (2.2.93 shipped with broken libtool bits)
 
- ChangeLog              | 7 +++++++
- README                         | 9 +++++++--
- configure.in           | 2 +-
+ ChangeLog               | 7 +++++++
+ README                  | 9 +++++++--
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  4 files changed, 16 insertions(+), 4 deletions(-)
 
 commit 7969113f086176112fdc13347ea56ea52838117a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Apr 24 01:06:32 2004 +0000
+Date:   Sat Apr 24 01:06:32 2004 +0000
 
     Ignore a few more autotool files
 
@@ -20883,7 +25846,7 @@ Date:   Sat Apr 24 01:06:32 2004 +0000
 
 commit 6ae6acf3178d7dd10e2326f6833d25970e530f61
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 14 18:08:41 2004 +0000
+Date:   Wed Apr 14 18:08:41 2004 +0000
 
     Add instructions for doing a release
     clean up .spec file; perhaps this will be useful to somebody...
@@ -20892,133 +25855,133 @@ Date:       Wed Apr 14 18:08:41 2004 +0000
     Add WARN_CFLAGS to pass -W flags for GCC systems
     Change various char types around to match across function calls. Fixed
     bug
-       in using available_sizes[i].height which is in pixels, not 64ths
-       of a
-       pixel.
-
- ChangeLog               |  30 +++++++++++++
- INSTALL                 |  13 ++++++
- README                          |  27 +++++++++++-
- configure.in            |  14 +++++-
+        in using available_sizes[i].height which is in pixels, not 64ths
+        of a
+        pixel.
+
+ ChangeLog                |  30 +++++++++++++
+ INSTALL                  |  13 ++++++
+ README                   |  27 +++++++++++-
+ configure.in             |  14 +++++-
  fc-glyphname/Makefile.am |   2 +-
- fc-lang/Makefile.am     |   2 +-
- fc-lang/fc-lang.c       |   2 +-
- fc-list/Makefile.am     |   2 +-
- fc-match/Makefile.am    |   2 +-
- fontconfig.spec.in      |  42 +++++++++++++-----
+ fc-lang/Makefile.am      |   2 +-
+ fc-lang/fc-lang.c        |   2 +-
+ fc-list/Makefile.am      |   2 +-
+ fc-match/Makefile.am     |   2 +-
+ fontconfig.spec.in       |  42 +++++++++++++-----
  fontconfig/fontconfig.h  |   2 +-
- src/Makefile.am         |   1 +
- src/fcfreetype.c        | 109
+ src/Makefile.am          |   1 +
+ src/fcfreetype.c         | 109
  ++++++++++++++++++++++++-----------------------
  13 files changed, 176 insertions(+), 72 deletions(-)
 
 commit 89e28590f3c85f302dcc5c611e7b9fa906e0ec07
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 6 23:44:11 2004 +0000
+Date:   Sat Mar 6 23:44:11 2004 +0000
 
     Force FC_FOUNDRY and FC_WIDTH to always be set so that matches
     looking for
-       explicit values prefer exact matches
+        explicit values prefer exact matches
 
- ChangeLog       |  6 ++++++
+ ChangeLog        |  6 ++++++
  src/fcfreetype.c | 18 ++++++++++--------
  2 files changed, 16 insertions(+), 8 deletions(-)
 
 commit 02638f1ace0ad7e898317128c244dfd9c842d122
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 2 16:48:51 2004 +0000
+Date:   Tue Mar 2 16:48:51 2004 +0000
 
     Supplied by: mfabian@suse.de (Mike FABIAN)
     Bug #260 fc-cache generates wrong spacing values for bitmap fonts
     Was using
-       (strcmp (a,b)) instead of (!strcmp(a,b)).
+        (strcmp (a,b)) instead of (!strcmp(a,b)).
 
- ChangeLog       | 8 ++++++++
+ ChangeLog        | 8 ++++++++
  src/fcfreetype.c | 6 +++---
  2 files changed, 11 insertions(+), 3 deletions(-)
 
 commit de66e750a5c5798dab5347675d6581183efa8105
 Author: Manish Singh <yosh@gimp.org>
-Date:  Sun Feb 22 02:21:37 2004 +0000
+Date:   Sun Feb 22 02:21:37 2004 +0000
 
     Cast strlen to int for printf, so we're 64-bit clean.
 
- ChangeLog                  | 5 +++++
+ ChangeLog                   | 5 +++++
  fc-glyphname/fc-glyphname.c | 2 +-
  2 files changed, 6 insertions(+), 1 deletion(-)
 
 commit 208a720f009357449647a56d6fe95a5a346a6578
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 11 18:53:05 2004 +0000
+Date:   Wed Feb 11 18:53:05 2004 +0000
 
     Ok, so I messed up the test for y_ppem. Let's see if I got it
     right this
-       time.
+        time.
 
- ChangeLog       |  7 +++++++
- configure.in    | 15 +++------------
+ ChangeLog        |  7 +++++++
+ configure.in     | 15 +++------------
  src/fcfreetype.c |  4 ++--
  3 files changed, 12 insertions(+), 14 deletions(-)
 
 commit 4f38fa81062e5e2e151715a162c295b9a216568a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Feb 10 18:38:58 2004 +0000
+Date:   Tue Feb 10 18:38:58 2004 +0000
 
     Pre-2.1.5 versions of FreeType didn't include y_ppem in the
     FT_Bitmap_Size
-       record. Add a configure.in test for this and change the code
-       accordingly (using height instead).
+        record. Add a configure.in test for this and change the code
+        accordingly (using height instead).
 
- ChangeLog       |  8 ++++++++
- configure.in    | 21 +++++++++++++++++++--
+ ChangeLog        |  8 ++++++++
+ configure.in     | 21 +++++++++++++++++++--
  src/fcfreetype.c |  4 ++++
  3 files changed, 31 insertions(+), 2 deletions(-)
 
 commit b68b96464f6488dbc62c4dcd62ca7e2eed3141d2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Feb 7 07:13:48 2004 +0000
+Date:   Sat Feb 7 07:13:48 2004 +0000
 
     Add Low Saxon orthography (Kenneth Rohde Christiansen
     <kenneth@gnu.org>)
     Oops. Left 'newest.set' unset, which would miscompute the newest file
     Add FcGetPixelSize to extract correct pixel size from bdf/pcf font
-       properties (which report the wrong value in current FreeType)
+        properties (which report the wrong value in current FreeType)
     Don't attempt to check for empty glyphs in non-scalable fonts;
     they have no
-       outlines...
+        outlines...
 
- ChangeLog       | 18 ++++++++++++++++++
+ ChangeLog        | 18 ++++++++++++++++++
  fc-lang/nds.orth | 40 ++++++++++++++++++++++++++++++++++++++++
- src/fccfg.c     |  3 +++
+ src/fccfg.c      |  3 +++
  src/fcfreetype.c | 36 ++++++++++++++++++++++++------------
  4 files changed, 85 insertions(+), 12 deletions(-)
 
 commit f4c52909ab5321df608fe7af2da3edcab48818d9
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sun Feb 1 19:32:36 2004 +0000
+Date:   Sun Feb 1 19:32:36 2004 +0000
 
     fontconfig, at least as used by GIMP and/or PangoFT2 on Windows,
     crashes
-       when trying to save the cache if config->cache is NULL, which
-       happens
-       if FcConfigHome() is NULL. Guard against that by using the
-       temp folder
-       in that case.
+        when trying to save the cache if config->cache is NULL, which
+        happens
+        if FcConfigHome() is NULL. Guard against that by using the
+        temp folder
+        in that case.
 
- ChangeLog   | 7 +++++++
+ ChangeLog   |  7 +++++++
  src/fccfg.c | 25 +++++++++++++++++++++++++
  2 files changed, 32 insertions(+)
 
 commit d3481737be37255408025f4b3cf2c8b14a6b2ff7
 Author: Roozbeh Pournader <roozbeh@farsiweb.info>
-Date:  Sat Jan 3 18:27:29 2004 +0000
+Date:   Sat Jan 3 18:27:29 2004 +0000
 
     Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto
     (Afghan
-       and Pakistani).
+        and Pakistani).
     Updated Urdu orthography with real data.
 
- ChangeLog         | 11 +++++++++++
+ ChangeLog          | 11 +++++++++++
  fc-lang/az_ir.orth | 32 ++++++++++++++++++++++++++++++++
  fc-lang/ku_ir.orth | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
  fc-lang/ps_af.orth | 52
@@ -21030,7 +25993,7 @@ Date:   Sat Jan 3 18:27:29 2004 +0000
 
 commit f6d784313fa87d405b4b4165ee7b9248dd378df2
 Author: Carl Worth <cworth@cworth.org>
-Date:  Fri Dec 12 17:07:55 2003 +0000
+Date:   Fri Dec 12 17:07:55 2003 +0000
 
     Remove excessive whitespace (missed on previous commit)
 
@@ -21039,51 +26002,51 @@ Date: Fri Dec 12 17:07:55 2003 +0000
 
 commit d098e4ebe7e3b87a66ddbe09bafe3582373a022c
 Author: Carl Worth <cworth@cworth.org>
-Date:  Thu Dec 11 19:30:07 2003 +0000
+Date:   Thu Dec 11 19:30:07 2003 +0000
 
     Move man_MANS into the 'if USEDOCBOOK' block.
     Move man_MANS into the 'if USEDOCBOOK' block. (all-local): Remove
     excessive
-       whitespace.
+        whitespace.
     Add 'set -e' to abort when any program fails, (avoids printing of
     'now type
-       make' after configure aborts).
+        make' after configure aborts).
 
- ChangeLog           | 12 ++++++++++++
- autogen.sh          |  2 ++
+ ChangeLog            | 12 ++++++++++++
+ autogen.sh           |  2 ++
  fc-cache/Makefile.am |  6 +++---
  fc-list/Makefile.am  |  4 ++--
  4 files changed, 19 insertions(+), 5 deletions(-)
 
 commit 408dd9c07a9b0b755f9338b4cbff9e4292fa391d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Nov 18 07:53:04 2003 +0000
+Date:   Tue Nov 18 07:53:04 2003 +0000
 
     Switch to FreeType 2.1.7 style includes. Bug #150.
     reviewed by: Keith Packard <keithp@keithp.com>
 
- ChangeLog              |  9 +++++++++
- doc/Makefile.am        |  1 +
+ ChangeLog               |  9 +++++++++
+ doc/Makefile.am         |  1 +
  fontconfig/fcfreetype.h |  3 ++-
- src/fcfreetype.c       | 17 +++++++++--------
+ src/fcfreetype.c        | 17 +++++++++--------
  4 files changed, 21 insertions(+), 9 deletions(-)
 
 commit 8e8fcda45c07bb0934f30887282238a57cc619da
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Sun Nov 16 19:08:04 2003 +0000
+Date:   Sun Nov 16 19:08:04 2003 +0000
 
     Add some example usages.
 
- ChangeLog           |  4 ++++
+ ChangeLog            |  4 ++++
  fc-list/fc-list.sgml | 23 +++++++++++++++++++++++
  2 files changed, 27 insertions(+)
 
 commit 344a0e33618cd0e9f620b5fa55969602d775934c
 Author: Roozbeh Pournader <roozbeh@farsiweb.info>
-Date:  Mon Nov 10 17:34:36 2003 +0000
+Date:   Mon Nov 10 17:34:36 2003 +0000
 
     Fixed a bug "FcStrtod" in handling some cases with two-byte decimal
-       separators.
+        separators.
 
  ChangeLog   | 8 +++++++-
  src/fcxml.c | 7 +++++--
@@ -21091,156 +26054,156 @@ Date:       Mon Nov 10 17:34:36 2003 +0000
 
 commit 27143fc9a2ac9b7dc87ab874251df356611b25e5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Oct 27 10:47:53 2003 +0000
+Date:   Mon Oct 27 10:47:53 2003 +0000
 
     Update to version 2.2.92
 
- ChangeLog              | 6 ++++++
- configure.in           | 2 +-
+ ChangeLog               | 6 ++++++
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  3 files changed, 8 insertions(+), 2 deletions(-)
 
 commit 4cbc3ee8fe4a6266b2d107c7475a65de6bdd1068
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Oct 27 10:44:13 2003 +0000
+Date:   Mon Oct 27 10:44:13 2003 +0000
 
     Yet more cleanups to finish getting 'make distcheck' working This
     has been
-       tested to ensure that it even works from a _build directory.
+        tested to ensure that it even works from a _build directory.
 
- ChangeLog               |  16 ++++++
- Makefile.am             |   1 +
- configure.in            |  10 ++++
- doc/Makefile.am         | 133
+ ChangeLog                |  16 ++++++
+ Makefile.am              |   1 +
+ configure.in             |  10 ++++
+ doc/Makefile.am          | 133
  +++++++++++++++--------------------------------
- fc-cache/Makefile.am    |   2 +-
+ fc-cache/Makefile.am     |   2 +-
  fc-glyphname/Makefile.am |   6 +--
- fc-lang/Makefile.am     |   5 +-
- fc-list/Makefile.am     |   2 +-
- fc-match/Makefile.am    |   2 +-
- test/Makefile.am        |   4 +-
- test/run-test.sh        |  28 ++++++----
+ fc-lang/Makefile.am      |   5 +-
+ fc-list/Makefile.am      |   2 +-
+ fc-match/Makefile.am     |   2 +-
+ test/Makefile.am         |   4 +-
+ test/run-test.sh         |  28 ++++++----
  11 files changed, 98 insertions(+), 111 deletions(-)
 
 commit 394b2bf04651d62194c7faa836899d33ca3ed017
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Oct 27 06:30:29 2003 +0000
+Date:   Mon Oct 27 06:30:29 2003 +0000
 
     Attempts to fix 'make distcheck' work. Things are progressing
     pretty well,
-       but there are still failures long into the process dealing
-       with docs
-       (as always).
+        but there are still failures long into the process dealing
+        with docs
+        (as always).
     The big changes here are mostly to make $(srcdir) != "." work
     correctly,
-       fixing the docbook related sections and fc-lang were particularily
-       tricky. Docbook refuses to load system entities from anywhere
-       other
-       than where the original .sgml file was located, so no luck
-       looking in
-       "." for the configure-generated version.sgml and confdir.sgml
-       files.
+        fixing the docbook related sections and fc-lang were particularily
+        tricky. Docbook refuses to load system entities from anywhere
+        other
+        than where the original .sgml file was located, so no luck
+        looking in
+        "." for the configure-generated version.sgml and confdir.sgml
+        files.
     fc-lang needed help finding .orth files; added a -d option to set the
-       directory as the least evil of many options.
+        directory as the least evil of many options.
     Now to go use a faster machine and try and wring out the last issues.
 
- ChangeLog               | 27 +++++++++++++++++++
- configure.in            |  2 +-
- doc/Makefile.am         | 68
+ ChangeLog                | 27 +++++++++++++++++++
+ configure.in             |  2 +-
+ doc/Makefile.am          | 68
  +++++++++++++++++++++++++++++++++++++++++-------
- fc-cache/Makefile.am    | 13 ++++-----
+ fc-cache/Makefile.am     | 13 ++++-----
  fc-glyphname/Makefile.am | 11 +++++---
- fc-lang/Makefile.am     | 10 ++++---
- fc-lang/fc-lang.c       | 29 +++++++++++++++++++--
- fc-list/Makefile.am     | 10 ++++---
- fc-match/Makefile.am    |  2 +-
+ fc-lang/Makefile.am      | 10 ++++---
+ fc-lang/fc-lang.c        | 29 +++++++++++++++++++--
+ fc-list/Makefile.am      | 10 ++++---
+ fc-match/Makefile.am     |  2 +-
  9 files changed, 142 insertions(+), 30 deletions(-)
 
 commit 3541556bd38d6b1a3fffe1a661edce2f8d60e06a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Oct 26 16:52:28 2003 +0000
+Date:   Sun Oct 26 16:52:28 2003 +0000
 
     Tag version 2.2.91
 
- ChangeLog              | 4 ++++
- configure.in           | 2 +-
+ ChangeLog               | 4 ++++
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  3 files changed, 6 insertions(+), 2 deletions(-)
 
 commit e99043ac778280ed16ab69ca0844b634f7d20f30
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Oct 26 16:45:23 2003 +0000
+Date:   Sun Oct 26 16:45:23 2003 +0000
 
     Include confdir.sgml.in in EXTRA_DIST
 
- ChangeLog      | 5 +++++
+ ChangeLog       | 5 +++++
  doc/Makefile.am | 2 +-
  2 files changed, 6 insertions(+), 1 deletion(-)
 
 commit 75839218d18a7fad2f7e84cb995724763f7cae11
 Author: Josselin Mouette <joss@debian.org>
-Date:  Thu Oct 9 18:21:49 2003 +0000
+Date:   Thu Oct 9 18:21:49 2003 +0000
 
     Replace fc-cache and fc-list manpages with more detailed, SGML
     versions.
 
- ChangeLog             |   7 ++
- fc-cache/.cvsignore   |   1 +
- fc-cache/Makefile.am  |  24 +++++-
- fc-cache/fc-cache.1   |  51 -------------
+ ChangeLog              |   7 ++
+ fc-cache/.cvsignore    |   1 +
+ fc-cache/Makefile.am   |  24 +++++-
+ fc-cache/fc-cache.1    |  51 -------------
  fc-cache/fc-cache.sgml | 200
  +++++++++++++++++++++++++++++++++++++++++++++++++
- fc-list/.cvsignore    |   1 +
- fc-list/Makefile.am   |  24 +++++-
- fc-list/fc-list.1     |  37 ---------
- fc-list/fc-list.sgml  | 165 ++++++++++++++++++++++++++++++++++++++++
+ fc-list/.cvsignore     |   1 +
+ fc-list/Makefile.am    |  24 +++++-
+ fc-list/fc-list.1      |  37 ---------
+ fc-list/fc-list.sgml   | 165 ++++++++++++++++++++++++++++++++++++++++
  9 files changed, 420 insertions(+), 90 deletions(-)
 
 commit f077d662c001468eb2aa1261549accd9ff3de401
 Author: Owen Taylor <otaylor@redhat.com>
-Date:  Tue Sep 23 20:12:20 2003 +0000
+Date:   Tue Sep 23 20:12:20 2003 +0000
 
     Add a FC_HINT_STYLE key for patterns, with possible values
-       HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL. (Bug #117)
+        HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL. (Bug #117)
 
- ChangeLog              | 7 +++++++
+ ChangeLog               | 7 +++++++
  fontconfig/fontconfig.h | 7 +++++++
- src/fcdefault.c        | 5 +++++
- src/fcname.c           | 6 ++++++
+ src/fcdefault.c         | 5 +++++
+ src/fcname.c            | 6 ++++++
  4 files changed, 25 insertions(+)
 
 commit 44f59f71688d557b75a94e2a8786ec5ae80308ae
 Author: Owen Taylor <otaylor@redhat.com>
-Date:  Tue Sep 23 20:06:40 2003 +0000
+Date:   Tue Sep 23 20:06:40 2003 +0000
 
     Remove Georgian capitals, they aren't used for normal writing. (Bug
     #116)
 
- ChangeLog      | 5 +++++
+ ChangeLog       | 5 +++++
  fc-lang/ka.orth | 2 +-
  2 files changed, 6 insertions(+), 1 deletion(-)
 
 commit a05d257fb3b2cf37c6c633029b308a76fe61b9c2
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Sat Sep 6 19:40:41 2003 +0000
+Date:   Sat Sep 6 19:40:41 2003 +0000
 
     Add new spacing value FC_DUAL (dual-width, as some CJK fonts). (bug
     #111)
     When checking for monospace and dual-width fonts, allow roughly a 3%
-       variance in the advances.
+        variance in the advances.
 
- ChangeLog                | 13 +++++++++++
+ ChangeLog                 | 13 +++++++++++
  doc/fontconfig-devel.sgml |  4 ++--
  doc/fontconfig-user.sgml  |  3 ++-
  fontconfig/fontconfig.h   |  1 +
- src/fcfreetype.c         | 55
+ src/fcfreetype.c          | 55
  +++++++++++++++++++++++++++++++++++++----------
- src/fcname.c             |  1 +
+ src/fcname.c              |  1 +
  6 files changed, 63 insertions(+), 14 deletions(-)
 
 commit 3ef32bcdc4662fbc10bc5217ea7849cd31480d73
 Author: Manish Singh <yosh@gimp.org>
-Date:  Mon Sep 1 05:11:17 2003 +0000
+Date:   Mon Sep 1 05:11:17 2003 +0000
 
     FcConfigAppFontClear: Support passing NULL to use default config.
 
@@ -21250,46 +26213,46 @@ Date: Mon Sep 1 05:11:17 2003 +0000
 
 commit 34cd0514a215d65af6822eba2c2f0cd04eb0065f
 Author: Carl Worth <cworth@cworth.org>
-Date:  Fri Aug 15 19:45:20 2003 +0000
+Date:   Fri Aug 15 19:45:20 2003 +0000
 
     Added new FcFini function for cleaning up all memory. Fixed a
     few memory
-       leaks. fc-list now calls FcFini, (and is now leak-free according
-       to
-       valgrind)
+        leaks. fc-list now calls FcFini, (and is now leak-free according
+        to
+        valgrind)
 
- ChangeLog                  |  44 +++++++++++
- doc/Makefile.am            |   8 +-
- doc/edit-sgml.c            | 187
+ ChangeLog                   |  44 +++++++++++
+ doc/Makefile.am             |   8 +-
+ doc/edit-sgml.c             | 187
  +++++++++++++++++++++++++++++++-------------
- doc/fcinit.fncs            |  11 +++
- fc-glyphname/fc-glyphname.c | 35 +++++++--
- fc-list/fc-list.c          |   4 +
- fc-match/fc-match.c        |   2 +-
- fontconfig/fontconfig.h     |  3 +
- src/fccfg.c                |   6 ++
- src/fccharset.c            |  64 +++++++++++++--
- src/fcinit.c               |  13 +++
- src/fcint.h                |   6 ++
- src/fcpat.c                |  84 +++++++++++++++++++-
- src/fcxml.c                |   4 +
- src/fontconfig.def.in      |   1 +
+ doc/fcinit.fncs             |  11 +++
+ fc-glyphname/fc-glyphname.c |  35 +++++++--
+ fc-list/fc-list.c           |   4 +
+ fc-match/fc-match.c         |   2 +-
+ fontconfig/fontconfig.h     |   3 +
+ src/fccfg.c                 |   6 ++
+ src/fccharset.c             |  64 +++++++++++++--
+ src/fcinit.c                |  13 +++
+ src/fcint.h                 |   6 ++
+ src/fcpat.c                 |  84 +++++++++++++++++++-
+ src/fcxml.c                 |   4 +
+ src/fontconfig.def.in       |   1 +
  15 files changed, 398 insertions(+), 74 deletions(-)
 
 commit 18906a876aa13550b1a10550ceeef6df0c4473ec
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 12 02:06:20 2003 +0000
+Date:   Tue Aug 12 02:06:20 2003 +0000
 
     Bug 103 -- FcObjectSetBuild must be terminated by (char *) 0 as
     varargs are
-       untyped
+        untyped
 
  fc-list/fc-list.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 116e13b4431b051b8196db201c22cd67b30922e9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 20 17:14:47 2003 +0000
+Date:   Sun Jul 20 17:14:47 2003 +0000
 
     Wrap fcfreetype.h with _FCFUNCPROTOBEGIN/_FCFUNCPROTOEND
 
@@ -21298,16 +26261,16 @@ Date: Sun Jul 20 17:14:47 2003 +0000
 
 commit 74a623e02efc23a39fb35e8d338858877b8f89e7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 20 16:06:18 2003 +0000
+Date:   Sun Jul 20 16:06:18 2003 +0000
 
     Implement new semantics for Contains and LISTING:
     LISTING requires that the font Contain all of the pattern values,
     where
-       Contain is redefined for strings to mean precise matching (so that
-       Courier 10 Pitch doesn't list Courier fonts)
+        Contain is redefined for strings to mean precise matching (so that
+        Courier 10 Pitch doesn't list Courier fonts)
     "Contains" for lang means both langs have the same language and
     either the
-       same country or one is missing the country
+        same country or one is missing the country
 
  src/fccfg.c  | 79
  +++++++++++++++++++++++++++++++++---------------------------
@@ -21320,27 +26283,27 @@ Date: Sun Jul 20 16:06:18 2003 +0000
 
 commit 26da2bb42f91360ecdee9006ff0f8a7ef0609a59
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jul 9 17:04:17 2003 +0000
+Date:   Wed Jul 9 17:04:17 2003 +0000
 
     Was miscomputing end of string position for FcStrtod in locales with
-       multibyte separators
+        multibyte separators
 
  src/fcxml.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 656c69d6a8a1e6a82cfdd599c657f8fc2717af8d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jun 26 08:19:11 2003 +0000
+Date:   Thu Jun 26 08:19:11 2003 +0000
 
     Add autoconf checks for FT_Has_PS_Glyph_Names
 
- configure.in    | 3 ++-
+ configure.in     | 3 ++-
  src/fcfreetype.c | 6 ++++++
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit ee1debfdd9bae347e8bec29c0cbd668640a2aadf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jun 26 00:39:04 2003 +0000
+Date:   Thu Jun 26 00:39:04 2003 +0000
 
     Allow config->cache to be null (as it is when $HOME is not set)
 
@@ -21349,49 +26312,49 @@ Date: Thu Jun 26 00:39:04 2003 +0000
 
 commit 79621aa5c786cdd4d14b43b58888979ef0d2a4c6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 25 23:21:03 2003 +0000
+Date:   Wed Jun 25 23:21:03 2003 +0000
 
     Lean on autoconf to find useful FreeType functions (bug 95)
 
- configure.in    |  7 +++++--
+ configure.in     |  7 +++++--
  src/fcfreetype.c | 46 +++++++++++++++++-----------------------------
  2 files changed, 22 insertions(+), 31 deletions(-)
 
 commit 2b45ef3a8a164648647eba1265db6a3d10ea7bad
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jun 17 18:28:20 2003 +0000
+Date:   Tue Jun 17 18:28:20 2003 +0000
 
     Bug 75: dont build docs unless docbook is available. Dont install docs
-       unless they are pre-built or buildable
+        unless they are pre-built or buildable
 
- Makefile.am    |  3 ++-
- configure.in   | 26 +++++++++++++++++++++-----
+ Makefile.am     |  3 ++-
+ configure.in    | 26 +++++++++++++++++++++-----
  doc/Makefile.am |  2 +-
  3 files changed, 24 insertions(+), 7 deletions(-)
 
 commit e5871b5c5bdb09b2e5bb0d79ed03f22a27956a90
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jun 17 17:31:16 2003 +0000
+Date:   Tue Jun 17 17:31:16 2003 +0000
 
     Add FreeFont entries, fix whitespace in fonts.conf.in (bug 93, from
-       vvas@hal.csd.auth.gr (Vasilis Vasaitis))
+        vvas@hal.csd.auth.gr (Vasilis Vasaitis))
 
  fonts.conf.in | 22 ++++++++++++++--------
  1 file changed, 14 insertions(+), 8 deletions(-)
 
 commit 231051f41669095db4a2c5680a0945fb1ff45a2d
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sun Jun 15 22:57:21 2003 +0000
+Date:   Sun Jun 15 22:57:21 2003 +0000
 
     Remove CRs from the out file before comparing (needed on Windows).
 
- ChangeLog       | 3 +++
+ ChangeLog        | 3 +++
  test/run-test.sh | 1 +
  2 files changed, 4 insertions(+)
 
 commit 92af858f2a7dcc972bf482397ac75d7e0ca38dd9
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sun Jun 15 22:45:12 2003 +0000
+Date:   Sun Jun 15 22:45:12 2003 +0000
 
     Trivial braino.
 
@@ -21400,18 +26363,18 @@ Date: Sun Jun 15 22:45:12 2003 +0000
 
 commit c3941ba9c064d41f248c6a00f06423f3c50c685d
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sun Jun 15 22:35:52 2003 +0000
+Date:   Sun Jun 15 22:35:52 2003 +0000
 
     Fix cut&paste error.
 
- ChangeLog        | 4 ++++
+ ChangeLog         | 4 ++++
  fontconfig-zip.in | 3 ++-
  src/Makefile.am   | 2 +-
  3 files changed, 7 insertions(+), 2 deletions(-)
 
 commit e5206dbcb34457ef69a993ad6b4cc8c3da53e1aa
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Fri Jun 13 23:04:35 2003 +0000
+Date:   Fri Jun 13 23:04:35 2003 +0000
 
     Check also for DLL_EXPORT as indication of being built as a DLL
     on Win32.
@@ -21422,34 +26385,34 @@ Date: Fri Jun 13 23:04:35 2003 +0000
 
 commit ee1d81259ec5b0b91cf19ea72abec29f5561217b
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Fri Jun 13 22:43:28 2003 +0000
+Date:   Fri Jun 13 22:43:28 2003 +0000
 
     Add share/doc directory. Add Fc*.3 man pages.
     Set FC_DEFAULT_FONTS on Win32 to the WINDOWSFONTDIR token.
     Move the LIBRARY and VERSION lines to the end, not to confuse libtool,
-       which expects the EXPORTS line to be the first. Add
-       FcConfigEnableHome.
+        which expects the EXPORTS line to be the first. Add
+        FcConfigEnableHome.
 
- ChangeLog            | 12 ++++++++++++
- configure.in         | 12 +++++++++---
+ ChangeLog             | 12 ++++++++++++
+ configure.in          | 12 +++++++++---
  fontconfig-zip.in     |  4 +++-
  src/fontconfig.def.in |  5 +++--
  4 files changed, 27 insertions(+), 6 deletions(-)
 
 commit 4ae7f71c89cd69d5273f82f03aadcb0c78b16c8d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 9 19:21:06 2003 +0000
+Date:   Mon Jun 9 19:21:06 2003 +0000
 
     Update to version 2.2.90
 
- ChangeLog              | 4 ++++
- configure.in           | 2 +-
+ ChangeLog               | 4 ++++
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  3 files changed, 6 insertions(+), 2 deletions(-)
 
 commit 8edb970e93f2dafc4fcd821df6240e807aa2ef8a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 9 19:15:00 2003 +0000
+Date:   Mon Jun 9 19:15:00 2003 +0000
 
     Add a bunch of ChangeLog entries
 
@@ -21459,30 +26422,30 @@ Date: Mon Jun 9 19:15:00 2003 +0000
 
 commit 440e7054857a9a6382243f33498b2384f246379d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 9 18:49:19 2003 +0000
+Date:   Mon Jun 9 18:49:19 2003 +0000
 
     Add fc-match program to demonstrate font matching from the command
     line
 
- Makefile.am        | 2 +-
- configure.in       | 1 +
+ Makefile.am         | 2 +-
+ configure.in        | 1 +
  fc-match/.cvsignore | 5 +++++
  3 files changed, 7 insertions(+), 1 deletion(-)
 
 commit 947afeb566e738de3980c8c8751358ecfebdba25
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 9 17:31:03 2003 +0000
+Date:   Mon Jun 9 17:31:03 2003 +0000
 
     Optimization in FcLangSetIndex was broken, occasionally returning
     a pointer
-       to the wrong location on miss
+        to the wrong location on miss
 
  src/fclang.c | 21 +++++++--------------
  1 file changed, 7 insertions(+), 14 deletions(-)
 
 commit 8bc4bc134aac8889125afd292e66c0bb9864d8d4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 9 16:53:31 2003 +0000
+Date:   Mon Jun 9 16:53:31 2003 +0000
 
     Add fc-match program
 
@@ -21494,7 +26457,7 @@ Date:   Mon Jun 9 16:53:31 2003 +0000
 
 commit 6d3a90a41c63d479e3a109790a4ac466ee992478
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 31 21:07:01 2003 +0000
+Date:   Sat May 31 21:07:01 2003 +0000
 
     (Bug 85) add support for culmus fonts
 
@@ -21503,39 +26466,36 @@ Date: Sat May 31 21:07:01 2003 +0000
 
 commit 86b1243193a1cbab3286ee97d2543bfc841a575a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 31 14:58:41 2003 +0000
+Date:   Sat May 31 14:58:41 2003 +0000
 
     (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly (Bug 88) Fix
     usage info
-       on non-long option systems (Tim Mooney)
+        on non-long option systems (Tim Mooney)
 
- ChangeLog            |  4 ++++
- fc-cache/Makefile.am  |  4 ++--
- fc-cache/fc-cache.1   | 51
- +++++++++++++++++++++++++++++++++++++++++++++++++++
- fc-cache/fc-cache.c   | 19 ++++++++++++++++---
- fc-cache/fc-cache.man | 45 ---------------------------------------------
- fc-list/Makefile.am   |  4 ++--
- fc-list/fc-list.1     | 37 +++++++++++++++++++++++++++++++++++++
- fc-list/fc-list.c     | 11 +++++++++++
- fc-list/fc-list.man   | 36 ------------------------------------
- 9 files changed, 123 insertions(+), 88 deletions(-)
+ ChangeLog                             |  4 ++++
+ fc-cache/Makefile.am                  |  4 ++--
+ fc-cache/{fc-cache.man => fc-cache.1} |  8 +++++++-
+ fc-cache/fc-cache.c                   | 19 ++++++++++++++++---
+ fc-list/Makefile.am                   |  4 ++--
+ fc-list/{fc-list.man => fc-list.1}    |  3 ++-
+ fc-list/fc-list.c                     | 11 +++++++++++
+ 7 files changed, 44 insertions(+), 9 deletions(-)
 
 commit d4d1e8bc604c98d647d70f9188744b95deba8723
 Author: James Su <suzhe@turbolinux.com.cn>
-Date:  Wed May 28 01:34:38 2003 +0000
+Date:   Wed May 28 01:34:38 2003 +0000
 
     Fix "contains" op for strings and langsets.
 
  fontconfig/fontconfig.h |   6 +++
- src/fccfg.c            |  16 +++++---
- src/fcstr.c            | 103
+ src/fccfg.c             |  16 +++++---
+ src/fcstr.c             | 103
  ++++++++++++++++++++++++++++++++++++++++++++++++
  3 files changed, 119 insertions(+), 6 deletions(-)
 
 commit 53183e66e564c03401237f6fea873733ef326890
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat May 17 02:17:19 2003 +0000
+Date:   Sat May 17 02:17:19 2003 +0000
 
     Fix build error with BDF prop local. Free langset after query
 
@@ -21544,18 +26504,18 @@ Date: Sat May 17 02:17:19 2003 +0000
 
 commit f777f1b35dc13da485ce488ad1d3b84f0c173cd1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 16 16:37:16 2003 +0000
+Date:   Fri May 16 16:37:16 2003 +0000
 
     oops. Left the psfontinfo.weight matching code commented out while
     testing
-       other stuff...
+        other stuff...
 
  src/fcfreetype.c | 2 --
  1 file changed, 2 deletions(-)
 
 commit ecb7c180d068f718c02e80f4282b00c4505a5eb5
 Author: Juliusz Chroboczek <Juliusz.Chroboczek@pps.jussieu.fr>
-Date:  Wed May 14 20:23:24 2003 +0000
+Date:   Wed May 14 20:23:24 2003 +0000
 
     Extract spacing from XLFD atom
 
@@ -21564,18 +26524,18 @@ Date: Wed May 14 20:23:24 2003 +0000
 
 commit 0b7a0da20b24321ef60aee99cd9071a50d78015b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon May 12 20:48:59 2003 +0000
+Date:   Mon May 12 20:48:59 2003 +0000
 
     Use FcIsWidth to share code
     Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid
-       misclassifying some Han fonts as monospaced.
+        misclassifying some Han fonts as monospaced.
 
  src/fcfreetype.c | 27 ++++++---------------------
  1 file changed, 6 insertions(+), 21 deletions(-)
 
 commit 65d1441df89b898dd74ac1f0fba69c83441dba92
 Author: Juliusz Chroboczek <Juliusz.Chroboczek@pps.jussieu.fr>
-Date:  Mon May 12 09:11:10 2003 +0000
+Date:   Mon May 12 09:11:10 2003 +0000
 
     Reinstate SETWIDTH_NAME parsing for legacy fonts, disappeared in 1.30.
 
@@ -21584,7 +26544,7 @@ Date:   Mon May 12 09:11:10 2003 +0000
 
 commit 0f362ad520e61e096c887f9374a485c3df32655a
 Author: Juliusz Chroboczek <Juliusz.Chroboczek@pps.jussieu.fr>
-Date:  Mon May 12 09:04:24 2003 +0000
+Date:   Mon May 12 09:04:24 2003 +0000
 
     Generate FC_SIZE and FC_DPI for legacy bitmap fonts
 
@@ -21593,44 +26553,44 @@ Date: Mon May 12 09:04:24 2003 +0000
 
 commit d47c9d6efec6c3c086efc187c68d79ca0c077dfa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed May 7 16:13:24 2003 +0000
+Date:   Wed May 7 16:13:24 2003 +0000
 
     Add filename-based accept/reject to ammend available fonts.
     change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for older
-       FreeType releases.
+        FreeType releases.
 
- src/fccache.c   | 18 ++++++-----
- src/fccfg.c     | 96
+ src/fccache.c    | 18 ++++++-----
+ src/fccfg.c      | 96
  +++++++++++++++++++++++++++++++++++++++++++++++++++++---
- src/fcdir.c     | 60 ++++++++++++++++++++++++++---------
+ src/fcdir.c      | 60 ++++++++++++++++++++++++++---------
  src/fcfreetype.c |  2 +-
- src/fcint.h     | 40 +++++++++++++++++++++--
- src/fcxml.c     | 46 ++++++++++++++++++++++++++-
+ src/fcint.h      | 40 +++++++++++++++++++++--
+ src/fcxml.c      | 46 ++++++++++++++++++++++++++-
  6 files changed, 232 insertions(+), 30 deletions(-)
 
 commit f98ecf63395fc62a6ee2a24741e09fb5940be3aa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 6 14:26:34 2003 +0000
+Date:   Tue May 6 14:26:34 2003 +0000
 
     Remove 0b82 and Tamil numbers from tamil orthography (Jungshik Shin
-       <jshin@mailaps.org>)
+        <jshin@mailaps.org>)
 
  fc-lang/ta.orth | 7 +++++--
  1 file changed, 5 insertions(+), 2 deletions(-)
 
 commit 8ef6a58cb071396630cf05ec857f8c90524752f9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 22:58:29 2003 +0000
+Date:   Sun May 4 22:58:29 2003 +0000
 
     Add more .cvsignore entries
 
- .cvsignore    | 1 +
+ .cvsignore     | 1 +
  src/.cvsignore | 1 +
  2 files changed, 2 insertions(+)
 
 commit 3018151753821434135c0c17873764f3283fcc50
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 22:57:00 2003 +0000
+Date:   Sun May 4 22:57:00 2003 +0000
 
     Add more .cvsignore entries
 
@@ -21639,21 +26599,21 @@ Date: Sun May 4 22:57:00 2003 +0000
 
 commit 7769c3213dc832f7643660d6aab5fade96cd57c3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 22:53:49 2003 +0000
+Date:   Sun May 4 22:53:49 2003 +0000
 
     Handle Adobe glyph names for fonts which include ADOBE_CUSTOM
     encodings
 
- Makefile.am     |   2 +-
- configure.in    |   1 +
+ Makefile.am      |   2 +-
+ configure.in     |   1 +
  src/fcfreetype.c | 160
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
- src/fcint.h     |  10 ++++
+ src/fcint.h      |  10 ++++
  4 files changed, 170 insertions(+), 3 deletions(-)
 
 commit 83321a017a9586aa4f3ace022a91f69122c08ed8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 22:51:36 2003 +0000
+Date:   Sun May 4 22:51:36 2003 +0000
 
     Add .cvsignore in new fc-glyphname dir
 
@@ -21662,36 +26622,36 @@ Date: Sun May 4 22:51:36 2003 +0000
 
 commit 721d496d7864ff587f51637f578f4b35d501d091
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun May 4 22:50:17 2003 +0000
+Date:   Sun May 4 22:50:17 2003 +0000
 
     Add fc-glyphname to compute hash tables for Adobe glyph name to UCS4
-       conversion functions
+        conversion functions
 
- fc-glyphname/Makefile.am       |   42 +
- fc-glyphname/fc-glyphname.c    |  287 +++
+ fc-glyphname/Makefile.am        |   42 +
+ fc-glyphname/fc-glyphname.c     |  287 +++
  fc-glyphname/fcglyphname.tmpl.h |   25 +
- fc-glyphname/glyphlist.txt     | 4291
+ fc-glyphname/glyphlist.txt      | 4291
  +++++++++++++++++++++++++++++++++++++++
- fc-glyphname/zapfdingbats.txt  |  212 ++
+ fc-glyphname/zapfdingbats.txt   |  212 ++
  5 files changed, 4857 insertions(+)
 
 commit 11fec41c0e4211ca4cdcd0b63fb8ef8257e2bd0c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 2 01:11:53 2003 +0000
+Date:   Fri May 2 01:11:53 2003 +0000
 
     Grub through style to find weight/slant/width values when other
     techniques
-       fail
+        fail
 
  src/fcfreetype.c | 228
  +++++++++++++++++++++++++++++++++++++------------------
- src/fcint.h     |   6 ++
- src/fcstr.c     |  74 ++++++++++++++++++
+ src/fcint.h      |   6 ++
+ src/fcstr.c      |  74 ++++++++++++++++++
  3 files changed, 233 insertions(+), 75 deletions(-)
 
 commit 1f71c4d878a74a42b6bf2e6137b32487fcb18b8d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 2 01:11:09 2003 +0000
+Date:   Fri May 2 01:11:09 2003 +0000
 
     Add book constant for book weight
 
@@ -21700,7 +26660,7 @@ Date:   Fri May 2 01:11:09 2003 +0000
 
 commit ad293de0041230d530c5b3d2be56690db49e4510
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 2 01:09:57 2003 +0000
+Date:   Fri May 2 01:09:57 2003 +0000
 
     Add FC_WEIGHT_BOOK as weight 75
 
@@ -21709,7 +26669,7 @@ Date:   Fri May 2 01:09:57 2003 +0000
 
 commit a6a66da0adfc6c7899b61eb6531d14f794d25d94
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Thu May 1 16:20:27 2003 +0000
+Date:   Thu May 1 16:20:27 2003 +0000
 
     Fix expat function check.
 
@@ -21718,7 +26678,7 @@ Date:   Thu May 1 16:20:27 2003 +0000
 
 commit 700a41281a1712db29cc3b34aa293e9a4680c5c3
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Thu May 1 16:15:28 2003 +0000
+Date:   Thu May 1 16:15:28 2003 +0000
 
     Check for an expat function that won't be there if expat is too old.
 
@@ -21727,18 +26687,18 @@ Date: Thu May 1 16:15:28 2003 +0000
 
 commit 3760a63825f931b7d5ef44b991c83f597b50f1a4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 1 14:31:04 2003 +0000
+Date:   Thu May 1 14:31:04 2003 +0000
 
     Add demi and book postscript weight names. Allow spaces in postscript
     and X
-       matching
+        matching
 
  src/fcfreetype.c | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 commit 1af9b7b4d945b1f15ea5c2d9a20cfecef4f3e199
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 30 15:17:42 2003 +0000
+Date:   Wed Apr 30 15:17:42 2003 +0000
 
     Typo in bitstream foundry name
 
@@ -21747,30 +26707,30 @@ Date: Wed Apr 30 15:17:42 2003 +0000
 
 commit 70ee88099eac5cb5f75b392dc38ce16852f3b0bd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 24 17:31:03 2003 +0000
+Date:   Thu Apr 24 17:31:03 2003 +0000
 
     Debug output for unknown ps weight names. ignore italic_angle for
     PS fonts
-       as FreeType already checks that
+        as FreeType already checks that
 
  src/fcfreetype.c | 15 +++++++++++++--
  1 file changed, 13 insertions(+), 2 deletions(-)
 
 commit f45d39b1fda93c949f4625a9fcee0c482b5cacd7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 24 15:29:33 2003 +0000
+Date:   Thu Apr 24 15:29:33 2003 +0000
 
     FcFontList broken when presented a charset - was comparing inclusion
     in the
-       wrong direction
+        wrong direction
 
- src/fccfg.c    |  8 ++++----
+ src/fccfg.c     |  8 ++++----
  src/fccharset.c | 15 +++++++++++++++
  2 files changed, 19 insertions(+), 4 deletions(-)
 
 commit 7d5c134a0a74b97438f3cdcc18ba44661d7253bf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 23 04:45:39 2003 +0000
+Date:   Wed Apr 23 04:45:39 2003 +0000
 
     Oops. Missing newline in .cvsignore
 
@@ -21779,19 +26739,19 @@ Date: Wed Apr 23 04:45:39 2003 +0000
 
 commit 8c87b4293fe27398d9c6500189a1f72741afdff3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 23 04:09:28 2003 +0000
+Date:   Wed Apr 23 04:09:28 2003 +0000
 
     Fix docs to close sgml tags
 
- ChangeLog                | 8 ++++++++
- doc/fcpattern.fncs       | 1 +
+ ChangeLog                 | 8 ++++++++
+ doc/fcpattern.fncs        | 1 +
  doc/fontconfig-devel.sgml | 1 +
- doc/func.sgml            | 1 +
+ doc/func.sgml             | 1 +
  4 files changed, 11 insertions(+)
 
 commit c92926bf653425fff0291f1070cc7205e91810a0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 23 04:06:18 2003 +0000
+Date:   Wed Apr 23 04:06:18 2003 +0000
 
     Add confdir.sgml to .cvsignore
 
@@ -21800,12 +26760,12 @@ Date: Wed Apr 23 04:06:18 2003 +0000
 
 commit f946755cdb0b0db08debc9f0ee1c2d4f62b484a1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 23 04:05:58 2003 +0000
+Date:   Wed Apr 23 04:05:58 2003 +0000
 
     Use CONFDIR instead of SYSCONFDIR/fonts in manual. Use awk to strip
-       trailing newline instead of leaving CVS file without a newline
-       (which
-       will break at some point)
+        trailing newline instead of leaving CVS file without a newline
+        (which
+        will break at some point)
 
  doc/Makefile.am     | 3 ++-
  doc/confdir.sgml.in | 2 +-
@@ -21813,41 +26773,41 @@ Date: Wed Apr 23 04:05:58 2003 +0000
 
 commit 8b290c54761ee020b0bc197c7ea06366e73be66c
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Wed Apr 23 00:40:24 2003 +0000
+Date:   Wed Apr 23 00:40:24 2003 +0000
 
     Got rid of the newline at the end of the file. It's yucky but,
     I'm not sure
-       how else to get rid of the newline in the output.
+        how else to get rid of the newline in the output.
 
  doc/confdir.sgml.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 4b4f42ab58714fda3214fcb4f3c9e566ebd25100
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Wed Apr 23 00:08:03 2003 +0000
+Date:   Wed Apr 23 00:08:03 2003 +0000
 
     Getting closer to fixing /etc/fonts hard-coding.
 
- configure.in       |  1 -
- doc/Makefile.am     | 4 ++++
+ configure.in        |  1 -
+ doc/Makefile.am     |  4 ++++
  doc/confdir.sgml.in | 25 +++++++++++++++++++++++++
  3 files changed, 29 insertions(+), 1 deletion(-)
 
 commit 27de1f430a3d95c64bc989ae1c7bf1198d059b4c
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Tue Apr 22 23:34:50 2003 +0000
+Date:   Tue Apr 22 23:34:50 2003 +0000
 
     Testing syncmail yet again.
 
- .cvsignore              |  2 +-
- configure.in            |  1 +
- doc/Makefile.am         | 12 ++++++------
+ .cvsignore               |  2 +-
+ configure.in             |  1 +
+ doc/Makefile.am          | 12 ++++++------
  doc/fontconfig-user.sgml |  9 +++++----
  4 files changed, 13 insertions(+), 11 deletions(-)
 
 commit 993ffcdd0cb1ab956a456243241ae96eb2b398d1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Apr 22 16:53:18 2003 +0000
+Date:   Tue Apr 22 16:53:18 2003 +0000
 
     Fix autogen.sh to work with newer automakes
 
@@ -21856,7 +26816,7 @@ Date:   Tue Apr 22 16:53:18 2003 +0000
 
 commit 5f84b65a26073141e02152d3e5889fb7cfe459a2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Apr 22 06:27:27 2003 +0000
+Date:   Tue Apr 22 06:27:27 2003 +0000
 
     Handle pattern elements moving during multiple edits
 
@@ -21865,17 +26825,17 @@ Date: Tue Apr 22 06:27:27 2003 +0000
 
 commit 781f10486df22a422b92114ad438d4d8e74c9b93
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Apr 21 16:12:22 2003 +0000
+Date:   Mon Apr 21 16:12:22 2003 +0000
 
     Update to version 2.2.0
 
- configure.in           | 2 +-
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 4 ++--
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 commit 8eb4a52ed8ec96efb784a9cab5a21ba20b27733a
 Author: Noah Levitt <nlevitt@gmail.com>
-Date:  Mon Apr 21 06:17:23 2003 +0000
+Date:   Mon Apr 21 06:17:23 2003 +0000
 
     Fixed variable name mistake.
 
@@ -21884,7 +26844,7 @@ Date:   Mon Apr 21 06:17:23 2003 +0000
 
 commit 965f77940cbe9743f0f57f8333c49708d3f3dd8c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Apr 20 04:44:09 2003 +0000
+Date:   Sun Apr 20 04:44:09 2003 +0000
 
     From James Su -- only part of page 0xff is Latin
 
@@ -21893,28 +26853,28 @@ Date: Sun Apr 20 04:44:09 2003 +0000
 
 commit 29d961a28e231302683577328ed4724319805a7f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 18 15:56:05 2003 +0000
+Date:   Fri Apr 18 15:56:05 2003 +0000
 
     Guard calls to FT_Get_BDF_Property to avoid freetype jumping
     through null
-       pointer
+        pointer
 
  src/fcfreetype.c | 12 +++++++++---
  1 file changed, 9 insertions(+), 3 deletions(-)
 
 commit 3a30abdb84ff973be86d4f75ee2fd54099f32ef1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 17 21:50:24 2003 +0000
+Date:   Thu Apr 17 21:50:24 2003 +0000
 
     Pass FONTCONFIG_PATH in arguments to get expanded
 
  src/Makefile.am | 1 +
- src/fccfg.c    | 4 ----
+ src/fccfg.c     | 4 ----
  2 files changed, 1 insertion(+), 4 deletions(-)
 
 commit 2b2f2a714a6aa5a3fe451f44f85afc67ac921e36
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 17 21:29:12 2003 +0000
+Date:   Thu Apr 17 21:29:12 2003 +0000
 
     BDF properties not available until FreeType 2.1.4
 
@@ -21923,30 +26883,30 @@ Date: Thu Apr 17 21:29:12 2003 +0000
 
 commit 12d49d3cf48a145189af5e27d88bdf4858d5c2b6
 Author: Colin Walters <walters@verbum.org>
-Date:  Thu Apr 17 17:43:04 2003 +0000
+Date:   Thu Apr 17 17:43:04 2003 +0000
 
     Remove some unused variables, and initialize some other ones so
     gcc doesn't
-       warn us.
+        warn us.
 
- ChangeLog      | 5 +++++
+ ChangeLog       | 5 +++++
  doc/edit-sgml.c | 1 +
- src/fclang.c   | 6 ++----
+ src/fclang.c    | 6 ++----
  3 files changed, 8 insertions(+), 4 deletions(-)
 
 commit 996580dce5cd74dfdfe18c9f20e0a27817e5ed1b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Apr 17 15:47:34 2003 +0000
+Date:   Thu Apr 17 15:47:34 2003 +0000
 
     Solaris porting fixes
 
- configure.in     | 4 ++--
+ configure.in      | 4 ++--
  fc-lang/fc-lang.c | 4 ++--
  2 files changed, 4 insertions(+), 4 deletions(-)
 
 commit b1e98ed99ead0a4c34ebf2554ea6076bebf621a4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 22:04:42 2003 +0000
+Date:   Wed Apr 16 22:04:42 2003 +0000
 
     Add Vera support to default configuration
 
@@ -21955,17 +26915,17 @@ Date: Wed Apr 16 22:04:42 2003 +0000
 
 commit e2925d7dc2877fba2112eb3de9853f3e889362c3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 21:50:51 2003 +0000
+Date:   Wed Apr 16 21:50:51 2003 +0000
 
     bump version to 2.1.94
 
- configure.in           | 2 +-
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit ab06f005f66e12b46a5f1274eafa992be20a1f72
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 18:49:28 2003 +0000
+Date:   Wed Apr 16 18:49:28 2003 +0000
 
     add some changelog entries
 
@@ -21974,7 +26934,7 @@ Date:   Wed Apr 16 18:49:28 2003 +0000
 
 commit 0e7a434783b28e9e954d3136195af7ba622c459d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 18:08:47 2003 +0000
+Date:   Wed Apr 16 18:08:47 2003 +0000
 
     Search through the BDF properties for width and foundry information
 
@@ -21984,20 +26944,20 @@ Date: Wed Apr 16 18:08:47 2003 +0000
 
 commit 2e2121f910dd84b0731985570d93cd31ae2edb61
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 16:19:38 2003 +0000
+Date:   Wed Apr 16 16:19:38 2003 +0000
 
     Move foundry detection data into fcfreetype.c (which is getting rather
-       large at this point)
+        large at this point)
 
  src/Makefile.am  |   2 +-
- src/data.h      |  77 ------------------------
+ src/data.h       |  77 ------------------------
  src/fcfreetype.c | 177
  ++++++++++++++++++++++++++++++++++++++++++-------------
  3 files changed, 137 insertions(+), 119 deletions(-)
 
 commit 4515cf329ea6f5f4ddbfdee3bc275ba7b768330c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Apr 16 16:18:27 2003 +0000
+Date:   Wed Apr 16 16:18:27 2003 +0000
 
     bool was misdeclared in DTD
 
@@ -22006,24 +26966,24 @@ Date: Wed Apr 16 16:18:27 2003 +0000
 
 commit 3f7653c2badeb426f938bafe1a82c2917b7ea125
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Apr 15 23:38:06 2003 +0000
+Date:   Tue Apr 15 23:38:06 2003 +0000
 
     Fix unary operator parsing. Add floor, ceil, trunc and round unary
-       operators
+        operators
 
  fontconfig/fontconfig.h |   2 +
- fonts.dtd              |   6 ++-
- src/Makefile.am        |   2 +-
- src/fccfg.c            |  71 ++++++++++++++++++++++++++++++++
- src/fcdbg.c            |  20 +++++++++
- src/fcint.h            |   3 +-
- src/fcxml.c            | 107
+ fonts.dtd               |   6 ++-
+ src/Makefile.am         |   2 +-
+ src/fccfg.c             |  71 ++++++++++++++++++++++++++++++++
+ src/fcdbg.c             |  20 +++++++++
+ src/fcint.h             |   3 +-
+ src/fcxml.c             | 107
  ++++++++++++++++++++++++++++++++++++++----------
  7 files changed, 187 insertions(+), 24 deletions(-)
 
 commit 52253696cd2779bd9040457fbd157bbe75895ed6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Apr 15 17:01:39 2003 +0000
+Date:   Tue Apr 15 17:01:39 2003 +0000
 
     Clean up ps font weight matching and check for NULL
 
@@ -22033,11 +26993,11 @@ Date: Tue Apr 15 17:01:39 2003 +0000
 
 commit 2ae95e77f7d50d65ca414a5d5a1065aa9f2581ed
 Author: Juliusz Chroboczek <Juliusz.Chroboczek@pps.jussieu.fr>
-Date:  Fri Apr 11 23:45:59 2003 +0000
+Date:   Fri Apr 11 23:45:59 2003 +0000
 
     Implemented foundry generation for Type 1 and TrueType
 
- src/data.h      | 77
+ src/data.h       | 77
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  src/fcfreetype.c | 73
  +++++++++++++++++++++++++++++++++++++++++++++++++----
@@ -22045,28 +27005,28 @@ Date: Fri Apr 11 23:45:59 2003 +0000
 
 commit 0a557ec372a7dddede4edec3ac77caf328fd12f5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 11 23:00:51 2003 +0000
+Date:   Fri Apr 11 23:00:51 2003 +0000
 
     update version number to 2.1.93
 
- configure.in           | 2 +-
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 7f31f3781597e035b8432e0ce1c2894835b4988a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 11 22:53:53 2003 +0000
+Date:   Fri Apr 11 22:53:53 2003 +0000
 
     Run fc-cache from local dir instead of install dir to help LFS
     installs (I
-       hope)
+        hope)
 
  Makefile.am | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 9f2bcb3e41f30dde64a288a4741ff169f8848dad
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 11 22:24:23 2003 +0000
+Date:   Fri Apr 11 22:24:23 2003 +0000
 
     Switch to locale-independent string compare function
 
@@ -22075,18 +27035,18 @@ Date: Fri Apr 11 22:24:23 2003 +0000
 
 commit d6ea834746a7b2758ea5b89467c0e64446840ca4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 11 22:17:11 2003 +0000
+Date:   Fri Apr 11 22:17:11 2003 +0000
 
     Bug #46, #47 fontconfig should retrieve type 1 font information from
-       FontInfo dictionary Patch provided by g2@magestudios.net (Gerard
-       Escalante)
+        FontInfo dictionary Patch provided by g2@magestudios.net (Gerard
+        Escalante)
 
  src/fcfreetype.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 44 insertions(+)
 
 commit cc30f9ca548661d0d9eb07216d261457db58ca02
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Apr 8 05:00:25 2003 +0000
+Date:   Tue Apr 8 05:00:25 2003 +0000
 
     remove -u option to docbook2man which was trashing the .html file
 
@@ -22095,7 +27055,7 @@ Date:   Tue Apr 8 05:00:25 2003 +0000
 
 commit 8c8caabdf008f4673bb1d5543ef1e49b02a5c2e9
 Author: Colin Walters <walters@verbum.org>
-Date:  Tue Apr 8 03:58:57 2003 +0000
+Date:   Tue Apr 8 03:58:57 2003 +0000
 
     *** empty log message ***
 
@@ -22104,7 +27064,7 @@ Date:   Tue Apr 8 03:58:57 2003 +0000
 
 commit 15b49a7fbeafa69e0cc02d691a5794f9d3da4b69
 Author: Colin Walters <walters@verbum.org>
-Date:  Tue Apr 8 03:58:08 2003 +0000
+Date:   Tue Apr 8 03:58:08 2003 +0000
 
     Fix dummy makefile target names when MS_LIB_AVAILABLE isn't set.
 
@@ -22113,7 +27073,7 @@ Date:   Tue Apr 8 03:58:08 2003 +0000
 
 commit ef82cce1d5d6c6a700db4bb2218f47db85bf548d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 4 20:17:40 2003 +0000
+Date:   Fri Apr 4 20:17:40 2003 +0000
 
     update copyright years
 
@@ -22124,7 +27084,7 @@ Date:   Fri Apr 4 20:17:40 2003 +0000
 
 commit 08b5b70dcf04ce61fb505487b774a3731b04e5c1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Apr 4 20:16:33 2003 +0000
+Date:   Fri Apr 4 20:16:33 2003 +0000
 
     Move sample subpixel configuration to local.conf
 
@@ -22134,28 +27094,28 @@ Date: Fri Apr 4 20:16:33 2003 +0000
 
 commit 848d32bd3f141f0c14abfec38d4cf27eedd1f0a5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 28 17:08:35 2003 +0000
+Date:   Fri Mar 28 17:08:35 2003 +0000
 
     Set spacing to mono if every encoded glyph is the same width
 
  fontconfig/fcfreetype.h |  3 +++
- src/fcfreetype.c       | 46
+ src/fcfreetype.c        | 46
  +++++++++++++++++++++++++++++++++++++++++-----
  2 files changed, 44 insertions(+), 5 deletions(-)
 
 commit 7dbeec17388af7d41312cd201bb25306ba1e4bc6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Mar 24 05:03:20 2003 +0000
+Date:   Mon Mar 24 05:03:20 2003 +0000
 
     Wrong pattern for matching font file names. Fix submitted by
-       hjchoe@hancom.com (Choe Hwanjin)
+        hjchoe@hancom.com (Choe Hwanjin)
 
  configure.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit c8582ff72ade8522d545d117641e4afac61382a0
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sat Mar 22 21:28:13 2003 +0000
+Date:   Sat Mar 22 21:28:13 2003 +0000
 
     Changes for Windows:
     Add a fontconfig-zip(.in) script, used to build a binary distribution.
@@ -22165,52 +27125,52 @@ Date: Sat Mar 22 21:28:13 2003 +0000
 
 commit daeed6e048a413a94754fd79f62307ca9be80a43
 Author: Tor Lillqvist <tml@iki.fi>
-Date:  Sat Mar 22 21:25:34 2003 +0000
+Date:   Sat Mar 22 21:25:34 2003 +0000
 
     Changes for Windows:
     On Windows with gcc (a.k.a. mingw) build as a DLL.
     We don't want to hardcode the fonts.conf file location in the DLL,
     so we
-       look up the DLL location at run-time in a DllMain() function. The
-       fonts.conf location is deduced from that.
+        look up the DLL location at run-time in a DllMain() function. The
+        fonts.conf location is deduced from that.
     The colon can't be used as path separator on Windows, semicolon
     is used
-       instead. File path components can be separated with either
-       slash or
-       backslash. Absolute paths can also begin with a drive letter.
+        instead. File path components can be separated with either
+        slash or
+        backslash. Absolute paths can also begin with a drive letter.
     Add internal function FcStrLastSlash that strrchr's the last slash, or
-       backslash on Windows.
+        backslash on Windows.
     There is no link() on Windows. For atomicity checks, mkdir a lock
     directory
-       instead.
+        instead.
     In addition to HOME, also look for USERPROFILE.
     Recognize the special font directory token WINDOWSFONTDIR, to use the
-       system's font directory.
+        system's font directory.
     Remove the fontconfig-def.cpp that was obsolete. Add
     fontconfig.def(.in),
-       without internal functions.
+        without internal functions.
     Add a fontconfig-zip(.in) script, used to build a binary distribution.
 
- ChangeLog             |  32 ++++++++++
- Makefile.am           |   3 +-
- configure.in          |  28 +++++++-
- fc-lang/fc-lang.man   |   6 +-
- src/Makefile.am       |  55 +++++++++++++++-
- src/fcatomic.c                |  23 ++++++-
- src/fccache.c         |  21 +++++-
- src/fccfg.c           |  90 ++++++++++++++++++++++++--
- src/fcint.h           |   9 +++
- src/fcstr.c           |  23 ++++++-
- src/fcxml.c           |  30 +++++++++
+ ChangeLog              |  32 ++++++++++
+ Makefile.am            |   3 +-
+ configure.in           |  28 +++++++-
+ fc-lang/fc-lang.man    |   6 +-
+ src/Makefile.am        |  55 +++++++++++++++-
+ src/fcatomic.c         |  23 ++++++-
+ src/fccache.c          |  21 +++++-
+ src/fccfg.c            |  90 ++++++++++++++++++++++++--
+ src/fcint.h            |   9 +++
+ src/fcstr.c            |  23 ++++++-
+ src/fcxml.c            |  30 +++++++++
  src/fontconfig-def.cpp | 170
  -------------------------------------------------
- src/fontconfig.def.in | 161
+ src/fontconfig.def.in  | 161
  ++++++++++++++++++++++++++++++++++++++++++++++
  13 files changed, 464 insertions(+), 187 deletions(-)
 
 commit cc9dd09816f717fc678d097a69f793dca1b1eef0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 22 01:55:00 2003 +0000
+Date:   Sat Mar 22 01:55:00 2003 +0000
 
     switch // comment
 
@@ -22219,17 +27179,17 @@ Date: Sat Mar 22 01:55:00 2003 +0000
 
 commit ddde1797a900b818b96fc0818d9df0efacb5ac69
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 20 02:01:01 2003 +0000
+Date:   Thu Mar 20 02:01:01 2003 +0000
 
     strtod under some locales requires digits before the decimal
 
  doc/fontconfig-user.sgml | 8 ++++++--
- fonts.conf.in           | 2 +-
+ fonts.conf.in            | 2 +-
  2 files changed, 7 insertions(+), 3 deletions(-)
 
 commit f4007a672834df25f0f9b6a918c135d2b79a3784
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 20 02:00:15 2003 +0000
+Date:   Thu Mar 20 02:00:15 2003 +0000
 
     Avoid crashing on empty test/edit lists
 
@@ -22238,7 +27198,7 @@ Date:   Thu Mar 20 02:00:15 2003 +0000
 
 commit 3fbd50e48679c15c24400aaa78c6cd266317a784
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Mar 20 01:59:28 2003 +0000
+Date:   Thu Mar 20 01:59:28 2003 +0000
 
     bogus libtoolize --version | libtoolize --version
 
@@ -22247,18 +27207,18 @@ Date: Thu Mar 20 01:59:28 2003 +0000
 
 commit 1b16ef20c9c7dd5c3e861a392e886cbe6c046306
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 18 08:03:42 2003 +0000
+Date:   Tue Mar 18 08:03:42 2003 +0000
 
     FcCharSetIsSubset errored on fonts with subsets in early blocks
     and extra
-       blocks not present in the second argument
+        blocks not present in the second argument
 
  src/fccharset.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 3910f3221b5276523ff1e6fea10aecabfa427f0a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 14 00:16:56 2003 +0000
+Date:   Fri Mar 14 00:16:56 2003 +0000
 
     Fix configure arguments (bug 45)
 
@@ -22267,25 +27227,25 @@ Date: Fri Mar 14 00:16:56 2003 +0000
 
 commit 81fa16c3366a701255f4e52cdfd716dd06253748
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 12 22:16:43 2003 +0000
+Date:   Wed Mar 12 22:16:43 2003 +0000
 
     add font widths and extend weight from OS/2 table
 
  fontconfig/fontconfig.h | 44 ++++++++++++++++++++++++++++------------
- src/fcdefault.c        |  3 +++
- src/fcfreetype.c       | 54
+ src/fcdefault.c         |  3 +++
+ src/fcfreetype.c        | 54
  ++++++++++++++++++++++++++++++++++++++++++++-----
- src/fcmatch.c          | 29 +++++++++++++++++---------
- src/fcname.c           | 18 +++++++++++++++++
+ src/fcmatch.c           | 29 +++++++++++++++++---------
+ src/fcname.c            | 18 +++++++++++++++++
  5 files changed, 120 insertions(+), 28 deletions(-)
 
 commit a8386abc916c6ce4b0fa0ca3f9f68aa0232d4824
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 12 22:15:39 2003 +0000
+Date:   Wed Mar 12 22:15:39 2003 +0000
 
     Global cache time checking was using wrong file name and computing
     wrong
-       count of fonts per file
+        count of fonts per file
 
  src/fccache.c | 10 +++++-----
  src/fcdir.c   |  8 ++++++--
@@ -22294,7 +27254,7 @@ Date:   Wed Mar 12 22:15:39 2003 +0000
 
 commit 89b61da31f88713074fdb396604cd3d8fe7e5ded
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Mar 10 06:56:32 2003 +0000
+Date:   Mon Mar 10 06:56:32 2003 +0000
 
     Ship manual
 
@@ -22303,28 +27263,28 @@ Date: Mon Mar 10 06:56:32 2003 +0000
 
 commit dbe9a11ea4a1ff2b044f3e24a3ef9de27370a033
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Sat Mar 8 01:03:32 2003 +0000
+Date:   Sat Mar 8 01:03:32 2003 +0000
 
     Updated RPM specfile for 2.1.92 and fixed remaining known spec
     file issues
 
- ChangeLog         |  8 ++++++++
+ ChangeLog          |  8 ++++++++
  fontconfig.spec.in | 19 +++++++++++++++++--
  2 files changed, 25 insertions(+), 2 deletions(-)
 
 commit 6348213702153f1097c648ae575bcc89dbb259dc
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 21:04:52 2003 +0000
+Date:   Fri Mar 7 21:04:52 2003 +0000
 
     Bump version to 2.1.92
 
- configure.in           | 2 +-
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit dcd1f27185958b000f12e0390970c925f4386598
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:51:17 2003 +0000
+Date:   Fri Mar 7 20:51:17 2003 +0000
 
     add version.sgml to .cvsignore
 
@@ -22333,29 +27293,29 @@ Date: Fri Mar 7 20:51:17 2003 +0000
 
 commit ae2c2943648313b41f2d032b72618d11ffdd1772
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:50:44 2003 +0000
+Date:   Fri Mar 7 20:50:44 2003 +0000
 
     Add version number to user doc
 
  doc/fontconfig-user.sgml | 27 +++++++++++++++++----------
- doc/func.sgml           |  1 +
+ doc/func.sgml            |  1 +
  2 files changed, 18 insertions(+), 10 deletions(-)
 
 commit fddb839bba56f5d0ac9e2bd71323d2cc488155b8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:45:43 2003 +0000
+Date:   Fri Mar 7 20:45:43 2003 +0000
 
     Add version number to documentation
 
- configure.in             |  1 +
+ configure.in              |  1 +
  doc/fontconfig-devel.sgml | 13 +++----------
- doc/func.sgml            |  4 ++++
- doc/version.sgml.in      | 24 ++++++++++++++++++++++++
+ doc/func.sgml             |  4 ++++
+ doc/version.sgml.in       | 24 ++++++++++++++++++++++++
  4 files changed, 32 insertions(+), 10 deletions(-)
 
 commit 4484582ebaaaea4982248a6141d87d488ef322bd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:45:20 2003 +0000
+Date:   Fri Mar 7 20:45:20 2003 +0000
 
     wasnt rebuilding most of the docs
 
@@ -22364,7 +27324,7 @@ Date:   Fri Mar 7 20:45:20 2003 +0000
 
 commit 8cfb37394cb80cc7b11133090c99dc1ce31f2695
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:04:13 2003 +0000
+Date:   Fri Mar 7 20:04:13 2003 +0000
 
     distribute man page
 
@@ -22373,7 +27333,7 @@ Date:   Fri Mar 7 20:04:13 2003 +0000
 
 commit ea3ebacfb8c729fd6fbfb55d27bd3ef43cd4afec
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:03:53 2003 +0000
+Date:   Fri Mar 7 20:03:53 2003 +0000
 
     note that default mandir is usually wrong
 
@@ -22382,7 +27342,7 @@ Date:   Fri Mar 7 20:03:53 2003 +0000
 
 commit bdc0fd54344cd161f1507aa53f3d676569d63f08
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 20:03:23 2003 +0000
+Date:   Fri Mar 7 20:03:23 2003 +0000
 
     get manuals to install with automake-1.4
 
@@ -22391,7 +27351,7 @@ Date:   Fri Mar 7 20:03:23 2003 +0000
 
 commit 164301051d714b39e2a5b5d72cab2ca7ecb9e57a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 19:41:34 2003 +0000
+Date:   Fri Mar 7 19:41:34 2003 +0000
 
     Create fontconfig-user.html
 
@@ -22400,7 +27360,7 @@ Date:   Fri Mar 7 19:41:34 2003 +0000
 
 commit 251c36c1b311515aae0fff1ab9d80e2843e3f426
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 19:39:57 2003 +0000
+Date:   Fri Mar 7 19:39:57 2003 +0000
 
     Add more to .cvsignore
 
@@ -22409,38 +27369,38 @@ Date: Fri Mar 7 19:39:57 2003 +0000
 
 commit b219ac6b99672506965f3c2168e2af1cd58d28e7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 19:37:16 2003 +0000
+Date:   Fri Mar 7 19:37:16 2003 +0000
 
     Make documentation build
 
- doc/Makefile.am         | 172
+ doc/Makefile.am          | 172
  +++++++++++++++++++++++++++--------------------
- doc/edit-sgml.c         |   2 +-
+ doc/edit-sgml.c          |   2 +-
  doc/fontconfig-user.sgml |   2 +-
  3 files changed, 102 insertions(+), 74 deletions(-)
 
 commit 39381776a4c0cf4077a31f3a493cbd37420cec71
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 19:01:41 2003 +0000
+Date:   Fri Mar 7 19:01:41 2003 +0000
 
     Finish reformatting developer documentation
 
- doc/Makefile.am          |  16 +-
- doc/edit-sgml.c          |  17 +-
- doc/fcatomic.fncs        |  93 +++++++++
- doc/fcconfig.fncs        | 153 ++++++++-------
- doc/fcfile.fncs          |  78 ++++++++
- doc/fcfreetype.fncs      |  69 +++++++
- doc/fcinit.fncs          |  78 ++++++++
- doc/fcstring.fncs        | 150 +++++++++++++++
- doc/fcstrset.fncs        | 104 ++++++++++
+ doc/Makefile.am           |  16 +-
+ doc/edit-sgml.c           |  17 +-
+ doc/fcatomic.fncs         |  93 +++++++++
+ doc/fcconfig.fncs         | 153 ++++++++-------
+ doc/fcfile.fncs           |  78 ++++++++
+ doc/fcfreetype.fncs       |  69 +++++++
+ doc/fcinit.fncs           |  78 ++++++++
+ doc/fcstring.fncs         | 150 +++++++++++++++
+ doc/fcstrset.fncs         | 104 ++++++++++
  doc/fontconfig-devel.sgml | 475
  +++++++++++-----------------------------------
  10 files changed, 795 insertions(+), 438 deletions(-)
 
 commit 90bdcf6051472443690294e04df1ea1f5d0d1d19
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 08:52:27 2003 +0000
+Date:   Fri Mar 7 08:52:27 2003 +0000
 
     Add copyright
 
@@ -22449,7 +27409,7 @@ Date:   Fri Mar 7 08:52:27 2003 +0000
 
 commit 2df0c66230fb86a784414b5db803d32d1a083b3a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 08:51:14 2003 +0000
+Date:   Fri Mar 7 08:51:14 2003 +0000
 
     Use <parameter> tags. Add copyrights
 
@@ -22462,46 +27422,46 @@ Date: Fri Mar 7 08:51:14 2003 +0000
 
 commit bfc2dc3ac4b1eb5f0f9f0dfae7abac7e77e28061
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 08:44:32 2003 +0000
+Date:   Fri Mar 7 08:44:32 2003 +0000
 
     Add lots more function documentation
 
- doc/Makefile.am          |  16 ++-
- doc/fcblanks.fncs        |  58 +++++++++
- doc/fccharset.fncs       |  23 ++++
- doc/fcconfig.fncs        | 279
+ doc/Makefile.am           |  16 ++-
+ doc/fcblanks.fncs         |  58 +++++++++
+ doc/fccharset.fncs        |  23 ++++
+ doc/fcconfig.fncs         | 279
  +++++++++++++++++++++++++++++++++++++++++++
- doc/fcconstant.fncs      |  58 +++++++++
- doc/fcfontset.fncs       |  49 ++++++++
- doc/fcmatrix.fncs        |  23 ++++
- doc/fcobjectset.fncs     |  61 ++++++++++
- doc/fcobjecttype.fncs    |  48 ++++++++
- doc/fcpattern.fncs       |  23 ++++
- doc/fcvalue.fncs         |  23 ++++
+ doc/fcconstant.fncs       |  58 +++++++++
+ doc/fcfontset.fncs        |  49 ++++++++
+ doc/fcmatrix.fncs         |  23 ++++
+ doc/fcobjectset.fncs      |  61 ++++++++++
+ doc/fcobjecttype.fncs     |  48 ++++++++
+ doc/fcpattern.fncs        |  23 ++++
+ doc/fcvalue.fncs          |  23 ++++
  doc/fontconfig-devel.sgml | 292
  +++-------------------------------------------
  12 files changed, 677 insertions(+), 276 deletions(-)
 
 commit 22671e25510e77af1a8f2b569314ba2de1c93353
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 07:12:51 2003 +0000
+Date:   Fri Mar 7 07:12:51 2003 +0000
 
     Rework documentation to build man pages for each function
 
- doc/Makefile.am          |   84 ++-
- doc/fccharset.fncs       |  144 +++++
- doc/fcmatrix.fncs        |  100 ++++
- doc/fcpattern.fncs       |  287 ++++++++++
- doc/fcvalue.fncs         |   17 +
+ doc/Makefile.am           |   84 ++-
+ doc/fccharset.fncs        |  144 +++++
+ doc/fcmatrix.fncs         |  100 ++++
+ doc/fcpattern.fncs        |  287 ++++++++++
+ doc/fcvalue.fncs          |   17 +
  doc/fontconfig-devel.sgml | 1355
  ++++++++++++++++++---------------------------
  doc/fontconfig-user.sgml  |  396 ++++++-------
- doc/func.sgml            |   61 ++
+ doc/func.sgml             |   61 ++
  8 files changed, 1411 insertions(+), 1033 deletions(-)
 
 commit 5e1f56b567c0226da9ab650ee4809e16be2ae8eb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 7 06:17:36 2003 +0000
+Date:   Fri Mar 7 06:17:36 2003 +0000
 
     Add func doc creation program edit-sgml
 
@@ -22511,7 +27471,7 @@ Date:   Fri Mar 7 06:17:36 2003 +0000
 
 commit c92abf78e12502e1d93281e2d4b1404226a6c6b9
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 10:09:57 2003 +0000
+Date:   Wed Mar 5 10:09:57 2003 +0000
 
     Update Changelog
 
@@ -22520,79 +27480,79 @@ Date: Wed Mar 5 10:09:57 2003 +0000
 
 commit a5ae222c2a5f578dff011f11dadb78ecf0734cbb
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 10:08:08 2003 +0000
+Date:   Wed Mar 5 10:08:08 2003 +0000
 
     Added back the configure macro options --disable-docs because
     otherwise
-       fontconfig installs docs into /usr/share/doc/fontconfig (with no
-       version number) unconditionally, causing RPM to fail the build
-       due to
-       _unpackaged_files_terminate_build. We pick up the pregenerated
-       docs
-       with %doc already.
+        fontconfig installs docs into /usr/share/doc/fontconfig (with no
+        version number) unconditionally, causing RPM to fail the build
+        due to
+        _unpackaged_files_terminate_build. We pick up the pregenerated
+        docs
+        with %doc already.
 
  fontconfig.spec.in | 8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)
 
 commit b06766e439ce49f2d50aba7ab812fa0ebb6549e1
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 09:28:08 2003 +0000
+Date:   Wed Mar 5 09:28:08 2003 +0000
 
     Updated rpm specfile changelog and Changelog to reflect today's
     changes
 
- ChangeLog         | 13 ++++++++++++-
+ ChangeLog          | 13 ++++++++++++-
  fontconfig.spec.in |  9 ++++++++-
  2 files changed, 20 insertions(+), 2 deletions(-)
 
 commit fc87206f77a4c1b11c990a6ea4b0d3d4cd5208df
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 09:16:37 2003 +0000
+Date:   Wed Mar 5 09:16:37 2003 +0000
 
     Reordered %files lists to be a bit tidier. Made -devel package own the
-       %{_includedir}/fontconfig directory
+        %{_includedir}/fontconfig directory
 
  fontconfig.spec.in | 9 +++++----
  1 file changed, 5 insertions(+), 4 deletions(-)
 
 commit c674c89bf919fa7f357319a7ce825ba5369ff737
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 09:14:06 2003 +0000
+Date:   Wed Mar 5 09:14:06 2003 +0000
 
     Put %post script in {}'s for tidyness, and change the call to
     fc-cache to
-       use %{_bindir}/fc-cache
+        use %{_bindir}/fc-cache
 
  fontconfig.spec.in | 9 +++++----
  1 file changed, 5 insertions(+), 4 deletions(-)
 
 commit 5283328a6006420cb3382c0dbef55f715996b91c
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 09:10:14 2003 +0000
+Date:   Wed Mar 5 09:10:14 2003 +0000
 
     Changed BuildRequires: lines to use %{_bindir} macro instead of
     hard coded
-       /usr/bin
+        /usr/bin
 
  fontconfig.spec.in | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit 674c09dfbfc3d6d3a014ac018995530159fc157f
 Author: Mike A. Harris <mharris@redhat.com>
-Date:  Wed Mar 5 09:08:41 2003 +0000
+Date:   Wed Mar 5 09:08:41 2003 +0000
 
     Replace commented out %define at top of specfile with a comment
     preceding
-       the freetype2 define, since rpm expands macros in comments. Also
-       remove
-       -j flag from make, as _smp_mflags expands to -jN already.
+        the freetype2 define, since rpm expands macros in comments. Also
+        remove
+        -j flag from make, as _smp_mflags expands to -jN already.
 
  fontconfig.spec.in | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 commit d30f481c4d182db3873fc9caf0e191da3c4955ef
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 07:45:37 2003 +0000
+Date:   Wed Mar 5 07:45:37 2003 +0000
 
     switch vesion to version
 
@@ -22601,7 +27561,7 @@ Date:   Wed Mar 5 07:45:37 2003 +0000
 
 commit d93fb00e8dd757fbdaafd4dd36509c33b7827eb5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 06:09:36 2003 +0000
+Date:   Wed Mar 5 06:09:36 2003 +0000
 
     optimize string compares even more
 
@@ -22610,7 +27570,7 @@ Date:   Wed Mar 5 06:09:36 2003 +0000
 
 commit dc1de232a694c9c431604e701e8f617978a00e0a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 06:09:14 2003 +0000
+Date:   Wed Mar 5 06:09:14 2003 +0000
 
     Use VERSION in fontconfig.pc.in
 
@@ -22619,7 +27579,7 @@ Date:   Wed Mar 5 06:09:14 2003 +0000
 
 commit 83e42969fcd183d99b279cf1e15b6126ce2428eb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:57:11 2003 +0000
+Date:   Wed Mar 5 05:57:11 2003 +0000
 
     No longer using config directory
 
@@ -22628,7 +27588,7 @@ Date:   Wed Mar 5 05:57:11 2003 +0000
 
 commit 94421e4097d84b50fc2da285b57fb00da3592796
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:53:10 2003 +0000
+Date:   Wed Mar 5 05:53:10 2003 +0000
 
     use FcToLower instead of tolower
 
@@ -22637,7 +27597,7 @@ Date:   Wed Mar 5 05:53:10 2003 +0000
 
 commit 55ef7dac64d9202217c6f42e53ddf1549c2da385
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:52:51 2003 +0000
+Date:   Wed Mar 5 05:52:51 2003 +0000
 
     Add FcLangSetPrint
 
@@ -22646,11 +27606,11 @@ Date: Wed Mar 5 05:52:51 2003 +0000
 
 commit 793e946c2f90b5617ec39c64679630b4e2f2d3ad
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:52:31 2003 +0000
+Date:   Wed Mar 5 05:52:31 2003 +0000
 
     AddFcLangSetContains for font listing, add first-letter table for
     language
-       lookups, change RCS tag
+        lookups, change RCS tag
 
  src/fccfg.c  |   8 +--
  src/fcint.h  |   7 +-
@@ -22661,34 +27621,34 @@ Date: Wed Mar 5 05:52:31 2003 +0000
 
 commit 4bd4418ab5e7450e1c1fd3cd136098f1bf37a80c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:51:27 2003 +0000
+Date:   Wed Mar 5 05:51:27 2003 +0000
 
     Change RCS tag
 
- fc-cache/fc-cache.c   | 4 ++--
- fc-cache/fc-cache.man | 4 ++--
- fc-list/fc-list.c     | 4 ++--
- fc-list/fc-list.man   | 4 ++--
- src/fcatomic.c                | 4 ++--
- src/fcblanks.c                | 4 ++--
- src/fccache.c         | 4 ++--
- src/fccharset.c       | 4 ++--
- src/fcdefault.c       | 4 ++--
- src/fcdir.c           | 4 ++--
- src/fcfreetype.c      | 4 ++--
- src/fcfs.c            | 4 ++--
- src/fcinit.c          | 4 ++--
- src/fcmatch.c         | 4 ++--
- src/fcmatrix.c                | 2 +-
- src/fcpat.c           | 4 ++--
- src/fcstr.c           | 4 ++--
- src/fcxml.c           | 4 ++--
+ fc-cache/fc-cache.c    | 4 ++--
+ fc-cache/fc-cache.man  | 4 ++--
+ fc-list/fc-list.c      | 4 ++--
+ fc-list/fc-list.man    | 4 ++--
+ src/fcatomic.c         | 4 ++--
+ src/fcblanks.c         | 4 ++--
+ src/fccache.c          | 4 ++--
+ src/fccharset.c        | 4 ++--
+ src/fcdefault.c        | 4 ++--
+ src/fcdir.c            | 4 ++--
+ src/fcfreetype.c       | 4 ++--
+ src/fcfs.c             | 4 ++--
+ src/fcinit.c           | 4 ++--
+ src/fcmatch.c          | 4 ++--
+ src/fcmatrix.c         | 2 +-
+ src/fcpat.c            | 4 ++--
+ src/fcstr.c            | 4 ++--
+ src/fcxml.c            | 4 ++--
  src/fontconfig-def.cpp | 2 +-
  19 files changed, 36 insertions(+), 36 deletions(-)
 
 commit 0eadb052fb31ad99d77d1997108d316c64d939b8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:48:53 2003 +0000
+Date:   Wed Mar 5 05:48:53 2003 +0000
 
     Add letter ranges to speed lang lookups, change CVS tag
 
@@ -22699,7 +27659,7 @@ Date:   Wed Mar 5 05:48:53 2003 +0000
 
 commit 4c2967f6267b01022c4f3651dcc0072a225f4b01
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 05:48:15 2003 +0000
+Date:   Wed Mar 5 05:48:15 2003 +0000
 
     Change RCS tag, add FcLangSetContains
 
@@ -22710,7 +27670,7 @@ Date:   Wed Mar 5 05:48:15 2003 +0000
 
 commit 0b5c5dd1bed55e32c551c85bce87b511236111b6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 5 04:26:06 2003 +0000
+Date:   Wed Mar 5 04:26:06 2003 +0000
 
     Switch RCS tag label
 
@@ -22895,7 +27855,7 @@ Date:   Wed Mar 5 04:26:06 2003 +0000
 
 commit 7b94ae21fc4c2514b5f14942e432252a2acc33ab
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 4 00:19:09 2003 +0000
+Date:   Tue Mar 4 00:19:09 2003 +0000
 
     Add .cvsignore
 
@@ -22904,46 +27864,46 @@ Date: Tue Mar 4 00:19:09 2003 +0000
 
 commit af82b48c2b8c2037020d928aced582dedd06d8d9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Mar 4 00:14:58 2003 +0000
+Date:   Tue Mar 4 00:14:58 2003 +0000
 
     Allow multiple directories in --with-add-fonts, by default add only
-       scalable fonts from X directory
+        scalable fonts from X directory
 
  configure.in | 48 ++++++++++++++++++++++++++++++++----------------
  1 file changed, 32 insertions(+), 16 deletions(-)
 
 commit bb7743ae7e218ecef31f3023b281939b02967552
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Mar 3 05:47:14 2003 +0000
+Date:   Mon Mar 3 05:47:14 2003 +0000
 
     Update version to 2.1.91
 
- configure.in           | 2 +-
+ configure.in            | 2 +-
  fontconfig/fontconfig.h | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit 22dc6fc6dbae50d6ee2db17a88b5c6e4b3ac30be
 Author: Owen Taylor <otaylor@redhat.com>
-Date:  Mon Mar 3 01:13:11 2003 +0000
+Date:   Mon Mar 3 01:13:11 2003 +0000
 
     Sun Mar 2 14:16:17 2003 Owen Taylor <otaylor@redhat.com>
     fontconfig.spec.in: Improvements from Red Hat spec file.
     {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages.
     docs/*.sgml: SGML fixes.
 
- ChangeLog                |   8 ++
+ ChangeLog                 |   8 ++
  doc/fontconfig-devel.sgml | 237
  +++++++++++++++++++++++-----------------------
  doc/fontconfig-user.sgml  |   8 +-
- fc-cache/Makefile.am     |   2 +
- fc-lang/Makefile.am      |   2 +
- fc-list/Makefile.am      |   2 +
- fontconfig.spec.in       |  86 +++++++++--------
+ fc-cache/Makefile.am      |   2 +
+ fc-lang/Makefile.am       |   2 +
+ fc-list/Makefile.am       |   2 +
+ fontconfig.spec.in        |  86 +++++++++--------
  7 files changed, 191 insertions(+), 154 deletions(-)
 
 commit ee170116da7cbd6e03a4de61c455d717183f46d7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 19:13:00 2003 +0000
+Date:   Sun Mar 2 19:13:00 2003 +0000
 
     Ignore dist files
 
@@ -22952,29 +27912,29 @@ Date: Sun Mar 2 19:13:00 2003 +0000
 
 commit ff3f1f98ed240a4cde511cace7acd09d40548656
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 19:12:23 2003 +0000
+Date:   Sun Mar 2 19:12:23 2003 +0000
 
     Switch back to -version-info for fontconfig as its at minor 0. Add
-       --system-only to fc-cache. Fix FC_VERSION to match product version
-       rather than .so version
+        --system-only to fc-cache. Fix FC_VERSION to match product version
+        rather than .so version
 
- Makefile.am            |    1 -
- configure.in           |   23 +-
- fc-cache/fc-cache.c    |    8 +
- fc-lang/fc-lang.c      |    6 +
+ Makefile.am             |    1 -
+ configure.in            |   23 +-
+ fc-cache/fc-cache.c     |    8 +
+ fc-lang/fc-lang.c       |    6 +
  fontconfig/fontconfig.h |   16 +-
- ltmain.sh              | 6192
+ ltmain.sh               | 6192
  -----------------------------------------------
- src/Makefile.am        |    2 +-
- src/fccfg.c            |   25 +-
- src/fcint.h            |    3 +
- src/fcstr.c            |    8 +-
- src/fcxml.c            |   14 +-
+ src/Makefile.am         |    2 +-
+ src/fccfg.c             |   25 +-
+ src/fcint.h             |    3 +
+ src/fcstr.c             |    8 +-
+ src/fcxml.c             |   14 +-
  11 files changed, 79 insertions(+), 6219 deletions(-)
 
 commit bf0093b72487bd463b9c7700902cd8765534c9c1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 08:46:04 2003 +0000
+Date:   Sun Mar 2 08:46:04 2003 +0000
 
     oops -- X fonts referenced from the wrong place
 
@@ -22983,7 +27943,7 @@ Date:   Sun Mar 2 08:46:04 2003 +0000
 
 commit ad9b233c98d4da08178503f6db9a43708e2a7df0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 08:00:24 2003 +0000
+Date:   Sun Mar 2 08:00:24 2003 +0000
 
     Make default confdir point to sysconfdir
 
@@ -22992,7 +27952,7 @@ Date:   Sun Mar 2 08:00:24 2003 +0000
 
 commit 181f614a96ec1e06c2b9cd9fcbfc304622d6fd18
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 07:36:08 2003 +0000
+Date:   Sun Mar 2 07:36:08 2003 +0000
 
     Add ltmain.sh to the package
 
@@ -23001,27 +27961,27 @@ Date: Sun Mar 2 07:36:08 2003 +0000
 
 commit 8fc10a72ad856216b87daa91a1d52fde70af35dc
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 2 07:28:24 2003 +0000
+Date:   Sun Mar 2 07:28:24 2003 +0000
 
     make dist works now. Update to 2.1.90 in preparation for eventual 2.2
-       release
-
- COPYING            |    4 +-
- ChangeLog          |   20 +
- INSTALL            |   11 +-
- Makefile.am        |    3 +-
- README                     |    6 +-
- configure.in       |   11 +-
- fc-lang/Makefile.am |   2 +
- src/Makefile.am     |   2 +
+        release
+
+ COPYING             |    4 +-
+ ChangeLog           |   20 +
+ INSTALL             |   11 +-
+ Makefile.am         |    3 +-
+ README              |    6 +-
+ configure.in        |   11 +-
+ fc-lang/Makefile.am |    2 +
+ src/Makefile.am     |    2 +
  src/fcknownsets.h   | 1895
  ---------------------------------------------------
- test/Makefile.am    |   3 +
+ test/Makefile.am    |    3 +
  10 files changed, 42 insertions(+), 1915 deletions(-)
 
 commit 4b06670ac92b8b9d2f1ba7036fdfaed5e55ff533
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 1 05:55:48 2003 +0000
+Date:   Sat Mar 1 05:55:48 2003 +0000
 
     Add .cvsignore
 
@@ -23030,40 +27990,40 @@ Date: Sat Mar 1 05:55:48 2003 +0000
 
 commit 44d903783dd0b9b671be9e829c5b9e4e78c681c0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 1 05:55:17 2003 +0000
+Date:   Sat Mar 1 05:55:17 2003 +0000
 
     Add simple tests
 
- Makefile.am       |   2 +-
- configure.in      |   1 +
- test/4x6.pcf      | Bin 0 -> 70952 bytes
- test/8x16.pcf     | Bin 0 -> 21320 bytes
- test/Makefile.am   |  4 +++
- test/fonts.conf.in |  4 +++
- test/out.expected  |  8 +++++
+ Makefile.am        |   2 +-
+ configure.in       |   1 +
+ test/4x6.pcf       | Bin 0 -> 70952 bytes
+ test/8x16.pcf      | Bin 0 -> 21320 bytes
+ test/Makefile.am   |   4 +++
+ test/fonts.conf.in |   4 +++
+ test/out.expected  |   8 +++++
  test/run-test.sh   |  85
  +++++++++++++++++++++++++++++++++++++++++++++++++++++
  8 files changed, 103 insertions(+), 1 deletion(-)
 
 commit 9238fc061d2f89590d578bff69fd3e8fc4b72e2c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 1 05:21:02 2003 +0000
+Date:   Sat Mar 1 05:21:02 2003 +0000
 
     Add --disable-docs flag
 
- configure.in   | 16 ++++++++++++++++
+ configure.in    | 16 ++++++++++++++++
  doc/Makefile.am | 21 ++++++++++++++++-----
  src/Makefile.am |  4 ----
  3 files changed, 32 insertions(+), 9 deletions(-)
 
 commit 0da305f7f85ae0dddc411df53ef077709558d369
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 1 03:06:37 2003 +0000
+Date:   Sat Mar 1 03:06:37 2003 +0000
 
     Switch to docbook and split documentation into pieces
 
- Makefile.am     |    2 +-
- configure.in    |   15 +
+ Makefile.am      |    2 +-
+ configure.in     |   15 +
  doc/Makefile.am  |   35 ++
  src/fontconfig.3 | 1466
  ------------------------------------------------------
@@ -23071,7 +28031,7 @@ Date:   Sat Mar 1 03:06:37 2003 +0000
 
 commit 584ac89a017d30fb337de3d4c038ae2a5b51b3d1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Mar 1 02:23:52 2003 +0000
+Date:   Sat Mar 1 02:23:52 2003 +0000
 
     Reformat documentation into sgml for docbook, split into user/devel
     guides
@@ -23079,12 +28039,12 @@ Date: Sat Mar 1 02:23:52 2003 +0000
  doc/fontconfig-devel.sgml | 1257
  +++++++++++++++++++++++++++++++++++++++++++++
  doc/fontconfig-user.sgml  |  559 ++++++++++++++++++++
- doc/fontconfig.tex       |   55 --
+ doc/fontconfig.tex        |   55 --
  3 files changed, 1816 insertions(+), 55 deletions(-)
 
 commit df43986cdcb38f6462d63618a115618cd9a964bb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 27 08:12:13 2003 +0000
+Date:   Thu Feb 27 08:12:13 2003 +0000
 
     Disable globaladvance for batang fonts
 
@@ -23093,7 +28053,7 @@ Date:   Thu Feb 27 08:12:13 2003 +0000
 
 commit cc168fa6688066baad43d1de577a39c11102947a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 27 08:08:09 2003 +0000
+Date:   Thu Feb 27 08:08:09 2003 +0000
 
     Disable globaladvance for gulim fonts
 
@@ -23102,7 +28062,7 @@ Date:   Thu Feb 27 08:08:09 2003 +0000
 
 commit 148656ed8b3755f0634be14ae60996a1ad493836
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 27 07:04:59 2003 +0000
+Date:   Thu Feb 27 07:04:59 2003 +0000
 
     Stop setting FC_SPACING from font hints. Theyre always wrong
 
@@ -23111,7 +28071,7 @@ Date:   Thu Feb 27 07:04:59 2003 +0000
 
 commit 662b879681f2961b446341638c7bec048edd612a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 27 07:04:31 2003 +0000
+Date:   Thu Feb 27 07:04:31 2003 +0000
 
     Avoid crashing with null expressions in debug code
 
@@ -23120,7 +28080,7 @@ Date:   Thu Feb 27 07:04:31 2003 +0000
 
 commit 2d39321f1e70a8a1a2a68244b25ca0c7e8c0df3c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 26 19:13:17 2003 +0000
+Date:   Wed Feb 26 19:13:17 2003 +0000
 
     Allow double or integer for numeric values in matching
 
@@ -23130,7 +28090,7 @@ Date:   Wed Feb 26 19:13:17 2003 +0000
 
 commit f2aacf1ed9cd34f3d29e0de3ee322ea51a82e40c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 24 17:52:44 2003 +0000
+Date:   Mon Feb 24 17:52:44 2003 +0000
 
     Add remaining .cvsignore files
 
@@ -23143,7 +28103,7 @@ Date:   Mon Feb 24 17:52:44 2003 +0000
 
 commit 8530b30b0bbb1831ab80cda61c104714b66a9da4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 24 17:50:29 2003 +0000
+Date:   Mon Feb 24 17:50:29 2003 +0000
 
     Add .cvsignore file
 
@@ -23152,41 +28112,39 @@ Date: Mon Feb 24 17:50:29 2003 +0000
 
 commit 20fa60c9ae5923487c80ef0449e869a30a8ddc19
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 24 17:18:50 2003 +0000
+Date:   Mon Feb 24 17:18:50 2003 +0000
 
     Switch to automake
 
- Makefile.am            |   49 +
- Makefile.in            |   91 -
- autogen.sh             |   89 +
- config.h.in            |  138 --
- configure.in           |  425 ++--
- cvscompile.sh          |   11 -
- fc-cache/Makefile.am   |   28 +
- fc-cache/Makefile.in   |   53 -
- fc-lang/Makefile.am    |   38 +
- fc-list/Makefile.am    |   28 +
- fc-list/Makefile.in    |   54 -
- findfonts              |    4 -
- fontconfig.spec.in     |   74 +
- fontconfig/Makefile.am  |    8 +
- fontconfig/Makefile.in  |   39 -
- fontconfig/fontconfig.h |    3 +-
- fonts.conf.in          |   12 +-
- local.conf             |    5 +
- local.def              |   70 -
- ltmain.sh              | 6192
- +++++++++++++++++++++++++++++++++++++++++++++++
- setfontdirs            |   36 -
- src/Makefile.am        |   38 +
- src/Makefile.in        |  120 -
- src/fontconfig.3       | 1466 +++++++++++
- src/fontconfig.man     | 1466 -----------
- 25 files changed, 8214 insertions(+), 2323 deletions(-)
+ Makefile.am                                   |   49 +
+ Makefile.in                                   |   91 -
+ autogen.sh                                    |   89 +
+ config.h.in                                   |  138 -
+ configure.in                                  |  425 +-
+ cvscompile.sh                                 |   11 -
+ fc-cache/Makefile.am                          |   28 +
+ fc-cache/Makefile.in                          |   53 -
+ fontconfig/Makefile.in => fc-lang/Makefile.am |   23 +-
+ fc-list/Makefile.am                           |   28 +
+ fc-list/Makefile.in                           |   54 -
+ findfonts                                     |    4 -
+ fontconfig.spec.in                            |   74 +
+ fontconfig/Makefile.am                        |    8 +
+ fontconfig/fontconfig.h                       |    3 +-
+ fonts.conf.in                                 |   12 +-
+ local.conf                                    |    5 +
+ local.def                                     |   70 -
+ ltmain.sh                                     | 6192
+ +++++++++++++++++++++++++
+ setfontdirs                                   |   36 -
+ src/Makefile.am                               |   38 +
+ src/Makefile.in                               |  120 -
+ src/{fontconfig.man => fontconfig.3}          |    0
+ 23 files changed, 6721 insertions(+), 830 deletions(-)
 
 commit 46d003c34ef95db33ecb794d23f711161d4d4ae3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 24 16:51:29 2003 +0000
+Date:   Mon Feb 24 16:51:29 2003 +0000
 
     Dont attempt to use cache if NULL
 
@@ -23195,19 +28153,19 @@ Date: Mon Feb 24 16:51:29 2003 +0000
 
 commit e54692ac1e3b1e498154cae9e4db68f1d1b06ecf
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 17 17:35:28 2003 +0000
+Date:   Mon Feb 17 17:35:28 2003 +0000
 
     Remove broken fontconfig-config script
 
- Makefile.in         |  9 -----
- configure.in        |  3 +-
+ Makefile.in          |  9 -----
+ configure.in         |  3 +-
  fontconfig-config.in | 94
  ----------------------------------------------------
  3 files changed, 1 insertion(+), 105 deletions(-)
 
 commit c4ab52dcb5d016d18fc73a8577daeb6938fb9e84
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 13 16:42:38 2003 +0000
+Date:   Thu Feb 13 16:42:38 2003 +0000
 
     Track dirs containing fonts.cache files referenced from ~/.fonts.cache
     file
@@ -23219,7 +28177,7 @@ Date:   Thu Feb 13 16:42:38 2003 +0000
 
 commit 565a919e80bf2d801078cbd83eee8caf9c057519
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 20:35:32 2003 +0000
+Date:   Wed Feb 12 20:35:32 2003 +0000
 
     Have fc-cache skip directories without write access
 
@@ -23228,7 +28186,7 @@ Date:   Wed Feb 12 20:35:32 2003 +0000
 
 commit b7a2e1e27b35154ea3b782f1f61bd2ef83cb27b2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 18:23:03 2003 +0000
+Date:   Wed Feb 12 18:23:03 2003 +0000
 
     Add prefer_outline hacks to replace bitmap fonts with equivalent
     outlines
@@ -23238,19 +28196,19 @@ Date: Wed Feb 12 18:23:03 2003 +0000
 
 commit dda7794f1be86fa270410e63ce96104843ded66f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 18:22:12 2003 +0000
+Date:   Wed Feb 12 18:22:12 2003 +0000
 
     Add "same" binding for edits to inherit binding from matched element
 
- fonts.dtd   | 2 +-
+ fonts.dtd   |  2 +-
  src/fccfg.c | 10 +++++++++-
- src/fcint.h | 2 +-
- src/fcxml.c | 2 ++
+ src/fcint.h |  2 +-
+ src/fcxml.c |  2 ++
  4 files changed, 13 insertions(+), 3 deletions(-)
 
 commit 602e6b1f265b17cc1059a01ac98f0877fb7d1db8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 18:21:21 2003 +0000
+Date:   Wed Feb 12 18:21:21 2003 +0000
 
     Output langsets and all bindings in debug messages
 
@@ -23259,7 +28217,7 @@ Date:   Wed Feb 12 18:21:21 2003 +0000
 
 commit b2b6903259c742c75738d49fa37ea0b167ef87cb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 18:20:04 2003 +0000
+Date:   Wed Feb 12 18:20:04 2003 +0000
 
     Make FcStrCmpIgnoreCase a bit faster
 
@@ -23268,12 +28226,12 @@ Date: Wed Feb 12 18:20:04 2003 +0000
 
 commit c8d5753c0fca4e4b2ab01d49b9a0b464b9b54cb4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 12 18:19:33 2003 +0000
+Date:   Wed Feb 12 18:19:33 2003 +0000
 
     Dont cache directorys until theyve been scanned. Avoids losing subdir
-       contents. Also fixed cache hashing function (was returning
-       constant).
-       Lots of comments
+        contents. Also fixed cache hashing function (was returning
+        constant).
+        Lots of comments
 
  src/fccache.c | 38 ++++++++++++++++++++++++++++++++------
  src/fcdir.c   | 11 +++++++++--
@@ -23281,7 +28239,7 @@ Date:   Wed Feb 12 18:19:33 2003 +0000
 
 commit d2b5cc7e12cb3941080c8db07ba53ce975a914b2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 7 00:15:09 2003 +0000
+Date:   Fri Feb 7 00:15:09 2003 +0000
 
     fontconfig is no longer affiliated with xfree86
 
@@ -23290,7 +28248,7 @@ Date:   Fri Feb 7 00:15:09 2003 +0000
 
 commit 302e07f11ee7fa1bc95c89357c956359c04dc63e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 7 00:14:31 2003 +0000
+Date:   Fri Feb 7 00:14:31 2003 +0000
 
     Emphasize that fonts.conf isnt the right place for local configuration
 
@@ -23299,7 +28257,7 @@ Date:   Fri Feb 7 00:14:31 2003 +0000
 
 commit 1b6b3b658c9ff6b8e45e54fdaea1812eb0b930d9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 7 00:13:55 2003 +0000
+Date:   Fri Feb 7 00:13:55 2003 +0000
 
     Remove Imakefile
 
@@ -23309,7 +28267,7 @@ Date:   Fri Feb 7 00:13:55 2003 +0000
 
 commit 9e1af99b17be1d9cde3b4517e0e6071e64fb4b64
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 7 00:13:37 2003 +0000
+Date:   Fri Feb 7 00:13:37 2003 +0000
 
     Build fc-lang, install local.conf
 
@@ -23318,7 +28276,7 @@ Date:   Fri Feb 7 00:13:37 2003 +0000
 
 commit dda27aa9ee057d213956f18041bedb4648c6c302
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 6 19:30:32 2003 +0000
+Date:   Thu Feb 6 19:30:32 2003 +0000
 
     Avoid crash when $HOME is not set
 
@@ -23327,7 +28285,7 @@ Date:   Thu Feb 6 19:30:32 2003 +0000
 
 commit 48092073dd7b633441daba6297cff8c4588fe58d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 6 19:28:23 2003 +0000
+Date:   Thu Feb 6 19:28:23 2003 +0000
 
     Update greek orthography from vvas@hal.csd.auth.gr (Vasilis Vasaitis)
 
@@ -23336,7 +28294,7 @@ Date:   Thu Feb 6 19:28:23 2003 +0000
 
 commit 9db8fbeccf14e1be2e305c3dd8d83991ce8a1055
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 6 19:25:53 2003 +0000
+Date:   Thu Feb 6 19:25:53 2003 +0000
 
     add shared library support for Tru64 UNIX and IRIX (bug #14)
 
@@ -23345,7 +28303,7 @@ Date:   Thu Feb 6 19:25:53 2003 +0000
 
 commit ca4339b8bbd4138bb3cf54a7ad7c3b33db7035de
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 6 19:22:43 2003 +0000
+Date:   Thu Feb 6 19:22:43 2003 +0000
 
     Fix inconsistent const usage in FcConfigCompareValue
 
@@ -23354,39 +28312,38 @@ Date: Thu Feb 6 19:22:43 2003 +0000
 
 commit c647f6f1e42f70077e1e0c957ff5cd7905d88b86
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 6 17:46:06 2003 +0000
+Date:   Thu Feb 6 17:46:06 2003 +0000
 
     Build fclang.h before building library This required compiling
     the charset
-       funcs into fc-lang, which was done by refactoring code in
-       fccharset.c
-       and fcfreetype.c a bit
+        funcs into fc-lang, which was done by refactoring code in
+        fccharset.c
+        and fcfreetype.c a bit
     Updated ethiopic orthographies
     Remove imake support
     Install empty local.conf file if none is present
 
- fc-cache/Imakefile   |   22 -
- fc-lang/Imakefile    |   56 -
- fc-lang/am.orth      |   10 +-
- fc-lang/fc-lang.c    |   21 +-
- fc-lang/fclang.h     | 4006
- --------------------------------------------------
- fc-lang/gez.orth     |   55 +-
- fc-lang/ti.orth      |   28 -
- fc-lang/ti_er.orth   |   56 +
- fc-lang/ti_et.orth   |   33 +
- fc-lang/tig.orth     |   52 +
- fc-list/Imakefile    |   17 -
- fontconfig/Imakefile |    8 -
- src/Imakefile       |   48 -
- src/fccharset.c      |  769 +---------
- src/fcfreetype.c     |  768 ++++++++++
- src/fcint.h         |   19 +-
- 16 files changed, 975 insertions(+), 4993 deletions(-)
+ fc-cache/Imakefile              |   22 -
+ fc-lang/Imakefile               |   56 -
+ fc-lang/am.orth                 |   10 +-
+ fc-lang/fc-lang.c               |   21 +-
+ fc-lang/fclang.h                | 4006
+ ---------------------------------------
+ fc-lang/gez.orth                |   55 +-
+ fc-lang/ti_er.orth              |   56 +
+ fc-lang/{ti.orth => ti_et.orth} |   11 +-
+ fc-lang/tig.orth                |   52 +
+ fc-list/Imakefile               |   17 -
+ fontconfig/Imakefile            |    8 -
+ src/Imakefile                   |   48 -
+ src/fccharset.c                 |  769 +-------
+ src/fcfreetype.c                |  768 ++++++++
+ src/fcint.h                     |   19 +-
+ 15 files changed, 950 insertions(+), 4968 deletions(-)
 
 commit 3d72cadda1f3398238ad9a5c52e31a9c710ccb5f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jan 28 21:28:20 2003 +0000
+Date:   Tue Jan 28 21:28:20 2003 +0000
 
     Bug #4 The last entry for the terminator should not be 0xfffa,
     but 0xfffb.
@@ -23396,29 +28353,29 @@ Date: Tue Jan 28 21:28:20 2003 +0000
 
 commit 4d3520610ec82a80601a1590861dc9505e2813b4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jan 28 20:56:18 2003 +0000
+Date:   Tue Jan 28 20:56:18 2003 +0000
 
     Bug #2 If a sub-make fails, then the build will still happily
     continue. I
-       will attach a patch I have been using in the Debian package for a
-       while.
+        will attach a patch I have been using in the Debian package for a
+        while.
 
  Makefile.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 3c0b3aa22cf1338f96bc0c0b55956136a6102a61
 Author: David Dawes <dawes@xfree86.org>
-Date:  Tue Jan 7 02:07:47 2003 +0000
+Date:   Tue Jan 7 02:07:47 2003 +0000
 
     703. Eliminate locale-dependent behaviour in fontconfig's setfontdirs
-       script (#A.1483, Markus Kuhn).
+        script (#A.1483, Markus Kuhn).
 
  setfontdirs | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 commit 72a762196f356837ef615ee2a079e8b801a6f592
 Author: Torrey Lyons <torrey@mrcla.com>
-Date:  Fri Jan 3 18:54:11 2003 +0000
+Date:   Fri Jan 3 18:54:11 2003 +0000
 
     On Darwin add Mac font directories to fonts.conf.
 
@@ -23427,7 +28384,7 @@ Date:   Fri Jan 3 18:54:11 2003 +0000
 
 commit 432913ead584d164ed2830958ca5a3846394f5e6
 Author: David Dawes <dawes@xfree86.org>
-Date:  Sat Dec 21 02:31:53 2002 +0000
+Date:   Sat Dec 21 02:31:53 2002 +0000
 
     677. Fix a segfault in fontconfig (#A.1450, Keith Packard).
 
@@ -23436,65 +28393,65 @@ Date: Sat Dec 21 02:31:53 2002 +0000
 
 commit 1e341fdfc38527d8614e2fe744237f473f3febee
 Author: David Dawes <dawes@xfree86.org>
-Date:  Tue Dec 17 03:26:36 2002 +0000
+Date:   Tue Dec 17 03:26:36 2002 +0000
 
     Test for "ed" and "ex" -- part of update for LynxOS/PowerPC build
     fixes
-       (Stuart Lissaman).
+        (Stuart Lissaman).
 
  setfontdirs | 14 ++++++++++++--
  1 file changed, 12 insertions(+), 2 deletions(-)
 
 commit 234397b42976f027df7acc41aae80ec43692d557
 Author: David Dawes <dawes@xfree86.org>
-Date:  Sat Dec 14 02:03:59 2002 +0000
+Date:   Sat Dec 14 02:03:59 2002 +0000
 
     633. Perform country-independent matching for Chinese languages in
-       fontconfig (#A.1406, Keith Packard).
+        fontconfig (#A.1406, Keith Packard).
 
  fc-lang/fc-lang.c | 76
  ++++++++++++++++++++++++++++++++++++++++++++++++++-----
  fc-lang/fclang.h  | 10 +++++++-
- src/fclang.c     | 15 +++++++----
+ src/fclang.c      | 15 +++++++----
  3 files changed, 89 insertions(+), 12 deletions(-)
 
 commit 45fb31aa9113b597878fc19d1463c078663540d9
 Author: David Dawes <dawes@xfree86.org>
-Date:  Sat Dec 14 01:59:38 2002 +0000
+Date:   Sat Dec 14 01:59:38 2002 +0000
 
     632. Finish off the UTF-16 APIs in Xft, and fix the UTF-16 conversion
     code
-       in fontconfig (#A.1411, Keith Packard, Jungshik Shin).
+        in fontconfig (#A.1411, Keith Packard, Jungshik Shin).
 
  src/fcstr.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit dbc56f0b3f3383a61b0f5d282ed7ae732ae3856e
 Author: Egbert Eich <eich@suse.de>
-Date:  Wed Dec 4 10:28:03 2002 +0000
+Date:   Wed Dec 4 10:28:03 2002 +0000
 
     574. Make RENDER optional for Xvfb. When RENDER is enabled add
     depth 32
-       pixmap format to list of supported pixmaps (Egbert Eich).
+        pixmap format to list of supported pixmaps (Egbert Eich).
     573. Fix va_args glitches for xterm/libfontconfig: 0 == (void*)0
     isn't true
-       for all platforms (Egbert Eich).
+        for all platforms (Egbert Eich).
     572. Fix lbxproxy to also build on platforms that don't have
     snprintf()
-       (Egbert Eich).
+        (Egbert Eich).
     571. Fix va_args glitches in mkfontscale: arg stack isn't preserved
     after
-       calling va_arg on all platforms (Egbert Eich).
+        calling va_arg on all platforms (Egbert Eich).
     570. Fixed x11perf aa benchmarks to support non-default
     visuals/colormaps
-       (Egbert Eich).
+        (Egbert Eich).
 
  fontconfig/fcprivate.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 7657345c1031eacedd734ddbc62a29de776672f4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Nov 22 02:12:16 2002 +0000
+Date:   Fri Nov 22 02:12:16 2002 +0000
 
     In debugging output, mark weakly bound values with (w)
 
@@ -23503,7 +28460,7 @@ Date:   Fri Nov 22 02:12:16 2002 +0000
 
 commit 02c3d2e9eabcecdcc46bc166afc511b22f3ddbae
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Nov 21 16:53:00 2002 +0000
+Date:   Thu Nov 21 16:53:00 2002 +0000
 
     Use unique local Imake define for fonts.conf dir (#5482, Mike
     A. Harris)
@@ -23513,21 +28470,21 @@ Date: Thu Nov 21 16:53:00 2002 +0000
 
 commit 61afb67cd23d021b5b3806f6974e19a77a2ac4ef
 Author: Alan Hourihane <alanh@fairlite.demon.co.uk>
-Date:  Fri Nov 15 09:29:35 2002 +0000
+Date:   Fri Nov 15 09:29:35 2002 +0000
 
     483. Fix fontconfig to obey NothingOutsideProjectRoot, so that the
-       directory /usr/share/fonts is ignored in this case (#A.1325,
-       Joe Moss).
+        directory /usr/share/fonts is ignored in this case (#A.1325,
+        Joe Moss).
 
  Imakefile | 14 ++++++++++++--
  1 file changed, 12 insertions(+), 2 deletions(-)
 
 commit 65fb1c65837edd07fb89d303155b10a38e00ecd7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Oct 21 17:03:47 2002 +0000
+Date:   Mon Oct 21 17:03:47 2002 +0000
 
     Elide historic cyrillic letters from several orthographies as they are
-       unnecessary for modern documents and ill supported by fonts
+        unnecessary for modern documents and ill supported by fonts
 
  fc-lang/bua.orth |  6 +++---
  fc-lang/fclang.h | 14 +++++++-------
@@ -23542,18 +28499,18 @@ Date: Mon Oct 21 17:03:47 2002 +0000
 
 commit bff801144b226f5f3ddf4188f181ed3f629fdcab
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Oct 11 17:53:03 2002 +0000
+Date:   Fri Oct 11 17:53:03 2002 +0000
 
     Add a bunch more consts to Xft and fontconfig apis
 
  fontconfig/fcfreetype.h |  2 +-
  fontconfig/fontconfig.h | 20 ++++++++++----------
- src/fcpat.c            | 20 ++++++++++----------
+ src/fcpat.c             | 20 ++++++++++----------
  3 files changed, 21 insertions(+), 21 deletions(-)
 
 commit 0ce819b6096ae852a1979fa6ebb3e29260848007
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Oct 3 22:06:27 2002 +0000
+Date:   Thu Oct 3 22:06:27 2002 +0000
 
     Change comments a bit in fonts.conf.in
 
@@ -23562,11 +28519,11 @@ Date: Thu Oct 3 22:06:27 2002 +0000
 
 commit 0d5af2ef2d9785efc29c909bc11f483069192c95
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Oct 2 16:15:54 2002 +0000
+Date:   Wed Oct 2 16:15:54 2002 +0000
 
     English orthography included 0xd. instead of 0xe. for several
     codepoints.
-       Oops
+        Oops
 
  fc-lang/en.orth  | 8 ++++----
  fc-lang/fclang.h | 2 +-
@@ -23574,18 +28531,18 @@ Date: Wed Oct 2 16:15:54 2002 +0000
 
 commit 1852d490352fdc05891b778a8769000816b907b0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Oct 2 07:11:30 2002 +0000
+Date:   Wed Oct 2 07:11:30 2002 +0000
 
     Add FC_RGBA_UNKNOWN
 
  fontconfig/fontconfig.h | 5 +++--
- src/fcname.c           | 5 +++--
- src/fontconfig.man     | 4 +++-
+ src/fcname.c            | 5 +++--
+ src/fontconfig.man      | 4 +++-
  3 files changed, 9 insertions(+), 5 deletions(-)
 
 commit 2d79b58621845f7d8efd6f052dcd8f4f1a4e03c3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Sep 26 00:30:30 2002 +0000
+Date:   Thu Sep 26 00:30:30 2002 +0000
 
     Fix alignment issue on sparc
 
@@ -23594,20 +28551,20 @@ Date: Thu Sep 26 00:30:30 2002 +0000
 
 commit a342e87dc3d4211a29525654ff6b41d088bdce71
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Sep 26 00:17:28 2002 +0000
+Date:   Thu Sep 26 00:17:28 2002 +0000
 
     Add fontversion field
 
  fontconfig/fontconfig.h |  3 ++-
- src/fcdefault.c        |  6 +++++-
- src/fcfreetype.c       | 18 +++++++++++++++++-
- src/fcmatch.c          | 15 ++++++++++++---
- src/fcname.c           |  3 ++-
+ src/fcdefault.c         |  6 +++++-
+ src/fcfreetype.c        | 18 +++++++++++++++++-
+ src/fcmatch.c           | 15 ++++++++++++---
+ src/fcname.c            |  3 ++-
  5 files changed, 38 insertions(+), 7 deletions(-)
 
 commit e712133ca7b6d9f055e7db2a7a3abf3034927e16
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Sep 26 00:16:23 2002 +0000
+Date:   Thu Sep 26 00:16:23 2002 +0000
 
     Was losing local cached dirs in global cache list
 
@@ -23618,7 +28575,7 @@ Date:   Thu Sep 26 00:16:23 2002 +0000
 
 commit ce50587c2b71390c6de35c7e13a8fc23a062eda0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Sep 26 00:13:39 2002 +0000
+Date:   Thu Sep 26 00:13:39 2002 +0000
 
     Add a few more permissable blank glyphs
 
@@ -23627,18 +28584,18 @@ Date: Thu Sep 26 00:13:39 2002 +0000
 
 commit d1bec8c66d729fe67992a0212b3dffa18879e88f
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Wed Sep 18 17:11:46 2002 +0000
+Date:   Wed Sep 18 17:11:46 2002 +0000
 
     Pacify gcc 3.2
 
  fc-cache/fc-cache.c | 3 ++-
- src/fclist.c       | 4 ++--
- src/fcpat.c        | 4 ++--
+ src/fclist.c        | 4 ++--
+ src/fcpat.c         | 4 ++--
  3 files changed, 6 insertions(+), 5 deletions(-)
 
 commit 05336fd8bed5a5f3a6e1cbddb18a9bd9a4d2ebc7
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Thu Sep 12 20:56:03 2002 +0000
+Date:   Thu Sep 12 20:56:03 2002 +0000
 
     Fix structure alignment and array wlk bugs
 
@@ -23647,11 +28604,11 @@ Date: Thu Sep 12 20:56:03 2002 +0000
 
 commit 9cc935765e6f74a1712b04b6cbcfc5e77d1d38e1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Sep 7 19:43:41 2002 +0000
+Date:   Sat Sep 7 19:43:41 2002 +0000
 
     Add a bunch more blank glyphs, plus label existing blanks with
     official
-       unicode names
+        unicode names
 
  fonts.conf.in | 66
  +++++++++++++++++++++++++++++++++--------------------------
@@ -23659,7 +28616,7 @@ Date:   Sat Sep 7 19:43:41 2002 +0000
 
 commit 10bac9b53f6b2494f05ff1c7c9ee0e3b0bd05c73
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Sep 7 17:30:18 2002 +0000
+Date:   Sat Sep 7 17:30:18 2002 +0000
 
     Found a few more blank glyphs to add
 
@@ -23668,7 +28625,7 @@ Date:   Sat Sep 7 17:30:18 2002 +0000
 
 commit f9ad97b0d4be53164970ca0a8ff605670a60587c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Sep 7 16:50:16 2002 +0000
+Date:   Sat Sep 7 16:50:16 2002 +0000
 
     Add more blank glyphs to default config
 
@@ -23677,7 +28634,7 @@ Date:   Sat Sep 7 16:50:16 2002 +0000
 
 commit c2022f999e0492d530925b0112ffd34ce146a8e3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Aug 31 22:27:08 2002 +0000
+Date:   Sat Aug 31 22:27:08 2002 +0000
 
     Update ChangeLog with a few notes
 
@@ -23686,34 +28643,34 @@ Date: Sat Aug 31 22:27:08 2002 +0000
 
 commit 9dac3c594574f67f80d70ad3cdad42c551285ee8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Aug 31 22:17:32 2002 +0000
+Date:   Sat Aug 31 22:17:32 2002 +0000
 
     More complete memory tracking. Install always overwrites header files
 
  fontconfig/Makefile.in | 17 ++++-------------
- src/fcatomic.c                |  8 +++++++-
- src/fcblanks.c                |  8 ++++++++
- src/fccache.c         | 37 +++++++++++++++++++++++++++----------
- src/fccfg.c           |  6 ++++--
- src/fccharset.c       | 10 +++++++---
- src/fcdir.c           |  3 ++-
- src/fcfreetype.c      |  8 +++++---
- src/fcinit.c          | 48
+ src/fcatomic.c         |  8 +++++++-
+ src/fcblanks.c         |  8 ++++++++
+ src/fccache.c          | 37 +++++++++++++++++++++++++++----------
+ src/fccfg.c            |  6 ++++--
+ src/fccharset.c        | 10 +++++++---
+ src/fcdir.c            |  3 ++-
+ src/fcfreetype.c       |  8 +++++---
+ src/fcinit.c           | 48
  ++++++++++++++++++++++++++++++------------------
- src/fcint.h           | 16 ++++++++++++++--
- src/fcmatch.c         |  3 ++-
- src/fcname.c          |  7 ++++++-
- src/fcpat.c           |  3 ++-
- src/fcstr.c           |  5 +++++
- src/fcxml.c           | 33 ++++++++++++++++++++++++++++-----
+ src/fcint.h            | 16 ++++++++++++++--
+ src/fcmatch.c          |  3 ++-
+ src/fcname.c           |  7 ++++++-
+ src/fcpat.c            |  3 ++-
+ src/fcstr.c            |  5 +++++
+ src/fcxml.c            | 33 ++++++++++++++++++++++++++++-----
  15 files changed, 151 insertions(+), 61 deletions(-)
 
 commit cb30af720468a7e89abdf65bbf62b8942d3d8c13
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Aug 30 01:28:17 2002 +0000
+Date:   Fri Aug 30 01:28:17 2002 +0000
 
     Update latin and cyrillic orthographies by comparing those found at
-       evertype.com with those from eki.ee
+        evertype.com with those from eki.ee
 
  fc-lang/ab.orth  |    7 +-
  fc-lang/az.orth  |   65 ++-
@@ -23764,7 +28721,7 @@ Date:   Fri Aug 30 01:28:17 2002 +0000
 
 commit 2458a6d8d8bbd9b0b6b999c2aa035816c0d825fa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Aug 26 23:34:31 2002 +0000
+Date:   Mon Aug 26 23:34:31 2002 +0000
 
     FcLangSetHasLang was not actually checking the language set itself
 
@@ -23774,41 +28731,41 @@ Date: Mon Aug 26 23:34:31 2002 +0000
 
 commit 5d6788ac7e35b9afb24de4f1e90d43715e50f64f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Aug 26 20:52:59 2002 +0000
+Date:   Mon Aug 26 20:52:59 2002 +0000
 
     Update ChangeLog, fix some bugs in the man page
 
- ChangeLog         |  3 +++
+ ChangeLog          |  3 +++
  src/fontconfig.man | 68
  +++++++++++++++++++++++++++++-------------------------
  2 files changed, 39 insertions(+), 32 deletions(-)
 
 commit f21f40f347afa81d1fcd4ae604bd3f164a3b2e90
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Aug 26 19:57:40 2002 +0000
+Date:   Mon Aug 26 19:57:40 2002 +0000
 
     Append version number to cache file names
 
  fontconfig/fontconfig.h | 18 +++++++++++++++---
- src/fcdir.c            |  6 +++---
- src/fcint.h            |  2 +-
- src/fontconfig.man     |  5 +++--
+ src/fcdir.c             |  6 +++---
+ src/fcint.h             |  2 +-
+ src/fontconfig.man      |  5 +++--
  4 files changed, 22 insertions(+), 9 deletions(-)
 
 commit 0f9a306e710b3c03cd82b8234ae840558d4b886f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Aug 24 20:08:53 2002 +0000
+Date:   Sat Aug 24 20:08:53 2002 +0000
 
     Add const to a bunch of string APIs
 
  fontconfig/fontconfig.h | 32 ++++++++++++++++----------------
- src/fcstr.c            | 46
+ src/fcstr.c             | 46
  +++++++++++++++++++++++-----------------------
  2 files changed, 39 insertions(+), 39 deletions(-)
 
 commit 47d4f9501fe21603feb5f3f233ea3bc6ec15f494
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Aug 22 18:53:22 2002 +0000
+Date:   Thu Aug 22 18:53:22 2002 +0000
 
     Add contains/not_contains, fix LangSet equal operator to use
     FcLangEqual
@@ -23825,34 +28782,34 @@ Date: Thu Aug 22 18:53:22 2002 +0000
 
 commit d8d7395877238acbc9cd4709e3b4e76f8ca978cb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Aug 22 07:36:45 2002 +0000
+Date:   Thu Aug 22 07:36:45 2002 +0000
 
     Reimplement FC_LANG as FcTypeLang, freeze patterns, other cleanup
 
- ChangeLog              |  22 +-
- fc-lang/fc-lang.c      |  24 ++-
- fc-lang/fclang.h       | 556
+ ChangeLog               |  22 +-
+ fc-lang/fc-lang.c       |  24 ++-
+ fc-lang/fclang.h        | 556
  ++++++++++++++++++++++++------------------------
  fontconfig/fcprivate.h  |   5 +-
  fontconfig/fontconfig.h |  46 +++-
- src/fccache.c          |  16 +-
- src/fccfg.c            |  22 +-
- src/fccharset.c        |  80 ++++---
- src/fcdbg.c            |   5 +-
- src/fcfreetype.c       |  11 +-
- src/fcinit.c           |  14 +-
- src/fcint.h            |  35 +--
- src/fclang.c           | 431 ++++++++++++++++++++++++++++++++-----
- src/fclist.c           |   4 +-
- src/fcmatch.c          |  31 ++-
- src/fcname.c           |  29 ++-
- src/fcpat.c            | 301 +++++++++++++++++++++++++-
- src/fcstr.c            |  14 +-
+ src/fccache.c           |  16 +-
+ src/fccfg.c             |  22 +-
+ src/fccharset.c         |  80 ++++---
+ src/fcdbg.c             |   5 +-
+ src/fcfreetype.c        |  11 +-
+ src/fcinit.c            |  14 +-
+ src/fcint.h             |  35 +--
+ src/fclang.c            | 431 ++++++++++++++++++++++++++++++++-----
+ src/fclist.c            |   4 +-
+ src/fcmatch.c           |  31 ++-
+ src/fcname.c            |  29 ++-
+ src/fcpat.c             | 301 +++++++++++++++++++++++++-
+ src/fcstr.c             |  14 +-
  18 files changed, 1235 insertions(+), 411 deletions(-)
 
 commit f4fe447f49171d4b0ad69c8efcbadc555f211efa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 20 23:17:03 2002 +0000
+Date:   Tue Aug 20 23:17:03 2002 +0000
 
     Memory leak in XML parsing of matrices (thanks Owen)
 
@@ -23861,40 +28818,40 @@ Date: Tue Aug 20 23:17:03 2002 +0000
 
 commit fa244f3d8807415247c8aeb77145502b1cb9ace8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Aug 19 19:32:05 2002 +0000
+Date:   Mon Aug 19 19:32:05 2002 +0000
 
     Various config changes plus a couple of optimizations from Owen
 
- ChangeLog              |  19 ++++++++
- config.h.in            |   9 ----
- config/Makedefs.in     |  25 +++++------
- configure.in           | 117
+ ChangeLog               |  19 ++++++++
+ config.h.in             |   9 ----
+ config/Makedefs.in      |  25 +++++------
+ configure.in            | 117
  ++++++++----------------------------------------
- fc-cache/Imakefile     |   2 +-
- fc-lang/Imakefile      |   4 +-
- fc-lang/ja.orth        |   4 +-
- fc-lang/ko.orth        |   5 ++-
- fc-lang/zh_cn.orth     |   5 ++-
- fc-lang/zh_sg.orth     |   4 +-
- fc-list/Imakefile      |   2 +-
+ fc-cache/Imakefile      |   2 +-
+ fc-lang/Imakefile       |   4 +-
+ fc-lang/ja.orth         |   4 +-
+ fc-lang/ko.orth         |   5 ++-
+ fc-lang/zh_cn.orth      |   5 ++-
+ fc-lang/zh_sg.orth      |   4 +-
+ fc-list/Imakefile       |   2 +-
  fontconfig/fcprivate.h  |   4 +-
  fontconfig/fontconfig.h |  18 ++++----
- fonts.conf.in          |  12 +++++
- src/Imakefile          |   2 +-
- src/fccache.c          |  69 +++++++++++++++++-----------
- src/fccfg.c            |  33 ++++++--------
- src/fcdbg.c            |   7 +--
- src/fclist.c           |   4 +-
- src/fcmatch.c          |   5 +--
- src/fcname.c           |   4 +-
- src/fcpat.c            |  43 +-----------------
- src/fcxml.c            |  17 +------
- src/fontconfig.man     |  22 ++++-----
+ fonts.conf.in           |  12 +++++
+ src/Imakefile           |   2 +-
+ src/fccache.c           |  69 +++++++++++++++++-----------
+ src/fccfg.c             |  33 ++++++--------
+ src/fcdbg.c             |   7 +--
+ src/fclist.c            |   4 +-
+ src/fcmatch.c           |   5 +--
+ src/fcname.c            |   4 +-
+ src/fcpat.c             |  43 +-----------------
+ src/fcxml.c             |  17 +------
+ src/fontconfig.man      |  22 ++++-----
  24 files changed, 159 insertions(+), 277 deletions(-)
 
 commit 5d43e799197d2758102b699f9bc12b3c116a9b80
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 13 02:06:22 2002 +0000
+Date:   Tue Aug 13 02:06:22 2002 +0000
 
     Make missing font directory messages only displayed when verbose
 
@@ -23903,7 +28860,7 @@ Date:   Tue Aug 13 02:06:22 2002 +0000
 
 commit eafc0e51af7ecb6ea7d33b59932212bdfd1d67ab
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Aug 12 22:20:11 2002 +0000
+Date:   Mon Aug 12 22:20:11 2002 +0000
 
     Clean up French orthography, update 639-1 list of supported languages
 
@@ -23915,31 +28872,31 @@ Date: Mon Aug 12 22:20:11 2002 +0000
 
 commit 938bc63358c09b9fd3709e8f914870f906361594
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Aug 11 18:11:04 2002 +0000
+Date:   Sun Aug 11 18:11:04 2002 +0000
 
     Fix weird first/not-first lameness in font matches, replacing
     with target
-       qualifiers on test elements. Update library manual page.
+        qualifiers on test elements. Update library manual page.
 
  fontconfig/fcprivate.h  |   5 +-
  fontconfig/fontconfig.h |  23 +++-
- fonts.conf.in          |   9 +-
- fonts.dtd              |   4 +
- src/fccfg.c            | 142 ++++++++-------------
- src/fcdbg.c            |  29 +++--
- src/fcint.h            |  19 ++-
- src/fclist.c           |   4 +-
- src/fcmatch.c          |  19 +--
- src/fcname.c           |   4 +-
- src/fcpat.c            |  43 ++++++-
- src/fcxml.c            |  33 ++++-
- src/fontconfig.man     | 332
+ fonts.conf.in           |   9 +-
+ fonts.dtd               |   4 +
+ src/fccfg.c             | 142 ++++++++-------------
+ src/fcdbg.c             |  29 +++--
+ src/fcint.h             |  19 ++-
+ src/fclist.c            |   4 +-
+ src/fcmatch.c           |  19 +--
+ src/fcname.c            |   4 +-
+ src/fcpat.c             |  43 ++++++-
+ src/fcxml.c             |  33 ++++-
+ src/fontconfig.man      | 332
  ++++++++++++++++++++++++++++++++++++++++++++----
  13 files changed, 510 insertions(+), 156 deletions(-)
 
 commit 80a7d664395d62cc335ac93b9918efebca00c117
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Aug 11 15:09:33 2002 +0000
+Date:   Sun Aug 11 15:09:33 2002 +0000
 
     Help message said -v was for --force
 
@@ -23948,13 +28905,13 @@ Date: Sun Aug 11 15:09:33 2002 +0000
 
 commit 8c8f72665a4d2eb7d56499dd8a876a9a2af8b153
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Aug 8 00:10:51 2002 +0000
+Date:   Thu Aug 8 00:10:51 2002 +0000
 
     Add Afar, Amharic, Aymara, Bini, Dzongkha, Fijian, Hiri Motu,
     Interlingua,
-       Interlingue, Ido, Kikuyu, Burmese, Oromo, Somali, Swahili,
-       Tigrinya,
-       Tsonga, Twi, Uighur, Urdu, Xhosa and Zulu orthographies
+        Interlingue, Ido, Kikuyu, Burmese, Oromo, Somali, Swahili,
+        Tigrinya,
+        Tsonga, Twi, Uighur, Urdu, Xhosa and Zulu orthographies
 
  fc-lang/Imakefile |   42 +-
  fc-lang/aa.orth   |   40 ++
@@ -23986,11 +28943,11 @@ Date: Thu Aug 8 00:10:51 2002 +0000
 
 commit 0d91b3c5ee667c4ea997b99f69d73076a3d84d42
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Aug 7 17:34:15 2002 +0000
+Date:   Wed Aug 7 17:34:15 2002 +0000
 
     Add Asturian, Old Church Slavonic, Friulian, Manx Gaelic, Cornish,
     Scots,
-       Syriac and Votic orthographies
+        Syriac and Votic orthographies
 
  fc-lang/Imakefile |   39 +-
  fc-lang/ast.orth  |   47 ++
@@ -24004,13 +28961,13 @@ Date: Wed Aug 7 17:34:15 2002 +0000
  fc-lang/kw.orth   |   35 ++
  fc-lang/sco.orth  |   32 +
  fc-lang/syr.orth  |   29 +
- fc-lang/to.orth   |   4 +-
+ fc-lang/to.orth   |    4 +-
  fc-lang/vot.orth  |   37 ++
  13 files changed, 1300 insertions(+), 857 deletions(-)
 
 commit bd724c85969f7c24cf17b8780217c5a428555ea4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Aug 7 01:45:59 2002 +0000
+Date:   Wed Aug 7 01:45:59 2002 +0000
 
     Short circuit FcPatternEqual when both args point at the same pattern
 
@@ -24019,7 +28976,7 @@ Date:   Wed Aug 7 01:45:59 2002 +0000
 
 commit 0e344dec0b124c38e6193cc4208e06662acd32f1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 6 19:54:10 2002 +0000
+Date:   Tue Aug 6 19:54:10 2002 +0000
 
     Update fontconfig manual to match current bits
 
@@ -24029,18 +28986,18 @@ Date: Tue Aug 6 19:54:10 2002 +0000
 
 commit bb356b68ab0981dd9ec21ed8176dc80ad0580805
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 6 19:00:43 2002 +0000
+Date:   Tue Aug 6 19:00:43 2002 +0000
 
     Uninitialized member of cache structure could lead to non-updated
     cache
-       files
+        files
 
  src/fccache.c | 1 +
  1 file changed, 1 insertion(+)
 
 commit 4534f30d2175966409af158c0a9efee678937bfd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 6 18:59:59 2002 +0000
+Date:   Tue Aug 6 18:59:59 2002 +0000
 
     Fix Imakefile to make fclang.h writable
 
@@ -24049,7 +29006,7 @@ Date:   Tue Aug 6 18:59:59 2002 +0000
 
 commit eb2a2f838fa358bfbac69ebca4d716b70f4d294c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Aug 6 18:59:43 2002 +0000
+Date:   Tue Aug 6 18:59:43 2002 +0000
 
     Add Latin-1 characters needed by Welsh
 
@@ -24060,13 +29017,13 @@ Date: Tue Aug 6 18:59:43 2002 +0000
 
 commit a6531d8cbafd79f26d06b086cceccb461e661f4a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Aug 1 16:17:33 2002 +0000
+Date:   Thu Aug 1 16:17:33 2002 +0000
 
     Always install fonts.conf and fonts.dtd, moving any existing
     fonts.conf to
-       fonts.conf.bak. Add ~/.fonts to default font directories and
-       add some
-       useful comments to fonts.conf
+        fonts.conf.bak. Add ~/.fonts to default font directories and
+        add some
+        useful comments to fonts.conf
 
  Imakefile     | 17 +++++++++++++++--
  fonts.conf.in | 12 ++++++++++++
@@ -24075,34 +29032,34 @@ Date: Thu Aug 1 16:17:33 2002 +0000
 
 commit aefb2c41c85f1b615e922c636bc7ac1eeb9e535c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Aug 1 15:57:26 2002 +0000
+Date:   Thu Aug 1 15:57:26 2002 +0000
 
     Fix autoconf build BSD install and sysconfdir problems
 
- ChangeLog             | 17 +++++++++++++++++
- Makefile.in           | 10 +++++-----
- config.h.in           |  3 +++
- config/Makedefs.in    |  5 +++--
- configure.in          | 14 +++++++++++++-
- fc-cache/Makefile.in  |  4 ++--
- fc-list/Makefile.in   |  4 ++--
+ ChangeLog              | 17 +++++++++++++++++
+ Makefile.in            | 10 +++++-----
+ config.h.in            |  3 +++
+ config/Makedefs.in     |  5 +++--
+ configure.in           | 14 +++++++++++++-
+ fc-cache/Makefile.in   |  4 ++--
+ fc-list/Makefile.in    |  4 ++--
  fontconfig/Makefile.in |  8 ++++----
- src/Makefile.in       |  2 +-
+ src/Makefile.in        |  2 +-
  9 files changed, 50 insertions(+), 17 deletions(-)
 
 commit c2e9d0240b52adf9f0efd42a8be600f652086c32
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Thu Aug 1 01:35:02 2002 +0000
+Date:   Thu Aug 1 01:35:02 2002 +0000
 
     Warning fix
 
  fontconfig/fontconfig.h | 5 ++++-
- src/fcint.h            | 5 +----
+ src/fcint.h             | 5 +----
  2 files changed, 5 insertions(+), 5 deletions(-)
 
 commit 6fff2cda0ad09dfc84df2a70e95258b9dd28160b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jul 31 01:36:37 2002 +0000
+Date:   Wed Jul 31 01:36:37 2002 +0000
 
     Add binding property to edit element
 
@@ -24115,23 +29072,23 @@ Date: Wed Jul 31 01:36:37 2002 +0000
 
 commit 327a7fd491f17f23e37e260f8d74397e2ef933aa
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 28 10:50:59 2002 +0000
+Date:   Sun Jul 28 10:50:59 2002 +0000
 
     Rewrite global cache handling code in fontconfig to eliminate per-file
-       syscalls
+        syscalls
 
  fontconfig/fontconfig.h |   5 +-
- src/fccache.c          | 968
+ src/fccache.c           | 968
  +++++++++++++++++++++++++++++++-----------------
- src/fccfg.c            |  23 +-
- src/fcdir.c            | 183 +++++----
- src/fcint.h            | 126 +++++--
- src/fcmatrix.c                 |   9 +-
+ src/fccfg.c             |  23 +-
+ src/fcdir.c             | 183 +++++----
+ src/fcint.h             | 126 +++++--
+ src/fcmatrix.c          |   9 +-
  6 files changed, 830 insertions(+), 484 deletions(-)
 
 commit 23cd70c4ef2b5c959959275d9d7f282029ae69f5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 27 23:13:28 2002 +0000
+Date:   Sat Jul 27 23:13:28 2002 +0000
 
     Add ngai tahu specific chars to maori orthography
 
@@ -24143,7 +29100,7 @@ Date:   Sat Jul 27 23:13:28 2002 +0000
 
 commit 1a9ae91a1693df1bfe93f34747584b0ff5dce014
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jul 17 17:51:52 2002 +0000
+Date:   Wed Jul 17 17:51:52 2002 +0000
 
     Add fclang.c to Makefile.in
 
@@ -24152,7 +29109,7 @@ Date:   Wed Jul 17 17:51:52 2002 +0000
 
 commit 6864f6279297a59ff509e5454fdebb77ac64e530
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 13 20:33:05 2002 +0000
+Date:   Sat Jul 13 20:33:05 2002 +0000
 
     Trim ja orthography of a couple codepoints not found in kochi fonts
 
@@ -24162,7 +29119,7 @@ Date:   Sat Jul 13 20:33:05 2002 +0000
 
 commit 1a0ee1e7c1b5872b1f46c7cdd8d8504150022189
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 13 19:10:03 2002 +0000
+Date:   Sat Jul 13 19:10:03 2002 +0000
 
     Fix typo in geez (ethiopic) orthography
 
@@ -24172,29 +29129,29 @@ Date: Sat Jul 13 19:10:03 2002 +0000
 
 commit 69937bd9416eb3fbefd55b9fa6445d0fe4b4f7f3
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 13 05:43:25 2002 +0000
+Date:   Sat Jul 13 05:43:25 2002 +0000
 
     Add some Utf16 support, extract font family and style names from
     name table
-       for sfnt fonts
+        for sfnt fonts
 
  fontconfig/fontconfig.h |  23 +++-
- src/fccharset.c        |  40 ++++--
- src/fcfreetype.c       | 342
+ src/fccharset.c         |  40 ++++--
+ src/fcfreetype.c        | 342
  ++++++++++++++++++++++++++++++++++++++++++++++--
- src/fcint.h            |  11 ++
- src/fcstr.c            |  99 +++++++++++++-
+ src/fcint.h             |  11 ++
+ src/fcstr.c             |  99 +++++++++++++-
  5 files changed, 495 insertions(+), 20 deletions(-)
 
 commit c80d2ac4866d4c534a8693d611ed85b84c11d009
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jul 12 21:06:03 2002 +0000
+Date:   Fri Jul 12 21:06:03 2002 +0000
 
     Clean up some coverage files; a few accidentally included PUA
     values and
-       punctuation. Add debugging stuff to dump out missing codepoints
-       during
-       cache building when missing only a few
+        punctuation. Add debugging stuff to dump out missing codepoints
+        during
+        cache building when missing only a few
 
  fc-lang/bg.orth  |   13 +-
  fc-lang/bi.orth  |   10 +-
@@ -24217,12 +29174,12 @@ Date: Fri Jul 12 21:06:03 2002 +0000
  fc-lang/si.orth  |    8 +-
  fc-lang/tl.orth  |   11 +-
  fc-lang/yo.orth  |   80 +--
- src/fclang.c    |   33 +-
+ src/fclang.c     |   33 +-
  21 files changed, 1017 insertions(+), 1017 deletions(-)
 
 commit b4a2c1f012c9c05cd14e43544570371ba2ca1134
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jul 12 19:19:16 2002 +0000
+Date:   Fri Jul 12 19:19:16 2002 +0000
 
     Add a bunch more languages that use the Latin alphabet
 
@@ -24261,12 +29218,12 @@ Date: Fri Jul 12 19:19:16 2002 +0000
  fc-lang/wo.orth   |   42 ++
  fc-lang/yap.orth  |   35 +
  fc-lang/yo.orth   |   86 +++
- src/fcxml.c      |   12 +-
+ src/fcxml.c       |   12 +-
  35 files changed, 2522 insertions(+), 749 deletions(-)
 
 commit 3f03d0c2ac9ec2050abf56b4ce48fff987b55ac0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jul 12 09:13:32 2002 +0000
+Date:   Fri Jul 12 09:13:32 2002 +0000
 
     Add nynorsk and bokml, remove double angle quotes from other languages
 
@@ -24293,7 +29250,7 @@ Date:   Fri Jul 12 09:13:32 2002 +0000
 
 commit c2b971c89819281be41584720d20648fe5d1627f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jul 12 07:58:16 2002 +0000
+Date:   Fri Jul 12 07:58:16 2002 +0000
 
     Missed adding kumyk
 
@@ -24306,7 +29263,7 @@ Date:   Fri Jul 12 07:58:16 2002 +0000
 
 commit f749c49cb4ebe181de145440246d3110f7052f24
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jul 12 07:52:16 2002 +0000
+Date:   Fri Jul 12 07:52:16 2002 +0000
 
     Add devanagari and cyrillic languages. Add Geez
 
@@ -24347,7 +29304,7 @@ Date:   Fri Jul 12 07:52:16 2002 +0000
 
 commit 2ce525423688d32b80587741d97a82209e52378c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jul 11 02:47:50 2002 +0000
+Date:   Thu Jul 11 02:47:50 2002 +0000
 
     Remove old FC_LANG constants now that fontconfig uses RFC 3066
     based names
@@ -24357,11 +29314,11 @@ Date: Thu Jul 11 02:47:50 2002 +0000
 
 commit 1bae57ddc82cc151bb7f0b6f2e75cc860a2b0608
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jul 10 21:57:23 2002 +0000
+Date:   Wed Jul 10 21:57:23 2002 +0000
 
     Use presentation forms for arabic matching, fix comment labeling
     persian
-       general forms
+        general forms
 
  fc-lang/ar.orth  | 114
  +++++++++++++++++++++++++++++++------------------------
@@ -24371,48 +29328,48 @@ Date: Wed Jul 10 21:57:23 2002 +0000
 
 commit e709ddfa10410f6e042a36fcf7d0cd1a40f84fad
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jul 9 22:08:14 2002 +0000
+Date:   Tue Jul 9 22:08:14 2002 +0000
 
     Use locale data set FC_LANG by default. Reorder FcPattern and
     FcValueList
-       to match Xft1.
+        to match Xft1.
 
  src/fcdefault.c | 53
  +++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h    |  4 ++--
+ src/fcint.h     |  4 ++--
  2 files changed, 55 insertions(+), 2 deletions(-)
 
 commit 2fcac34973eb9d62280ab7392566a35cb9ceac3d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jul 9 02:28:29 2002 +0000
+Date:   Tue Jul 9 02:28:29 2002 +0000
 
     Trim ideographic punctuation and Suzhou numerals from zh-tw
     orthography.
-       Had accidentally swapped codePageRange bits for traditional and
-       simplified chinese. Add persian (fa) and HKSCS (zh-hk). Fix
-       possible
-       bug in charset walking
+        Had accidentally swapped codePageRange bits for traditional and
+        simplified chinese. Add persian (fa) and HKSCS (zh-hk). Fix
+        possible
+        bug in charset walking
 
- fc-lang/Imakefile  |  18 +-
- fc-lang/fa.orth    |  53 ++
+ fc-lang/Imakefile  |   18 +-
+ fc-lang/fa.orth    |   53 ++
  fc-lang/fclang.h   | 1554 ++++++++++++++++++++++--------------
- fc-lang/iso639-2   |   4 +-
+ fc-lang/iso639-2   |    4 +-
  fc-lang/zh_hk.orth | 2240
  ++++++++++++++++++++++++++++++++++++++++++++++++++++
- fc-lang/zh_tw.orth |  33 +-
- src/fccharset.c    |   4 +-
- src/fcfreetype.c   |   6 +-
+ fc-lang/zh_tw.orth |   33 +-
+ src/fccharset.c    |    4 +-
+ src/fcfreetype.c   |    6 +-
  8 files changed, 3292 insertions(+), 620 deletions(-)
 
 commit e50b9ae71134a23820e8f50589649e629a6143ba
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jul 8 07:31:53 2002 +0000
+Date:   Mon Jul 8 07:31:53 2002 +0000
 
     Update iso639-2 language coverage info, fix Georgian orthography to
-       eliminate Mingrelian and Svan glyphs, use coverage for inclusion
-       and
-       OS/2 for Han exclusion, restructure fclang.c to use fclang.h from
-       fc-lang dir
+        eliminate Mingrelian and Svan glyphs, use coverage for inclusion
+        and
+        OS/2 for Han exclusion, restructure fclang.c to use fclang.h from
+        fc-lang dir
 
  fc-lang/Imakefile     |    8 +-
  fc-lang/fclang.h      | 2624
@@ -24424,26 +29381,26 @@ Date: Mon Jul 8 07:31:53 2002 +0000
  fc-lang/zh_mo.orth    |   27 +
  fc-lang/zh_sg.orth    |   27 +
  src/fcfreetype.c      |  238 +----
- src/fcint.h          |    9 +-
- src/fclang.c         | 2632
+ src/fcint.h           |    9 +-
+ src/fclang.c          | 2632
  +------------------------------------------------
  11 files changed, 2794 insertions(+), 2961 deletions(-)
 
 commit d6dabf368677babec02d8f64ba0598270e28b501
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 7 19:30:53 2002 +0000
+Date:   Sun Jul 7 19:30:53 2002 +0000
 
     Add walloon, update fclang.c to include recent language additions
 
- fc-lang/Imakefile |   4 +-
+ fc-lang/Imakefile |    4 +-
  fc-lang/wa.orth   |   47 ++
- src/fclang.c     | 1252
+ src/fclang.c      | 1252
  ++++++++++++++++++++++++++++++-----------------------
  3 files changed, 757 insertions(+), 546 deletions(-)
 
 commit 2903c146aa990cddd56926cef4a2e2f2bcb70e06
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 7 19:18:51 2002 +0000
+Date:   Sun Jul 7 19:18:51 2002 +0000
 
     Share more duplicate charset data
 
@@ -24467,7 +29424,7 @@ Date:   Sun Jul 7 19:18:51 2002 +0000
 
 commit 3de8881ec96e2ce5f9d871ad46371e301b107dab
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jul 7 00:00:43 2002 +0000
+Date:   Sun Jul 7 00:00:43 2002 +0000
 
     Add fclang.c to CVS; easier than attempting to build it on the fly
 
@@ -24477,11 +29434,11 @@ Date: Sun Jul 7 00:00:43 2002 +0000
 
 commit 6446b1511df528082d2ac9ff31617013b311aa09
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 6 23:59:19 2002 +0000
+Date:   Sat Jul 6 23:59:19 2002 +0000
 
     Remove at and grave from latin languages, add copyright, license
     and RCS
-       header
+        header
 
  fc-lang/Imakefile  |  2 ++
  fc-lang/ab.orth    | 23 +++++++++++++++++++++++
@@ -24552,24 +29509,24 @@ Date: Sat Jul 6 23:59:19 2002 +0000
 
 commit 82f4243f220dda5f6d4759e3b9c182b537cf0219
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 6 23:47:44 2002 +0000
+Date:   Sat Jul 6 23:47:44 2002 +0000
 
     Switch to RFC 3066 based lang names
 
  fontconfig/fontconfig.h |   5 +-
- src/Imakefile          |   8 +-
- src/fccharset.c        |   8 +-
- src/fcfreetype.c       | 406
+ src/Imakefile           |   8 +-
+ src/fccharset.c         |   8 +-
+ src/fcfreetype.c        | 406
  ++++++++++++++++++++++++------------------------
- src/fcint.h            |  28 ++++
- src/fcmatch.c          |  43 ++++-
- src/fcpat.c            |  22 ++-
- src/fcstr.c            |  25 ++-
+ src/fcint.h             |  28 ++++
+ src/fcmatch.c           |  43 ++++-
+ src/fcpat.c             |  22 ++-
+ src/fcstr.c             |  25 ++-
  8 files changed, 330 insertions(+), 215 deletions(-)
 
 commit 899e352656f04323b9467555faf9152c69a741ab
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 6 23:46:58 2002 +0000
+Date:   Sat Jul 6 23:46:58 2002 +0000
 
     Add a few more common font families to the default configuration
 
@@ -24578,7 +29535,7 @@ Date:   Sat Jul 6 23:46:58 2002 +0000
 
 commit 364a581d91eac73a5b1810d9c5100b6eb690219f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 6 23:22:03 2002 +0000
+Date:   Sat Jul 6 23:22:03 2002 +0000
 
     Add coverage documentation files
 
@@ -24589,7 +29546,7 @@ Date:   Sat Jul 6 23:22:03 2002 +0000
 
 commit c1382a3d998d098d3b86c922820558849c777c45
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jul 6 23:21:37 2002 +0000
+Date:   Sat Jul 6 23:21:37 2002 +0000
 
     Add fc-lang program to generate language coverage tables
 
@@ -24666,7 +29623,7 @@ Date:   Sat Jul 6 23:21:37 2002 +0000
 
 commit 084407063d0069b16b24e1fd8be818af12e36741
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jul 3 23:15:32 2002 +0000
+Date:   Wed Jul 3 23:15:32 2002 +0000
 
     Object list to FcObjectSetBuild wasnt terminated with 0
 
@@ -24675,7 +29632,7 @@ Date:   Wed Jul 3 23:15:32 2002 +0000
 
 commit f9dc31e81cd27be1bcb72706ac667889840f60bb
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Mon Jul 1 12:39:23 2002 +0000
+Date:   Mon Jul 1 12:39:23 2002 +0000
 
     Indent line
 
@@ -24684,7 +29641,7 @@ Date:   Mon Jul 1 12:39:23 2002 +0000
 
 commit 8ea04b7956bd148607ae4179584dd0c8aa60b41d
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Mon Jul 1 12:38:27 2002 +0000
+Date:   Mon Jul 1 12:38:27 2002 +0000
 
     Ident line
 
@@ -24693,7 +29650,7 @@ Date:   Mon Jul 1 12:38:27 2002 +0000
 
 commit ad07dcf486fe476ffccaa0d91df3836bfa4f4bd8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jul 1 05:11:20 2002 +0000
+Date:   Mon Jul 1 05:11:20 2002 +0000
 
     Make fc-cache avoid reading the whole world full of fonts
 
@@ -24702,7 +29659,7 @@ Date:   Mon Jul 1 05:11:20 2002 +0000
 
 commit e6099fe9799e79a467698f7e0ddb693fae5d7d2f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jun 30 23:45:40 2002 +0000
+Date:   Sun Jun 30 23:45:40 2002 +0000
 
     Make fc-list more useful
 
@@ -24711,7 +29668,7 @@ Date:   Sun Jun 30 23:45:40 2002 +0000
 
 commit bdcdaceda4154ea6aaed224d3bf62a578a1f6986
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jun 30 23:45:17 2002 +0000
+Date:   Sun Jun 30 23:45:17 2002 +0000
 
     Add FC_LANG_UNKNOWN (needed by auto lang-detecting fcfreetype.c)
 
@@ -24720,26 +29677,26 @@ Date: Sun Jun 30 23:45:17 2002 +0000
 
 commit 4c0036053a36678747adfd06777cef39752ca9a4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jun 29 20:31:02 2002 +0000
+Date:   Sat Jun 29 20:31:02 2002 +0000
 
     Add strong/weak pattern value binding, add known charsets for
     automatic
-       lang computation
+        lang computation
 
- src/fccfg.c      |    3 +-
+ src/fccfg.c       |    3 +-
  src/fccharset.c   |   40 +-
  src/fcfreetype.c  |  235 ++++++-
- src/fcint.h      |   15 +-
+ src/fcint.h       |   15 +-
  src/fcknownsets.h | 1895
  +++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcmatch.c    |  112 ++--
- src/fcname.c     |    7 +-
- src/fcpat.c      |    3 +-
+ src/fcmatch.c     |  112 ++--
+ src/fcname.c      |    7 +-
+ src/fcpat.c       |    3 +-
  8 files changed, 2222 insertions(+), 88 deletions(-)
 
 commit 5c7fb8274ce9c2c561cbcf73b9ee98003f516a9b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 26 22:56:51 2002 +0000
+Date:   Wed Jun 26 22:56:51 2002 +0000
 
     Construct empty constant charsets correctly (using null pointers)
 
@@ -24748,7 +29705,7 @@ Date:   Wed Jun 26 22:56:51 2002 +0000
 
 commit c552f59ba27ab1a526238f6ff4d15a2b9a975a7f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 26 22:14:08 2002 +0000
+Date:   Wed Jun 26 22:14:08 2002 +0000
 
     Permit empty charsets in fonts.cache files
 
@@ -24757,7 +29714,7 @@ Date:   Wed Jun 26 22:14:08 2002 +0000
 
 commit 223c028949c1ef316c93bea17278f58150c777ee
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 26 16:11:29 2002 +0000
+Date:   Wed Jun 26 16:11:29 2002 +0000
 
     Steal idea for locale-insensitive strtod from glib
 
@@ -24767,7 +29724,7 @@ Date:   Wed Jun 26 16:11:29 2002 +0000
 
 commit 4aded3e0ddca84b1fb0ce11541eb19b155472e83
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jun 21 07:01:11 2002 +0000
+Date:   Fri Jun 21 07:01:11 2002 +0000
 
     Oops. Made a mistake when adding config file names to monitor list
 
@@ -24776,22 +29733,22 @@ Date: Fri Jun 21 07:01:11 2002 +0000
 
 commit 4645eedfcc7e36751503bf023a0d1db2a993ad52
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jun 21 06:14:45 2002 +0000
+Date:   Fri Jun 21 06:14:45 2002 +0000
 
     Fix automatic file time checking, transcoding table searches. Actually
     add
-       config files used to config structure so they can be time
-       checked as
-       well
+        config files used to config structure so they can be time
+        checked as
+        well
 
- src/fccfg.c    | 31 ++++++++++++++-----------------
+ src/fccfg.c     | 31 ++++++++++++++-----------------
  src/fccharset.c | 11 +++--------
- src/fcxml.c    |  5 ++++-
+ src/fcxml.c     |  5 ++++-
  3 files changed, 21 insertions(+), 26 deletions(-)
 
 commit 8c96d1fc1005fda794ab30349eb91132fb8f341e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Jun 20 03:43:09 2002 +0000
+Date:   Thu Jun 20 03:43:09 2002 +0000
 
     Accidentally falling through several case blocks
 
@@ -24801,11 +29758,11 @@ Date: Thu Jun 20 03:43:09 2002 +0000
 
 commit c689ec2291d52a3c9ab998c9a25c0c9c78991921
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 19 21:32:51 2002 +0000
+Date:   Wed Jun 19 21:32:51 2002 +0000
 
     Add slanting for fonts without oblique/italic varient. Fix matching
     code to
-       make this work
+        make this work
 
  fonts.conf.in | 28 ++++++++++++++++++++++++++++
  src/fcmatch.c |  4 ++--
@@ -24813,7 +29770,7 @@ Date:   Wed Jun 19 21:32:51 2002 +0000
 
 commit 0c35c0facb1f05a21f702636a291eb6ee3dea3a2
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 19 20:55:19 2002 +0000
+Date:   Wed Jun 19 20:55:19 2002 +0000
 
     Make fc-cache more tolerant of missing font directories
 
@@ -24822,29 +29779,29 @@ Date: Wed Jun 19 20:55:19 2002 +0000
 
 commit 6f6563edb5eb0fc22b338101b82bd8b7db438e3a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 19 20:08:22 2002 +0000
+Date:   Wed Jun 19 20:08:22 2002 +0000
 
     Add ref counting to font config patterns so that FcFontSort return
     values
-       are persistant
+        are persistant
 
  fontconfig/fontconfig.h |  5 ++++-
- fonts.dtd              |  5 ++++-
- src/fccache.c          | 11 +++++++++--
- src/fccfg.c            |  4 ++++
- src/fcdbg.c            |  8 +++++++-
- src/fcdir.c            |  5 +++--
- src/fcint.h            |  9 +++++----
- src/fclist.c           |  2 +-
- src/fcmatch.c          | 21 +++++++++++++++++++--
- src/fcname.c           |  3 ++-
- src/fcpat.c            | 12 +++++++++++-
- src/fcxml.c            |  4 ++++
+ fonts.dtd               |  5 ++++-
+ src/fccache.c           | 11 +++++++++--
+ src/fccfg.c             |  4 ++++
+ src/fcdbg.c             |  8 +++++++-
+ src/fcdir.c             |  5 +++--
+ src/fcint.h             |  9 +++++----
+ src/fclist.c            |  2 +-
+ src/fcmatch.c           | 21 +++++++++++++++++++--
+ src/fcname.c            |  3 ++-
+ src/fcpat.c             | 12 +++++++++++-
+ src/fcxml.c             |  4 ++++
  12 files changed, 73 insertions(+), 16 deletions(-)
 
 commit 06a48f20739580338e69547c9896c539abf000dd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Jun 19 06:31:46 2002 +0000
+Date:   Wed Jun 19 06:31:46 2002 +0000
 
     Add a few aliases suggested by Owen and Mike
 
@@ -24853,11 +29810,11 @@ Date: Wed Jun 19 06:31:46 2002 +0000
 
 commit f534109f5aa44ffeb43acbe06b409e6a15239ac9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jun 18 22:23:05 2002 +0000
+Date:   Tue Jun 18 22:23:05 2002 +0000
 
     Add a few more families to fonts.conf, make FC_ANTIALIAS less
     important for
-       matching, fix family->generic mapping
+        matching, fix family->generic mapping
 
  src/fccfg.c   |  7 ++++---
  src/fcmatch.c | 22 +++++++++++-----------
@@ -24865,7 +29822,7 @@ Date:   Tue Jun 18 22:23:05 2002 +0000
 
 commit 2623c1ebeec46c56cc8e1d1e3e8ddf4a44931f8d
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jun 18 16:47:33 2002 +0000
+Date:   Tue Jun 18 16:47:33 2002 +0000
 
     Fix compiler warning
 
@@ -24874,17 +29831,17 @@ Date: Tue Jun 18 16:47:33 2002 +0000
 
 commit 5b1bfa5d82aeb67056a38e93e22f69c4bfe4ce5b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Jun 18 16:47:12 2002 +0000
+Date:   Tue Jun 18 16:47:12 2002 +0000
 
     Fix incorrect size in memmove call in FcObjectSetAdd that crashed
-       FcFontSetList calls
+        FcFontSetList calls
 
  src/fclist.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 commit c0d42979ad06db34b5b4aad7052716797dc2f6a6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jun 8 18:46:35 2002 +0000
+Date:   Sat Jun 8 18:46:35 2002 +0000
 
     Fix fontconfig.pc generation in Imakefile
 
@@ -24893,21 +29850,21 @@ Date: Sat Jun 8 18:46:35 2002 +0000
 
 commit d0f07b8d582499fdc6fa0ca6c5e2ef3727baddae
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sat Jun 8 17:32:05 2002 +0000
+Date:   Sat Jun 8 17:32:05 2002 +0000
 
     Add FcPatternHash, clean up a few valgrind issues
 
  fontconfig/fontconfig.h |  3 ++
- src/fccfg.c            |  2 +-
- src/fcmatch.c          | 11 ++++---
- src/fcpat.c            | 78
+ src/fccfg.c             |  2 +-
+ src/fcmatch.c           | 11 ++++---
+ src/fcpat.c             | 78
  +++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcxml.c            | 13 ++++++++-
+ src/fcxml.c             | 13 ++++++++-
  5 files changed, 101 insertions(+), 6 deletions(-)
 
 commit 8a39040e2a1308602aabe1aa4a8608f94830534e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Jun 7 17:55:41 2002 +0000
+Date:   Fri Jun 7 17:55:41 2002 +0000
 
     Make autoconf use correct options to build solaris shared libraries
 
@@ -24916,12 +29873,12 @@ Date: Fri Jun 7 17:55:41 2002 +0000
 
 commit b5b6d7f85dba271e69b8008b3c56f13c74ec9dac
 Author: David Dawes <dawes@xfree86.org>
-Date:  Tue Jun 4 21:55:42 2002 +0000
+Date:   Tue Jun 4 21:55:42 2002 +0000
 
     171. Fix LIBXML2LIBDIR name clash in lib/Imakefile (#5180, ISHIKAWA
-       Mutsumi).
+        Mutsumi).
     170. Avoid a problem with setfontdirs when run in some locales (#5179,
-       ISHIKAWA Mutsumi).
+        ISHIKAWA Mutsumi).
     169. A little tuning for XtAppPeekEvent() (#5178, Dan McNichol).
 
  setfontdirs | 5 +++++
@@ -24929,28 +29886,28 @@ Date: Tue Jun 4 21:55:42 2002 +0000
 
 commit e9be9cd10a24b75480a26be834041d312d8217b4
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Jun 3 08:31:15 2002 +0000
+Date:   Mon Jun 3 08:31:15 2002 +0000
 
     Add FcPatternEqualSubset for Pango, clean up some internal FcPattern
-       interfaces
+        interfaces
 
  fontconfig/fontconfig.h |   7 ++-
- src/fccfg.c            |  12 ++--
- src/fcint.h            |   7 ++-
- src/fclist.c           |  72 ++++++++++++++--------
- src/fcmatch.c          |   6 +-
- src/fcname.c           |   8 +--
- src/fcpat.c            | 161
+ src/fccfg.c             |  12 ++--
+ src/fcint.h             |   7 ++-
+ src/fclist.c            |  72 ++++++++++++++--------
+ src/fcmatch.c           |   6 +-
+ src/fcname.c            |   8 +--
+ src/fcpat.c             | 161
  +++++++++++++++++++++++++++++-------------------
  7 files changed, 166 insertions(+), 107 deletions(-)
 
 commit 88c747e20612ffcae326313f8d624b36c1235993
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jun 2 21:07:57 2002 +0000
+Date:   Sun Jun 2 21:07:57 2002 +0000
 
     Eliminate some compiler warnings, avoid seg fault when matching
     missing
-       values
+        values
 
  src/fccfg.c   | 4 ++--
  src/fcdbg.c   | 5 ++++-
@@ -24961,111 +29918,111 @@ Date:       Sun Jun 2 21:07:57 2002 +0000
 
 commit 2a41214a25ec902ac79d0b16cc0bab4461b91e6b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jun 2 20:52:06 2002 +0000
+Date:   Sun Jun 2 20:52:06 2002 +0000
 
     Add aspect ratio support to Xft and fontconfig
 
  fontconfig/fontconfig.h | 3 ++-
- src/fcname.c           | 3 ++-
+ src/fcname.c            | 3 ++-
  2 files changed, 4 insertions(+), 2 deletions(-)
 
 commit 8ec077f22b2f9fd693abfda7d405ac572594be99
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Jun 2 19:51:36 2002 +0000
+Date:   Sun Jun 2 19:51:36 2002 +0000
 
     Expression parsing in fonts.conf file mis-freed elements. Constant
     identity
-       matrix was accidentally freed. Add ability to comare FTFace
-       pattern
-       elements (not that its all that useful)
+        matrix was accidentally freed. Add ability to comare FTFace
+        pattern
+        elements (not that its all that useful)
 
  src/fccfg.c | 18 +++++++++++++++---
- src/fcxml.c | 5 +++--
+ src/fcxml.c |  5 +++--
  2 files changed, 18 insertions(+), 5 deletions(-)
 
 commit be0948508ce4ebbb6e576b9dd31531efef6834e1
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 31 23:21:25 2002 +0000
+Date:   Fri May 31 23:21:25 2002 +0000
 
     Add support for user-provided freetype faces to Xft
 
  fontconfig/fcfreetype.h |  8 +++++++-
  fontconfig/fcprivate.h  |  4 +++-
  fontconfig/fontconfig.h |  7 +++++--
- src/fccharset.c        |  5 +----
- src/fcfreetype.c       |  1 -
- src/fcint.h            |  3 ++-
- src/fcpat.c            | 29 ++++++++++++++++++++++++++++-
+ src/fccharset.c         |  5 +----
+ src/fcfreetype.c        |  1 -
+ src/fcint.h             |  3 ++-
+ src/fcpat.c             | 29 ++++++++++++++++++++++++++++-
  7 files changed, 46 insertions(+), 11 deletions(-)
 
 commit bff617fa560e9f0a1f79ffb4fff8e9ed6a81013e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 31 06:52:47 2002 +0000
+Date:   Fri May 31 06:52:47 2002 +0000
 
     Fix Xft2 to build right library version on old systems with xmkmf. Fix
-       fc-cache location for xmkmf out-of-tree build on old systems
+        fc-cache location for xmkmf out-of-tree build on old systems
 
  local.def | 2 ++
  1 file changed, 2 insertions(+)
 
 commit fbb405f3b5f25353babee1e813eb86d53912503f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 31 06:38:43 2002 +0000
+Date:   Fri May 31 06:38:43 2002 +0000
 
     Fix up support for building Xft1, Xrender and fontconfig out of
     the tree
 
  fc-list/Imakefile |  5 +++++
- local.def        | 14 ++++++++++++++
+ local.def         | 14 ++++++++++++++
  2 files changed, 19 insertions(+)
 
 commit 20ac65ab003c9b280e3fbd06215c5e3af16bea1f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 31 04:42:42 2002 +0000
+Date:   Fri May 31 04:42:42 2002 +0000
 
     Change FcCharSet datastructure, add FcFontSort API
 
  fontconfig/fontconfig.h |   9 +-
- src/fccharset.c        | 772
+ src/fccharset.c         | 772
  ++++++++++++++++++++++++++----------------------
- src/fcint.h            |  27 +-
- src/fcmatch.c          |  26 +-
+ src/fcint.h             |  27 +-
+ src/fcmatch.c           |  26 +-
  4 files changed, 451 insertions(+), 383 deletions(-)
 
 commit bc9469baadc6b5f9a920a476e460113bab518208
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed May 29 22:07:33 2002 +0000
+Date:   Wed May 29 22:07:33 2002 +0000
 
     Optimize after profiling. Fix FcStrCmp to return correct sign
 
  src/fccharset.c | 103 ++++++++++++++++++++++++++++++----------
- src/fcint.h    |   1 +
- src/fcmatch.c  | 143
+ src/fcint.h     |   1 +
+ src/fcmatch.c   | 143
  +++++++++++++++++++++++++++++++++++++++++---------------
- src/fcname.c   |   4 +-
- src/fcpat.c    |  13 +++---
- src/fcstr.c    |   6 +--
+ src/fcname.c    |   4 +-
+ src/fcpat.c     |  13 +++---
+ src/fcstr.c     |   6 +--
  6 files changed, 197 insertions(+), 73 deletions(-)
 
 commit 1412a69926307b2736745737c7c66172ebc56724
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed May 29 08:21:33 2002 +0000
+Date:   Wed May 29 08:21:33 2002 +0000
 
     Apply some obvious fixes to FcFontSetSort from Owen. Speed up
     FcCharSet
-       primitives and FcFontSetSort
+        primitives and FcFontSetSort
 
  fontconfig/fontconfig.h |   8 +-
- src/fccfg.c            |  10 +--
- src/fccharset.c        | 197
+ src/fccfg.c             |  10 +--
+ src/fccharset.c         | 197
  +++++++++++++++++++++++++++++++++++++++++++++---
- src/fcint.h            |   3 +-
- src/fcmatch.c          |  23 ++++--
+ src/fcint.h             |   3 +-
+ src/fcmatch.c           |  23 ++++--
  5 files changed, 219 insertions(+), 22 deletions(-)
 
 commit 78417a2c74f95a66e3738cf525f9d699e13c654a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 28 03:50:23 2002 +0000
+Date:   Tue May 28 03:50:23 2002 +0000
 
     Use explicit cd for non-gmake systems
 
@@ -25074,7 +30031,7 @@ Date:   Tue May 28 03:50:23 2002 +0000
 
 commit fcd247431f6251d430d20ceaaff6a39f6d87ec4c
 Author: Matthieu Herrb <matthieu.herrb@laas.fr>
-Date:  Sat May 25 13:52:37 2002 +0000
+Date:   Sat May 25 13:52:37 2002 +0000
 
     $< in a non-implicit rule is a GNU-makeism. It's not supported by
     BSD make.
@@ -25084,54 +30041,54 @@ Date: Sat May 25 13:52:37 2002 +0000
 
 commit ed2547b8585652a4a6f71e2bc24148e26ef6d0c8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 24 06:25:52 2002 +0000
+Date:   Fri May 24 06:25:52 2002 +0000
 
     Clean up autoconf install to obey DESTDIR
 
- Makefile.in           | 67
+ Makefile.in            | 67
  ++++++++++++++++++++++++++++++++++----------------
- fc-cache/Makefile.in  | 23 ++++++++++-------
- fc-list/Makefile.in   | 22 +++++++++++------
+ fc-cache/Makefile.in   | 23 ++++++++++-------
+ fc-list/Makefile.in    | 22 +++++++++++------
  fontconfig/Makefile.in | 24 +++++++++---------
- src/Makefile.in       | 48 +++++++++++++++++++++++++-----------
+ src/Makefile.in        | 48 +++++++++++++++++++++++++-----------
  5 files changed, 119 insertions(+), 65 deletions(-)
 
 commit 36732012151a91527f3ad7ad05569f40a0ca3cd9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 24 05:20:02 2002 +0000
+Date:   Fri May 24 05:20:02 2002 +0000
 
     Change charset enumeration functions to more sensible API
 
  fontconfig/fontconfig.h | 13 ++++++++++++-
- src/fccharset.c        | 46
+ src/fccharset.c         | 46
  +++++++++++++++++++++++++++++++++-------------
  2 files changed, 45 insertions(+), 14 deletions(-)
 
 commit c9f55ecb0672c98cb75b0b3b746dea515b27f7e6
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri May 24 05:19:30 2002 +0000
+Date:   Fri May 24 05:19:30 2002 +0000
 
     A few autoconf build fixes
 
- Makefile.in         | 12 ++++++++----
- configure.in        |  4 ++--
+ Makefile.in          | 12 ++++++++----
+ configure.in         |  4 ++--
  fontconfig-config.in | 10 +++++-----
  3 files changed, 15 insertions(+), 11 deletions(-)
 
 commit 48db40f692a31c39a96961c8733bfeaad416a5c0
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 23 23:00:46 2002 +0000
+Date:   Thu May 23 23:00:46 2002 +0000
 
     A few random fontconfig build fixes
 
- config/config-subst    | 12 +++++++-----
+ config/config-subst     | 12 +++++++-----
  fontconfig/fontconfig.h |  7 +++++--
- src/fcinit.c           |  8 +++++++-
+ src/fcinit.c            |  8 +++++++-
  3 files changed, 19 insertions(+), 8 deletions(-)
 
 commit 61bb4bad756c6c3da6bd8306e1c5cd2ec0b18415
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 23 17:09:32 2002 +0000
+Date:   Thu May 23 17:09:32 2002 +0000
 
     Dont require freetype to build with fontconfig
 
@@ -25140,16 +30097,16 @@ Date: Thu May 23 17:09:32 2002 +0000
 
 commit 2eafe0904dfcd08e87d125ff6893cb4d4f5a4a95
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 23 17:06:46 2002 +0000
+Date:   Thu May 23 17:06:46 2002 +0000
 
     Add pkgconfig control file and fontconfig-config script
 
- INSTALL             | 17 ++++++++--
- Imakefile           | 33 +++++++++++++++++-
- Makefile.in         | 18 ++++++++--
- README                      | 13 ++++++++
+ INSTALL              | 17 ++++++++--
+ Imakefile            | 33 +++++++++++++++++-
+ Makefile.in          | 18 ++++++++--
+ README               | 13 ++++++++
  config/config-subst  |  8 +++++
- configure.in        | 18 ++++++----
+ configure.in         | 18 ++++++----
  fontconfig-config.in | 94
  ++++++++++++++++++++++++++++++++++++++++++++++++++++
  fontconfig.pc.in     | 11 ++++++
@@ -25157,7 +30114,7 @@ Date:   Thu May 23 17:06:46 2002 +0000
 
 commit 1c20b1cc0b7a27f29634f80a9d48cbed8aabc7a9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu May 23 16:05:16 2002 +0000
+Date:   Thu May 23 16:05:16 2002 +0000
 
     Fonts.dtd had "blanks" instead of "blank"
 
@@ -25166,7 +30123,7 @@ Date:   Thu May 23 16:05:16 2002 +0000
 
 commit 442678fbc4d2654f1cc4b5afcbb9dd646e9c9779
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed May 22 22:59:41 2002 +0000
+Date:   Wed May 22 22:59:41 2002 +0000
 
     Missed a Makefile.in for fontconfig includes
 
@@ -25176,42 +30133,42 @@ Date: Wed May 22 22:59:41 2002 +0000
 
 commit 0ab36ca8f93f8f07ed81034caf453b79e2922122
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed May 22 04:37:07 2002 +0000
+Date:   Wed May 22 04:37:07 2002 +0000
 
     Replace silly avl sort with qsort, add FcPatternEqual
 
  fontconfig/fontconfig.h |   8 +-
- src/Imakefile          |   6 +-
- src/Makefile.in        |   4 +-
- src/fcavl.c            | 419
+ src/Imakefile           |   6 +-
+ src/Makefile.in         |   4 +-
+ src/fcavl.c             | 419
  ------------------------------------------------
- src/fcavl.h            |  46 ------
- src/fcmatch.c          |  76 ++++-----
- src/fcpat.c            | 109 ++++++++++++-
- src/fcxml.c            |   9 +-
+ src/fcavl.h             |  46 ------
+ src/fcmatch.c           |  76 ++++-----
+ src/fcpat.c             | 109 ++++++++++++-
+ src/fcxml.c             |   9 +-
  8 files changed, 162 insertions(+), 515 deletions(-)
 
 commit 446bb9c9e0a18d365de0578c6f0daf676e36f168
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 21 17:48:15 2002 +0000
+Date:   Tue May 21 17:48:15 2002 +0000
 
     More autoconf cleanup for fontconfig
 
- Makefile.in         |  8 +++-----
- config.h.in         |  2 +-
+ Makefile.in          |  8 +++-----
+ config.h.in          |  2 +-
  config/Makedefs.in   | 10 +++++++++-
- configure.in        | 55
+ configure.in         | 55
  ++++++++++++++++++++++++----------------------------
  fc-cache/Makefile.in |  4 +++-
  fc-list/Makefile.in  |  4 +++-
- src/Imakefile       |  4 ++--
+ src/Imakefile        |  4 ++--
  src/Makefile.in      |  5 +----
- src/fcinit.c        |  4 ++--
+ src/fcinit.c         |  4 ++--
  9 files changed, 49 insertions(+), 47 deletions(-)
 
 commit fb9545b1ba81604405f730de8c39f40b3fdc13bd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 21 17:08:42 2002 +0000
+Date:   Tue May 21 17:08:42 2002 +0000
 
     Fix xmkmf build process for fontconfig
 
@@ -25231,58 +30188,55 @@ Date: Tue May 21 17:08:42 2002 +0000
 
 commit 179c39959cc9c19004f8ca948623590e404c8c46
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue May 21 17:06:22 2002 +0000
+Date:   Tue May 21 17:06:22 2002 +0000
 
     Fix autoconf build process for fontconfig
 
- config/Makedefs.in     |   68 +++
- config/config.guess    | 1391
+ config/Makedefs.in      |   68 +++
+ config/config.guess     | 1391
  +++++++++++++++++++++++++++++++++++++++++++++++
- config/config.sub      | 1355
+ config/config.sub       | 1355
  +++++++++++++++++++++++++++++++++++++++++++++
- config/install.sh      |  240 ++++++++
- fc-cache/Imakefile     |    7 +-
- fc-cache/Makefile.in   |   46 ++
- fc-cache/fc-cache.c    |  161 ++++--
- fc-list/Makefile.in    |   46 ++
+ config/install.sh       |  240 ++++++++
+ fc-cache/Imakefile      |    7 +-
+ fc-cache/Makefile.in    |   46 ++
+ fc-cache/fc-cache.c     |  161 ++++--
+ fc-list/Makefile.in     |   46 ++
  fontconfig/fontconfig.h |   80 ++-
- src/Makefile.in        |  105 ++++
- src/fccache.c          |  164 ++++--
- src/fccfg.c            |  352 ++++++++----
- src/fcdir.c            |   84 ++-
- src/fcinit.c           |  109 +++-
- src/fcint.h            |   52 +-
- src/fclist.c           |    5 +-
- src/fcstr.c            |  228 +++++++-
- src/fcxml.c            |  215 +++++---
+ src/Makefile.in         |  105 ++++
+ src/fccache.c           |  164 ++++--
+ src/fccfg.c             |  352 ++++++++----
+ src/fcdir.c             |   84 ++-
+ src/fcinit.c            |  109 +++-
+ src/fcint.h             |   52 +-
+ src/fclist.c            |    5 +-
+ src/fcstr.c             |  228 +++++++-
+ src/fcxml.c             |  215 +++++---
  18 files changed, 4377 insertions(+), 331 deletions(-)
 
 commit 1ce2a1bbadc15147e35dbc4c43fae072b8c4805e
 Author: Matthieu Herrb <matthieu.herrb@laas.fr>
-Date:  Sun May 5 17:53:41 2002 +0000
+Date:   Sun May 5 17:53:41 2002 +0000
 
     Don't run fc-cache on make install if DESTDIR is set. Instead;
     run it from
-       Xinstall.sh after XFree86 is installed.
+        Xinstall.sh after XFree86 is installed.
 
  fc-cache/Imakefile | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 commit 28e413038db10e236abb1d6f82c7889d8e52d7a5
 Author: Alan Hourihane <alanh@fairlite.demon.co.uk>
-Date:  Wed Apr 10 11:28:10 2002 +0000
+Date:   Wed Apr 10 11:28:10 2002 +0000
 
     put fontconfig-def.cpp in the right place.
 
- fontconfig-def.cpp    | 170
- -------------------------------------------------
- src/fontconfig-def.cpp | 170
- +++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 170 insertions(+), 170 deletions(-)
+ fontconfig-def.cpp => src/fontconfig-def.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit d82a034f9123558b300c956feec165c50ef7ada2
 Author: Alan Hourihane <alanh@fairlite.demon.co.uk>
-Date:  Sun Apr 7 15:19:46 2002 +0000
+Date:   Sun Apr 7 15:19:46 2002 +0000
 
     new preprocessor files. (#5215-#5218, Alexander Gottwald).
 
@@ -25292,7 +30246,7 @@ Date:   Sun Apr 7 15:19:46 2002 +0000
 
 commit d9db7b9e94f0aec127066e81b9e7dbbf05cd740f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Mar 27 04:33:55 2002 +0000
+Date:   Wed Mar 27 04:33:55 2002 +0000
 
     Fix FT_Get_Next_Char API to match official 2.0.9 released version
 
@@ -25301,7 +30255,7 @@ Date:   Wed Mar 27 04:33:55 2002 +0000
 
 commit 8c7b2a9d83fbe23e9073a188c7b970f100a91562
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Mon Mar 4 21:15:28 2002 +0000
+Date:   Mon Mar 4 21:15:28 2002 +0000
 
     Warning fixes
 
@@ -25310,20 +30264,20 @@ Date: Mon Mar 4 21:15:28 2002 +0000
 
 commit 216fac98e0785e787e32ff354241935a25723e4b
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 3 18:39:05 2002 +0000
+Date:   Sun Mar 3 18:39:05 2002 +0000
 
     Add match routine that returns list of fonts
 
  fontconfig/fontconfig.h |  14 ++
- src/fcavl.c            | 419
+ src/fcavl.c             | 419
  ++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcavl.h            |  46 ++++++
- src/fcmatch.c          | 225 ++++++++++++++++++++++----
+ src/fcavl.h             |  46 ++++++
+ src/fcmatch.c           | 225 ++++++++++++++++++++++----
  4 files changed, 671 insertions(+), 33 deletions(-)
 
 commit ee9061efe984a3c5b659449f8db57a03b6bf5d13
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 3 18:36:26 2002 +0000
+Date:   Sun Mar 3 18:36:26 2002 +0000
 
     Eliminate duplicate definitions in fcint.h and fontconfig.h
 
@@ -25332,7 +30286,7 @@ Date:   Sun Mar 3 18:36:26 2002 +0000
 
 commit 5faa099cd5fb8d9d9f868362233929ff36cd0ac8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 3 18:35:22 2002 +0000
+Date:   Sun Mar 3 18:35:22 2002 +0000
 
     fontconfig: bail scanning directory on fatal error
 
@@ -25341,7 +30295,7 @@ Date:   Sun Mar 3 18:35:22 2002 +0000
 
 commit 17e16fa1108491fa625258bba12e71aaad8a34de
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 3 18:31:20 2002 +0000
+Date:   Sun Mar 3 18:31:20 2002 +0000
 
     Eliminate compiler warnings
 
@@ -25351,31 +30305,31 @@ Date: Sun Mar 3 18:31:20 2002 +0000
 
 commit a391da8f0f867b8f87b1912a91882b108d163e03
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Mar 3 00:19:43 2002 +0000
+Date:   Sun Mar 3 00:19:43 2002 +0000
 
     Add fcatomic.c
 
- src/Imakefile |   4 +-
+ src/Imakefile  |   4 +-
  src/fcatomic.c | 183
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fccache.c |   4 ++
+ src/fccache.c  |   4 ++
  3 files changed, 189 insertions(+), 2 deletions(-)
 
 commit 134f6011f347d1bc1b80a3cd435bb10b38d2932e
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 1 22:06:30 2002 +0000
+Date:   Fri Mar 1 22:06:30 2002 +0000
 
     Add new FcAtomic datatype for config file locking
 
  fontconfig/fontconfig.h | 30 +++++++++++++++++++++++++++++-
- src/Imakefile          | 12 ++++++------
- src/fccache.c          | 34 ++++++++++++++--------------------
- src/fcint.h            |  9 ++++++++-
+ src/Imakefile           | 12 ++++++------
+ src/fccache.c           | 34 ++++++++++++++--------------------
+ src/fcint.h             |  9 ++++++++-
  4 files changed, 57 insertions(+), 28 deletions(-)
 
 commit d23a2a6dfa0ae81298a238899512c7d7c99c5430
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Fri Mar 1 17:52:03 2002 +0000
+Date:   Fri Mar 1 17:52:03 2002 +0000
 
     Add missing clean rule
 
@@ -25384,32 +30338,32 @@ Date: Fri Mar 1 17:52:03 2002 +0000
 
 commit 9c8e07f19589ba944e7bfb31251228b41a02f787
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Mar 1 01:00:54 2002 +0000
+Date:   Fri Mar 1 01:00:54 2002 +0000
 
     Port Xft1 to fontconfig
 
  fontconfig/fontconfig.h |  8 +++++++-
- src/fccache.c          | 13 +++++++------
- src/fccfg.c            | 10 +++++-----
- src/fcdir.c            |  4 ++--
+ src/fccache.c           | 13 +++++++------
+ src/fccfg.c             | 10 +++++-----
+ src/fcdir.c             |  4 ++--
  4 files changed, 21 insertions(+), 14 deletions(-)
 
 commit 80c053b725669c1e982cceedb87f04ebb9c6f1e9
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 28 16:51:48 2002 +0000
+Date:   Thu Feb 28 16:51:48 2002 +0000
 
     Add better error reporting when loading config file
 
- fc-list/fc-list.c      |  2 +-
+ fc-list/fc-list.c       |  2 +-
  fontconfig/fontconfig.h | 16 +++++++++++++++-
- src/fclist.c           | 36 ++++++++++++++++++++++++++++++------
- src/fcmatch.c          | 38 +++++++++++++++++++++++++++++++-------
- src/fcxml.c            | 12 +++++++++++-
+ src/fclist.c            | 36 ++++++++++++++++++++++++++++++------
+ src/fcmatch.c           | 38 +++++++++++++++++++++++++++++++-------
+ src/fcxml.c             | 12 +++++++++++-
  5 files changed, 88 insertions(+), 16 deletions(-)
 
 commit c4bd0638c5f14329e71be8f170c30d376fc76972
 Author: Marc Aurele La France <tsi@ualberta.edu>
-Date:  Tue Feb 26 05:10:30 2002 +0000
+Date:   Tue Feb 26 05:10:30 2002 +0000
 
     Warning fixes
 
@@ -25419,7 +30373,7 @@ Date:   Tue Feb 26 05:10:30 2002 +0000
 
 commit c5350655bef34cc08739bed324a482473b2a01b8
 Author: Keith Packard <keithp@keithp.com>
-Date:  Sun Feb 24 01:23:35 2002 +0000
+Date:   Sun Feb 24 01:23:35 2002 +0000
 
     Check font edit value lists for empty
 
@@ -25428,18 +30382,18 @@ Date: Sun Feb 24 01:23:35 2002 +0000
 
 commit bbbaac369186f6d2c21d28a091e4a8b6259f8e8a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 22 18:54:07 2002 +0000
+Date:   Fri Feb 22 18:54:07 2002 +0000
 
     fontconfig: some config file parsing mistakes
 
  src/fcfreetype.c | 2 +-
- src/fcint.h     | 9 ---------
- src/fcxml.c     | 8 ++++++--
+ src/fcint.h      | 9 ---------
+ src/fcxml.c      | 8 ++++++--
  3 files changed, 7 insertions(+), 12 deletions(-)
 
 commit a398554a6d6467956c1c3471e912fb4e969835eb
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 20 01:01:21 2002 +0000
+Date:   Wed Feb 20 01:01:21 2002 +0000
 
     Remove fcxml.h include file as it cant work anymore anyhow
 
@@ -25449,7 +30403,7 @@ Date:   Wed Feb 20 01:01:21 2002 +0000
 
 commit 24c90386bbdda9800d5a35c4dbff08682186907f
 Author: Keith Packard <keithp@keithp.com>
-Date:  Wed Feb 20 00:32:30 2002 +0000
+Date:   Wed Feb 20 00:32:30 2002 +0000
 
     dont complain about missing optional included font config files
 
@@ -25458,7 +30412,7 @@ Date:   Wed Feb 20 00:32:30 2002 +0000
 
 commit 6e9fc5ded4a36fb3e9e31b96f837b2e54f1cd77c
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Feb 19 08:33:23 2002 +0000
+Date:   Tue Feb 19 08:33:23 2002 +0000
 
     Automatically initialize the fontconfig library
 
@@ -25469,48 +30423,48 @@ Date: Tue Feb 19 08:33:23 2002 +0000
 
 commit aae6f7d48744a25899cac28d47458f394defa02a
 Author: Keith Packard <keithp@keithp.com>
-Date:  Tue Feb 19 07:50:44 2002 +0000
+Date:   Tue Feb 19 07:50:44 2002 +0000
 
     Eliminate const in FcPatternGetString; too hard. Add FcCharSetCoverage
     to
-       enumarate Unicode coverage efficiently
+        enumarate Unicode coverage efficiently
 
  fontconfig/fontconfig.h |  7 +++++--
- src/fccache.c          |  4 ++--
- src/fccharset.c        | 23 ++++++++++++++++++++++-
- src/fcpat.c            |  6 +++---
+ src/fccache.c           |  4 ++--
+ src/fccharset.c         | 23 ++++++++++++++++++++++-
+ src/fcpat.c             |  6 +++---
  4 files changed, 32 insertions(+), 8 deletions(-)
 
 commit c2e7c611cbef33e9f93fbb110cd8df61abec67d7
 Author: Keith Packard <keithp@keithp.com>
-Date:  Mon Feb 18 22:29:28 2002 +0000
+Date:   Mon Feb 18 22:29:28 2002 +0000
 
     Switch fontconfig from libxml2 to expat
 
- src/Imakefile  |    3 +-
+ src/Imakefile   |    3 +-
  src/fccharset.c |   12 +-
- src/fcdbg.c    |   20 +-
- src/fcint.h    |   34 +-
- src/fcname.c   |   98 +---
- src/fcstr.c    |   92 ++-
- src/fcxml.c    | 1764
+ src/fcdbg.c     |   20 +-
+ src/fcint.h     |   34 +-
+ src/fcname.c    |   98 +---
+ src/fcstr.c     |   92 ++-
+ src/fcxml.c     | 1764
  ++++++++++++++++++++++++++++++++++++-------------------
  7 files changed, 1326 insertions(+), 697 deletions(-)
 
 commit 2eb26602ffcfb3c3489849210502c4e00b370dfd
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 15 23:45:33 2002 +0000
+Date:   Fri Feb 15 23:45:33 2002 +0000
 
     fontconfig fc-cache program needs to be executed with correct
     environment
-       on install
+        on install
 
  fc-cache/Imakefile | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 65018b4a468c3175790dc27dfe37987151ad97d5
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 15 07:36:14 2002 +0000
+Date:   Fri Feb 15 07:36:14 2002 +0000
 
     Update to Xft version 2
 
@@ -25519,104 +30473,104 @@ Date:       Fri Feb 15 07:36:14 2002 +0000
 
 commit ccb3e93b2754542d08dcd2572402560d76a8ed91
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 15 06:01:28 2002 +0000
+Date:   Fri Feb 15 06:01:28 2002 +0000
 
     fontconfig library: build fixes and compiler warning fixes
 
- fc-cache/Imakefile     |   2 +-
- fc-list/Imakefile      |   2 +-
- fc-list/fc-list.c      |   5 +-
+ fc-cache/Imakefile      |   2 +-
+ fc-list/Imakefile       |   2 +-
+ fc-list/fc-list.c       |   5 +-
  fontconfig/fcfreetype.h |   1 +
  fontconfig/fcprivate.h  |   2 +-
- fontconfig/fcxml.h     |   2 +-
+ fontconfig/fcxml.h      |   2 +-
  fontconfig/fontconfig.h |  61 ++++++++---------
- src/fccache.c          | 176
+ src/fccache.c           | 176
  ++++++++++++++++++++++++++++++------------------
- src/fccfg.c            | 126 +++++++++++++++++-----------------
- src/fccharset.c        |  23 ++++---
- src/fcdir.c            |  58 ++++++++--------
- src/fcfreetype.c       | 106 ++++++++++++++---------------
- src/fcinit.c           |   2 +-
- src/fcint.h            |  74 ++++++++------------
- src/fcmatch.c          |   7 +-
- src/fcname.c           |  92 ++++++++++++-------------
- src/fcpat.c            |  10 +--
- src/fcstr.c            |  32 ++++-----
- src/fcxml.c            | 135 +++++++++++++++++++------------------
+ src/fccfg.c             | 126 +++++++++++++++++-----------------
+ src/fccharset.c         |  23 ++++---
+ src/fcdir.c             |  58 ++++++++--------
+ src/fcfreetype.c        | 106 ++++++++++++++---------------
+ src/fcinit.c            |   2 +-
+ src/fcint.h             |  74 ++++++++------------
+ src/fcmatch.c           |   7 +-
+ src/fcname.c            |  92 ++++++++++++-------------
+ src/fcpat.c             |  10 +--
+ src/fcstr.c             |  32 ++++-----
+ src/fcxml.c             | 135 +++++++++++++++++++------------------
  19 files changed, 473 insertions(+), 443 deletions(-)
 
 commit 3be03bed3955e91882b65315fdf8a68e4b453431
 Author: Keith Packard <keithp@keithp.com>
-Date:  Fri Feb 15 00:49:44 2002 +0000
+Date:   Fri Feb 15 00:49:44 2002 +0000
 
     Update fontconfig and libxml2 to get them working with in-tree build
-       process
+        process
 
  fc-cache/Imakefile | 12 +++---------
  fc-list/Imakefile  | 13 +++----------
- src/Imakefile     | 55
+ src/Imakefile      | 55
  ++++++------------------------------------------------
  3 files changed, 12 insertions(+), 68 deletions(-)
 
 commit 82e6d72059aaa4beccb2ec39706ef86e99e479de
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 14 23:34:13 2002 +0000
+Date:   Thu Feb 14 23:34:13 2002 +0000
 
     Add new font configuration library which forms the basis of the
     new version
-       of Xft
+        of Xft
 
 commit 24330d27f88bbf387d92128d2c21e005f2563e93
 Author: Keith Packard <keithp@keithp.com>
-Date:  Thu Feb 14 23:34:13 2002 +0000
+Date:   Thu Feb 14 23:34:13 2002 +0000
 
     Initial revision
 
- AUTHORS                |    1 +
- COPYING                |   22 +
- ChangeLog              |    0
- INSTALL                |    3 +
- Imakefile              |   25 +
- NEWS                   |    0
- README                         |    2 +
- acconfig.h             |    2 +
- configure.in           |  202 +++++++
- cvscompile.sh          |    6 +
- doc/fontconfig.tex     |   55 ++
- fc-cache/Imakefile     |   19 +
- fc-cache/fc-cache.c    |  145 +++++
- fc-cache/fc-cache.man  |   45 ++
- fc-list/Imakefile      |   17 +
- fc-list/fc-list.c      |  128 ++++
- fc-list/fc-list.man    |   36 ++
- findfonts              |    8 +
- fontconfig/Imakefile   |    8 +
+ AUTHORS                 |    1 +
+ COPYING                 |   22 +
+ ChangeLog               |    0
+ INSTALL                 |    3 +
+ Imakefile               |   25 +
+ NEWS                    |    0
+ README                  |    2 +
+ acconfig.h              |    2 +
+ configure.in            |  202 +++++++
+ cvscompile.sh           |    6 +
+ doc/fontconfig.tex      |   55 ++
+ fc-cache/Imakefile      |   19 +
+ fc-cache/fc-cache.c     |  145 +++++
+ fc-cache/fc-cache.man   |   45 ++
+ fc-list/Imakefile       |   17 +
+ fc-list/fc-list.c       |  128 ++++
+ fc-list/fc-list.man     |   36 ++
+ findfonts               |    8 +
+ fontconfig/Imakefile    |    8 +
  fontconfig/fcfreetype.h |   34 ++
  fontconfig/fcprivate.h  |  117 ++++
- fontconfig/fcxml.h     |   37 ++
+ fontconfig/fcxml.h      |   37 ++
  fontconfig/fontconfig.h |  551 +++++++++++++++++
- fonts.conf.in          |  191 ++++++
- fonts.dtd              |  165 +++++
- setfontdirs            |   19 +
- src/Imakefile          |   90 +++
- src/fcblanks.c                 |   84 +++
- src/fccache.c          |  592 ++++++++++++++++++
- src/fccfg.c            | 1369 ++++++++++++++++++++++++++++++++++++++++++
- src/fccharset.c        | 1521
+ fonts.conf.in           |  191 ++++++
+ fonts.dtd               |  165 +++++
+ setfontdirs             |   19 +
+ src/Imakefile           |   90 +++
+ src/fcblanks.c          |   84 +++
+ src/fccache.c           |  592 ++++++++++++++++++
+ src/fccfg.c             | 1369 ++++++++++++++++++++++++++++++++++++++++++
+ src/fccharset.c         | 1521
  +++++++++++++++++++++++++++++++++++++++++++++++
- src/fcdbg.c            |  272 +++++++++
- src/fcdefault.c        |   87 +++
- src/fcdir.c            |  178 ++++++
- src/fcfreetype.c       |  236 ++++++++
- src/fcfs.c             |   82 +++
- src/fcinit.c           |  174 ++++++
- src/fcint.h            |  480 +++++++++++++++
- src/fclist.c           |  442 ++++++++++++++
- src/fcmatch.c          |  347 +++++++++++
- src/fcmatrix.c                 |  112 ++++
- src/fcname.c           |  621 +++++++++++++++++++
- src/fcpat.c            |  491 +++++++++++++++
- src/fcstr.c            |  188 ++++++
- src/fcxml.c            | 1032 ++++++++++++++++++++++++++++++++
- src/fontconfig.man     | 1113 ++++++++++++++++++++++++++++++++++
+ src/fcdbg.c             |  272 +++++++++
+ src/fcdefault.c         |   87 +++
+ src/fcdir.c             |  178 ++++++
+ src/fcfreetype.c        |  236 ++++++++
+ src/fcfs.c              |   82 +++
+ src/fcinit.c            |  174 ++++++
+ src/fcint.h             |  480 +++++++++++++++
+ src/fclist.c            |  442 ++++++++++++++
+ src/fcmatch.c           |  347 +++++++++++
+ src/fcmatrix.c          |  112 ++++
+ src/fcname.c            |  621 +++++++++++++++++++
+ src/fcpat.c             |  491 +++++++++++++++
+ src/fcstr.c             |  188 ++++++
+ src/fcxml.c             | 1032 ++++++++++++++++++++++++++++++++
+ src/fontconfig.man      | 1113 ++++++++++++++++++++++++++++++++++
  46 files changed, 11349 insertions(+)
index cc3024e..6d4cd32 100644 (file)
@@ -31,14 +31,32 @@ endif
 
 ACLOCAL_AMFLAGS = -I m4
 
+MESON_FILES = \
+       conf.d/link_confs.py \
+       conf.d/write-35-lang-normalize-conf.py \
+       doc/edit-sgml.py \
+       doc/extract-man-list.py \
+       doc/run-quiet.py \
+       fc-case/fc-case.py \
+       fc-lang/fc-lang.py \
+       meson.build \
+       meson_options.txt \
+       src/cutout.py \
+       src/fcstdint.h.in \
+       src/fcwindows.h \
+       src/fontconfig.def.in \
+       src/makealias.py \
+       $(wildcard $(srcdir)/*/meson.build) \
+       $(wildcard $(srcdir)/meson-cc-tests/*) \
+       $(wildcard $(srcdir)/subprojects/*.wrap)
+
 EXTRA_DIST = config.rpath  \
        fontconfig.pc.in \
        fonts.conf.in \
        fonts.dtd \
-       fontconfig.spec.in \
-       fontconfig.spec \
        fontconfig-zip.in \
-       config-fixups.h
+       config-fixups.h \
+       $(MESON_FILES)
 CLEANFILES = fonts.conf
 DISTCLEANFILES = config.cache doltcompile
 MAINTAINERCLEANFILES = \
@@ -65,7 +83,7 @@ configdir = $(CONFIGDIR)
 xmldir = $(XMLDIR)
 xml_DATA = fonts.dtd
 
-if CROSS_COMPILING
+if !ENABLE_CACHE_BUILD
   RUN_FC_CACHE_TEST=false
 else
   RUN_FC_CACHE_TEST=test -z "$(DESTDIR)"
@@ -96,7 +114,7 @@ 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_DEFAULT_FONTS\@,      $(FC_DEFAULT_FONTS),g' \
                -e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
                -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
                -e 's,@PACKAGE\@,$(PACKAGE),g' \
@@ -155,4 +173,14 @@ debuild-dirs: distdir
 
 DISTCHECK_CONFIGURE_FLAGS =
 
+check-versions:
+       @$(GREP) -e "^[[:space:]]*version[[:space:]]*:[[:space:]]*'$(VERSION)'," $(srcdir)/meson.build >/dev/null || { \
+         echo "======================================================================================"; \
+         echo "Meson version does not seem to match autotools version $(VERSION), update meson.build!"; \
+         echo "======================================================================================"; \
+         exit 1; \
+       }
+
+all-local: check-versions
+
 -include $(top_srcdir)/git.mk
index bea1b79..fd9b473 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -134,7 +134,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
-CONFIG_CLEAN_FILES = fontconfig.spec fontconfig.pc fontconfig-zip
+CONFIG_CLEAN_FILES = fontconfig.pc fontconfig-zip
 CONFIG_CLEAN_VPATH_FILES =
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -200,8 +200,8 @@ am__recursive_targets = \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
        cscope distdir distdir-am dist dist-all distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-       $(LISP)config.h.in
+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.
@@ -218,17 +218,14 @@ am__define_uniq_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-case fc-lang src fc-cache fc-cat \
        fc-conflist fc-list fc-match fc-pattern fc-query fc-scan \
        fc-validate conf.d its po po-conf test doc
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
        $(srcdir)/fontconfig-zip.in $(srcdir)/fontconfig.pc.in \
-       $(srcdir)/fontconfig.spec.in ABOUT-NLS AUTHORS COPYING \
-       ChangeLog INSTALL NEWS README compile config.guess \
-       config.rpath config.sub depcomp install-sh ltmain.sh missing
+       ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README \
+       compile config.guess config.rpath config.sub depcomp \
+       install-sh ltmain.sh missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -264,9 +261,11 @@ am__relativize = \
     dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
   done; \
   reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
+DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.xz
 GZIP_ENV = --best
-DIST_TARGETS = dist-bzip2 dist-gzip
+DIST_TARGETS = dist-xz dist-gzip
+# Exists only to be overridden by the user if desired.
+AM_DISTCHECK_DVI_TARGET = dvi
 distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@@ -288,6 +287,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -299,6 +300,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -309,6 +311,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -379,9 +382,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -390,8 +399,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -443,9 +450,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -458,9 +470,27 @@ SUBDIRS = fontconfig fc-case fc-lang src fc-cache fc-cat fc-conflist \
        fc-list fc-match fc-pattern fc-query fc-scan fc-validate \
        conf.d its po po-conf test $(am__append_1)
 ACLOCAL_AMFLAGS = -I m4
+MESON_FILES = \
+       conf.d/link_confs.py \
+       conf.d/write-35-lang-normalize-conf.py \
+       doc/edit-sgml.py \
+       doc/extract-man-list.py \
+       doc/run-quiet.py \
+       fc-case/fc-case.py \
+       fc-lang/fc-lang.py \
+       meson.build \
+       meson_options.txt \
+       src/cutout.py \
+       src/fcstdint.h.in \
+       src/fcwindows.h \
+       src/fontconfig.def.in \
+       src/makealias.py \
+       $(wildcard $(srcdir)/*/meson.build) \
+       $(wildcard $(srcdir)/meson-cc-tests/*) \
+       $(wildcard $(srcdir)/subprojects/*.wrap)
+
 EXTRA_DIST = config.rpath fontconfig.pc.in fonts.conf.in fonts.dtd \
-       fontconfig.spec.in fontconfig.spec fontconfig-zip.in \
-       config-fixups.h ChangeLog
+       fontconfig-zip.in config-fixups.h $(MESON_FILES) ChangeLog
 CLEANFILES = fonts.conf
 DISTCLEANFILES = config.cache doltcompile
 
@@ -477,8 +507,8 @@ 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
+@ENABLE_CACHE_BUILD_FALSE@RUN_FC_CACHE_TEST = false
+@ENABLE_CACHE_BUILD_TRUE@RUN_FC_CACHE_TEST = test -z "$(DESTDIR)"
 FC_CONFIGDIR = $(subst $(BASECONFIGDIR)/,,$(CONFIGDIR))
 DISTCHECK_CONFIGURE_FLAGS = 
 all: config.h
@@ -533,8 +563,6 @@ $(srcdir)/config.h.in:  $(am__configure_deps)
 
 distclean-hdr:
        -rm -f config.h stamp-h1
-fontconfig.spec: $(top_builddir)/config.status $(srcdir)/fontconfig.spec.in
-       cd $(top_builddir) && $(SHELL) ./config.status $@
 fontconfig.pc: $(top_builddir)/config.status $(srcdir)/fontconfig.pc.in
        cd $(top_builddir) && $(SHELL) ./config.status $@
 fontconfig-zip: $(top_builddir)/config.status $(srcdir)/fontconfig-zip.in
@@ -696,7 +724,6 @@ cscopelist-am: $(am__tagged_files)
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
        -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -767,6 +794,7 @@ distdir-am: $(DISTFILES)
 dist-gzip: distdir
        tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
        $(am__post_remove_distdir)
+
 dist-bzip2: distdir
        tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
        $(am__post_remove_distdir)
@@ -774,11 +802,14 @@ dist-bzip2: distdir
 dist-lzip: distdir
        tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
        $(am__post_remove_distdir)
-
 dist-xz: distdir
        tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
        $(am__post_remove_distdir)
 
+dist-zstd: distdir
+       tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+       $(am__post_remove_distdir)
+
 dist-tarZ: distdir
        @echo WARNING: "Support for distribution archives compressed with" \
                       "legacy program 'compress' is deprecated." >&2
@@ -821,6 +852,8 @@ distcheck: dist
          eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
+       *.tar.zst*) \
+         zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
        esac
        chmod -R a-w $(distdir)
        chmod u+w $(distdir)
@@ -836,7 +869,7 @@ distcheck: dist
            $(DISTCHECK_CONFIGURE_FLAGS) \
            --srcdir=../.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
-         && $(MAKE) $(AM_MAKEFLAGS) dvi \
+         && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
          && $(MAKE) $(AM_MAKEFLAGS) check \
          && $(MAKE) $(AM_MAKEFLAGS) install \
          && $(MAKE) $(AM_MAKEFLAGS) installcheck \
@@ -889,7 +922,7 @@ distcleancheck: distclean
               exit 1; } >&2
 check-am: all-am
 check: check-recursive
-all-am: Makefile $(DATA) config.h
+all-am: Makefile $(DATA) config.h all-local
 installdirs: installdirs-recursive
 installdirs-am:
        for dir in "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(xmldir)"; do \
@@ -1002,23 +1035,24 @@ uninstall-am: uninstall-local uninstall-pkgconfigDATA \
 
 .MAKE: $(am__recursive_targets) all install-am install-strip
 
-.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \
        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 \
-       install-pkgconfigDATA install-ps install-ps-am install-strip \
-       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-am uninstall uninstall-am uninstall-local \
-       uninstall-pkgconfigDATA uninstall-xmlDATA
+       dist-xz dist-zip dist-zstd 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 install-pkgconfigDATA install-ps \
+       install-ps-am install-strip 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-am uninstall \
+       uninstall-am uninstall-local uninstall-pkgconfigDATA \
+       uninstall-xmlDATA
 
 .PRECIOUS: Makefile
 
@@ -1041,7 +1075,7 @@ $(srcdir)/ChangeLog:
 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_DEFAULT_FONTS\@,      $(FC_DEFAULT_FONTS),g' \
                -e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
                -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
                -e 's,@PACKAGE\@,$(PACKAGE),g' \
@@ -1098,6 +1132,16 @@ debuild-dirs: distdir
        cp -a $(distdir) $(distdir).orig
        $(RM) -r $(distdir).orig/debian
 
+check-versions:
+       @$(GREP) -e "^[[:space:]]*version[[:space:]]*:[[:space:]]*'$(VERSION)'," $(srcdir)/meson.build >/dev/null || { \
+         echo "======================================================================================"; \
+         echo "Meson version does not seem to match autotools version $(VERSION), update meson.build!"; \
+         echo "======================================================================================"; \
+         exit 1; \
+       }
+
+all-local: check-versions
+
 -include $(top_srcdir)/git.mk
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
diff --git a/README b/README
index fbbc140..4bf4d18 100644 (file)
--- a/README
+++ b/README
                               Fontconfig
              Font configuration and customization library
-                            Version 2.13.1
-                              2018-08-30
+                            Version 2.14.2
+                              2023-01-27
 
 
 Check INSTALL for compilation and installation instructions.
 Report bugs to https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new.
 
+2.14.2
+
+Akira TAGOH (13):
+      Fix the build issue on meson when -g option is added to c_args
+      Store artifacts for meson windows CI
+      Add FC_DESKTOP_NAME property
+      Add --with-default-sub-pixel-rendering option
+      Update po-conf/POTFILES.in
+      Ignore null pointer on Fc*Destroy functions
+      Convert tabs to spaces
+      Convert more tabs to spaces in docs
+      src/meson.build: Store correct paths to fontconfig.pc.
+      Fix a typo in description for HAVE_STDATOMIC_PRIMITIVES
+      Report more detailed logs instead of assertion.
+      Add some missing constant names for weight.
+      Adujst indentation between programlisting in fontconfig-user.sgml
+
+Christopher Degawa (1):
+      meson: modify gperf test to remove sh dependency
+
+Jason Francis (1):
+      meson: Update freetype2 git repository to upstream
+
+Jean Abou Samra (1):
+      Ignore LC_CTYPE if set to "UTF-8"
+
+Ondrej Balaz (1):
+      Expand ~ in glob
+
+lilinjie (1):
+      fix typo
+
+2.14.1
+
+Akira TAGOH (6):
+      Use the latest stable release image for CI for mingw
+      Real fix of 91114d18c
+      Fix test cases for wrong use of remap-dir
+      Add back sort command
+      Add config files to enable/disable antialias
+      Enable 10-sub-pixel-rgb.conf by default
+
+Alan Coopersmith (1):
+      Bump the cache version to 8 in doc/fontconfig-user.sgml
+
+Jeremy Huddleston Sequoia (3):
+      meson: Fix linking libexpat on darwin
+      meson: Use fc_templatedir and fc_baseconfigdir are used when installing configs
+      meson: Use fc_configdir where appropriate during build
+
+NorwayFun (4):
+      add Georgian
+      add Georgian
+      po: add Georgian translation
+      po: Add Georgian translation
+
+Sam James (1):
+      configure.ac: allow disabling docbook
+
+Taylor R Campbell (1):
+      Avoid misuse of ctype(3)
+
+Tim-Philipp Müller (7):
+      meson: add 'default-hinting' option
+      meson: add 'default-fonts-dirs' option
+      meson: add 'additional-fonts-dirs' option
+      meson: add 'cache-dir' option
+      meson: add 'template-dir', 'baseconfig-dir', 'config-dir', and 'xml-dir' options
+      ci: update windows image to a 2022-server based one
+      ci: update macOS image
+
+Xavier Claessens (3):
+      meson: Do not run fc-cache when installing into a DESTDIR
+      meson: Fix configuration warnings
+      link_confs.py: Fix prepending DESTDIR to absolute path
+
+2.14
+
+Alan Coopersmith (1):
+      Update address for reporting msgid bugs from bugzilla to gitlab
+
+2.13.96 (2.14 RC6)
+
+Akira TAGOH (2):
+      Add a missing file 48-spacing.conf
+      Merge branch 'main' of ssh://gitlab.freedesktop.org/fontconfig/fontconfig
+
+2.13.95 (2.14 RC5)
+
+Akira TAGOH (18):
+      Do not set different score to non-string values
+      Enable 11-lcdfilter-default.conf by default
+      Bump the cache version to 8
+      Reflect matching results to binding in FcPattern
+      Fix a memory leak when trying to open a non-existing file
+      Fix score estimation for postscriptname
+      Resolves symlinks against <dir prefix="relative">
+      Add the option to not build fontconfig cache during installation
+      conf.d/60-latin.conf: Make Noto default.
+      Fix some testcase fails for 14c265a1
+      Fix the issue fail to obtain the style name
+      Apply the change made by 23e46d1 again
+      Initialize variable
+      Add more description for fc-conflist.1 and FcConfigFileInfoIterInit.3
+      Update CaseFolding.txt to Unicode 14
+      Add an user font directory for Win32 to the default font path
+      Add test/wrapper-script.sh to the archive
+      Fix possible memory leaks in FcPatternObjectAddWithBinding
+
+Alex Richardson (3):
+      fcint: add casts to allow building with stricter compilers
+      Add support for C11 stdatomic atomics
+      FcCharSetPutLeaf(): Fix missing move of new_leaves contents
+
+Behdad Esfahbod (1):
+      If a varfont has 'opsz' axis, set FC_SIZE on default instant pattern
+
+Ben Wagner (6):
+      Add memory order constraints to C11 atomics
+      Free local FcCache lock on contention
+      Extend test thread args lifetime
+      Fix warning about os2->achVendID cannot be NULL
+      Back FcSerialize with open addressing hash table.
+      Actually skip leading spaces in style name
+
+Francesco Pretto (1):
+      WIN32: Fix pGetSystemWindowsDirectory found initialized during FcConfigParseAndLoadFromMemory
+
+Mehdi Sabwat (1):
+      fcstat: add support for wasm-emscripten
+
+Nirbheek Chauhan (1):
+      meson: Remove summary() from version_compare() block
+
+Pierre Ducroquet (5):
+      Add a configuration to switch to monospace if spacing=100 is requested
+      Reference the new configuration file
+      Remove configuration file from POTFILES
+      It seems this qual doesn't work on integers
+      Always add the family name from spacing=100
+
+Ryan Gonzalez (1):
+      Ensure config.h is always included before stdlib headers
+
+Ryan Schmidt (5):
+      Avoid PCRE syntax when using grep
+      Remove Bugzilla references
+      Fix run-test.sh to work with BSD mktemp
+      Restore fcatomic compatibility with Mac OS X 10.4.
+      Fix FC_DEFAULT_FONTS on macOS and with BSD sed
+
+2.13.94 (2.14 RC4)
+
+Akira TAGOH (10):
+      Add back fullname property at scan matching phase
+      Overwrite symlinks for config files
+      Fix missing <dir> element for WINDOWSFONTDIR in meson
+      Refactoring configure.ac to add <dir> element around font paths
+      Fix build fail when missing docbook and/or disabling doc-build
+      ci: Update CA cert related thing for Python on Windows
+      Add support for XDG_DATA_DIRS
+      Better wording for comments in config
+      Revert constructing fullname property from family and style properties
+      Fix score evaluation for multiple values in properties
+
+Albert Astals Cid (1):
+      Fix potential memory leak in _get_real_paths_from_prefix
+
+Ben Wagner (11):
+      Skip leading whitespace in style name.
+      Remove abort from FcCompareSize.
+      Add line between licenses in COPYING.
+      Portable trap conditions in run-test.sh.
+      Fix leaks in fcxml.c, fc-match.c, and tests.
+      Fix wild frees and leak of fs in test-conf.
+      Always run-test-conf, but skip if not built.
+      Fix test-conf string to integer conversion.
+      Test all not_eq for family names.
+      Clean up test-family-matching test.
+      Fix stack use after scope in FcConfigCompareValue
+
+Carmina16 (1):
+      ie.orth: Corrected; mistaken source replaced
+
+Heiko Becker (1):
+      Handle absolute sysconfdir when installing symlinks
+
+Jacko Dirks (1):
+      fccfg.c: lock_config: Fix potential memory leak
+
+Szunti (3):
+      Fix locale dependent behaviour in run-test.sh
+      Check qual and compare for family tests
+      Fix stripping whitespace from end of family in FcPatternAddFullname
+
+Tim-Philipp Müller (6):
+      meson: remove unused stdin_wrapper.py script
+      fcformat: fix compiler warnings with clang on Android
+      ci: add meson android aarch64 build
+      meson: error out in script if gperf preprocessing failed
+      meson: fix cross-compilation issues with gperf header file preprocessing
+      meson: fix subproject build regression
+
+Xavier Claessens (3):
+      Meson: Fallback to gperf subproject on all platforms
+      Meson: Do not wrap fccache insallation script
+      Windows: Fix symlink privilege error detection
+
+ratijas (1):
+      Fix closing tag bracket typo in doc/fontconfig-user.sgml
+
+2.13.93 (2.14 RC3)
+
+Akira TAGOH (48):
+      Affect FC_FONT_HAS_HINT property to score on matcher
+      Do not return FcFalse from FcConfigParseAndLoad*() if complain is set to false
+      Warn as well if no directory name for cachedir provided
+      Take effect sysroot functionality to the default config file
+      Read latest cache in paths
+      Fix a memory leak caused by the previous commit
+      Use FcConfigReference/Destroy appropriately instead of FcConfigGetCurrent
+      Fix potential race condition in FcConfigSetCurrent and FcConfigReference
+      Fix gcc warnings with -Wpointer-sign
+      Don't add a value for FC_FULLNAME in meta face
+      Fix a test fail when no bwrap was available
+      Add proper fullname for named-instances
+      Fix the process substitution doesn't work with FONTCONFIG_FILE
+      Fix memory leaks
+      Fix assertion in FcFini()
+      Set exact boolean value to color property
+      Fix assertion in FcCacheFini() again
+      Fix errors on shellcheck
+      Fix cache conflicts on OSTree based system
+      Drop unmaintained files
+      Drop elements with its namespace from conf
+      Add FC_ORDER property into cache
+      Drop Bitstream Vera fonts from 60-latin.conf
+      Fix a typo in doc/confdir.sgml.in
+      Fix empty XDG_CACHE_HOME Behavior
+      Fix build issues regarding formatter for Win32
+      Add some tweaks into runtest.sh to see progress
+      Integrate python scripts to autotools build
+      Make sure a minimum version of python
+      Make more clearer the license terms
+      Add CONFIGDIR to the fallback config where can be specified by --with-configdir
+      fc-scan: add --sysroot option
+      Construct fullname from family and style
+      Add fullname later once FcConfigSubstitute() is done
+      Update meson.build
+      Add Regular style when no meta data available to guess a style
+      Make sure a combination of family and familylang is available
+      Split up a code again coming from different copyright notice
+      Update COPYING
+      Use memcpy instead of strcpy
+      Evaluate mingw64_env to setup properly on CI
+      Add examples section in fc-match(1)
+      Drop duplicated BUILT_SOURCES in doc/Makefile.am
+      Initialize shell variables to be sure
+      Update README that missed changes mistakenly
+      new-version.sh: update version in meson.build
+      Update version in meson.build to sync up with configure.ac
+      new-version.sh: commit meson.build when bumpping
+
+Alan Coopersmith (1):
+      Fix some typos/spelling errors
+
+Ben Wagner (2):
+      Replace FT_UNUSED with FC_UNUSED.
+      Fix fc_atomic_ptr_get and use.
+
+Chun-wei Fan (2):
+      meson: Look for FreeType using CMake too
+      meson: Don't use .def files for Visual Studio builds
+
+James Lee (1):
+      Fix 'meson install' when cross compiling
+
+Jan Tojnar (4):
+      conf: Add JoyPixels emoji font
+      Correct reset-dirs in DTD
+      Drop elements with its namespace from fonts.conf.in
+      Turn unknown attributes into warning
+
+Jonathan Kew (1):
+      Set name_mapping to NULL after freeing
+
+Mathieu Duponchelle (1):
+      Some build fixes to support compilation with MSVC on Windows
+
+Matthias Clasen (17):
+      Avoid a crash in FcPatternHash with ranges
+      Special-case some of the string walking code
+      Add a hash function for families
+      Use a hash table for family matching
+      Add a shortcut for FcQualAny matching
+      Speed up fonthashint matching
+      Speed up FcConfigCompareValue
+      Speed up FcConfigCompareValue
+      Speed up FcCompareLang and FcCompareBool
+      Use a hash table for families in FcConfigSubstitute
+      Use __builtin_expect in a few places
+      Fixup: Promote ints to ranges when appropriate
+      Add FC_LIKELY and FC_UNLIKELY macros
+      Use FC_UNLIKELY
+      Fixup: Handle patterns without family
+      Fix up FC_LIKELY macros
+      Fix a problem in FcConfigSubstitute
+
+Nicolas Mailhot (1):
+      Use an URN for DTD ID
+
+Niklas Guertler (3):
+      Allow multiple default system font directories in the fallback config, and set them to the default dirs on Darwin.
+      Add <dir> XML tags to default values for FC_DEFAULT_FONTS on non-Darwin systems
+      Increased timeout for meson tests to 600sec to make tests work on Darwin
+
+Nirbheek Chauhan (2):
+      fcatomic: Fix EXC_BAD_ACCESS on iOS ARM64
+      meson: Fix build failure with gcc10 on mingw
+
+Szunti (1):
+      Add missing return type for FcFontSet* functions
+
+Tim-Philipp Müller (8):
+      doc: fix FcPatternFilter documentation
+      Use FC_PATH_MAX to fix build on Windows
+      Fix build on Windows some more
+      fccompat: fix build on Windows without unistd.h
+      Guard dirent.h includes
+      Add Meson build system
+      meson: print configuration summary()
+      ci: allow meson mingw build to fail
+
+Xavier Claessens (3):
+      meson: Fix build when 'tools' option is disabled
+      meson: Use version comparison function
+      meson: Fix build failure when compiler is not in PATH
+
+xiota (1):
+      Add Courier Std aliases.  Fixes #262.
+
+2.13.92 (2.14 RC2)
+
+Akira TAGOH (18):
+      Fix a typo on masking face id
+      Don't clean up pre-built docs if no docbook installed.
+      Fix obtaining real path from pre-defined names for Win32
+      Fix a crash when running with FC_DEBUG=256
+      Improve the performance a bit
+      Fix a typo
+      Add English name first into a cache
+      FcConfigParseAndLoad*() should returns false on config errors
+      Clean up temporary directory for tests
+      Add docs for missing properties
+      Fix the fail on fc-cache
+      Fix memory leaks
+      Fix a memory leak in FcFreeTypeQuery*()
+      Add 35-lang-normalize.conf
+      Add FC_FONT_HAS_HINT property to see if font has hinting or not.
+      Fix failing the check of prep table in some fonts
+      Fix the fails of make check when SOURCE_DATE_EPOCH is set
+      Improve the performance a bit
+
+Egmont Koblinger (1):
+      Fix the linear interpolation during weight mapping
+
+2.13.91 (2.14 RC1)
+
+Akira TAGOH (74):
+      Fix the build issue with --enable-static
+      Fix the issue that '~' wasn't extracted to the proper homedir
+      Add a test case for d1f48f11
+      Fix CI
+      Add more prefix support in <dir> element
+      Update fonts.dtd for last commit
+      Update docs for 1aa8b700
+      add missing the case of prefix="default" as documented
+      Fix test case
+      CI: Add more logs
+      Do not update mtime when removing .uuid file
+      Do not try updating mtime when unlink was failed
+      Do not run a test case for .uuid deletion
+      Drop Mitra Mono from 65-nonlatin.conf
+      Enable bubblewrap test case
+      Use FC_PATH_MAX instead of PATH_MAX
+      Use Rachana instead of Meera for Malayalam
+      Add doc for description element and update fonts.dtd
+      Fix FcFontList doesn't return a font with FC_COLOR=true
+      Add a test case for FcFontList
+      Warn when constant name is used for unexpected object
+      covscan fix: get rid of unnecessary condition check
+      Don't call unlink_dirs if basedir is null
+      covscan: fix compiler warnings
+      Fix a dereference of a null pointer
+      Fix a crash with invalid matrix element
+      Add system-ui generic family
+      Fix misleading summary in docs for FcStrStrIgnoreCase
+      Fix build issue on Win32.
+      autogen.sh: Make AUTORECONF_FLAGS overwritable
+      Ifdef'ed unnecessary code for Win32
+      Fix make check on cross-compiled env
+      Add build test for MinGW
+      Fix make distcheck error
+      Update requirement for gettext
+      Correct configure option to cross-compile
+      Install wine for CI on MinGW
+      Don't test bind-mount thing for MinGW
+      Reset errno to do error handling properly
+      Add FcDirCacheCreateUUID doc back to pass make check
+      Drop a line to include uuid.h
+      Fix make check fail on run-test-conf.sh
+      Add new element remap-dir instead of extending dir element
+      Trim the last slash
+      Update testcase
+      Update deps to run CI
+      Drop unnecessary line to include uuid.h
+      Fix a typo
+      Add reset-dirs element
+      Add salt attribute to dir and remap-dir elements
+      Update doc for salt
+      trivial testcase update
+      Add back if !OS_WIN32 line
+      Fix build issues on MinGW
+      Use alternative function for realpath on Win32
+      Fix make check fail on MinGW again
+      Add more data to artifacts for debugging purpose
+      Don't share fonts and cache dir for testing
+      Don't warn if path can't be converted with prefix
+      Add some debugging output
+      Oops, Terminate string
+      fc-cache: Show font directories to generate cache with -v
+      Allow overriding salt with new one coming later
+      Don't show salt in debugging message if salt is null
+      Fix unexpected cache name by double-slash in path
+      Fallback uuid-based name to read a cache if no MD5-based cache available
+      No need to remap for uuid based
+      Update the test case that is looking for uuid based on host
+      Distribute archive in xz instead of bz2
+      Update CaseFolding.txt to Unicode 12.1
+      fc-validate: returns an error code when missing some glyphs
+      Correct the comment for FC_LANG in fontconfig.h
+      Fix a typo in the description of FcWeightFromOpenTypeDouble
+      Fix endianness on generating MD5 cache name
+
+Behdad Esfahbod (1):
+      Fix name-table language code mapping for Mongolian
+
+Ben Wagner (1):
+      Better document sysroot.
+
+Chris McDonald (2):
+      Respect sysroot option for file path passed to stat
+      Lowered temporary rooted_dir variable inside loop
+
+Jon Turney (1):
+      Only use test wrapper-script if host is MinGW
+
+Keith Packard (6):
+      Do not remove UUID file when a scanned directory is empty
+      Fetch FONTCONFIG_SYSROOT in FcConfigCreate
+      Remove '-u' option from run-test-conf.sh
+      Add delays to test-bz106632, check UptoDate separately
+      Remove UUID-related tests
+      Replace UUID file mechanism with per-directory 'map' attribute [v2]
+
+Robert Yang (1):
+      src/fccache.c: Fix define for HAVE_POSIX_FADVISE
+
 2.13.1
 
 Akira TAGOH (48):
@@ -997,7 +1465,7 @@ Akira TAGOH (60):
       Bug 26830 - Add search for libiconv non-default directory
       Bug 28491 - Allow matching on FC_FILE
       Bug 48573 - platform without regex do not have also REG_XXX defines
-      Bug 27526 - Compatibility fix for old windows sytems
+      Bug 27526 - Compatibility fix for old windows systems
       Add --with-expat, --with-expat-includes and --with-expat-lib back.
       doc: Fix a typo of the environment variable name.
       Bug 25151 - Move cleanCacheDirectory() from fc-cache.c into
index f0fa0ec..fcf2601 100644 (file)
--- a/Tools.mk
+++ b/Tools.mk
@@ -27,28 +27,15 @@ DIR=fc-$(TAG)
 OUT=fc$(TAG)
 TMPL=$(OUT).tmpl.h
 TARG=$(OUT).h
-TSRC=$(DIR).c
-TOOL=./$(DIR)$(EXEEXT_FOR_BUILD)
+TOOL=$(srcdir)/$(DIR).py
 
-EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
+noinst_SCRIPTS = $(TOOL)
+EXTRA_DIST = $(TARG) $(TMPL) $(DIST)
 
-AM_CPPFLAGS = \
-          -I$(builddir) \
-          -I$(srcdir) \
-          -I$(top_builddir)/src \
-          -I$(top_srcdir)/src \
-          -I$(top_builddir) \
-          -I$(top_srcdir) \
-          -DHAVE_CONFIG_H \
-          $(WARN_CFLAGS)
-
-$(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
-
-$(TARG): $(TMPL) $(TSRC) $(DEPS)
-       $(AM_V_GEN) $(MAKE) $(TOOL) && \
+$(TARG): $(TMPL) $(TOOL) $(DEPS)
+       $(AM_V_GEN) \
        $(RM) $(TARG) && \
-       $(TOOL) $(ARGS) < $< > $(TARG).tmp && \
+       $(PYTHON) $(TOOL) $(ARGS) --template $< --output $(TARG).tmp && \
        mv $(TARG).tmp $(TARG) || ( $(RM) $(TARG).tmp && false )
 noinst_HEADERS=$(TARG)
 
@@ -59,6 +46,6 @@ BUILT_SOURCES = $(ALIAS_FILES)
 $(ALIAS_FILES):
        $(AM_V_GEN) touch $@
 
-CLEANFILES = $(ALIAS_FILES) $(TOOL)
+CLEANFILES = $(ALIAS_FILES)
 
 MAINTAINERCLEANFILES = $(TARG)
index 4125f78..f405f3a 100644 (file)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 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],,
-[m4_warning([this file was generated for autoconf 2.69.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
+[m4_warning([this file was generated for autoconf 2.71.
 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'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
 [am__api_version='1.16'
 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.16.1], [],
+m4_if([$1], [1.16.5], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,14 +51,14 @@ 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.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.5])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-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -371,7 +371,9 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
   done
   if test $am_rc -ne 0; then
     AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).])
   fi
@@ -398,7 +400,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -426,6 +428,10 @@ m4_defn([AC_PROG_CC])
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
 [AC_PREREQ([2.65])dnl
+m4_ifdef([_$0_ALREADY_INIT],
+  [m4_fatal([$0 expanded multiple times
+]m4_defn([_$0_ALREADY_INIT]))],
+  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])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
@@ -462,7 +468,7 @@ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
 [_AM_SET_OPTIONS([$1])dnl
 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
 m4_if(
-  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
   [ok:ok],,
   [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
@@ -514,6 +520,20 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
                  [m4_define([AC_PROG_OBJCXX],
                             m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+AC_SUBST([CTAGS])
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+AC_SUBST([ETAGS])
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+AC_SUBST([CSCOPE])
+
 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
@@ -595,7 +615,7 @@ 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-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -616,7 +636,7 @@ if test x"${install_sh+set}" != xset; then
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -637,7 +657,7 @@ AC_SUBST([am__leading_dot])])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -680,7 +700,7 @@ AC_SUBST([am__quote])])
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -701,12 +721,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
 if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\    *)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then
@@ -719,7 +734,7 @@ fi
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -748,7 +763,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -795,7 +810,351 @@ AC_LANG_POP([C])])
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 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 dnl
+ python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl
+ python3.2 python3.1 python3.0 dnl
+ python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl
+ 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
+  ])
+
+  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.  Although site.py simply uses
+  dnl sys.version[:3], printing that failed with Python 3.10, since the
+  dnl trailing zero was eliminated. So now we output just the major
+  dnl and minor version numbers, as numbers. Apparently the tertiary
+  dnl version is not of interest.
+  dnl
+  AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
+    [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`])
+  AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
+
+  dnl At times, e.g., when building shared libraries, you may want
+  dnl to know which OS platform Python thinks this is.
+  dnl
+  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])
+
+  dnl emacs-page
+  dnl If --with-python-sys-prefix is given, use the values of sys.prefix
+  dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX
+  dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and
+  dnl ${exec_prefix} variables.
+  dnl
+  dnl The two are made distinct variables so they can be overridden if
+  dnl need be, although general consensus is that you shouldn't need
+  dnl this separation.
+  dnl
+  dnl Also allow directly setting the prefixes via configure options,
+  dnl overriding any default.
+  dnl
+  if test "x$prefix" = xNONE; then
+    am__usable_prefix=$ac_default_prefix
+  else
+    am__usable_prefix=$prefix
+  fi
+
+  # Allow user to request using sys.* values from Python,
+  # instead of the GNU $prefix values.
+  AC_ARG_WITH([python-sys-prefix],
+  [AS_HELP_STRING([--with-python-sys-prefix],
+                  [use Python's sys.prefix and sys.exec_prefix values])],
+  [am_use_python_sys=:],
+  [am_use_python_sys=false])
+
+  # Allow user to override whatever the default Python prefix is.
+  AC_ARG_WITH([python_prefix],
+  [AS_HELP_STRING([--with-python_prefix],
+                  [override the default PYTHON_PREFIX])],
+  [am_python_prefix_subst=$withval
+   am_cv_python_prefix=$withval
+   AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix])
+   AC_MSG_RESULT([$am_cv_python_prefix])],
+  [
+   if $am_use_python_sys; then
+     # using python sys.prefix value, not GNU
+     AC_CACHE_CHECK([for python default $am_display_PYTHON prefix],
+     [am_cv_python_prefix],
+     [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`])
+
+     dnl If sys.prefix is a subdir of $prefix, replace the literal value of
+     dnl $prefix with a variable reference so it can be overridden.
+     case $am_cv_python_prefix in
+     $am__usable_prefix*)
+       am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
+       am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
+       ;;
+     *)
+       am_python_prefix_subst=$am_cv_python_prefix
+       ;;
+     esac
+   else # using GNU prefix value, not python sys.prefix
+     am_python_prefix_subst='${prefix}'
+     am_python_prefix=$am_python_prefix_subst
+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix])
+     AC_MSG_RESULT([$am_python_prefix])
+   fi])
+  # Substituting python_prefix_subst value.
+  AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst])
+
+  # emacs-page Now do it all over again for Python exec_prefix, but with yet
+  # another conditional: fall back to regular prefix if that was specified.
+  AC_ARG_WITH([python_exec_prefix],
+  [AS_HELP_STRING([--with-python_exec_prefix],
+                  [override the default PYTHON_EXEC_PREFIX])],
+  [am_python_exec_prefix_subst=$withval
+   am_cv_python_exec_prefix=$withval
+   AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix])
+   AC_MSG_RESULT([$am_cv_python_exec_prefix])],
+  [
+   # no explicit --with-python_exec_prefix, but if
+   # --with-python_prefix was given, use its value for python_exec_prefix too.
+   AS_IF([test -n "$with_python_prefix"],
+   [am_python_exec_prefix_subst=$with_python_prefix
+    am_cv_python_exec_prefix=$with_python_prefix
+    AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix])
+    AC_MSG_RESULT([$am_cv_python_exec_prefix])],
+   [
+    # Set am__usable_exec_prefix whether using GNU or Python values,
+    # since we use that variable for pyexecdir.
+    if test "x$exec_prefix" = xNONE; then
+      am__usable_exec_prefix=$am__usable_prefix
+    else
+      am__usable_exec_prefix=$exec_prefix
+    fi
+    #
+    if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
+      AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix],
+      [am_cv_python_exec_prefix],
+      [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`])
+      dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the
+      dnl literal value of $exec_prefix with a variable reference so it can
+      dnl be overridden.
+      case $am_cv_python_exec_prefix in
+      $am__usable_exec_prefix*)
+        am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
+        am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
+        ;;
+      *)
+        am_python_exec_prefix_subst=$am_cv_python_exec_prefix
+        ;;
+     esac
+   else # using GNU $exec_prefix, not python sys.exec_prefix
+     am_python_exec_prefix_subst='${exec_prefix}'
+     am_python_exec_prefix=$am_python_exec_prefix_subst
+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix])
+     AC_MSG_RESULT([$am_python_exec_prefix])
+   fi])])
+  # Substituting python_exec_prefix_subst.
+  AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst])
+
+  # Factor out some code duplication into this shell variable.
+  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 emacs-page Set up 4 directories:
+
+  dnl 1. 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.
+  dnl
+  AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)],
+  [am_cv_python_pythondir],
+  [if test "x$am_cv_python_prefix" = x; then
+     am_py_prefix=$am__usable_prefix
+   else
+     am_py_prefix=$am_cv_python_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 2. 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.
+  dnl
+  AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
+
+  dnl 3. pyexecdir: directory for installing python extension modules
+  dnl    (shared libraries).
+  dnl Query distutils for this directory.
+  dnl
+  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)],
+  [am_cv_python_pyexecdir],
+  [if test "x$am_cv_python_exec_prefix" = x; then
+     am_py_exec_prefix=$am__usable_exec_prefix
+   else
+     am_py_exec_prefix=$am_cv_python_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_exec_prefix'})
+else:
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_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 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE)
+  dnl
+  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-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -814,7 +1173,7 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -895,7 +1254,7 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -955,7 +1314,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -983,7 +1342,7 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1002,7 +1361,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff --git a/conf.d/05-reset-dirs-sample.conf b/conf.d/05-reset-dirs-sample.conf
new file mode 100644 (file)
index 0000000..7e92249
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Re-define fonts dirs sample</description>
+
+  <reset-dirs />
+  <dir prefix="xdg">fonts</dir>
+
+</fontconfig>
diff --git a/conf.d/09-autohint-if-no-hinting.conf b/conf.d/09-autohint-if-no-hinting.conf
new file mode 100644 (file)
index 0000000..0de5041
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Enable autohinter if font doesn't have any hinting</description>
+  <!--  Use the Autohinter --> 
+  <match target="font">
+    <test name="fonthashint"><bool>false</bool></test>
+    <!--
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
+    -->
+    <edit name="autohint" mode="append"><bool>true</bool></edit>
+  </match>
+</fontconfig>
index 50ec3b4..347a14e 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Enable autohinter</description>
 <!--  Use the Autohinter --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="autohint" mode="append"><bool>true</bool></edit>
   </match>
index aff7976..62a13db 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set hintfull to hintstyle</description>
 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="hintstyle" mode="append"><const>hintfull</const></edit>
   </match>
index 1d49f3a..da6c3eb 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set hintmedium to hintstyle</description>
 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="hintstyle" mode="append"><const>hintmedium</const></edit>
   </match>
index a134ed8..4c40ad4 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set hintnone to hintstyle</description>
 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="hintstyle" mode="append"><const>hintnone</const></edit>
   </match>
index f00bcd3..96a81fb 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set hintslight to hintstyle</description>
 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="hintstyle" mode="append"><const>hintslight</const></edit>
   </match>
diff --git a/conf.d/10-no-antialias.conf b/conf.d/10-no-antialias.conf
new file mode 100644 (file)
index 0000000..9a564e5
--- /dev/null
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Disable antialiasing</description>
+  <match target="pattern">
+    <edit name="antialias" mode="append"><bool>false</bool></edit>
+  </match>
+</fontconfig>
diff --git a/conf.d/10-no-sub-pixel.conf b/conf.d/10-no-sub-pixel.conf
deleted file mode 100644 (file)
index 4fd1776..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
-  <description>Disable sub-pixel rendering</description>
-<!--  Disable sub-pixel rendering --> 
-  <match target="pattern">
-    <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
-    -->
-    <edit name="rgba" mode="append"><const>none</const></edit>
-  </match>
-</fontconfig>
index ebb6c7b..0c3a2ef 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Bitmap scaling</description>
 <!--
   If font is bitmap, calculate scale factor.
index 241e589..b74d99f 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Enable sub-pixel rendering with the BGR stripes layout</description>
 <!--  Enable sub-pixel rendering --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="rgba" mode="append"><const>bgr</const></edit>
   </match>
diff --git a/conf.d/10-sub-pixel-none.conf b/conf.d/10-sub-pixel-none.conf
new file mode 100644 (file)
index 0000000..1fb6c98
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Disable sub-pixel rendering</description>
+<!--  Disable sub-pixel rendering --> 
+  <match target="pattern">
+    <!--
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
+    -->
+    <edit name="rgba" mode="append"><const>none</const></edit>
+  </match>
+</fontconfig>
index 1cb103d..a87470a 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Enable sub-pixel rendering with the RGB stripes layout</description>
 <!--  Enable sub-pixel rendering --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="rgba" mode="append"><const>rgb</const></edit>
   </match>
index 1a0690a..8a03787 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Enable sub-pixel rendering with the vertical BGR stripes layout</description>
 <!--  Enable sub-pixel rendering --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="rgba" mode="append"><const>vbgr</const></edit>
   </match>
index 61bc663..a21d4c7 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Enable sub-pixel rendering with the vertical RGB stripes layout</description>
 <!--  Enable sub-pixel rendering --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="rgba" mode="append"><const>vrgb</const></edit>
   </match>
index f92df0c..9290558 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Disable hinting</description>
 <!--  Disable hinting --> 
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit name="hinting" mode="append"><bool>false</bool></edit>
   </match>
diff --git a/conf.d/10-yes-antialias.conf b/conf.d/10-yes-antialias.conf
new file mode 100644 (file)
index 0000000..4451f6e
--- /dev/null
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Enable antialiasing</description>
+  <match target="pattern">
+    <edit name="antialias" mode="append"><bool>true</bool></edit>
+  </match>
+</fontconfig>
index 929caaa..6025597 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Use lcddefault as default for LCD filter</description>
 <!--  Use lcddefault as default for LCD filter -->
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit mode="append" name="lcdfilter">
       <const>lcddefault</const>
index 25c3635..9cb6d3e 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Use lcdlegacy as default for LCD filter</description>
 <!--  Use lcdlegacy as default for LCD filter -->
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit mode="append" name="lcdfilter">
       <const>lcdlegacy</const>
index 6f1eb3d..1f9231e 100644 (file)
@@ -1,18 +1,14 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Use lcdlight as default for LCD filter</description>
 <!--  Use lcdlight as default for LCD filter -->
   <match target="pattern">
     <!--
-      This configuration is available on the major desktop environments.
-      We shouldn't overwrite it with "assign" unconditionally.
-      Most clients may picks up the first value only. so using "append"
-      may simply works to avoid it.
+      This sort of configuration is available on the major desktop environments
+      and we don't have to break it with "assign" unconditionally. however, we
+      want to set something for others. So we use "append" here to get this working
+      in both cases so that most clients would takes a look at the first place only.
     -->
     <edit mode="append" name="lcdfilter">
       <const>lcdlight</const>
index 7b3d7bd..e4e9c33 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Disable hinting for Bitstream Vera fonts when the size is less than 8ppem</description>
 <!-- 
        The Bitstream Vera fonts have GASP entries suggesting that hinting be
index 78cc7a3..2fb002f 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Disable hinting for CJK fonts</description>
 <!-- We can't hint CJK fonts well, so turn off hinting for CJK fonts. -->
 
index 147fde6..7216b4e 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set substitutions for similar/metric-compatible families</description>
 
 <!--
@@ -528,6 +524,13 @@ NOTE: The (URW)++ fonts mappings of generics to specifics were removed, because
        </alias>
 
        <alias binding="same">
+         <family>Courier Std</family>
+         <accept>
+         <family>Courier</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
          <family>ITC Avant Garde Gothic</family>
          <accept>
          <family>TeX Gyre Adventor</family>
diff --git a/conf.d/35-lang-normalize.conf b/conf.d/35-lang-normalize.conf
new file mode 100644 (file)
index 0000000..d7a0438
--- /dev/null
@@ -0,0 +1,1114 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <!-- aa* -> aa -->
+  <match>
+    <test name="lang" compare="contains"><string>aa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>aa</string></edit>
+  </match>
+  <!-- ab* -> ab -->
+  <match>
+    <test name="lang" compare="contains"><string>ab</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ab</string></edit>
+  </match>
+  <!-- af* -> af -->
+  <match>
+    <test name="lang" compare="contains"><string>af</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>af</string></edit>
+  </match>
+  <!-- ak* -> ak -->
+  <match>
+    <test name="lang" compare="contains"><string>ak</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ak</string></edit>
+  </match>
+  <!-- am* -> am -->
+  <match>
+    <test name="lang" compare="contains"><string>am</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>am</string></edit>
+  </match>
+  <!-- an* -> an -->
+  <match>
+    <test name="lang" compare="contains"><string>an</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>an</string></edit>
+  </match>
+  <!-- ar* -> ar -->
+  <match>
+    <test name="lang" compare="contains"><string>ar</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ar</string></edit>
+  </match>
+  <!-- as* -> as -->
+  <match>
+    <test name="lang" compare="contains"><string>as</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>as</string></edit>
+  </match>
+  <!-- ast* -> ast -->
+  <match>
+    <test name="lang" compare="contains"><string>ast</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ast</string></edit>
+  </match>
+  <!-- av* -> av -->
+  <match>
+    <test name="lang" compare="contains"><string>av</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>av</string></edit>
+  </match>
+  <!-- ay* -> ay -->
+  <match>
+    <test name="lang" compare="contains"><string>ay</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ay</string></edit>
+  </match>
+  <!-- ba* -> ba -->
+  <match>
+    <test name="lang" compare="contains"><string>ba</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ba</string></edit>
+  </match>
+  <!-- be* -> be -->
+  <match>
+    <test name="lang" compare="contains"><string>be</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>be</string></edit>
+  </match>
+  <!-- bg* -> bg -->
+  <match>
+    <test name="lang" compare="contains"><string>bg</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bg</string></edit>
+  </match>
+  <!-- bh* -> bh -->
+  <match>
+    <test name="lang" compare="contains"><string>bh</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bh</string></edit>
+  </match>
+  <!-- bho* -> bho -->
+  <match>
+    <test name="lang" compare="contains"><string>bho</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bho</string></edit>
+  </match>
+  <!-- bi* -> bi -->
+  <match>
+    <test name="lang" compare="contains"><string>bi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bi</string></edit>
+  </match>
+  <!-- bin* -> bin -->
+  <match>
+    <test name="lang" compare="contains"><string>bin</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bin</string></edit>
+  </match>
+  <!-- bm* -> bm -->
+  <match>
+    <test name="lang" compare="contains"><string>bm</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bm</string></edit>
+  </match>
+  <!-- bn* -> bn -->
+  <match>
+    <test name="lang" compare="contains"><string>bn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bn</string></edit>
+  </match>
+  <!-- bo* -> bo -->
+  <match>
+    <test name="lang" compare="contains"><string>bo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bo</string></edit>
+  </match>
+  <!-- br* -> br -->
+  <match>
+    <test name="lang" compare="contains"><string>br</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>br</string></edit>
+  </match>
+  <!-- brx* -> brx -->
+  <match>
+    <test name="lang" compare="contains"><string>brx</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>brx</string></edit>
+  </match>
+  <!-- bs* -> bs -->
+  <match>
+    <test name="lang" compare="contains"><string>bs</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bs</string></edit>
+  </match>
+  <!-- bua* -> bua -->
+  <match>
+    <test name="lang" compare="contains"><string>bua</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>bua</string></edit>
+  </match>
+  <!-- byn* -> byn -->
+  <match>
+    <test name="lang" compare="contains"><string>byn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>byn</string></edit>
+  </match>
+  <!-- ca* -> ca -->
+  <match>
+    <test name="lang" compare="contains"><string>ca</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ca</string></edit>
+  </match>
+  <!-- ce* -> ce -->
+  <match>
+    <test name="lang" compare="contains"><string>ce</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ce</string></edit>
+  </match>
+  <!-- ch* -> ch -->
+  <match>
+    <test name="lang" compare="contains"><string>ch</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ch</string></edit>
+  </match>
+  <!-- chm* -> chm -->
+  <match>
+    <test name="lang" compare="contains"><string>chm</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>chm</string></edit>
+  </match>
+  <!-- chr* -> chr -->
+  <match>
+    <test name="lang" compare="contains"><string>chr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>chr</string></edit>
+  </match>
+  <!-- co* -> co -->
+  <match>
+    <test name="lang" compare="contains"><string>co</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>co</string></edit>
+  </match>
+  <!-- crh* -> crh -->
+  <match>
+    <test name="lang" compare="contains"><string>crh</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>crh</string></edit>
+  </match>
+  <!-- cs* -> cs -->
+  <match>
+    <test name="lang" compare="contains"><string>cs</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>cs</string></edit>
+  </match>
+  <!-- csb* -> csb -->
+  <match>
+    <test name="lang" compare="contains"><string>csb</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>csb</string></edit>
+  </match>
+  <!-- cu* -> cu -->
+  <match>
+    <test name="lang" compare="contains"><string>cu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>cu</string></edit>
+  </match>
+  <!-- cv* -> cv -->
+  <match>
+    <test name="lang" compare="contains"><string>cv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>cv</string></edit>
+  </match>
+  <!-- cy* -> cy -->
+  <match>
+    <test name="lang" compare="contains"><string>cy</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>cy</string></edit>
+  </match>
+  <!-- da* -> da -->
+  <match>
+    <test name="lang" compare="contains"><string>da</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>da</string></edit>
+  </match>
+  <!-- de* -> de -->
+  <match>
+    <test name="lang" compare="contains"><string>de</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>de</string></edit>
+  </match>
+  <!-- doi* -> doi -->
+  <match>
+    <test name="lang" compare="contains"><string>doi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>doi</string></edit>
+  </match>
+  <!-- dv* -> dv -->
+  <match>
+    <test name="lang" compare="contains"><string>dv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>dv</string></edit>
+  </match>
+  <!-- dz* -> dz -->
+  <match>
+    <test name="lang" compare="contains"><string>dz</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>dz</string></edit>
+  </match>
+  <!-- ee* -> ee -->
+  <match>
+    <test name="lang" compare="contains"><string>ee</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ee</string></edit>
+  </match>
+  <!-- el* -> el -->
+  <match>
+    <test name="lang" compare="contains"><string>el</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>el</string></edit>
+  </match>
+  <!-- en* -> en -->
+  <match>
+    <test name="lang" compare="contains"><string>en</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>en</string></edit>
+  </match>
+  <!-- eo* -> eo -->
+  <match>
+    <test name="lang" compare="contains"><string>eo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>eo</string></edit>
+  </match>
+  <!-- es* -> es -->
+  <match>
+    <test name="lang" compare="contains"><string>es</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>es</string></edit>
+  </match>
+  <!-- et* -> et -->
+  <match>
+    <test name="lang" compare="contains"><string>et</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>et</string></edit>
+  </match>
+  <!-- eu* -> eu -->
+  <match>
+    <test name="lang" compare="contains"><string>eu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>eu</string></edit>
+  </match>
+  <!-- fa* -> fa -->
+  <match>
+    <test name="lang" compare="contains"><string>fa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fa</string></edit>
+  </match>
+  <!-- fat* -> fat -->
+  <match>
+    <test name="lang" compare="contains"><string>fat</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fat</string></edit>
+  </match>
+  <!-- ff* -> ff -->
+  <match>
+    <test name="lang" compare="contains"><string>ff</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ff</string></edit>
+  </match>
+  <!-- fi* -> fi -->
+  <match>
+    <test name="lang" compare="contains"><string>fi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fi</string></edit>
+  </match>
+  <!-- fil* -> fil -->
+  <match>
+    <test name="lang" compare="contains"><string>fil</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fil</string></edit>
+  </match>
+  <!-- fj* -> fj -->
+  <match>
+    <test name="lang" compare="contains"><string>fj</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fj</string></edit>
+  </match>
+  <!-- fo* -> fo -->
+  <match>
+    <test name="lang" compare="contains"><string>fo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fo</string></edit>
+  </match>
+  <!-- fr* -> fr -->
+  <match>
+    <test name="lang" compare="contains"><string>fr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fr</string></edit>
+  </match>
+  <!-- fur* -> fur -->
+  <match>
+    <test name="lang" compare="contains"><string>fur</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fur</string></edit>
+  </match>
+  <!-- fy* -> fy -->
+  <match>
+    <test name="lang" compare="contains"><string>fy</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>fy</string></edit>
+  </match>
+  <!-- ga* -> ga -->
+  <match>
+    <test name="lang" compare="contains"><string>ga</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ga</string></edit>
+  </match>
+  <!-- gd* -> gd -->
+  <match>
+    <test name="lang" compare="contains"><string>gd</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gd</string></edit>
+  </match>
+  <!-- gez* -> gez -->
+  <match>
+    <test name="lang" compare="contains"><string>gez</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gez</string></edit>
+  </match>
+  <!-- gl* -> gl -->
+  <match>
+    <test name="lang" compare="contains"><string>gl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gl</string></edit>
+  </match>
+  <!-- gn* -> gn -->
+  <match>
+    <test name="lang" compare="contains"><string>gn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gn</string></edit>
+  </match>
+  <!-- gu* -> gu -->
+  <match>
+    <test name="lang" compare="contains"><string>gu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gu</string></edit>
+  </match>
+  <!-- gv* -> gv -->
+  <match>
+    <test name="lang" compare="contains"><string>gv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>gv</string></edit>
+  </match>
+  <!-- ha* -> ha -->
+  <match>
+    <test name="lang" compare="contains"><string>ha</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ha</string></edit>
+  </match>
+  <!-- haw* -> haw -->
+  <match>
+    <test name="lang" compare="contains"><string>haw</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>haw</string></edit>
+  </match>
+  <!-- he* -> he -->
+  <match>
+    <test name="lang" compare="contains"><string>he</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>he</string></edit>
+  </match>
+  <!-- hi* -> hi -->
+  <match>
+    <test name="lang" compare="contains"><string>hi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hi</string></edit>
+  </match>
+  <!-- hne* -> hne -->
+  <match>
+    <test name="lang" compare="contains"><string>hne</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hne</string></edit>
+  </match>
+  <!-- ho* -> ho -->
+  <match>
+    <test name="lang" compare="contains"><string>ho</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ho</string></edit>
+  </match>
+  <!-- hr* -> hr -->
+  <match>
+    <test name="lang" compare="contains"><string>hr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hr</string></edit>
+  </match>
+  <!-- hsb* -> hsb -->
+  <match>
+    <test name="lang" compare="contains"><string>hsb</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hsb</string></edit>
+  </match>
+  <!-- ht* -> ht -->
+  <match>
+    <test name="lang" compare="contains"><string>ht</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ht</string></edit>
+  </match>
+  <!-- hu* -> hu -->
+  <match>
+    <test name="lang" compare="contains"><string>hu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hu</string></edit>
+  </match>
+  <!-- hy* -> hy -->
+  <match>
+    <test name="lang" compare="contains"><string>hy</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hy</string></edit>
+  </match>
+  <!-- hz* -> hz -->
+  <match>
+    <test name="lang" compare="contains"><string>hz</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>hz</string></edit>
+  </match>
+  <!-- ia* -> ia -->
+  <match>
+    <test name="lang" compare="contains"><string>ia</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ia</string></edit>
+  </match>
+  <!-- id* -> id -->
+  <match>
+    <test name="lang" compare="contains"><string>id</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>id</string></edit>
+  </match>
+  <!-- ie* -> ie -->
+  <match>
+    <test name="lang" compare="contains"><string>ie</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ie</string></edit>
+  </match>
+  <!-- ig* -> ig -->
+  <match>
+    <test name="lang" compare="contains"><string>ig</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ig</string></edit>
+  </match>
+  <!-- ii* -> ii -->
+  <match>
+    <test name="lang" compare="contains"><string>ii</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ii</string></edit>
+  </match>
+  <!-- ik* -> ik -->
+  <match>
+    <test name="lang" compare="contains"><string>ik</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ik</string></edit>
+  </match>
+  <!-- io* -> io -->
+  <match>
+    <test name="lang" compare="contains"><string>io</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>io</string></edit>
+  </match>
+  <!-- is* -> is -->
+  <match>
+    <test name="lang" compare="contains"><string>is</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>is</string></edit>
+  </match>
+  <!-- it* -> it -->
+  <match>
+    <test name="lang" compare="contains"><string>it</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>it</string></edit>
+  </match>
+  <!-- iu* -> iu -->
+  <match>
+    <test name="lang" compare="contains"><string>iu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>iu</string></edit>
+  </match>
+  <!-- ja* -> ja -->
+  <match>
+    <test name="lang" compare="contains"><string>ja</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ja</string></edit>
+  </match>
+  <!-- jv* -> jv -->
+  <match>
+    <test name="lang" compare="contains"><string>jv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>jv</string></edit>
+  </match>
+  <!-- ka* -> ka -->
+  <match>
+    <test name="lang" compare="contains"><string>ka</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ka</string></edit>
+  </match>
+  <!-- kaa* -> kaa -->
+  <match>
+    <test name="lang" compare="contains"><string>kaa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kaa</string></edit>
+  </match>
+  <!-- kab* -> kab -->
+  <match>
+    <test name="lang" compare="contains"><string>kab</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kab</string></edit>
+  </match>
+  <!-- ki* -> ki -->
+  <match>
+    <test name="lang" compare="contains"><string>ki</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ki</string></edit>
+  </match>
+  <!-- kj* -> kj -->
+  <match>
+    <test name="lang" compare="contains"><string>kj</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kj</string></edit>
+  </match>
+  <!-- kk* -> kk -->
+  <match>
+    <test name="lang" compare="contains"><string>kk</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kk</string></edit>
+  </match>
+  <!-- kl* -> kl -->
+  <match>
+    <test name="lang" compare="contains"><string>kl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kl</string></edit>
+  </match>
+  <!-- km* -> km -->
+  <match>
+    <test name="lang" compare="contains"><string>km</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>km</string></edit>
+  </match>
+  <!-- kn* -> kn -->
+  <match>
+    <test name="lang" compare="contains"><string>kn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kn</string></edit>
+  </match>
+  <!-- ko* -> ko -->
+  <match>
+    <test name="lang" compare="contains"><string>ko</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ko</string></edit>
+  </match>
+  <!-- kok* -> kok -->
+  <match>
+    <test name="lang" compare="contains"><string>kok</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kok</string></edit>
+  </match>
+  <!-- kr* -> kr -->
+  <match>
+    <test name="lang" compare="contains"><string>kr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kr</string></edit>
+  </match>
+  <!-- ks* -> ks -->
+  <match>
+    <test name="lang" compare="contains"><string>ks</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ks</string></edit>
+  </match>
+  <!-- kum* -> kum -->
+  <match>
+    <test name="lang" compare="contains"><string>kum</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kum</string></edit>
+  </match>
+  <!-- kv* -> kv -->
+  <match>
+    <test name="lang" compare="contains"><string>kv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kv</string></edit>
+  </match>
+  <!-- kw* -> kw -->
+  <match>
+    <test name="lang" compare="contains"><string>kw</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kw</string></edit>
+  </match>
+  <!-- kwm* -> kwm -->
+  <match>
+    <test name="lang" compare="contains"><string>kwm</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>kwm</string></edit>
+  </match>
+  <!-- ky* -> ky -->
+  <match>
+    <test name="lang" compare="contains"><string>ky</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ky</string></edit>
+  </match>
+  <!-- la* -> la -->
+  <match>
+    <test name="lang" compare="contains"><string>la</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>la</string></edit>
+  </match>
+  <!-- lah* -> lah -->
+  <match>
+    <test name="lang" compare="contains"><string>lah</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lah</string></edit>
+  </match>
+  <!-- lb* -> lb -->
+  <match>
+    <test name="lang" compare="contains"><string>lb</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lb</string></edit>
+  </match>
+  <!-- lez* -> lez -->
+  <match>
+    <test name="lang" compare="contains"><string>lez</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lez</string></edit>
+  </match>
+  <!-- lg* -> lg -->
+  <match>
+    <test name="lang" compare="contains"><string>lg</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lg</string></edit>
+  </match>
+  <!-- li* -> li -->
+  <match>
+    <test name="lang" compare="contains"><string>li</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>li</string></edit>
+  </match>
+  <!-- ln* -> ln -->
+  <match>
+    <test name="lang" compare="contains"><string>ln</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ln</string></edit>
+  </match>
+  <!-- lo* -> lo -->
+  <match>
+    <test name="lang" compare="contains"><string>lo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lo</string></edit>
+  </match>
+  <!-- lt* -> lt -->
+  <match>
+    <test name="lang" compare="contains"><string>lt</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lt</string></edit>
+  </match>
+  <!-- lv* -> lv -->
+  <match>
+    <test name="lang" compare="contains"><string>lv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>lv</string></edit>
+  </match>
+  <!-- mai* -> mai -->
+  <match>
+    <test name="lang" compare="contains"><string>mai</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mai</string></edit>
+  </match>
+  <!-- mg* -> mg -->
+  <match>
+    <test name="lang" compare="contains"><string>mg</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mg</string></edit>
+  </match>
+  <!-- mh* -> mh -->
+  <match>
+    <test name="lang" compare="contains"><string>mh</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mh</string></edit>
+  </match>
+  <!-- mi* -> mi -->
+  <match>
+    <test name="lang" compare="contains"><string>mi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mi</string></edit>
+  </match>
+  <!-- mk* -> mk -->
+  <match>
+    <test name="lang" compare="contains"><string>mk</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mk</string></edit>
+  </match>
+  <!-- ml* -> ml -->
+  <match>
+    <test name="lang" compare="contains"><string>ml</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ml</string></edit>
+  </match>
+  <!-- mni* -> mni -->
+  <match>
+    <test name="lang" compare="contains"><string>mni</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mni</string></edit>
+  </match>
+  <!-- mo* -> mo -->
+  <match>
+    <test name="lang" compare="contains"><string>mo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mo</string></edit>
+  </match>
+  <!-- mr* -> mr -->
+  <match>
+    <test name="lang" compare="contains"><string>mr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mr</string></edit>
+  </match>
+  <!-- ms* -> ms -->
+  <match>
+    <test name="lang" compare="contains"><string>ms</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ms</string></edit>
+  </match>
+  <!-- mt* -> mt -->
+  <match>
+    <test name="lang" compare="contains"><string>mt</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>mt</string></edit>
+  </match>
+  <!-- my* -> my -->
+  <match>
+    <test name="lang" compare="contains"><string>my</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>my</string></edit>
+  </match>
+  <!-- na* -> na -->
+  <match>
+    <test name="lang" compare="contains"><string>na</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>na</string></edit>
+  </match>
+  <!-- nb* -> nb -->
+  <match>
+    <test name="lang" compare="contains"><string>nb</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nb</string></edit>
+  </match>
+  <!-- nds* -> nds -->
+  <match>
+    <test name="lang" compare="contains"><string>nds</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nds</string></edit>
+  </match>
+  <!-- ne* -> ne -->
+  <match>
+    <test name="lang" compare="contains"><string>ne</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ne</string></edit>
+  </match>
+  <!-- ng* -> ng -->
+  <match>
+    <test name="lang" compare="contains"><string>ng</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ng</string></edit>
+  </match>
+  <!-- nl* -> nl -->
+  <match>
+    <test name="lang" compare="contains"><string>nl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nl</string></edit>
+  </match>
+  <!-- nn* -> nn -->
+  <match>
+    <test name="lang" compare="contains"><string>nn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nn</string></edit>
+  </match>
+  <!-- no* -> no -->
+  <match>
+    <test name="lang" compare="contains"><string>no</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>no</string></edit>
+  </match>
+  <!-- nqo* -> nqo -->
+  <match>
+    <test name="lang" compare="contains"><string>nqo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nqo</string></edit>
+  </match>
+  <!-- nr* -> nr -->
+  <match>
+    <test name="lang" compare="contains"><string>nr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nr</string></edit>
+  </match>
+  <!-- nso* -> nso -->
+  <match>
+    <test name="lang" compare="contains"><string>nso</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nso</string></edit>
+  </match>
+  <!-- nv* -> nv -->
+  <match>
+    <test name="lang" compare="contains"><string>nv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>nv</string></edit>
+  </match>
+  <!-- ny* -> ny -->
+  <match>
+    <test name="lang" compare="contains"><string>ny</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ny</string></edit>
+  </match>
+  <!-- oc* -> oc -->
+  <match>
+    <test name="lang" compare="contains"><string>oc</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>oc</string></edit>
+  </match>
+  <!-- om* -> om -->
+  <match>
+    <test name="lang" compare="contains"><string>om</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>om</string></edit>
+  </match>
+  <!-- or* -> or -->
+  <match>
+    <test name="lang" compare="contains"><string>or</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>or</string></edit>
+  </match>
+  <!-- os* -> os -->
+  <match>
+    <test name="lang" compare="contains"><string>os</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>os</string></edit>
+  </match>
+  <!-- ota* -> ota -->
+  <match>
+    <test name="lang" compare="contains"><string>ota</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ota</string></edit>
+  </match>
+  <!-- pa* -> pa -->
+  <match>
+    <test name="lang" compare="contains"><string>pa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>pa</string></edit>
+  </match>
+  <!-- pl* -> pl -->
+  <match>
+    <test name="lang" compare="contains"><string>pl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>pl</string></edit>
+  </match>
+  <!-- pt* -> pt -->
+  <match>
+    <test name="lang" compare="contains"><string>pt</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>pt</string></edit>
+  </match>
+  <!-- qu* -> qu -->
+  <match>
+    <test name="lang" compare="contains"><string>qu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>qu</string></edit>
+  </match>
+  <!-- quz* -> quz -->
+  <match>
+    <test name="lang" compare="contains"><string>quz</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>quz</string></edit>
+  </match>
+  <!-- rm* -> rm -->
+  <match>
+    <test name="lang" compare="contains"><string>rm</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>rm</string></edit>
+  </match>
+  <!-- rn* -> rn -->
+  <match>
+    <test name="lang" compare="contains"><string>rn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>rn</string></edit>
+  </match>
+  <!-- ro* -> ro -->
+  <match>
+    <test name="lang" compare="contains"><string>ro</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ro</string></edit>
+  </match>
+  <!-- ru* -> ru -->
+  <match>
+    <test name="lang" compare="contains"><string>ru</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ru</string></edit>
+  </match>
+  <!-- rw* -> rw -->
+  <match>
+    <test name="lang" compare="contains"><string>rw</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>rw</string></edit>
+  </match>
+  <!-- sa* -> sa -->
+  <match>
+    <test name="lang" compare="contains"><string>sa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sa</string></edit>
+  </match>
+  <!-- sah* -> sah -->
+  <match>
+    <test name="lang" compare="contains"><string>sah</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sah</string></edit>
+  </match>
+  <!-- sat* -> sat -->
+  <match>
+    <test name="lang" compare="contains"><string>sat</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sat</string></edit>
+  </match>
+  <!-- sc* -> sc -->
+  <match>
+    <test name="lang" compare="contains"><string>sc</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sc</string></edit>
+  </match>
+  <!-- sco* -> sco -->
+  <match>
+    <test name="lang" compare="contains"><string>sco</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sco</string></edit>
+  </match>
+  <!-- sd* -> sd -->
+  <match>
+    <test name="lang" compare="contains"><string>sd</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sd</string></edit>
+  </match>
+  <!-- se* -> se -->
+  <match>
+    <test name="lang" compare="contains"><string>se</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>se</string></edit>
+  </match>
+  <!-- sel* -> sel -->
+  <match>
+    <test name="lang" compare="contains"><string>sel</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sel</string></edit>
+  </match>
+  <!-- sg* -> sg -->
+  <match>
+    <test name="lang" compare="contains"><string>sg</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sg</string></edit>
+  </match>
+  <!-- sh* -> sh -->
+  <match>
+    <test name="lang" compare="contains"><string>sh</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sh</string></edit>
+  </match>
+  <!-- shs* -> shs -->
+  <match>
+    <test name="lang" compare="contains"><string>shs</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>shs</string></edit>
+  </match>
+  <!-- si* -> si -->
+  <match>
+    <test name="lang" compare="contains"><string>si</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>si</string></edit>
+  </match>
+  <!-- sid* -> sid -->
+  <match>
+    <test name="lang" compare="contains"><string>sid</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sid</string></edit>
+  </match>
+  <!-- sk* -> sk -->
+  <match>
+    <test name="lang" compare="contains"><string>sk</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sk</string></edit>
+  </match>
+  <!-- sl* -> sl -->
+  <match>
+    <test name="lang" compare="contains"><string>sl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sl</string></edit>
+  </match>
+  <!-- sm* -> sm -->
+  <match>
+    <test name="lang" compare="contains"><string>sm</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sm</string></edit>
+  </match>
+  <!-- sma* -> sma -->
+  <match>
+    <test name="lang" compare="contains"><string>sma</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sma</string></edit>
+  </match>
+  <!-- smj* -> smj -->
+  <match>
+    <test name="lang" compare="contains"><string>smj</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>smj</string></edit>
+  </match>
+  <!-- smn* -> smn -->
+  <match>
+    <test name="lang" compare="contains"><string>smn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>smn</string></edit>
+  </match>
+  <!-- sms* -> sms -->
+  <match>
+    <test name="lang" compare="contains"><string>sms</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sms</string></edit>
+  </match>
+  <!-- sn* -> sn -->
+  <match>
+    <test name="lang" compare="contains"><string>sn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sn</string></edit>
+  </match>
+  <!-- so* -> so -->
+  <match>
+    <test name="lang" compare="contains"><string>so</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>so</string></edit>
+  </match>
+  <!-- sq* -> sq -->
+  <match>
+    <test name="lang" compare="contains"><string>sq</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sq</string></edit>
+  </match>
+  <!-- sr* -> sr -->
+  <match>
+    <test name="lang" compare="contains"><string>sr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sr</string></edit>
+  </match>
+  <!-- ss* -> ss -->
+  <match>
+    <test name="lang" compare="contains"><string>ss</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ss</string></edit>
+  </match>
+  <!-- st* -> st -->
+  <match>
+    <test name="lang" compare="contains"><string>st</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>st</string></edit>
+  </match>
+  <!-- su* -> su -->
+  <match>
+    <test name="lang" compare="contains"><string>su</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>su</string></edit>
+  </match>
+  <!-- sv* -> sv -->
+  <match>
+    <test name="lang" compare="contains"><string>sv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sv</string></edit>
+  </match>
+  <!-- sw* -> sw -->
+  <match>
+    <test name="lang" compare="contains"><string>sw</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>sw</string></edit>
+  </match>
+  <!-- syr* -> syr -->
+  <match>
+    <test name="lang" compare="contains"><string>syr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>syr</string></edit>
+  </match>
+  <!-- ta* -> ta -->
+  <match>
+    <test name="lang" compare="contains"><string>ta</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ta</string></edit>
+  </match>
+  <!-- te* -> te -->
+  <match>
+    <test name="lang" compare="contains"><string>te</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>te</string></edit>
+  </match>
+  <!-- tg* -> tg -->
+  <match>
+    <test name="lang" compare="contains"><string>tg</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tg</string></edit>
+  </match>
+  <!-- th* -> th -->
+  <match>
+    <test name="lang" compare="contains"><string>th</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>th</string></edit>
+  </match>
+  <!-- tig* -> tig -->
+  <match>
+    <test name="lang" compare="contains"><string>tig</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tig</string></edit>
+  </match>
+  <!-- tk* -> tk -->
+  <match>
+    <test name="lang" compare="contains"><string>tk</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tk</string></edit>
+  </match>
+  <!-- tl* -> tl -->
+  <match>
+    <test name="lang" compare="contains"><string>tl</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tl</string></edit>
+  </match>
+  <!-- tn* -> tn -->
+  <match>
+    <test name="lang" compare="contains"><string>tn</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tn</string></edit>
+  </match>
+  <!-- to* -> to -->
+  <match>
+    <test name="lang" compare="contains"><string>to</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>to</string></edit>
+  </match>
+  <!-- tr* -> tr -->
+  <match>
+    <test name="lang" compare="contains"><string>tr</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tr</string></edit>
+  </match>
+  <!-- ts* -> ts -->
+  <match>
+    <test name="lang" compare="contains"><string>ts</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ts</string></edit>
+  </match>
+  <!-- tt* -> tt -->
+  <match>
+    <test name="lang" compare="contains"><string>tt</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tt</string></edit>
+  </match>
+  <!-- tw* -> tw -->
+  <match>
+    <test name="lang" compare="contains"><string>tw</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tw</string></edit>
+  </match>
+  <!-- ty* -> ty -->
+  <match>
+    <test name="lang" compare="contains"><string>ty</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ty</string></edit>
+  </match>
+  <!-- tyv* -> tyv -->
+  <match>
+    <test name="lang" compare="contains"><string>tyv</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>tyv</string></edit>
+  </match>
+  <!-- ug* -> ug -->
+  <match>
+    <test name="lang" compare="contains"><string>ug</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ug</string></edit>
+  </match>
+  <!-- uk* -> uk -->
+  <match>
+    <test name="lang" compare="contains"><string>uk</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>uk</string></edit>
+  </match>
+  <!-- ur* -> ur -->
+  <match>
+    <test name="lang" compare="contains"><string>ur</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ur</string></edit>
+  </match>
+  <!-- uz* -> uz -->
+  <match>
+    <test name="lang" compare="contains"><string>uz</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>uz</string></edit>
+  </match>
+  <!-- ve* -> ve -->
+  <match>
+    <test name="lang" compare="contains"><string>ve</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>ve</string></edit>
+  </match>
+  <!-- vi* -> vi -->
+  <match>
+    <test name="lang" compare="contains"><string>vi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>vi</string></edit>
+  </match>
+  <!-- vo* -> vo -->
+  <match>
+    <test name="lang" compare="contains"><string>vo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>vo</string></edit>
+  </match>
+  <!-- vot* -> vot -->
+  <match>
+    <test name="lang" compare="contains"><string>vot</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>vot</string></edit>
+  </match>
+  <!-- wa* -> wa -->
+  <match>
+    <test name="lang" compare="contains"><string>wa</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>wa</string></edit>
+  </match>
+  <!-- wal* -> wal -->
+  <match>
+    <test name="lang" compare="contains"><string>wal</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>wal</string></edit>
+  </match>
+  <!-- wen* -> wen -->
+  <match>
+    <test name="lang" compare="contains"><string>wen</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>wen</string></edit>
+  </match>
+  <!-- wo* -> wo -->
+  <match>
+    <test name="lang" compare="contains"><string>wo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>wo</string></edit>
+  </match>
+  <!-- xh* -> xh -->
+  <match>
+    <test name="lang" compare="contains"><string>xh</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>xh</string></edit>
+  </match>
+  <!-- yap* -> yap -->
+  <match>
+    <test name="lang" compare="contains"><string>yap</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>yap</string></edit>
+  </match>
+  <!-- yi* -> yi -->
+  <match>
+    <test name="lang" compare="contains"><string>yi</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>yi</string></edit>
+  </match>
+  <!-- yo* -> yo -->
+  <match>
+    <test name="lang" compare="contains"><string>yo</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>yo</string></edit>
+  </match>
+  <!-- za* -> za -->
+  <match>
+    <test name="lang" compare="contains"><string>za</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>za</string></edit>
+  </match>
+  <!-- zu* -> zu -->
+  <match>
+    <test name="lang" compare="contains"><string>zu</string></test>
+    <edit name="lang" mode="assign" binding="same"><string>zu</string></edit>
+  </match>
+</fontconfig>
index 0af8832..f8d96ce 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set substitutions for non-Latin fonts</description>
 <!--
   Mark common families with their generics so we'll get
                <default><family>cursive</family></default>
        </alias>
 
+<!--
+  system-ui
+-->
+       <alias>
+               <family>Noto Sans Arabic UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Bengali UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Devanagari UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Gujarati UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Gurmukhi UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Kannada UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Khmer UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Lao UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Malayalam UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Myanmar UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Oriya UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Sinhala UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Tamil UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Telugu UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans Thai UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Leelawadee UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Nirmala UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Yu Gothic UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Meiryo UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>MS UI Gothic</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Khmer UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Lao UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Microsoft JhengHei UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Microsoft YaHei UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+
 </fontconfig>
index e8d1978..5c1bd36 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set substitutions for emoji/math fonts</description>
 
 <!-- Keep in sync with 60-generic.conf -->
                <default><family>emoji</family></default>
        </alias>
        <alias binding="same">
+               <family>JoyPixels</family>
+               <default><family>emoji</family></default>
+       </alias>
+       <alias binding="same">
                <family>Emoji One</family>
                <default><family>emoji</family></default>
        </alias>
index a9240b9..86486c9 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set substitutions for Latin fonts</description>
 <!--
   Mark common families with their generics so we'll get
                <default><family>monospace</family></default>
        </alias>
        <alias>
+               <family>Courier Std</family>
+               <default><family>monospace</family></default>
+       </alias>
+       <alias>
                <family>Cumberland AMT</family>
                <default><family>monospace</family></default>
        </alias>
                <family>Zapfino</family>
                <default><family>cursive</family></default>
        </alias>
+<!--
+  system-ui
+-->
+       <alias>
+               <family>Cantarell</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Noto Sans UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Segoe UI</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Segoe UI Historic</family>
+               <default><family>system-ui</family></default>
+       </alias>
+       <alias>
+               <family>Segoe UI Symbol</family>
+               <default><family>system-ui</family></default>
+       </alias>
 
 </fontconfig>
diff --git a/conf.d/48-spacing.conf b/conf.d/48-spacing.conf
new file mode 100644 (file)
index 0000000..6df5c11
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+  <description>Add mono to the family when spacing is 100</description>
+<!--
+  If the request specifies spacing 100, add monospace to family
+ -->
+       <match target="pattern">
+               <test qual="any" name="spacing" compare="eq">
+                       <int>100</int>
+               </test>
+               <edit name="family" mode="prepend">
+                       <string>monospace</string>
+               </edit>
+       </match>
+</fontconfig>
index 8b587b0..6cc3a1c 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Add sans-serif to the family when no generic name</description>
 <!--
   If the font still has no generic name, add sans-serif
index 681ed6d..d019f4d 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Load per-user customization files</description>
        <!--
            Load per-user customization files where stored on XDG Base Directory
index 885c357..82e3c1b 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Load local customization file</description>
        <!-- Load local system customization file -->
        <include ignore_missing="yes">local.conf</include>
index be7b52b..7831507 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set preferable fonts for emoji/math fonts</description>
 <!-- Keep in sync with 45-generic.conf -->
 
@@ -42,6 +38,7 @@
                        <family>EmojiOne Mozilla</family> <!-- Mozilla -->
                        <!-- Third-Party fonts -->
                        <family>Emoji Two</family>
+                       <family>JoyPixels</family>
                        <family>Emoji One</family>
                        <!-- Non-color -->
                        <family>Noto Emoji</family> <!-- Google -->
index 5be5d6a..ff933af 100644 (file)
@@ -1,15 +1,11 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set preferable fonts for Latin</description>
        <alias>
                <family>serif</family>
                <prefer>
-                       <family>Bitstream Vera Serif</family>
+                       <family>Noto Serif</family>
                        <family>DejaVu Serif</family>
                        <family>Times New Roman</family>
                        <family>Thorndale AMT</family>
@@ -22,7 +18,7 @@
        <alias>
                <family>sans-serif</family>
                <prefer>
-                       <family>Bitstream Vera Sans</family>
+                       <family>Noto Sans</family>
                        <family>DejaVu Sans</family>
                        <family>Verdana</family>
                        <family>Arial</family>
@@ -39,7 +35,7 @@
        <alias>
                <family>monospace</family>
                <prefer>
-                       <family>Bitstream Vera Sans Mono</family>
+                       <family>Noto Sans Mono</family>
                        <family>DejaVu Sans Mono</family>
                        <family>Inconsolata</family>
                        <family>Andale Mono</family>
                        <family>Comic Sans MS</family>
                </prefer>
        </alias>
+<!--
+  system-ui
+-->
+       <alias>
+               <family>system-ui</family>
+               <prefer>
+                       <family>Cantarell</family>
+                       <family>Noto Sans UI</family>
+                       <family>Segoe UI</family>
+                       <family>Segoe UI Historic</family>
+                       <family>Segoe UI Symbol</family>
+               </prefer>
+       </alias>
 
 </fontconfig>
index 5591486..47da1bb 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <!--
   fonts-persian.conf
   To configure Persian fonts from The FarsiWeb Project.
     2008       Behdad Esfahbod:  Cleanup.  Add fantasy and cursive.
   -->
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
-
 
 <!-- Deprecated fonts are discouraged -->
 
index 8985c0d..b3d47d6 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
        <alias>
                <family>serif</family>
                <prefer>
index dcbb677..4d135b0 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Set preferable fonts for non-Latin</description>
        <alias>
                <family>serif</family>
@@ -63,7 +59,7 @@
                        <family>Lohit Sindhi</family>
                        <family>Lohit Punjabi</family>
                        <family>Lohit Tamil</family>
-                       <family>Meera</family>
+                       <family>Rachana</family>
                        <family>Lohit Malayalam</family>
                        <family>Lohit Kannada</family>
                        <family>Lohit Telugu</family>
                        <family>TlwgTypewriter</family> <!-- thai -->
                        <family>TlwgMono</family> <!-- thai -->
                        <family>Hasida</family> <!-- hebrew -->
-                       <family>Mitra Mono</family> <!-- bengali -->
                        <family>GF Zemen Unicode</family> <!-- ethiopic -->
                        <family>Hapax Berbère</family> <!-- tifinagh -->
                        <family>Lohit Bengali</family>
                        <family>LKLUG</family>
                </prefer>
        </alias>
+<!--
+  system-ui
+-->
+       <alias>
+               <family>system-ui</family>
+               <prefer>
+                       <family>Noto Sans Arabic UI</family><!-- ar -->
+                       <family>Noto Sans Bengali UI</family><!-- bn -->
+                       <family>Noto Sans Devanagari UI</family><!-- hi, mai, mr -->
+                       <family>Noto Sans Gujarati UI</family><!-- gu -->
+                       <family>Noto Sans Gurmukhi UI</family><!-- pa -->
+                       <family>Noto Sans Kannada UI</family><!-- kn -->
+                       <family>Noto Sans Khmer UI</family><!-- km -->
+                       <family>Noto Sans Lao UI</family><!-- lo -->
+                       <family>Noto Sans Malayalam UI</family><!-- ml -->
+                       <family>Noto Sans Myanmar UI</family><!-- my -->
+                       <family>Noto Sans Oriya UI</family><!-- or -->
+                       <family>Noto Sans Sinhala UI</family><!-- si -->
+                       <family>Noto Sans Tamil UI</family><!-- ta -->
+                       <family>Noto Sans Telugu UI</family><!-- te -->
+                       <family>Noto Sans Thai UI</family><!-- th -->
+                       <family>Leelawadee UI</family><!-- bug, th, jv, km, lo -->
+                       <family>Nirmala UI</family><!-- Indic -->
+                       <family>Yu Gothic UI</family><!-- han (ja) -->
+                       <family>Meiryo UI</family><!-- han (ja) -->
+                       <family>MS UI Gothic</family><!-- han (ja) -->
+                       <family>Khmer UI</family><!-- km -->
+                       <family>Lao UI</family><!-- lo -->
+                       <family>Microsoft YaHei UI</family><!-- han (zh-cn) -->
+                       <family>Microsoft JhengHei UI</family><!-- han (zh-tw) -->
+               </prefer>
+       </alias>
+
 </fontconfig>
index a3586f2..02854ff 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
        <alias>
                <family>serif</family>
                <prefer>
index efb1bc0..3cde490 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Reject bitmap fonts</description>
 <!-- Reject bitmap fonts -->
  <selectfont>
index 0c70a53..272b292 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
   <description>Accept bitmap fonts</description>
 <!-- Accept bitmap fonts -->
  <selectfont>
index 8cd01f9..d20990c 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
 <!-- Fix-ups for Delicious family -->
 
 <!-- Delicious 'heavy' variant says its Medium weight -->
index 6b929dd..dfce674 100644 (file)
@@ -1,10 +1,6 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <fontconfig>
-  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-  </its:rules>
-
 <!-- 
  Artificial oblique for fonts without an italic or oblique version
  -->
index ff03fb2..fc26ef3 100644 (file)
@@ -1,8 +1,8 @@
-# 
+#
 #  fontconfig/conf.d/Makefile.am
-# 
+#
 #  Copyright © 2005 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
@@ -12,7 +12,7 @@
 #  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
 #  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 #  PERFORMANCE OF THIS SOFTWARE.
 
-BUILT_SOURCES = README
+NULL =
+BUILT_SOURCES =                \
+       README                  \
+       35-lang-normalize.conf  \
+       $(NULL)
 DOC_SOURCES = README.in
 DOC_FILES = $(DOC_SOURCES:.in=)
 
 CONF_LINKS = \
        10-hinting-$(PREFERRED_HINTING).conf    \
        10-scale-bitmap-fonts.conf \
+       10-yes-antialias.conf   \
+       10-sub-pixel-$(PREFERRED_SUB_PIXEL_RENDERING).conf      \
+       11-lcdfilter-default.conf \
        20-unhint-small-vera.conf \
        30-metric-aliases.conf \
        40-nonlatin.conf \
        45-generic.conf \
        45-latin.conf \
+       48-spacing.conf \
        49-sansserif.conf \
        50-user.conf \
        51-local.conf \
@@ -52,27 +60,33 @@ config_DATA = $(DOC_FILES)
 
 templatedir = $(TEMPLATEDIR)
 template_DATA =                                \
+       05-reset-dirs-sample.conf       \
+       09-autohint-if-no-hinting.conf  \
        10-autohint.conf                \
        10-hinting-full.conf            \
        10-hinting-medium.conf          \
        10-hinting-none.conf            \
        10-hinting-slight.conf          \
-       10-no-sub-pixel.conf            \
+       10-no-antialias.conf            \
        10-scale-bitmap-fonts.conf      \
        10-sub-pixel-bgr.conf           \
+       10-sub-pixel-none.conf          \
        10-sub-pixel-rgb.conf           \
        10-sub-pixel-vbgr.conf          \
        10-sub-pixel-vrgb.conf          \
        10-unhinted.conf                \
+       10-yes-antialias.conf           \
        11-lcdfilter-default.conf       \
        11-lcdfilter-legacy.conf        \
        11-lcdfilter-light.conf         \
        20-unhint-small-vera.conf       \
        25-unhint-nonlatin.conf         \
        30-metric-aliases.conf          \
+       35-lang-normalize.conf          \
        40-nonlatin.conf                \
        45-generic.conf                 \
        45-latin.conf                   \
+       48-spacing.conf                 \
        49-sansserif.conf               \
        50-user.conf                    \
        51-local.conf                   \
@@ -90,6 +104,9 @@ template_DATA =                              \
 README: $(srcdir)/README.in
        sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
 
+35-lang-normalize.conf: ../fc-lang/Makefile.am
+       cd ../fc-lang && $(MAKE) $(AM_MAKEFLAGS) $(top_builddir)/conf.d/35-lang-normalize.conf
+
 install-data-hook:
        mkdir -p $(DESTDIR)$(configdir)
        @(echo cd $(DESTDIR)$(configdir);                       \
index 604af41..3e4f8bc 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 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@
 
-# 
+#
 #  fontconfig/conf.d/Makefile.am
-# 
+#
 #  Copyright © 2005 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
@@ -28,7 +28,7 @@
 #  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
@@ -200,6 +200,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -211,6 +213,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -221,6 +224,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -291,9 +295,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -302,8 +312,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -355,9 +363,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -366,17 +379,26 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-BUILT_SOURCES = README
+NULL = 
+BUILT_SOURCES = \
+       README                  \
+       35-lang-normalize.conf  \
+       $(NULL)
+
 DOC_SOURCES = README.in
 DOC_FILES = $(DOC_SOURCES:.in=)
 CONF_LINKS = \
        10-hinting-$(PREFERRED_HINTING).conf    \
        10-scale-bitmap-fonts.conf \
+       10-yes-antialias.conf   \
+       10-sub-pixel-$(PREFERRED_SUB_PIXEL_RENDERING).conf      \
+       11-lcdfilter-default.conf \
        20-unhint-small-vera.conf \
        30-metric-aliases.conf \
        40-nonlatin.conf \
        45-generic.conf \
        45-latin.conf \
+       48-spacing.conf \
        49-sansserif.conf \
        50-user.conf \
        51-local.conf \
@@ -394,27 +416,33 @@ configdir = $(CONFIGDIR)
 config_DATA = $(DOC_FILES)
 templatedir = $(TEMPLATEDIR)
 template_DATA = \
+       05-reset-dirs-sample.conf       \
+       09-autohint-if-no-hinting.conf  \
        10-autohint.conf                \
        10-hinting-full.conf            \
        10-hinting-medium.conf          \
        10-hinting-none.conf            \
        10-hinting-slight.conf          \
-       10-no-sub-pixel.conf            \
+       10-no-antialias.conf            \
        10-scale-bitmap-fonts.conf      \
        10-sub-pixel-bgr.conf           \
+       10-sub-pixel-none.conf          \
        10-sub-pixel-rgb.conf           \
        10-sub-pixel-vbgr.conf          \
        10-sub-pixel-vrgb.conf          \
        10-unhinted.conf                \
+       10-yes-antialias.conf           \
        11-lcdfilter-default.conf       \
        11-lcdfilter-legacy.conf        \
        11-lcdfilter-light.conf         \
        20-unhint-small-vera.conf       \
        25-unhint-nonlatin.conf         \
        30-metric-aliases.conf          \
+       35-lang-normalize.conf          \
        40-nonlatin.conf                \
        45-generic.conf                 \
        45-latin.conf                   \
+       48-spacing.conf                 \
        49-sansserif.conf               \
        50-user.conf                    \
        51-local.conf                   \
@@ -516,7 +544,6 @@ ctags CTAGS:
 
 cscope cscopelist:
 
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -560,7 +587,8 @@ installdirs:
        done
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -659,7 +687,8 @@ ps-am:
 uninstall-am: uninstall-configDATA uninstall-local \
        uninstall-templateDATA
 
-.MAKE: all check install install-am install-data-am install-strip
+.MAKE: all check install install-am install-data-am install-exec \
+       install-strip
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
        cscopelist-am ctags-am distclean distclean-generic \
@@ -681,6 +710,9 @@ uninstall-am: uninstall-configDATA uninstall-local \
 README: $(srcdir)/README.in
        sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
 
+35-lang-normalize.conf: ../fc-lang/Makefile.am
+       cd ../fc-lang && $(MAKE) $(AM_MAKEFLAGS) $(top_builddir)/conf.d/35-lang-normalize.conf
+
 install-data-hook:
        mkdir -p $(DESTDIR)$(configdir)
        @(echo cd $(DESTDIR)$(configdir);                       \
index 6a774c5..0d20ef4 100644 (file)
@@ -9,7 +9,7 @@ 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:
+ Files beginning with: Contain:
  
  00 through 09         Font directories
  10 through 19         system rendering defaults (AA, etc)
index 90c45de..4783a43 100644 (file)
@@ -9,7 +9,7 @@ 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:
+ Files beginning with: Contain:
  
  00 through 09         Font directories
  10 through 19         system rendering defaults (AA, etc)
diff --git a/conf.d/link_confs.py b/conf.d/link_confs.py
new file mode 100644 (file)
index 0000000..11e759a
--- /dev/null
@@ -0,0 +1,45 @@
+#!/usr/bin/env python3
+
+import os
+import sys
+import argparse
+import platform
+from pathlib import PurePath
+
+if __name__=='__main__':
+    parser = argparse.ArgumentParser()
+    parser.add_argument('availpath')
+    parser.add_argument('confpath')
+    parser.add_argument('links', nargs='+')
+    args = parser.parse_args()
+
+    if os.path.isabs(args.confpath):
+        destdir = os.environ.get('DESTDIR')
+        if destdir:
+            # c:\destdir + c:\prefix must produce c:\destdir\prefix
+            confpath = str(PurePath(destdir, *PurePath(args.confpath).parts[1:]))
+        else:
+            confpath = args.confpath
+    else:
+        confpath = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.confpath)
+
+    if not os.path.exists(confpath):
+        os.makedirs(confpath)
+
+    for link in args.links:
+        src = os.path.join(args.availpath, link)
+        dst = os.path.join(confpath, link)
+        try:
+            os.remove(dst)
+        except FileNotFoundError:
+            pass
+        try:
+            os.symlink(src, dst)
+        except NotImplementedError:
+            # Not supported on this version of Windows
+            break
+        except OSError as e:
+            # Symlink privileges are not available
+            if platform.system().lower() == 'windows' and e.winerror == 1314:
+                break
+            raise
diff --git a/conf.d/meson.build b/conf.d/meson.build
new file mode 100644 (file)
index 0000000..cc4e16c
--- /dev/null
@@ -0,0 +1,99 @@
+conf_files = [
+  '05-reset-dirs-sample.conf',
+  '09-autohint-if-no-hinting.conf',
+  '10-autohint.conf',
+  '10-hinting-full.conf',
+  '10-hinting-medium.conf',
+  '10-hinting-none.conf',
+  '10-hinting-slight.conf',
+  '10-no-antialias.conf',
+  '10-scale-bitmap-fonts.conf',
+  '10-sub-pixel-bgr.conf',
+  '10-sub-pixel-none.conf',
+  '10-sub-pixel-rgb.conf',
+  '10-sub-pixel-vbgr.conf',
+  '10-sub-pixel-vrgb.conf',
+  '10-unhinted.conf',
+  '10-yes-antialias.conf',
+  '11-lcdfilter-default.conf',
+  '11-lcdfilter-legacy.conf',
+  '11-lcdfilter-light.conf',
+  '20-unhint-small-vera.conf',
+  '25-unhint-nonlatin.conf',
+  '30-metric-aliases.conf',
+  '40-nonlatin.conf',
+  '45-generic.conf',
+  '45-latin.conf',
+  '48-spacing.conf',
+  '49-sansserif.conf',
+  '50-user.conf',
+  '51-local.conf',
+  '60-generic.conf',
+  '60-latin.conf',
+  '65-fonts-persian.conf',
+  '65-khmer.conf',
+  '65-nonlatin.conf',
+  '69-unifont.conf',
+  '70-no-bitmaps.conf',
+  '70-yes-bitmaps.conf',
+  '80-delicious.conf',
+  '90-synthetic.conf',
+]
+
+preferred_hinting = get_option('default-hinting')
+preferred_sub_pixel_rendering = get_option('default-sub-pixel-rendering')
+
+conf_links = [
+  '10-hinting-@0@.conf'.format(preferred_hinting),
+  '10-scale-bitmap-fonts.conf',
+  '10-sub-pixel-@0@.conf'.format(preferred_sub_pixel_rendering),
+  '10-yes-antialias.conf',
+  '11-lcdfilter-default.conf',
+  '20-unhint-small-vera.conf',
+  '30-metric-aliases.conf',
+  '40-nonlatin.conf',
+  '45-generic.conf',
+  '45-latin.conf',
+  '48-spacing.conf',
+  '49-sansserif.conf',
+  '50-user.conf',
+  '51-local.conf',
+  '60-generic.conf',
+  '60-latin.conf',
+  '65-fonts-persian.conf',
+  '65-nonlatin.conf',
+  '69-unifont.conf',
+  '80-delicious.conf',
+  '90-synthetic.conf',
+]
+
+install_data(conf_files, install_dir: fc_templatedir)
+
+meson.add_install_script('link_confs.py', fc_templatedir,
+  fc_configdir,
+  conf_links,
+)
+
+# 35-lang-normalize.conf
+orths = []
+foreach o : orth_files          # orth_files is from fc-lang/meson.build
+  o = o.split('.')[0]           # strip filename suffix
+  if not o.contains('_')        # ignore those with an underscore
+    orths += [o]
+  endif
+endforeach
+
+custom_target('35-lang-normalize.conf',
+  output: '35-lang-normalize.conf',
+  command: [find_program('write-35-lang-normalize-conf.py'), ','.join(orths), '@OUTPUT@'],
+  install_dir: fc_templatedir,
+  install: true)
+
+# README
+readme_cdata = configuration_data()
+readme_cdata.set('TEMPLATEDIR', fc_templatedir)
+configure_file(output: 'README',
+  input: 'README.in',
+  configuration: readme_cdata,
+  install_dir: fc_configdir,
+  install: true)
diff --git a/conf.d/write-35-lang-normalize-conf.py b/conf.d/write-35-lang-normalize-conf.py
new file mode 100755 (executable)
index 0000000..33d0d0e
--- /dev/null
@@ -0,0 +1,36 @@
+#!/usr/bin/env python3
+#
+# fontconfig write-35-lang-normalize-conf.py
+
+import os
+import sys
+
+if len(sys.argv) < 2:
+  print('ERROR: usage: {} ORTH_LIST [OUTPUT.CONF]'.format(sys.argv[0]))
+  sys.exit(-1)
+
+orth_list_unsorted = sys.argv[1].split(',')
+
+if len(sys.argv) > 2 and sys.argv[2] != '-':
+  f_out = open(sys.argv[2], 'w', encoding='utf8')
+else:
+  f_out = sys.stdout
+
+orth_list = sorted(sys.argv[1].split(','))
+
+print('<?xml version="1.0"?>', file=f_out)
+print('<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">', file=f_out)
+print('<fontconfig>', file=f_out)
+
+for o in orth_list:
+  print(f'  <!-- {o}* -> {o} -->', file=f_out)
+  print(f'  <match>', file=f_out)
+  print(f'    <test name="lang" compare="contains"><string>{o}</string></test>', file=f_out)
+  print(f'    <edit name="lang" mode="assign" binding="same"><string>{o}</string></edit>', file=f_out)
+  print(f'  </match>', file=f_out)
+
+print('</fontconfig>', file=f_out)
+
+f_out.close()
+
+sys.exit(0)
index 256083a..b33c9e8 100755 (executable)
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2018 Free Software Foundation, Inc.
 
-timestamp='2018-03-08'
+timestamp='2018-08-29'
 
 # 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
@@ -84,8 +84,6 @@ if test $# != 0; then
   exit 1
 fi
 
-trap 'exit 1' 1 2 15
-
 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
 # compiler to aid in system detection is discouraged as it requires
 # temporary files to be created and, as you can see below, it is a
@@ -96,34 +94,39 @@ trap 'exit 1' 1 2 15
 
 # Portable tmp directory creation inspired by the Autoconf team.
 
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > "$dummy.c" ;
-       for c in cc gcc c89 c99 ; do
-         if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
-            CC_FOR_BUILD="$c"; break ;
-         fi ;
-       done ;
-       if test x"$CC_FOR_BUILD" = x ; then
-         CC_FOR_BUILD=no_compiler_found ;
-       fi
-       ;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
+tmp=
+# shellcheck disable=SC2172
+trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15
+trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0
+
+set_cc_for_build() {
+    : "${TMPDIR=/tmp}"
+    # shellcheck disable=SC2039
+    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+       { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
+       { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+       { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
+    dummy=$tmp/dummy
+    case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
+       ,,)    echo "int x;" > "$dummy.c"
+              for driver in cc gcc c89 c99 ; do
+                  if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
+                      CC_FOR_BUILD="$driver"
+                      break
+                  fi
+              done
+              if test x"$CC_FOR_BUILD" = x ; then
+                  CC_FOR_BUILD=no_compiler_found
+              fi
+              ;;
+       ,,*)   CC_FOR_BUILD=$CC ;;
+       ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+    esac
+}
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+if test -f /.attbin/uname ; then
        PATH=$PATH:/.attbin ; export PATH
 fi
 
@@ -138,7 +141,7 @@ Linux|GNU|GNU/*)
        # We could probably try harder.
        LIBC=gnu
 
-       eval "$set_cc_for_build"
+       set_cc_for_build
        cat <<-EOF > "$dummy.c"
        #include <features.h>
        #if defined(__UCLIBC__)
@@ -199,7 +202,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
                os=netbsdelf
                ;;
            arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-               eval "$set_cc_for_build"
+               set_cc_for_build
                if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
                        | grep -q __ELF__
                then
@@ -237,7 +240,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
        # contains redundant information, the shorter form:
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-       echo "$machine-${os}${release}${abi}"
+       echo "$machine-${os}${release}${abi-}"
        exit ;;
     *:Bitrig:*:*)
        UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
@@ -389,20 +392,15 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        echo i386-pc-auroraux"$UNAME_RELEASE"
        exit ;;
     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-       eval "$set_cc_for_build"
-       SUN_ARCH=i386
-       # If there is a compiler, see if it is configured for 64-bit objects.
-       # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-       # This test works for both compilers.
-       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
-           if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-               grep IS_64BIT_ARCH >/dev/null
-           then
-               SUN_ARCH=x86_64
-           fi
-       fi
-       echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+       case `isainfo -b` in
+           32)
+               echo i386-pc-solaris2"$UNAME_REL"
+               ;;
+           64)
+               echo x86_64-pc-solaris2"$UNAME_REL"
+               ;;
+       esac
        exit ;;
     sun4*:SunOS:6*:*)
        # According to config.sub, this is the proper way to canonicalize
@@ -482,7 +480,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        echo clipper-intergraph-clix"$UNAME_RELEASE"
        exit ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
-       eval "$set_cc_for_build"
+       set_cc_for_build
        sed 's/^        //' << EOF > "$dummy.c"
 #ifdef __cplusplus
 #include <stdio.h>  /* for printf() prototype */
@@ -579,7 +577,7 @@ EOF
        exit ;;
     *:AIX:2:3)
        if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-               eval "$set_cc_for_build"
+               set_cc_for_build
                sed 's/^                //' << EOF > "$dummy.c"
                #include <sys/systemcfg.h>
 
@@ -660,7 +658,7 @@ EOF
                    esac
                fi
                if [ "$HP_ARCH" = "" ]; then
-                   eval "$set_cc_for_build"
+                   set_cc_for_build
                    sed 's/^            //' << EOF > "$dummy.c"
 
                #define _HPUX_SOURCE
@@ -700,7 +698,7 @@ EOF
        esac
        if [ "$HP_ARCH" = hppa2.0w ]
        then
-           eval "$set_cc_for_build"
+           set_cc_for_build
 
            # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
            # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
@@ -726,7 +724,7 @@ EOF
        echo ia64-hp-hpux"$HPUX_REV"
        exit ;;
     3050*:HI-UX:*:*)
-       eval "$set_cc_for_build"
+       set_cc_for_build
        sed 's/^        //' << EOF > "$dummy.c"
        #include <unistd.h>
        int
@@ -840,6 +838,17 @@ EOF
     *:BSD/OS:*:*)
        echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
        exit ;;
+    arm:FreeBSD:*:*)
+       UNAME_PROCESSOR=`uname -p`
+       set_cc_for_build
+       if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+           | grep -q __ARM_PCS_VFP
+       then
+           echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
+       else
+           echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
+       fi
+       exit ;;
     *:FreeBSD:*:*)
        UNAME_PROCESSOR=`/usr/bin/uname -p`
        case "$UNAME_PROCESSOR" in
@@ -894,8 +903,8 @@ EOF
        # other systems with GNU libc and userland
        echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
        exit ;;
-    i*86:Minix:*:*)
-       echo "$UNAME_MACHINE"-pc-minix
+    *:Minix:*:*)
+       echo "$UNAME_MACHINE"-unknown-minix
        exit ;;
     aarch64:Linux:*:*)
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
@@ -922,7 +931,7 @@ EOF
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
        exit ;;
     arm*:Linux:*:*)
-       eval "$set_cc_for_build"
+       set_cc_for_build
        if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
            | grep -q __ARM_EABI__
        then
@@ -971,7 +980,7 @@ EOF
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
        exit ;;
     mips:Linux:*:* | mips64:Linux:*:*)
-       eval "$set_cc_for_build"
+       set_cc_for_build
        sed 's/^        //' << EOF > "$dummy.c"
        #undef CPU
        #undef ${UNAME_MACHINE}
@@ -1285,7 +1294,7 @@ EOF
        exit ;;
     *:Darwin:*:*)
        UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-       eval "$set_cc_for_build"
+       set_cc_for_build
        if test "$UNAME_PROCESSOR" = unknown ; then
            UNAME_PROCESSOR=powerpc
        fi
@@ -1358,6 +1367,7 @@ EOF
        # "uname -m" is not consistent, so use $cputype instead. 386
        # is converted to i386 for consistency with other x86
        # operating systems.
+       # shellcheck disable=SC2154
        if test "$cputype" = 386; then
            UNAME_MACHINE=i386
        else
index d836433..c16fb79 100644 (file)
@@ -52,8 +52,7 @@
    */
 #undef HAVE_DCGETTEXT
 
-/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
-   */
+/* Define to 1 if you have the <dirent.h> header file. */
 #undef HAVE_DIRENT_H
 
 /* Define to 1 if you have the <dlfcn.h> header file. */
 /* Define to 1 if you have the `lstat' function. */
 #undef HAVE_LSTAT
 
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
+/* Define to 1 if you have the <minix/config.h> header file. */
+#undef HAVE_MINIX_CONFIG_H
 
 /* Define to 1 if you have the `mkdtemp' function. */
 #undef HAVE_MKDTEMP
 /* Have Solaris __machine_*_barrier and atomic_* operations */
 #undef HAVE_SOLARIS_ATOMIC_OPS
 
+/* Have C99 stdatomic atomic primitives */
+#undef HAVE_STDATOMIC_PRIMITIVES
+
 /* Define to 1 if you have the <stdint.h> header file. */
 #undef HAVE_STDINT_H
 
+/* Define to 1 if you have the <stdio.h> header file. */
+#undef HAVE_STDIO_H
+
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
 /* Can use #warning in C files */
 #undef HAVE_WARNING_CPP_DIRECTIVE
 
+/* Define to 1 if you have the <wchar.h> header file. */
+#undef HAVE_WCHAR_H
+
 /* Use xmlparse.h instead of expat.h */
 #undef HAVE_XMLPARSE_H
 
 /* The size of `void *', as computed by sizeof. */
 #undef SIZEOF_VOID_P
 
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+   required in a freestanding environment). This macro is provided for
+   backward compatibility; new code need not use it. */
 #undef STDC_HEADERS
 
 /* Use iconv. */
 #ifndef _ALL_SOURCE
 # undef _ALL_SOURCE
 #endif
+/* Enable general extensions on macOS.  */
+#ifndef _DARWIN_C_SOURCE
+# undef _DARWIN_C_SOURCE
+#endif
+/* Enable general extensions on Solaris.  */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
 #endif
-/* Enable threading extensions on Solaris.  */
+/* Enable X/Open compliant socket functions that do not require linking
+   with -lxnet on HP-UX 11.11.  */
+#ifndef _HPUX_ALT_XOPEN_SOCKET_API
+# undef _HPUX_ALT_XOPEN_SOCKET_API
+#endif
+/* Identify the host operating system as Minix.
+   This macro does not affect the system headers' behavior.
+   A future release of Autoconf may stop defining this macro.  */
+#ifndef _MINIX
+# undef _MINIX
+#endif
+/* Enable general extensions on NetBSD.
+   Enable NetBSD compatibility extensions on Minix.  */
+#ifndef _NETBSD_SOURCE
+# undef _NETBSD_SOURCE
+#endif
+/* Enable OpenBSD compatibility extensions on NetBSD.
+   Oddly enough, this does nothing on OpenBSD.  */
+#ifndef _OPENBSD_SOURCE
+# undef _OPENBSD_SOURCE
+#endif
+/* Define to 1 if needed for POSIX-compatible behavior.  */
+#ifndef _POSIX_SOURCE
+# undef _POSIX_SOURCE
+#endif
+/* Define to 2 if needed for POSIX-compatible behavior.  */
+#ifndef _POSIX_1_SOURCE
+# undef _POSIX_1_SOURCE
+#endif
+/* Enable POSIX-compatible threading on Solaris.  */
 #ifndef _POSIX_PTHREAD_SEMANTICS
 # undef _POSIX_PTHREAD_SEMANTICS
 #endif
+/* Enable extensions specified by ISO/IEC TS 18661-5:2014.  */
+#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
+# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-1:2014.  */
+#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
+# undef __STDC_WANT_IEC_60559_BFP_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-2:2015.  */
+#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
+# undef __STDC_WANT_IEC_60559_DFP_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-4:2015.  */
+#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
+# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-3:2015.  */
+#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
+# undef __STDC_WANT_IEC_60559_TYPES_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TR 24731-2:2010.  */
+#ifndef __STDC_WANT_LIB_EXT2__
+# undef __STDC_WANT_LIB_EXT2__
+#endif
+/* Enable extensions specified by ISO/IEC 24747:2009.  */
+#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
+# undef __STDC_WANT_MATH_SPEC_FUNCS__
+#endif
 /* Enable extensions on HP NonStop.  */
 #ifndef _TANDEM_SOURCE
 # undef _TANDEM_SOURCE
 #endif
-/* Enable general extensions on Solaris.  */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
+/* Enable X/Open extensions.  Define to 500 only if necessary
+   to make mbstate_t available.  */
+#ifndef _XOPEN_SOURCE
+# undef _XOPEN_SOURCE
 #endif
 
 
 # endif
 #endif
 
-/* Enable large inode numbers on Mac OS X 10.5.  */
-#ifndef _DARWIN_USE_64_BIT_INODE
-# define _DARWIN_USE_64_BIT_INODE 1
-#endif
-
 /* Number of bits in a file offset, on hosts where this is settable. */
 #undef _FILE_OFFSET_BITS
 
 /* Define for large files, on AIX-style hosts. */
 #undef _LARGE_FILES
 
-/* Define to 1 if on MINIX. */
-#undef _MINIX
-
-/* Define to 2 if the system does not provide POSIX.1 features except with
-   this defined. */
-#undef _POSIX_1_SOURCE
-
-/* Define to 1 if you need to in order for `stat' and other things to work. */
-#undef _POSIX_SOURCE
-
 /* Define to empty if `const' does not conform to ANSI C. */
 #undef const
 
 #undef inline
 #endif
 
-/* Define to `int' if <sys/types.h> does not define. */
+/* Define as a signed integer type capable of holding a process identifier. */
 #undef pid_t
 
 #include "config-fixups.h"
index 98183ff..a3e25c8 100755 (executable)
@@ -2,7 +2,7 @@
 # Output a system dependent set of variables, describing how to set the
 # run time search path of shared libraries in an executable.
 #
-#   Copyright 1996-2016 Free Software Foundation, Inc.
+#   Copyright 1996-2015 Free Software Foundation, Inc.
 #   Taken from GNU libtool, 2001
 #   Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 #
index 20f7cf2..b51fb8c 100755 (executable)
@@ -2,7 +2,7 @@
 # Configuration validation subroutine script.
 #   Copyright 1992-2018 Free Software Foundation, Inc.
 
-timestamp='2018-05-05'
+timestamp='2018-08-29'
 
 # 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
@@ -110,16 +110,20 @@ case $# in
     exit 1;;
 esac
 
-# Spilt fields of configuration type
+# Split fields of configuration type
 IFS="-" read -r field1 field2 field3 field4 <<EOF
 $1
 EOF
 
 # Separate into logical components for further validation
 case $1 in
+       *-*-*-*-*)
+               echo Invalid configuration \`"$1"\': more than four components >&2
+               exit 1
+               ;;
        *-*-*-*)
                basic_machine=$field1-$field2
-               os=-$field3-$field4
+               os=$field3-$field4
                ;;
        *-*-*)
                # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
@@ -132,1227 +136,1133 @@ case $1 in
                        | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
                        | storm-chaos* | os2-emx* | rtmk-nova*)
                                basic_machine=$field1
-                               os=-$maybe_os
+                               os=$maybe_os
                                ;;
                        android-linux)
                                basic_machine=$field1-unknown
-                               os=-linux-android
+                               os=linux-android
                                ;;
                        *)
                                basic_machine=$field1-$field2
-                               os=-$field3
+                               os=$field3
                                ;;
                esac
                ;;
        *-*)
-               basic_machine=$field1
-               os=-$field2
+               # A lone config we happen to match not fitting any patern
+               case $field1-$field2 in
+                       decstation-3100)
+                               basic_machine=mips-dec
+                               os=
+                               ;;
+                       *-*)
+                               # Second component is usually, but not always the OS
+                               case $field2 in
+                                       # Prevent following clause from handling this valid os
+                                       sun*os*)
+                                               basic_machine=$field1
+                                               os=$field2
+                                               ;;
+                                       # Manufacturers
+                                       dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
+                                       | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
+                                       | unicom* | ibm* | next | hp | isi* | apollo | altos* \
+                                       | 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* | sim | cisco \
+                                       | oki | wec | wrs | winbond)
+                                               basic_machine=$field1-$field2
+                                               os=
+                                               ;;
+                                       *)
+                                               basic_machine=$field1
+                                               os=$field2
+                                               ;;
+                               esac
+                       ;;
+               esac
                ;;
        *)
-               basic_machine=$1
-               os=
-               ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-       -sun*os*)
-               # Prevent following clause from handling this invalid input.
-               ;;
-       -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-       -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-       -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-       -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*)
-               os=
-               basic_machine=$1
-               ;;
-       -bluegene*)
-               os=-cnk
-               ;;
-       -sim | -cisco | -oki | -wec | -winbond)
-               os=
-               basic_machine=$1
-               ;;
-       -scout)
-               ;;
-       -wrs)
-               os=-vxworks
-               basic_machine=$1
-               ;;
-       -chorusos*)
-               os=-chorusos
-               basic_machine=$1
-               ;;
-       -chorusrdb)
-               os=-chorusrdb
-               basic_machine=$1
-               ;;
-       -hiux*)
-               os=-hiuxwe2
-               ;;
-       -sco6)
-               os=-sco5v6
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco5)
-               os=-sco3.2v5
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco4)
-               os=-sco3.2v4
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco3.2.[4-9]*)
-               os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco3.2v[4-9]*)
-               # Don't forget version if it is 3.2v4 or newer.
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco5v6*)
-               # Don't forget version if it is 3.2v4 or newer.
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -sco*)
-               os=-sco3.2v2
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -udk*)
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -isc)
-               os=-isc2.2
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -clix*)
-               basic_machine=clipper-intergraph
-               ;;
-       -isc*)
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
-               ;;
-       -lynx*178)
-               os=-lynxos178
-               ;;
-       -lynx*5)
-               os=-lynxos5
-               ;;
-       -lynx*)
-               os=-lynxos
-               ;;
-       -ptx*)
-               basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
-               ;;
-       -psos*)
-               os=-psos
-               ;;
-       -mint | -mint[0-9]*)
-               basic_machine=m68k-atari
-               os=-mint
+               # Convert single-component short-hands not valid as part of
+               # multi-component configurations.
+               case $field1 in
+                       386bsd)
+                               basic_machine=i386-pc
+                               os=bsd
+                               ;;
+                       a29khif)
+                               basic_machine=a29k-amd
+                               os=udi
+                               ;;
+                       adobe68k)
+                               basic_machine=m68010-adobe
+                               os=scout
+                               ;;
+                       alliant)
+                               basic_machine=fx80-alliant
+                               os=
+                               ;;
+                       altos | altos3068)
+                               basic_machine=m68k-altos
+                               os=
+                               ;;
+                       am29k)
+                               basic_machine=a29k-none
+                               os=bsd
+                               ;;
+                       amdahl)
+                               basic_machine=580-amdahl
+                               os=sysv
+                               ;;
+                       amiga)
+                               basic_machine=m68k-unknown
+                               os=
+                               ;;
+                       amigaos | amigados)
+                               basic_machine=m68k-unknown
+                               os=amigaos
+                               ;;
+                       amigaunix | amix)
+                               basic_machine=m68k-unknown
+                               os=sysv4
+                               ;;
+                       apollo68)
+                               basic_machine=m68k-apollo
+                               os=sysv
+                               ;;
+                       apollo68bsd)
+                               basic_machine=m68k-apollo
+                               os=bsd
+                               ;;
+                       aros)
+                               basic_machine=i386-pc
+                               os=aros
+                               ;;
+                       aux)
+                               basic_machine=m68k-apple
+                               os=aux
+                               ;;
+                       balance)
+                               basic_machine=ns32k-sequent
+                               os=dynix
+                               ;;
+                       blackfin)
+                               basic_machine=bfin-unknown
+                               os=linux
+                               ;;
+                       cegcc)
+                               basic_machine=arm-unknown
+                               os=cegcc
+                               ;;
+                       convex-c1)
+                               basic_machine=c1-convex
+                               os=bsd
+                               ;;
+                       convex-c2)
+                               basic_machine=c2-convex
+                               os=bsd
+                               ;;
+                       convex-c32)
+                               basic_machine=c32-convex
+                               os=bsd
+                               ;;
+                       convex-c34)
+                               basic_machine=c34-convex
+                               os=bsd
+                               ;;
+                       convex-c38)
+                               basic_machine=c38-convex
+                               os=bsd
+                               ;;
+                       cray)
+                               basic_machine=j90-cray
+                               os=unicos
+                               ;;
+                       crds | unos)
+                               basic_machine=m68k-crds
+                               os=
+                               ;;
+                       da30)
+                               basic_machine=m68k-da30
+                               os=
+                               ;;
+                       decstation | pmax | pmin | dec3100 | decstatn)
+                               basic_machine=mips-dec
+                               os=
+                               ;;
+                       delta88)
+                               basic_machine=m88k-motorola
+                               os=sysv3
+                               ;;
+                       dicos)
+                               basic_machine=i686-pc
+                               os=dicos
+                               ;;
+                       djgpp)
+                               basic_machine=i586-pc
+                               os=msdosdjgpp
+                               ;;
+                       ebmon29k)
+                               basic_machine=a29k-amd
+                               os=ebmon
+                               ;;
+                       es1800 | OSE68k | ose68k | ose | OSE)
+                               basic_machine=m68k-ericsson
+                               os=ose
+                               ;;
+                       gmicro)
+                               basic_machine=tron-gmicro
+                               os=sysv
+                               ;;
+                       go32)
+                               basic_machine=i386-pc
+                               os=go32
+                               ;;
+                       h8300hms)
+                               basic_machine=h8300-hitachi
+                               os=hms
+                               ;;
+                       h8300xray)
+                               basic_machine=h8300-hitachi
+                               os=xray
+                               ;;
+                       h8500hms)
+                               basic_machine=h8500-hitachi
+                               os=hms
+                               ;;
+                       harris)
+                               basic_machine=m88k-harris
+                               os=sysv3
+                               ;;
+                       hp300)
+                               basic_machine=m68k-hp
+                               ;;
+                       hp300bsd)
+                               basic_machine=m68k-hp
+                               os=bsd
+                               ;;
+                       hp300hpux)
+                               basic_machine=m68k-hp
+                               os=hpux
+                               ;;
+                       hppaosf)
+                               basic_machine=hppa1.1-hp
+                               os=osf
+                               ;;
+                       hppro)
+                               basic_machine=hppa1.1-hp
+                               os=proelf
+                               ;;
+                       i386mach)
+                               basic_machine=i386-mach
+                               os=mach
+                               ;;
+                       vsta)
+                               basic_machine=i386-pc
+                               os=vsta
+                               ;;
+                       isi68 | isi)
+                               basic_machine=m68k-isi
+                               os=sysv
+                               ;;
+                       m68knommu)
+                               basic_machine=m68k-unknown
+                               os=linux
+                               ;;
+                       magnum | m3230)
+                               basic_machine=mips-mips
+                               os=sysv
+                               ;;
+                       merlin)
+                               basic_machine=ns32k-utek
+                               os=sysv
+                               ;;
+                       mingw64)
+                               basic_machine=x86_64-pc
+                               os=mingw64
+                               ;;
+                       mingw32)
+                               basic_machine=i686-pc
+                               os=mingw32
+                               ;;
+                       mingw32ce)
+                               basic_machine=arm-unknown
+                               os=mingw32ce
+                               ;;
+                       monitor)
+                               basic_machine=m68k-rom68k
+                               os=coff
+                               ;;
+                       morphos)
+                               basic_machine=powerpc-unknown
+                               os=morphos
+                               ;;
+                       moxiebox)
+                               basic_machine=moxie-unknown
+                               os=moxiebox
+                               ;;
+                       msdos)
+                               basic_machine=i386-pc
+                               os=msdos
+                               ;;
+                       msys)
+                               basic_machine=i686-pc
+                               os=msys
+                               ;;
+                       mvs)
+                               basic_machine=i370-ibm
+                               os=mvs
+                               ;;
+                       nacl)
+                               basic_machine=le32-unknown
+                               os=nacl
+                               ;;
+                       ncr3000)
+                               basic_machine=i486-ncr
+                               os=sysv4
+                               ;;
+                       netbsd386)
+                               basic_machine=i386-pc
+                               os=netbsd
+                               ;;
+                       netwinder)
+                               basic_machine=armv4l-rebel
+                               os=linux
+                               ;;
+                       news | news700 | news800 | news900)
+                               basic_machine=m68k-sony
+                               os=newsos
+                               ;;
+                       news1000)
+                               basic_machine=m68030-sony
+                               os=newsos
+                               ;;
+                       necv70)
+                               basic_machine=v70-nec
+                               os=sysv
+                               ;;
+                       nh3000)
+                               basic_machine=m68k-harris
+                               os=cxux
+                               ;;
+                       nh[45]000)
+                               basic_machine=m88k-harris
+                               os=cxux
+                               ;;
+                       nindy960)
+                               basic_machine=i960-intel
+                               os=nindy
+                               ;;
+                       mon960)
+                               basic_machine=i960-intel
+                               os=mon960
+                               ;;
+                       nonstopux)
+                               basic_machine=mips-compaq
+                               os=nonstopux
+                               ;;
+                       os400)
+                               basic_machine=powerpc-ibm
+                               os=os400
+                               ;;
+                       OSE68000 | ose68000)
+                               basic_machine=m68000-ericsson
+                               os=ose
+                               ;;
+                       os68k)
+                               basic_machine=m68k-none
+                               os=os68k
+                               ;;
+                       paragon)
+                               basic_machine=i860-intel
+                               os=osf
+                               ;;
+                       parisc)
+                               basic_machine=hppa-unknown
+                               os=linux
+                               ;;
+                       pw32)
+                               basic_machine=i586-unknown
+                               os=pw32
+                               ;;
+                       rdos | rdos64)
+                               basic_machine=x86_64-pc
+                               os=rdos
+                               ;;
+                       rdos32)
+                               basic_machine=i386-pc
+                               os=rdos
+                               ;;
+                       rom68k)
+                               basic_machine=m68k-rom68k
+                               os=coff
+                               ;;
+                       sa29200)
+                               basic_machine=a29k-amd
+                               os=udi
+                               ;;
+                       sei)
+                               basic_machine=mips-sei
+                               os=seiux
+                               ;;
+                       sequent)
+                               basic_machine=i386-sequent
+                               os=
+                               ;;
+                       sps7)
+                               basic_machine=m68k-bull
+                               os=sysv2
+                               ;;
+                       st2000)
+                               basic_machine=m68k-tandem
+                               os=
+                               ;;
+                       stratus)
+                               basic_machine=i860-stratus
+                               os=sysv4
+                               ;;
+                       sun2)
+                               basic_machine=m68000-sun
+                               os=
+                               ;;
+                       sun2os3)
+                               basic_machine=m68000-sun
+                               os=sunos3
+                               ;;
+                       sun2os4)
+                               basic_machine=m68000-sun
+                               os=sunos4
+                               ;;
+                       sun3)
+                               basic_machine=m68k-sun
+                               os=
+                               ;;
+                       sun3os3)
+                               basic_machine=m68k-sun
+                               os=sunos3
+                               ;;
+                       sun3os4)
+                               basic_machine=m68k-sun
+                               os=sunos4
+                               ;;
+                       sun4)
+                               basic_machine=sparc-sun
+                               os=
+                               ;;
+                       sun4os3)
+                               basic_machine=sparc-sun
+                               os=sunos3
+                               ;;
+                       sun4os4)
+                               basic_machine=sparc-sun
+                               os=sunos4
+                               ;;
+                       sun4sol2)
+                               basic_machine=sparc-sun
+                               os=solaris2
+                               ;;
+                       sun386 | sun386i | roadrunner)
+                               basic_machine=i386-sun
+                               os=
+                               ;;
+                       sv1)
+                               basic_machine=sv1-cray
+                               os=unicos
+                               ;;
+                       symmetry)
+                               basic_machine=i386-sequent
+                               os=dynix
+                               ;;
+                       t3e)
+                               basic_machine=alphaev5-cray
+                               os=unicos
+                               ;;
+                       t90)
+                               basic_machine=t90-cray
+                               os=unicos
+                               ;;
+                       toad1)
+                               basic_machine=pdp10-xkl
+                               os=tops20
+                               ;;
+                       tpf)
+                               basic_machine=s390x-ibm
+                               os=tpf
+                               ;;
+                       udi29k)
+                               basic_machine=a29k-amd
+                               os=udi
+                               ;;
+                       ultra3)
+                               basic_machine=a29k-nyu
+                               os=sym1
+                               ;;
+                       v810 | necv810)
+                               basic_machine=v810-nec
+                               os=none
+                               ;;
+                       vaxv)
+                               basic_machine=vax-dec
+                               os=sysv
+                               ;;
+                       vms)
+                               basic_machine=vax-dec
+                               os=vms
+                               ;;
+                       vxworks960)
+                               basic_machine=i960-wrs
+                               os=vxworks
+                               ;;
+                       vxworks68)
+                               basic_machine=m68k-wrs
+                               os=vxworks
+                               ;;
+                       vxworks29k)
+                               basic_machine=a29k-wrs
+                               os=vxworks
+                               ;;
+                       xbox)
+                               basic_machine=i686-pc
+                               os=mingw32
+                               ;;
+                       ymp)
+                               basic_machine=ymp-cray
+                               os=unicos
+                               ;;
+                       *)
+                               basic_machine=$1
+                               os=
+                               ;;
+               esac
                ;;
 esac
 
-# Decode aliases for certain CPU-COMPANY combinations.
+# Decode 1-component or ad-hoc basic machines
 case $basic_machine in
-       # Recognize the basic CPU types without company name.
-       # Some are omitted here because they have special meanings below.
-       1750a | 580 \
-       | a29k \
-       | aarch64 | aarch64_be \
-       | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-       | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-       | am33_2.0 \
-       | arc | arceb \
-       | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \
-       | avr | avr32 \
-       | ba \
-       | be32 | be64 \
-       | bfin \
-       | c4x | c8051 | clipper | csky \
-       | d10v | d30v | dlx | dsp16xx \
-       | e2k | epiphany \
-       | fido | fr30 | frv | ft32 \
-       | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-       | hexagon \
-       | i370 | i860 | i960 | ia16 | ia64 \
-       | ip2k | iq2000 \
-       | k1om \
-       | le32 | le64 \
-       | lm32 \
-       | m32c | m32r | m32rle | m68000 | m68k | m88k \
-       | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
-       | mips | mipsbe | mipseb | mipsel | mipsle \
-       | mips16 \
-       | mips64 | mips64el \
-       | mips64octeon | mips64octeonel \
-       | mips64orion | mips64orionel \
-       | mips64r5900 | mips64r5900el \
-       | mips64vr | mips64vrel \
-       | mips64vr4100 | mips64vr4100el \
-       | mips64vr4300 | mips64vr4300el \
-       | mips64vr5000 | mips64vr5000el \
-       | 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 \
-       | nfp \
-       | nios | nios2 | nios2eb | nios2el \
-       | ns16k | ns32k \
-       | open8 | or1k | or1knd | or32 \
-       | pdp10 | pj | pjl \
-       | powerpc | powerpc64 | powerpc64le | powerpcle \
-       | pru \
-       | pyramid \
-       | riscv32 | riscv64 \
-       | rl78 | rx \
-       | score \
-       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-       | sh64 | sh64le \
-       | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-       | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-       | spu \
-       | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
-       | ubicom32 \
-       | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
-       | visium \
-       | wasm32 \
-       | x86 | xc16x | xstormy16 | xtensa \
-       | z8k | z80)
-               basic_machine=$basic_machine-unknown
-               ;;
-       c54x)
-               basic_machine=tic54x-unknown
-               ;;
-       c55x)
-               basic_machine=tic55x-unknown
-               ;;
-       c6x)
-               basic_machine=tic6x-unknown
-               ;;
-       leon|leon[3-9])
-               basic_machine=sparc-$basic_machine
-               ;;
-       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
-               basic_machine=$basic_machine-unknown
-               os=-none
-               ;;
-       m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
+       # Here we handle the default manufacturer of certain CPU types.  It is in
+       # some cases the only manufacturer, in others, it is the most popular.
+       w89k)
+               cpu=hppa1.1
+               vendor=winbond
                ;;
-       m9s12z | m68hcs12z | hcs12z | s12z)
-               basic_machine=s12z-unknown
-               os=-none
+       op50n)
+               cpu=hppa1.1
+               vendor=oki
                ;;
-       ms1)
-               basic_machine=mt-unknown
+       op60c)
+               cpu=hppa1.1
+               vendor=oki
                ;;
-
-       strongarm | thumb | xscale)
-               basic_machine=arm-unknown
+       ibm*)
+               cpu=i370
+               vendor=ibm
                ;;
-       xgate)
-               basic_machine=$basic_machine-unknown
-               os=-none
+       orion105)
+               cpu=clipper
+               vendor=highlevel
                ;;
-       xscaleeb)
-               basic_machine=armeb-unknown
+       mac | mpw | mac-mpw)
+               cpu=m68k
+               vendor=apple
                ;;
-
-       xscaleel)
-               basic_machine=armel-unknown
+       pmac | pmac-mpw)
+               cpu=powerpc
+               vendor=apple
                ;;
 
-       # We use `pc' rather than `unknown'
-       # because (1) that's what they normally are, and
-       # (2) the word "unknown" tends to confuse beginning users.
-       i*86 | x86_64)
-         basic_machine=$basic_machine-pc
-         ;;
-       # Object if more than one company name word.
-       *-*-*)
-               echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
-               exit 1
-               ;;
-       # Recognize the basic CPU types with company name.
-       580-* \
-       | a29k-* \
-       | aarch64-* | aarch64_be-* \
-       | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-       | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
-       | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-       | avr-* | avr32-* \
-       | ba-* \
-       | be32-* | be64-* \
-       | bfin-* | bs2000-* \
-       | c[123]* | c30-* | [cjt]90-* | c4x-* \
-       | c8051-* | clipper-* | craynv-* | csky-* | cydra-* \
-       | d10v-* | d30v-* | dlx-* \
-       | e2k-* | elxsi-* \
-       | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-       | h8300-* | h8500-* \
-       | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-       | hexagon-* \
-       | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
-       | ip2k-* | iq2000-* \
-       | k1om-* \
-       | le32-* | le64-* \
-       | lm32-* \
-       | m32c-* | m32r-* | m32rle-* \
-       | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-       | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
-       | microblaze-* | microblazeel-* \
-       | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-       | mips16-* \
-       | mips64-* | mips64el-* \
-       | mips64octeon-* | mips64octeonel-* \
-       | mips64orion-* | mips64orionel-* \
-       | mips64r5900-* | mips64r5900el-* \
-       | mips64vr-* | mips64vrel-* \
-       | mips64vr4100-* | mips64vr4100el-* \
-       | mips64vr4300-* | mips64vr4300el-* \
-       | mips64vr5000-* | mips64vr5000el-* \
-       | 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-* \
-       | nfp-* \
-       | nios-* | nios2-* | nios2eb-* | nios2el-* \
-       | none-* | np1-* | ns16k-* | ns32k-* \
-       | open8-* \
-       | or1k*-* \
-       | orion-* \
-       | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-       | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
-       | pru-* \
-       | pyramid-* \
-       | riscv32-* | riscv64-* \
-       | rl78-* | romp-* | rs6000-* | rx-* \
-       | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-       | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-       | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-       | sparclite-* \
-       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
-       | tahoe-* \
-       | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-       | tile*-* \
-       | tron-* \
-       | ubicom32-* \
-       | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
-       | vax-* \
-       | visium-* \
-       | wasm32-* \
-       | we32k-* \
-       | x86-* | x86_64-* | xc16x-* | xps100-* \
-       | xstormy16-* | xtensa*-* \
-       | ymp-* \
-       | z8k-* | z80-*)
-               ;;
-       # Recognize the basic CPU types without company name, with glob match.
-       xtensa*)
-               basic_machine=$basic_machine-unknown
-               ;;
        # Recognize the various machine names and aliases which stand
        # for a CPU type and a company and sometimes even an OS.
-       386bsd)
-               basic_machine=i386-pc
-               os=-bsd
-               ;;
        3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-               basic_machine=m68000-att
+               cpu=m68000
+               vendor=att
                ;;
        3b*)
-               basic_machine=we32k-att
-               ;;
-       a29khif)
-               basic_machine=a29k-amd
-               os=-udi
-               ;;
-       abacus)
-               basic_machine=abacus-unknown
-               ;;
-       adobe68k)
-               basic_machine=m68010-adobe
-               os=-scout
-               ;;
-       alliant | fx80)
-               basic_machine=fx80-alliant
-               ;;
-       altos | altos3068)
-               basic_machine=m68k-altos
-               ;;
-       am29k)
-               basic_machine=a29k-none
-               os=-bsd
-               ;;
-       amd64)
-               basic_machine=x86_64-pc
-               ;;
-       amd64-*)
-               basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       amdahl)
-               basic_machine=580-amdahl
-               os=-sysv
-               ;;
-       amiga | amiga-*)
-               basic_machine=m68k-unknown
-               ;;
-       amigaos | amigados)
-               basic_machine=m68k-unknown
-               os=-amigaos
-               ;;
-       amigaunix | amix)
-               basic_machine=m68k-unknown
-               os=-sysv4
-               ;;
-       apollo68)
-               basic_machine=m68k-apollo
-               os=-sysv
-               ;;
-       apollo68bsd)
-               basic_machine=m68k-apollo
-               os=-bsd
-               ;;
-       aros)
-               basic_machine=i386-pc
-               os=-aros
-               ;;
-       asmjs)
-               basic_machine=asmjs-unknown
-               ;;
-       aux)
-               basic_machine=m68k-apple
-               os=-aux
-               ;;
-       balance)
-               basic_machine=ns32k-sequent
-               os=-dynix
-               ;;
-       blackfin)
-               basic_machine=bfin-unknown
-               os=-linux
-               ;;
-       blackfin-*)
-               basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               os=-linux
+               cpu=we32k
+               vendor=att
                ;;
        bluegene*)
-               basic_machine=powerpc-ibm
-               os=-cnk
-               ;;
-       c54x-*)
-               basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       c55x-*)
-               basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       c6x-*)
-               basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       c90)
-               basic_machine=c90-cray
-               os=-unicos
-               ;;
-       cegcc)
-               basic_machine=arm-unknown
-               os=-cegcc
-               ;;
-       convex-c1)
-               basic_machine=c1-convex
-               os=-bsd
-               ;;
-       convex-c2)
-               basic_machine=c2-convex
-               os=-bsd
-               ;;
-       convex-c32)
-               basic_machine=c32-convex
-               os=-bsd
-               ;;
-       convex-c34)
-               basic_machine=c34-convex
-               os=-bsd
-               ;;
-       convex-c38)
-               basic_machine=c38-convex
-               os=-bsd
-               ;;
-       cray | j90)
-               basic_machine=j90-cray
-               os=-unicos
-               ;;
-       craynv)
-               basic_machine=craynv-cray
-               os=-unicosmp
-               ;;
-       cr16 | cr16-*)
-               basic_machine=cr16-unknown
-               os=-elf
-               ;;
-       crds | unos)
-               basic_machine=m68k-crds
-               ;;
-       crisv32 | crisv32-* | etraxfs*)
-               basic_machine=crisv32-axis
-               ;;
-       cris | cris-* | etrax*)
-               basic_machine=cris-axis
-               ;;
-       crx)
-               basic_machine=crx-unknown
-               os=-elf
-               ;;
-       da30 | da30-*)
-               basic_machine=m68k-da30
-               ;;
-       decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-               basic_machine=mips-dec
+               cpu=powerpc
+               vendor=ibm
+               os=cnk
                ;;
        decsystem10* | dec10*)
-               basic_machine=pdp10-dec
-               os=-tops10
+               cpu=pdp10
+               vendor=dec
+               os=tops10
                ;;
        decsystem20* | dec20*)
-               basic_machine=pdp10-dec
-               os=-tops20
+               cpu=pdp10
+               vendor=dec
+               os=tops20
                ;;
        delta | 3300 | motorola-3300 | motorola-delta \
              | 3300-motorola | delta-motorola)
-               basic_machine=m68k-motorola
-               ;;
-       delta88)
-               basic_machine=m88k-motorola
-               os=-sysv3
-               ;;
-       dicos)
-               basic_machine=i686-pc
-               os=-dicos
-               ;;
-       djgpp)
-               basic_machine=i586-pc
-               os=-msdosdjgpp
-               ;;
-       dpx20 | dpx20-*)
-               basic_machine=rs6000-bull
-               os=-bosx
+               cpu=m68k
+               vendor=motorola
                ;;
        dpx2*)
-               basic_machine=m68k-bull
-               os=-sysv3
-               ;;
-       e500v[12])
-               basic_machine=powerpc-unknown
-               os=$os"spe"
-               ;;
-       e500v[12]-*)
-               basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               os=$os"spe"
-               ;;
-       ebmon29k)
-               basic_machine=a29k-amd
-               os=-ebmon
-               ;;
-       elxsi)
-               basic_machine=elxsi-elxsi
-               os=-bsd
+               cpu=m68k
+               vendor=bull
+               os=sysv3
                ;;
        encore | umax | mmax)
-               basic_machine=ns32k-encore
+               cpu=ns32k
+               vendor=encore
                ;;
-       es1800 | OSE68k | ose68k | ose | OSE)
-               basic_machine=m68k-ericsson
-               os=-ose
+       elxsi)
+               cpu=elxsi
+               vendor=elxsi
+               os=${os:-bsd}
                ;;
        fx2800)
-               basic_machine=i860-alliant
+               cpu=i860
+               vendor=alliant
                ;;
        genix)
-               basic_machine=ns32k-ns
-               ;;
-       gmicro)
-               basic_machine=tron-gmicro
-               os=-sysv
-               ;;
-       go32)
-               basic_machine=i386-pc
-               os=-go32
+               cpu=ns32k
+               vendor=ns
                ;;
        h3050r* | hiux*)
-               basic_machine=hppa1.1-hitachi
-               os=-hiuxwe2
-               ;;
-       h8300hms)
-               basic_machine=h8300-hitachi
-               os=-hms
-               ;;
-       h8300xray)
-               basic_machine=h8300-hitachi
-               os=-xray
-               ;;
-       h8500hms)
-               basic_machine=h8500-hitachi
-               os=-hms
-               ;;
-       harris)
-               basic_machine=m88k-harris
-               os=-sysv3
-               ;;
-       hp300-*)
-               basic_machine=m68k-hp
-               ;;
-       hp300bsd)
-               basic_machine=m68k-hp
-               os=-bsd
-               ;;
-       hp300hpux)
-               basic_machine=m68k-hp
-               os=-hpux
+               cpu=hppa1.1
+               vendor=hitachi
+               os=hiuxwe2
                ;;
        hp3k9[0-9][0-9] | hp9[0-9][0-9])
-               basic_machine=hppa1.0-hp
+               cpu=hppa1.0
+               vendor=hp
                ;;
        hp9k2[0-9][0-9] | hp9k31[0-9])
-               basic_machine=m68000-hp
+               cpu=m68000
+               vendor=hp
                ;;
        hp9k3[2-9][0-9])
-               basic_machine=m68k-hp
+               cpu=m68k
+               vendor=hp
                ;;
        hp9k6[0-9][0-9] | hp6[0-9][0-9])
-               basic_machine=hppa1.0-hp
+               cpu=hppa1.0
+               vendor=hp
                ;;
        hp9k7[0-79][0-9] | hp7[0-79][0-9])
-               basic_machine=hppa1.1-hp
+               cpu=hppa1.1
+               vendor=hp
                ;;
        hp9k78[0-9] | hp78[0-9])
                # FIXME: really hppa2.0-hp
-               basic_machine=hppa1.1-hp
+               cpu=hppa1.1
+               vendor=hp
                ;;
        hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
                # FIXME: really hppa2.0-hp
-               basic_machine=hppa1.1-hp
+               cpu=hppa1.1
+               vendor=hp
                ;;
        hp9k8[0-9][13679] | hp8[0-9][13679])
-               basic_machine=hppa1.1-hp
+               cpu=hppa1.1
+               vendor=hp
                ;;
        hp9k8[0-9][0-9] | hp8[0-9][0-9])
-               basic_machine=hppa1.0-hp
-               ;;
-       hppaosf)
-               basic_machine=hppa1.1-hp
-               os=-osf
-               ;;
-       hppro)
-               basic_machine=hppa1.1-hp
-               os=-proelf
-               ;;
-       i370-ibm* | ibm*)
-               basic_machine=i370-ibm
+               cpu=hppa1.0
+               vendor=hp
                ;;
        i*86v32)
-               basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
-               os=-sysv32
+               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               vendor=pc
+               os=sysv32
                ;;
        i*86v4*)
-               basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
-               os=-sysv4
+               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               vendor=pc
+               os=sysv4
                ;;
        i*86v)
-               basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
-               os=-sysv
+               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               vendor=pc
+               os=sysv
                ;;
        i*86sol2)
-               basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
-               os=-solaris2
-               ;;
-       i386mach)
-               basic_machine=i386-mach
-               os=-mach
+               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               vendor=pc
+               os=solaris2
                ;;
-       vsta)
-               basic_machine=i386-unknown
-               os=-vsta
+       j90 | j90-cray)
+               cpu=j90
+               vendor=cray
+               os=${os:-unicos}
                ;;
        iris | iris4d)
-               basic_machine=mips-sgi
+               cpu=mips
+               vendor=sgi
                case $os in
-                   -irix*)
+                   irix*)
                        ;;
                    *)
-                       os=-irix4
+                       os=irix4
                        ;;
                esac
                ;;
-       isi68 | isi)
-               basic_machine=m68k-isi
-               os=-sysv
-               ;;
-       leon-*|leon[3-9]-*)
-               basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
-               ;;
-       m68knommu)
-               basic_machine=m68k-unknown
-               os=-linux
-               ;;
-       m68knommu-*)
-               basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               os=-linux
-               ;;
-       magnum | m3230)
-               basic_machine=mips-mips
-               os=-sysv
-               ;;
-       merlin)
-               basic_machine=ns32k-utek
-               os=-sysv
-               ;;
-       microblaze*)
-               basic_machine=microblaze-xilinx
-               ;;
-       mingw64)
-               basic_machine=x86_64-pc
-               os=-mingw64
-               ;;
-       mingw32)
-               basic_machine=i686-pc
-               os=-mingw32
-               ;;
-       mingw32ce)
-               basic_machine=arm-unknown
-               os=-mingw32ce
-               ;;
        miniframe)
-               basic_machine=m68000-convergent
-               ;;
-       *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-               basic_machine=m68k-atari
-               os=-mint
-               ;;
-       mips3*-*)
-               basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
-               ;;
-       mips3*)
-               basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
-               ;;
-       monitor)
-               basic_machine=m68k-rom68k
-               os=-coff
-               ;;
-       morphos)
-               basic_machine=powerpc-unknown
-               os=-morphos
-               ;;
-       moxiebox)
-               basic_machine=moxie-unknown
-               os=-moxiebox
-               ;;
-       msdos)
-               basic_machine=i386-pc
-               os=-msdos
-               ;;
-       ms1-*)
-               basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
-               ;;
-       msys)
-               basic_machine=i686-pc
-               os=-msys
-               ;;
-       mvs)
-               basic_machine=i370-ibm
-               os=-mvs
-               ;;
-       nacl)
-               basic_machine=le32-unknown
-               os=-nacl
-               ;;
-       ncr3000)
-               basic_machine=i486-ncr
-               os=-sysv4
-               ;;
-       netbsd386)
-               basic_machine=i386-unknown
-               os=-netbsd
+               cpu=m68000
+               vendor=convergent
                ;;
-       netwinder)
-               basic_machine=armv4l-rebel
-               os=-linux
-               ;;
-       news | news700 | news800 | news900)
-               basic_machine=m68k-sony
-               os=-newsos
-               ;;
-       news1000)
-               basic_machine=m68030-sony
-               os=-newsos
+       *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
+               cpu=m68k
+               vendor=atari
+               os=mint
                ;;
        news-3600 | risc-news)
-               basic_machine=mips-sony
-               os=-newsos
-               ;;
-       necv70)
-               basic_machine=v70-nec
-               os=-sysv
+               cpu=mips
+               vendor=sony
+               os=newsos
                ;;
        next | m*-next)
-               basic_machine=m68k-next
+               cpu=m68k
+               vendor=next
                case $os in
-                   -nextstep* )
+                   nextstep* )
                        ;;
-                   -ns2*)
-                     os=-nextstep2
+                   ns2*)
+                     os=nextstep2
                        ;;
                    *)
-                     os=-nextstep3
+                     os=nextstep3
                        ;;
                esac
                ;;
-       nh3000)
-               basic_machine=m68k-harris
-               os=-cxux
-               ;;
-       nh[45]000)
-               basic_machine=m88k-harris
-               os=-cxux
-               ;;
-       nindy960)
-               basic_machine=i960-intel
-               os=-nindy
-               ;;
-       mon960)
-               basic_machine=i960-intel
-               os=-mon960
-               ;;
-       nonstopux)
-               basic_machine=mips-compaq
-               os=-nonstopux
-               ;;
        np1)
-               basic_machine=np1-gould
-               ;;
-       neo-tandem)
-               basic_machine=neo-tandem
-               ;;
-       nse-tandem)
-               basic_machine=nse-tandem
-               ;;
-       nsr-tandem)
-               basic_machine=nsr-tandem
-               ;;
-       nsv-tandem)
-               basic_machine=nsv-tandem
-               ;;
-       nsx-tandem)
-               basic_machine=nsx-tandem
+               cpu=np1
+               vendor=gould
                ;;
        op50n-* | op60c-*)
-               basic_machine=hppa1.1-oki
-               os=-proelf
-               ;;
-       openrisc | openrisc-*)
-               basic_machine=or32-unknown
-               ;;
-       os400)
-               basic_machine=powerpc-ibm
-               os=-os400
-               ;;
-       OSE68000 | ose68000)
-               basic_machine=m68000-ericsson
-               os=-ose
-               ;;
-       os68k)
-               basic_machine=m68k-none
-               os=-os68k
+               cpu=hppa1.1
+               vendor=oki
+               os=proelf
                ;;
        pa-hitachi)
-               basic_machine=hppa1.1-hitachi
-               os=-hiuxwe2
-               ;;
-       paragon)
-               basic_machine=i860-intel
-               os=-osf
-               ;;
-       parisc)
-               basic_machine=hppa-unknown
-               os=-linux
-               ;;
-       parisc-*)
-               basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               os=-linux
+               cpu=hppa1.1
+               vendor=hitachi
+               os=hiuxwe2
                ;;
        pbd)
-               basic_machine=sparc-tti
+               cpu=sparc
+               vendor=tti
                ;;
        pbb)
-               basic_machine=m68k-tti
-               ;;
-       pc532 | pc532-*)
-               basic_machine=ns32k-pc532
+               cpu=m68k
+               vendor=tti
                ;;
-       pc98)
-               basic_machine=i386-pc
-               ;;
-       pc98-*)
-               basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       pentium | p5 | k5 | k6 | nexgen | viac3)
-               basic_machine=i586-pc
-               ;;
-       pentiumpro | p6 | 6x86 | athlon | athlon_*)
-               basic_machine=i686-pc
-               ;;
-       pentiumii | pentium2 | pentiumiii | pentium3)
-               basic_machine=i686-pc
-               ;;
-       pentium4)
-               basic_machine=i786-pc
-               ;;
-       pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-               basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       pentiumpro-* | p6-* | 6x86-* | athlon-*)
-               basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-               basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       pentium4-*)
-               basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+       pc532)
+               cpu=ns32k
+               vendor=pc532
                ;;
        pn)
-               basic_machine=pn-gould
+               cpu=pn
+               vendor=gould
                ;;
-       power)  basic_machine=power-ibm
+       power)
+               cpu=power
+               vendor=ibm
                ;;
-       ppc | ppcbe)    basic_machine=powerpc-unknown
-               ;;
-       ppc-* | ppcbe-*)
-               basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       ppcle | powerpclittle)
-               basic_machine=powerpcle-unknown
-               ;;
-       ppcle-* | powerpclittle-*)
-               basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
-               ;;
-       ppc64)  basic_machine=powerpc64-unknown
+       ps2)
+               cpu=i386
+               vendor=ibm
                ;;
-       ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+       rm[46]00)
+               cpu=mips
+               vendor=siemens
                ;;
-       ppc64le | powerpc64little)
-               basic_machine=powerpc64le-unknown
+       rtpc | rtpc-*)
+               cpu=romp
+               vendor=ibm
                ;;
-       ppc64le-* | powerpc64little-*)
-               basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+       sde)
+               cpu=mipsisa32
+               vendor=sde
+               os=${os:-elf}
                ;;
-       ps2)
-               basic_machine=i386-ibm
+       simso-wrs)
+               cpu=sparclite
+               vendor=wrs
+               os=vxworks
                ;;
-       pw32)
-               basic_machine=i586-unknown
-               os=-pw32
+       tower | tower-32)
+               cpu=m68k
+               vendor=ncr
                ;;
-       rdos | rdos64)
-               basic_machine=x86_64-pc
-               os=-rdos
+       vpp*|vx|vx-*)
+               cpu=f301
+               vendor=fujitsu
                ;;
-       rdos32)
-               basic_machine=i386-pc
-               os=-rdos
+       w65)
+               cpu=w65
+               vendor=wdc
                ;;
-       rom68k)
-               basic_machine=m68k-rom68k
-               os=-coff
+       w89k-*)
+               cpu=hppa1.1
+               vendor=winbond
+               os=proelf
                ;;
-       rm[46]00)
-               basic_machine=mips-siemens
+       none)
+               cpu=none
+               vendor=none
                ;;
-       rtpc | rtpc-*)
-               basic_machine=romp-ibm
+       leon|leon[3-9])
+               cpu=sparc
+               vendor=$basic_machine
                ;;
-       s390 | s390-*)
-               basic_machine=s390-ibm
+       leon-*|leon[3-9]-*)
+               cpu=sparc
+               vendor=`echo "$basic_machine" | sed 's/-.*//'`
                ;;
-       s390x | s390x-*)
-               basic_machine=s390x-ibm
+
+       *-*)
+               IFS="-" read -r cpu vendor <<EOF
+$basic_machine
+EOF
                ;;
-       sa29200)
-               basic_machine=a29k-amd
-               os=-udi
+       # We use `pc' rather than `unknown'
+       # because (1) that's what they normally are, and
+       # (2) the word "unknown" tends to confuse beginning users.
+       i*86 | x86_64)
+               cpu=$basic_machine
+               vendor=pc
                ;;
-       sb1)
-               basic_machine=mipsisa64sb1-unknown
+       # These rules are duplicated from below for sake of the special case above;
+       # i.e. things that normalized to x86 arches should also default to "pc"
+       pc98)
+               cpu=i386
+               vendor=pc
                ;;
-       sb1el)
-               basic_machine=mipsisa64sb1el-unknown
+       x64 | amd64)
+               cpu=x86_64
+               vendor=pc
                ;;
-       sde)
-               basic_machine=mipsisa32-sde
-               os=-elf
+       # Recognize the basic CPU types without company name.
+       *)
+               cpu=$basic_machine
+               vendor=unknown
                ;;
-       sei)
-               basic_machine=mips-sei
-               os=-seiux
+esac
+
+unset -v basic_machine
+
+# Decode basic machines in the full and proper CPU-Company form.
+case $cpu-$vendor in
+       # Here we handle the default manufacturer of certain CPU types in cannonical form. It is in
+       # some cases the only manufacturer, in others, it is the most popular.
+       craynv-unknown)
+               vendor=cray
+               os=${os:-unicosmp}
                ;;
-       sequent)
-               basic_machine=i386-sequent
+       c90-unknown | c90-cray)
+               vendor=cray
+               os=${os:-unicos}
                ;;
-       sh5el)
-               basic_machine=sh5le-unknown
+       fx80-unknown)
+               vendor=alliant
                ;;
-       simso-wrs)
-               basic_machine=sparclite-wrs
-               os=-vxworks
+       romp-unknown)
+               vendor=ibm
                ;;
-       sps7)
-               basic_machine=m68k-bull
-               os=-sysv2
+       mmix-unknown)
+               vendor=knuth
                ;;
-       spur)
-               basic_machine=spur-unknown
+       microblaze-unknown | microblazeel-unknown)
+               vendor=xilinx
                ;;
-       st2000)
-               basic_machine=m68k-tandem
+       rs6000-unknown)
+               vendor=ibm
                ;;
-       stratus)
-               basic_machine=i860-stratus
-               os=-sysv4
+       vax-unknown)
+               vendor=dec
                ;;
-       strongarm-* | thumb-*)
-               basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+       pdp11-unknown)
+               vendor=dec
                ;;
-       sun2)
-               basic_machine=m68000-sun
+       we32k-unknown)
+               vendor=att
                ;;
-       sun2os3)
-               basic_machine=m68000-sun
-               os=-sunos3
+       cydra-unknown)
+               vendor=cydrome
                ;;
-       sun2os4)
-               basic_machine=m68000-sun
-               os=-sunos4
+       i370-ibm*)
+               vendor=ibm
                ;;
-       sun3os3)
-               basic_machine=m68k-sun
-               os=-sunos3
+       orion-unknown)
+               vendor=highlevel
                ;;
-       sun3os4)
-               basic_machine=m68k-sun
-               os=-sunos4
+       xps-unknown | xps100-unknown)
+               cpu=xps100
+               vendor=honeywell
                ;;
-       sun4os3)
-               basic_machine=sparc-sun
-               os=-sunos3
+
+       # Here we normalize CPU types with a missing or matching vendor
+       dpx20-unknown | dpx20-bull)
+               cpu=rs6000
+               vendor=bull
+               os=${os:-bosx}
                ;;
-       sun4os4)
-               basic_machine=sparc-sun
-               os=-sunos4
+
+       # Here we normalize CPU types irrespective of the vendor
+       amd64-*)
+               cpu=x86_64
                ;;
-       sun4sol2)
-               basic_machine=sparc-sun
-               os=-solaris2
+       blackfin-*)
+               cpu=bfin
+               os=linux
                ;;
-       sun3 | sun3-*)
-               basic_machine=m68k-sun
+       c54x-*)
+               cpu=tic54x
                ;;
-       sun4)
-               basic_machine=sparc-sun
+       c55x-*)
+               cpu=tic55x
                ;;
-       sun386 | sun386i | roadrunner)
-               basic_machine=i386-sun
+       c6x-*)
+               cpu=tic6x
                ;;
-       sv1)
-               basic_machine=sv1-cray
-               os=-unicos
+       e500v[12]-*)
+               cpu=powerpc
+               os=$os"spe"
                ;;
-       symmetry)
-               basic_machine=i386-sequent
-               os=-dynix
+       mips3*-*)
+               cpu=mips64
                ;;
-       t3e)
-               basic_machine=alphaev5-cray
-               os=-unicos
+       ms1-*)
+               cpu=mt
                ;;
-       t90)
-               basic_machine=t90-cray
-               os=-unicos
+       m68knommu-*)
+               cpu=m68k
+               os=linux
                ;;
-       tile*)
-               basic_machine=$basic_machine-unknown
-               os=-linux-gnu
+       m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
+               cpu=s12z
                ;;
-       tx39)
-               basic_machine=mipstx39-unknown
+       openrisc-*)
+               cpu=or32
                ;;
-       tx39el)
-               basic_machine=mipstx39el-unknown
+       parisc-*)
+               cpu=hppa
+               os=linux
                ;;
-       toad1)
-               basic_machine=pdp10-xkl
-               os=-tops20
+       pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+               cpu=i586
                ;;
-       tower | tower-32)
-               basic_machine=m68k-ncr
+       pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
+               cpu=i686
                ;;
-       tpf)
-               basic_machine=s390x-ibm
-               os=-tpf
+       pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+               cpu=i686
                ;;
-       udi29k)
-               basic_machine=a29k-amd
-               os=-udi
+       pentium4-*)
+               cpu=i786
                ;;
-       ultra3)
-               basic_machine=a29k-nyu
-               os=-sym1
+       pc98-*)
+               cpu=i386
                ;;
-       v810 | necv810)
-               basic_machine=v810-nec
-               os=-none
+       ppc-* | ppcbe-*)
+               cpu=powerpc
                ;;
-       vaxv)
-               basic_machine=vax-dec
-               os=-sysv
+       ppcle-* | powerpclittle-*)
+               cpu=powerpcle
                ;;
-       vms)
-               basic_machine=vax-dec
-               os=-vms
+       ppc64-*)
+               cpu=powerpc64
                ;;
-       vpp*|vx|vx-*)
-               basic_machine=f301-fujitsu
+       ppc64le-* | powerpc64little-*)
+               cpu=powerpc64le
                ;;
-       vxworks960)
-               basic_machine=i960-wrs
-               os=-vxworks
+       sb1-*)
+               cpu=mipsisa64sb1
                ;;
-       vxworks68)
-               basic_machine=m68k-wrs
-               os=-vxworks
+       sb1el-*)
+               cpu=mipsisa64sb1el
                ;;
-       vxworks29k)
-               basic_machine=a29k-wrs
-               os=-vxworks
+       sh5e[lb]-*)
+               cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
                ;;
-       w65*)
-               basic_machine=w65-wdc
-               os=-none
+       spur-*)
+               cpu=spur
                ;;
-       w89k-*)
-               basic_machine=hppa1.1-winbond
-               os=-proelf
+       strongarm-* | thumb-*)
+               cpu=arm
                ;;
-       x64)
-               basic_machine=x86_64-pc
+       tx39-*)
+               cpu=mipstx39
                ;;
-       xbox)
-               basic_machine=i686-pc
-               os=-mingw32
+       tx39el-*)
+               cpu=mipstx39el
                ;;
-       xps | xps100)
-               basic_machine=xps100-honeywell
+       x64-*)
+               cpu=x86_64
                ;;
        xscale-* | xscalee[bl]-*)
-               basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
-               ;;
-       ymp)
-               basic_machine=ymp-cray
-               os=-unicos
-               ;;
-       none)
-               basic_machine=none-none
-               os=-none
+               cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
                ;;
 
-# Here we handle the default manufacturer of certain CPU types.  It is in
-# some cases the only manufacturer, in others, it is the most popular.
-       w89k)
-               basic_machine=hppa1.1-winbond
-               ;;
-       op50n)
-               basic_machine=hppa1.1-oki
+       # Recognize the cannonical CPU Types that limit and/or modify the
+       # company names they are paired with.
+       cr16-*)
+               os=${os:-elf}
                ;;
-       op60c)
-               basic_machine=hppa1.1-oki
-               ;;
-       romp)
-               basic_machine=romp-ibm
-               ;;
-       mmix)
-               basic_machine=mmix-knuth
-               ;;
-       rs6000)
-               basic_machine=rs6000-ibm
+       crisv32-* | etraxfs*-*)
+               cpu=crisv32
+               vendor=axis
                ;;
-       vax)
-               basic_machine=vax-dec
+       cris-* | etrax*-*)
+               cpu=cris
+               vendor=axis
                ;;
-       pdp11)
-               basic_machine=pdp11-dec
+       crx-*)
+               os=${os:-elf}
                ;;
-       we32k)
-               basic_machine=we32k-att
+       neo-tandem)
+               cpu=neo
+               vendor=tandem
                ;;
-       sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
-               basic_machine=sh-unknown
+       nse-tandem)
+               cpu=nse
+               vendor=tandem
                ;;
-       cydra)
-               basic_machine=cydra-cydrome
+       nsr-tandem)
+               cpu=nsr
+               vendor=tandem
                ;;
-       orion)
-               basic_machine=orion-highlevel
+       nsv-tandem)
+               cpu=nsv
+               vendor=tandem
                ;;
-       orion105)
-               basic_machine=clipper-highlevel
+       nsx-tandem)
+               cpu=nsx
+               vendor=tandem
                ;;
-       mac | mpw | mac-mpw)
-               basic_machine=m68k-apple
+       s390-*)
+               cpu=s390
+               vendor=ibm
                ;;
-       pmac | pmac-mpw)
-               basic_machine=powerpc-apple
+       s390x-*)
+               cpu=s390x
+               vendor=ibm
                ;;
-       *-unknown)
-               # Make sure to match an already-canonicalized machine name.
+       tile*-*)
+               os=${os:-linux-gnu}
                ;;
+
        *)
-               echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
-               exit 1
+               # Recognize the cannonical CPU types that are allowed with any
+               # company name.
+               case $cpu in
+                       1750a | 580 \
+                       | a29k \
+                       | aarch64 | aarch64_be \
+                       | abacus \
+                       | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
+                       | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
+                       | alphapca5[67] | alpha64pca5[67] \
+                       | am33_2.0 \
+                       | arc | arceb \
+                       | arm  | arm[lb]e | arme[lb] | armv* \
+                       | avr | avr32 \
+                       | asmjs \
+                       | ba \
+                       | be32 | be64 \
+                       | bfin | bs2000 \
+                       | c[123]* | c30 | [cjt]90 | c4x \
+                       | c8051 | clipper | craynv | csky | cydra \
+                       | d10v | d30v | dlx | dsp16xx \
+                       | e2k | elxsi | epiphany \
+                       | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
+                       | h8300 | h8500 \
+                       | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+                       | hexagon \
+                       | i370 | i*86 | i860 | i960 | ia16 | ia64 \
+                       | ip2k | iq2000 \
+                       | k1om \
+                       | le32 | le64 \
+                       | lm32 \
+                       | m32c | m32r | m32rle \
+                       | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k | v70 | w65 \
+                       | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip \
+                       | m88110 | m88k | maxq | mb | mcore | mep | metag \
+                       | microblaze | microblazeel \
+                       | mips | mipsbe | mipseb | mipsel | mipsle \
+                       | mips16 \
+                       | mips64 | mips64el \
+                       | mips64octeon | mips64octeonel \
+                       | mips64orion | mips64orionel \
+                       | mips64r5900 | mips64r5900el \
+                       | mips64vr | mips64vrel \
+                       | mips64vr4100 | mips64vr4100el \
+                       | mips64vr4300 | mips64vr4300el \
+                       | mips64vr5000 | mips64vr5000el \
+                       | mips64vr5900 | mips64vr5900el \
+                       | mipsisa32 | mipsisa32el \
+                       | mipsisa32r2 | mipsisa32r2el \
+                       | mipsisa32r6 | mipsisa32r6el \
+                       | mipsisa64 | mipsisa64el \
+                       | mipsisa64r2 | mipsisa64r2el \
+                       | mipsisa64r6 | mipsisa64r6el \
+                       | mipsisa64sb1 | mipsisa64sb1el \
+                       | mipsisa64sr71k | mipsisa64sr71kel \
+                       | mipsr5900 | mipsr5900el \
+                       | mipstx39 | mipstx39el \
+                       | mmix \
+                       | mn10200 | mn10300 \
+                       | moxie \
+                       | mt \
+                       | msp430 \
+                       | nds32 | nds32le | nds32be \
+                       | nfp \
+                       | nios | nios2 | nios2eb | nios2el \
+                       | none | np1 | ns16k | ns32k \
+                       | open8 \
+                       | or1k* \
+                       | or32 \
+                       | orion \
+                       | pdp10 | pdp11 | pj | pjl | pn | power \
+                       | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
+                       | pru \
+                       | pyramid \
+                       | riscv | riscv32 | riscv64 \
+                       | rl78 | romp | rs6000 | rx \
+                       | score \
+                       | sh | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
+                       | sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
+                       | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
+                       | sparclite \
+                       | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
+                       | spu \
+                       | tahoe \
+                       | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
+                       | tron \
+                       | ubicom32 \
+                       | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
+                       | vax \
+                       | visium \
+                       | wasm32 \
+                       | we32k \
+                       | x86 | x86_64 | xc16x | xgate | xps100 \
+                       | xstormy16 | xtensa* \
+                       | ymp \
+                       | z8k | z80)
+                               ;;
+
+                       *)
+                               echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
+                               exit 1
+                               ;;
+               esac
                ;;
 esac
 
 # Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-       *-digital*)
-               basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
+case $vendor in
+       digital*)
+               vendor=dec
                ;;
-       *-commodore*)
-               basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
+       commodore*)
+               vendor=cbm
                ;;
        *)
                ;;
@@ -1365,200 +1275,240 @@ then
 case $os in
        # First match some system type aliases that might get confused
        # with valid system types.
-       # -solaris* is a basic system type, with this one exception.
-       -auroraux)
-               os=-auroraux
+       # solaris* is a basic system type, with this one exception.
+       auroraux)
+               os=auroraux
                ;;
-       -solaris1 | -solaris1.*)
+       bluegene*)
+               os=cnk
+               ;;
+       solaris1 | solaris1.*)
                os=`echo $os | sed -e 's|solaris1|sunos4|'`
                ;;
-       -solaris)
-               os=-solaris2
+       solaris)
+               os=solaris2
                ;;
-       -unixware*)
-               os=-sysv4.2uw
+       unixware*)
+               os=sysv4.2uw
                ;;
-       -gnu/linux*)
+       gnu/linux*)
                os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
                ;;
        # es1800 is here to avoid being matched by es* (a different OS)
-       -es1800*)
-               os=-ose
+       es1800*)
+               os=ose
+               ;;
+       # Some version numbers need modification
+       chorusos*)
+               os=chorusos
+               ;;
+       isc)
+               os=isc2.2
+               ;;
+       sco6)
+               os=sco5v6
+               ;;
+       sco5)
+               os=sco3.2v5
+               ;;
+       sco4)
+               os=sco3.2v4
+               ;;
+       sco3.2.[4-9]*)
+               os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+               ;;
+       sco3.2v[4-9]* | sco5v6*)
+               # Don't forget version if it is 3.2v4 or newer.
+               ;;
+       scout)
+               # Don't match below
+               ;;
+       sco*)
+               os=sco3.2v2
+               ;;
+       psos*)
+               os=psos
                ;;
        # Now accept the basic system types.
        # The portable systems comes first.
        # Each alternative MUST end in a * to match a version number.
-       # -sysv* is not here because it comes later, after sysvr4.
-       -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* | -plan9* \
-             | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-             | -aos* | -aros* | -cloudabi* | -sortix* \
-             | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-             | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-             | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
-             | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
-             | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-             | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-             | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-             | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* | -hcos* \
-             | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
-             | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-             | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
-             | -linux-newlib* | -linux-musl* | -linux-uclibc* \
-             | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
-             | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
-             | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-             | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-             | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-             | -morphos* | -superux* | -rtmk* | -windiss* \
-             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
-             | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \
-             | -midnightbsd*)
+       # sysv* is not here because it comes later, after sysvr4.
+       gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+            | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
+            | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+            | sym* | kopensolaris* | plan9* \
+            | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+            | aos* | aros* | cloudabi* | sortix* \
+            | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+            | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+            | knetbsd* | mirbsd* | netbsd* \
+            | bitrig* | openbsd* | solidbsd* | libertybsd* \
+            | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
+            | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+            | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+            | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
+            | chorusrdb* | cegcc* | glidix* \
+            | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+            | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
+            | linux-newlib* | linux-musl* | linux-uclibc* \
+            | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+            | interix* | uwin* | mks* | rhapsody* | darwin* \
+            | openstep* | oskit* | conix* | pw32* | nonstopux* \
+            | storm-chaos* | tops10* | tenex* | tops20* | its* \
+            | os2* | vos* | palmos* | uclinux* | nucleus* \
+            | morphos* | superux* | rtmk* | windiss* \
+            | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+            | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+            | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+            midnightbsd*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
-       -qnx*)
-               case $basic_machine in
-                   x86-* | i*86-*)
+       qnx*)
+               case $cpu in
+                   x86 | i*86)
                        ;;
                    *)
-                       os=-nto$os
+                       os=nto-$os
                        ;;
                esac
                ;;
-       -nto-qnx*)
+       hiux*)
+               os=hiuxwe2
                ;;
-       -nto*)
+       nto-qnx*)
+               ;;
+       nto*)
                os=`echo $os | sed -e 's|nto|nto-qnx|'`
                ;;
-       -sim | -xray | -os68k* | -v88r* \
-             | -windows* | -osx | -abug | -netware* | -os9* \
-             | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+       sim | xray | os68k* | v88r* \
+           | windows* | osx | abug | netware* | os9* \
+           | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
+               ;;
+       linux-dietlibc)
+               os=linux-dietlibc
+               ;;
+       linux*)
+               os=`echo $os | sed -e 's|linux|linux-gnu|'`
+               ;;
+       lynx*178)
+               os=lynxos178
+               ;;
+       lynx*5)
+               os=lynxos5
+               ;;
+       lynx*)
+               os=lynxos
                ;;
-       -mac*)
+       mac*)
                os=`echo "$os" | sed -e 's|mac|macos|'`
                ;;
-       -linux-dietlibc)
-               os=-linux-dietlibc
+       opened*)
+               os=openedition
                ;;
-       -linux*)
-               os=`echo $os | sed -e 's|linux|linux-gnu|'`
+       os400*)
+               os=os400
                ;;
-       -sunos5*)
+       sunos5*)
                os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
                ;;
-       -sunos6*)
+       sunos6*)
                os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
                ;;
-       -opened*)
-               os=-openedition
-               ;;
-       -os400*)
-               os=-os400
+       wince*)
+               os=wince
                ;;
-       -wince*)
-               os=-wince
+       utek*)
+               os=bsd
                ;;
-       -utek*)
-               os=-bsd
+       dynix*)
+               os=bsd
                ;;
-       -dynix*)
-               os=-bsd
+       acis*)
+               os=aos
                ;;
-       -acis*)
-               os=-aos
+       atheos*)
+               os=atheos
                ;;
-       -atheos*)
-               os=-atheos
+       syllable*)
+               os=syllable
                ;;
-       -syllable*)
-               os=-syllable
-               ;;
-       -386bsd)
-               os=-bsd
+       386bsd)
+               os=bsd
                ;;
-       -ctix* | -uts*)
-               os=-sysv
+       ctix* | uts*)
+               os=sysv
                ;;
-       -nova*)
-               os=-rtmk-nova
+       nova*)
+               os=rtmk-nova
                ;;
-       -ns2)
-               os=-nextstep2
+       ns2)
+               os=nextstep2
                ;;
-       -nsk*)
-               os=-nsk
+       nsk*)
+               os=nsk
                ;;
        # Preserve the version number of sinix5.
-       -sinix5.*)
+       sinix5.*)
                os=`echo $os | sed -e 's|sinix|sysv|'`
                ;;
-       -sinix*)
-               os=-sysv4
+       sinix*)
+               os=sysv4
                ;;
-       -tpf*)
-               os=-tpf
+       tpf*)
+               os=tpf
                ;;
-       -triton*)
-               os=-sysv3
+       triton*)
+               os=sysv3
                ;;
-       -oss*)
-               os=-sysv3
+       oss*)
+               os=sysv3
                ;;
-       -svr4*)
-               os=-sysv4
+       svr4*)
+               os=sysv4
                ;;
-       -svr3)
-               os=-sysv3
+       svr3)
+               os=sysv3
                ;;
-       -sysvr4)
-               os=-sysv4
+       sysvr4)
+               os=sysv4
                ;;
-       # This must come after -sysvr4.
-       -sysv*)
+       # This must come after sysvr4.
+       sysv*)
                ;;
-       -ose*)
-               os=-ose
+       ose*)
+               os=ose
                ;;
-       -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-               os=-mint
+       *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
+               os=mint
                ;;
-       -zvmoe)
-               os=-zvmoe
+       zvmoe)
+               os=zvmoe
                ;;
-       -dicos*)
-               os=-dicos
+       dicos*)
+               os=dicos
                ;;
-       -pikeos*)
+       pikeos*)
                # Until real need of OS specific support for
                # particular features comes up, bare metal
                # configurations are quite functional.
-               case $basic_machine in
+               case $cpu in
                    arm*)
-                       os=-eabi
+                       os=eabi
                        ;;
                    *)
-                       os=-elf
+                       os=elf
                        ;;
                esac
                ;;
-       -nacl*)
+       nacl*)
                ;;
-       -ios)
+       ios)
                ;;
-       -none)
+       none)
                ;;
-       -*-eabi)
-               case $basic_machine in
-                   arm*)
-                       ;;
-               esac
+       *-eabi)
                ;;
        *)
-               # Get rid of the `-' at the beginning of $os.
-               os=`echo $os | sed 's/[^-]*-//'`
                echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
                exit 1
                ;;
@@ -1575,254 +1525,261 @@ else
 # will signal an error saying that MANUFACTURER isn't an operating
 # system, and we'll never get to this point.
 
-case $basic_machine in
+case $cpu-$vendor in
        score-*)
-               os=-elf
+               os=elf
                ;;
        spu-*)
-               os=-elf
+               os=elf
                ;;
        *-acorn)
-               os=-riscix1.2
+               os=riscix1.2
                ;;
        arm*-rebel)
-               os=-linux
+               os=linux
                ;;
        arm*-semi)
-               os=-aout
+               os=aout
                ;;
        c4x-* | tic4x-*)
-               os=-coff
+               os=coff
                ;;
        c8051-*)
-               os=-elf
+               os=elf
+               ;;
+       clipper-intergraph)
+               os=clix
                ;;
        hexagon-*)
-               os=-elf
+               os=elf
                ;;
        tic54x-*)
-               os=-coff
+               os=coff
                ;;
        tic55x-*)
-               os=-coff
+               os=coff
                ;;
        tic6x-*)
-               os=-coff
+               os=coff
                ;;
        # This must come before the *-dec entry.
        pdp10-*)
-               os=-tops20
+               os=tops20
                ;;
        pdp11-*)
-               os=-none
+               os=none
                ;;
        *-dec | vax-*)
-               os=-ultrix4.2
+               os=ultrix4.2
                ;;
        m68*-apollo)
-               os=-domain
+               os=domain
                ;;
        i386-sun)
-               os=-sunos4.0.2
+               os=sunos4.0.2
                ;;
        m68000-sun)
-               os=-sunos3
+               os=sunos3
                ;;
        m68*-cisco)
-               os=-aout
+               os=aout
                ;;
        mep-*)
-               os=-elf
+               os=elf
                ;;
        mips*-cisco)
-               os=-elf
+               os=elf
                ;;
        mips*-*)
-               os=-elf
+               os=elf
                ;;
        or32-*)
-               os=-coff
+               os=coff
                ;;
        *-tti)  # must be before sparc entry or we get the wrong os.
-               os=-sysv3
+               os=sysv3
                ;;
        sparc-* | *-sun)
-               os=-sunos4.1.1
+               os=sunos4.1.1
                ;;
        pru-*)
-               os=-elf
+               os=elf
                ;;
        *-be)
-               os=-beos
+               os=beos
                ;;
        *-ibm)
-               os=-aix
+               os=aix
                ;;
        *-knuth)
-               os=-mmixware
+               os=mmixware
                ;;
        *-wec)
-               os=-proelf
+               os=proelf
                ;;
        *-winbond)
-               os=-proelf
+               os=proelf
                ;;
        *-oki)
-               os=-proelf
+               os=proelf
                ;;
        *-hp)
-               os=-hpux
+               os=hpux
                ;;
        *-hitachi)
-               os=-hiux
+               os=hiux
                ;;
        i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-               os=-sysv
+               os=sysv
                ;;
        *-cbm)
-               os=-amigaos
+               os=amigaos
                ;;
        *-dg)
-               os=-dgux
+               os=dgux
                ;;
        *-dolphin)
-               os=-sysv3
+               os=sysv3
                ;;
        m68k-ccur)
-               os=-rtu
+               os=rtu
                ;;
        m88k-omron*)
-               os=-luna
+               os=luna
                ;;
        *-next)
-               os=-nextstep
+               os=nextstep
                ;;
        *-sequent)
-               os=-ptx
+               os=ptx
                ;;
        *-crds)
-               os=-unos
+               os=unos
                ;;
        *-ns)
-               os=-genix
+               os=genix
                ;;
        i370-*)
-               os=-mvs
+               os=mvs
                ;;
        *-gould)
-               os=-sysv
+               os=sysv
                ;;
        *-highlevel)
-               os=-bsd
+               os=bsd
                ;;
        *-encore)
-               os=-bsd
+               os=bsd
                ;;
        *-sgi)
-               os=-irix
+               os=irix
                ;;
        *-siemens)
-               os=-sysv4
+               os=sysv4
                ;;
        *-masscomp)
-               os=-rtu
+               os=rtu
                ;;
        f30[01]-fujitsu | f700-fujitsu)
-               os=-uxpv
+               os=uxpv
                ;;
        *-rom68k)
-               os=-coff
+               os=coff
                ;;
        *-*bug)
-               os=-coff
+               os=coff
                ;;
        *-apple)
-               os=-macos
+               os=macos
                ;;
        *-atari*)
-               os=-mint
+               os=mint
+               ;;
+       *-wrs)
+               os=vxworks
                ;;
        *)
-               os=-none
+               os=none
                ;;
 esac
 fi
 
 # Here we handle the case where we know the os, and the CPU type, but not the
 # manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-       *-unknown)
+case $vendor in
+       unknown)
                case $os in
-                       -riscix*)
+                       riscix*)
                                vendor=acorn
                                ;;
-                       -sunos*)
+                       sunos*)
                                vendor=sun
                                ;;
-                       -cnk*|-aix*)
+                       cnk*|-aix*)
                                vendor=ibm
                                ;;
-                       -beos*)
+                       beos*)
                                vendor=be
                                ;;
-                       -hpux*)
+                       hpux*)
                                vendor=hp
                                ;;
-                       -mpeix*)
+                       mpeix*)
                                vendor=hp
                                ;;
-                       -hiux*)
+                       hiux*)
                                vendor=hitachi
                                ;;
-                       -unos*)
+                       unos*)
                                vendor=crds
                                ;;
-                       -dgux*)
+                       dgux*)
                                vendor=dg
                                ;;
-                       -luna*)
+                       luna*)
                                vendor=omron
                                ;;
-                       -genix*)
+                       genix*)
                                vendor=ns
                                ;;
-                       -mvs* | -opened*)
+                       clix*)
+                               vendor=intergraph
+                               ;;
+                       mvs* | opened*)
                                vendor=ibm
                                ;;
-                       -os400*)
+                       os400*)
                                vendor=ibm
                                ;;
-                       -ptx*)
+                       ptx*)
                                vendor=sequent
                                ;;
-                       -tpf*)
+                       tpf*)
                                vendor=ibm
                                ;;
-                       -vxsim* | -vxworks* | -windiss*)
+                       vxsim* | vxworks* | windiss*)
                                vendor=wrs
                                ;;
-                       -aux*)
+                       aux*)
                                vendor=apple
                                ;;
-                       -hms*)
+                       hms*)
                                vendor=hitachi
                                ;;
-                       -mpw* | -macos*)
+                       mpw* | macos*)
                                vendor=apple
                                ;;
-                       -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+                       *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
                                vendor=atari
                                ;;
-                       -vos*)
+                       vos*)
                                vendor=stratus
                                ;;
                esac
-               basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
                ;;
 esac
 
-echo "$basic_machine$os"
+echo "$cpu-$vendor-$os"
 exit
 
 # Local variables:
index 21fa640..7d3a599 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,11 +1,12 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for fontconfig 2.13.1.
+# Generated by GNU Autoconf 2.71 for fontconfig 2.14.2.
 #
 # Report bugs to <https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new>.
 #
 #
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
+# Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -33,46 +36,46 @@ esac
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""       $as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -81,13 +84,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -96,8 +92,12 @@ case $0 in #((
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -109,30 +109,10 @@ if test "x$as_myself" = x; then
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 # Use a proper internal environment variable to ensure we don't fall
   # into an infinite loop, continuously re-executing ourselves.
@@ -154,20 +134,22 @@ esac
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
   fi
   # We don't want this to propagate to other subprocesses.
           { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  as_bourne_compatible="as_nop=:
+if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '\${1+\"\$@\"}'='\"\$@\"'
   setopt NO_GLOB_SUBST
-else
+else \$as_nop
   case \`(set -o) 2>/dev/null\` in #(
   *posix*) :
     set -o posix ;; #(
@@ -187,18 +169,20 @@ as_fn_success || { exitcode=1; echo as_fn_success failed.; }
 as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
 as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
 as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
 
-else
+else \$as_nop
   exitcode=1; echo positional parameters were not saved.
 fi
 test x\$exitcode = x0 || exit 1
+blah=\$(echo \$(echo blah))
+test x\"\$blah\" = xblah || exit 1
 test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
   test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1
 
   test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
     ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
@@ -206,31 +190,40 @@ test \$(( 1 + 1 )) = 2 || exit 1
     ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
     PATH=/empty FPATH=/empty; export PATH FPATH
     test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
-      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
+      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+  if (eval "$as_required") 2>/dev/null
+then :
   as_have_required=yes
-else
+else $as_nop
   as_have_required=no
 fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
 
-else
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
   as_found=:
   case $as_dir in #(
         /*)
           for as_base in sh bash ksh sh5; do
             # Try only shells that exist, to save several forks.
-            as_shell=$as_dir/$as_base
+            as_shell=$as_dir$as_base
             if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-                   { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+                   as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
   CONFIG_SHELL=$as_shell as_have_required=yes
-                  if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+                  if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null
+then :
   break 2
 fi
 fi
@@ -238,14 +231,21 @@ fi
        esac
   as_found=false
 done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-             { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
 IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+             as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi
+fi
 
 
-      if test "x$CONFIG_SHELL" != x; then :
+      if test "x$CONFIG_SHELL" != x
+then :
   export CONFIG_SHELL
              # We cannot yet assume a decent shell, so we have to provide a
 # neutralization value for shells without unset; and this also
@@ -263,18 +263,19 @@ esac
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
 exit 255
 fi
 
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+    if test x$as_have_required = xno
+then :
+  printf "%s\n" "$0: This script requires a shell more modern than all"
+  printf "%s\n" "$0: the shells that I found on your system."
+  if test ${ZSH_VERSION+y} ; then
+    printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and
+    printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and
 $0: https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new
 $0: about your system, including any error possibly output
 $0: before this message. Then install a modern shell, or
@@ -303,6 +304,7 @@ as_fn_unset ()
 }
 as_unset=as_fn_unset
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -320,6 +322,14 @@ as_fn_exit ()
   as_fn_set_status $1
   exit $1
 } # as_fn_exit
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_mkdir_p
 # -------------
@@ -334,7 +344,7 @@ as_fn_mkdir_p ()
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -343,7 +353,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$as_dir" : 'X\(//\)[^/]' \| \
         X"$as_dir" : 'X\(//\)$' \| \
         X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -382,12 +392,13 @@ as_fn_executable_p ()
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -399,18 +410,27 @@ fi # as_fn_append
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
   }
 fi # as_fn_arith
 
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
 # ----------------------------------------
@@ -422,9 +442,9 @@ as_fn_error ()
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
@@ -451,7 +471,7 @@ as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
         X"$0" : 'X\(//\)$' \| \
         X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
            s//\1/
            q
@@ -495,7 +515,7 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+    { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
   # already done that, so ensure we don't try to do so again and fall
@@ -509,6 +529,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   exit
 }
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -522,6 +546,13 @@ case `echo -n x` in #(((((
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -591,55 +622,53 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='fontconfig'
 PACKAGE_TARNAME='fontconfig'
-PACKAGE_VERSION='2.13.1'
-PACKAGE_STRING='fontconfig 2.13.1'
+PACKAGE_VERSION='2.14.2'
+PACKAGE_STRING='fontconfig 2.14.2'
 PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new'
 PACKAGE_URL=''
 
 # Factoring default headers for most tests.
 ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
+#include <stddef.h>
+#ifdef HAVE_STDIO_H
+# include <stdio.h>
 #endif
-#ifdef STDC_HEADERS
+#ifdef HAVE_STDLIB_H
 # include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
 #endif
 #ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
 # include <string.h>
 #endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
 #ifdef HAVE_INTTYPES_H
 # include <inttypes.h>
 #endif
 #ifdef HAVE_STDINT_H
 # include <stdint.h>
 #endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
 #endif"
 
+ac_header_c_list=
 gt_needs=
-ac_header_list=
+ac_func_c_list=
 ac_subst_vars='am__EXEEXT_FALSE
 am__EXEEXT_TRUE
 LTLIBOBJS
 LIBOBJS
 PKGCONFIG_REQUIRES_PRIVATELY
 PKGCONFIG_REQUIRES
+ENABLE_CACHE_BUILD_FALSE
+ENABLE_CACHE_BUILD_TRUE
 DOCMAN3
 ENABLE_DOCS_FALSE
 ENABLE_DOCS_TRUE
@@ -663,6 +692,7 @@ FC_FONTPATH
 FC_ADD_FONTS
 FC_DEFAULT_FONTS
 PREFERRED_HINTING
+PREFERRED_SUB_PIXEL_RENDERING
 ENABLE_JSONC_FALSE
 ENABLE_JSONC_TRUE
 JSONC_LIBS
@@ -674,8 +704,6 @@ PKG_EXPAT_CFLAGS
 HAVE_XMLPARSE_H
 EXPAT_LIBS
 EXPAT_CFLAGS
-UUID_LIBS
-UUID_CFLAGS
 FREETYPE_PCF_LONG_FAMILY_NAMES_FALSE
 FREETYPE_PCF_LONG_FAMILY_NAMES_TRUE
 FREETYPE_LIBS
@@ -699,6 +727,7 @@ INTLLIBS
 LTLIBICONV
 LIBICONV
 INTL_MACOSX_LIBS
+CPP
 XGETTEXT_EXTRA_OPTIONS
 MSGMERGE
 XGETTEXT_015
@@ -710,6 +739,8 @@ MSGFMT
 GETTEXT_MACRO_VERSION
 USE_NLS
 GETTEXT_PACKAGE
+OS_DARWIN_FALSE
+OS_DARWIN_TRUE
 OS_WIN32_FALSE
 OS_WIN32_TRUE
 LIBT_CURRENT_MINUS_AGE
@@ -726,11 +757,14 @@ MANIFEST_TOOL
 RANLIB
 ac_ct_AR
 AR
+FILECMD
 NM
 ac_ct_DUMPBIN
 DUMPBIN
 LD
 FGREP
+EGREP
+GREP
 SED
 host_os
 host_vendor
@@ -745,6 +779,15 @@ OBJDUMP
 DLLTOOL
 AS
 RM
+pkgpyexecdir
+pyexecdir
+pkgpythondir
+pythondir
+PYTHON_EXEC_PREFIX
+PYTHON_PREFIX
+PYTHON_PLATFORM
+PYTHON_VERSION
+PYTHON
 GPERF
 GIT
 pkgconfigdir
@@ -752,9 +795,6 @@ PKG_CONFIG_LIBDIR
 PKG_CONFIG_PATH
 PKG_CONFIG
 LN_S
-EGREP
-GREP
-CPP
 am__fastdepCC_FALSE
 am__fastdepCC_TRUE
 CCDEPMODE
@@ -775,6 +815,9 @@ AM_BACKSLASH
 AM_DEFAULT_VERBOSITY
 AM_DEFAULT_V
 AM_V
+CSCOPE
+ETAGS
+CTAGS
 am__untar
 am__tar
 AMTAR
@@ -817,6 +860,7 @@ infodir
 docdir
 oldincludedir
 includedir
+runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -844,6 +888,9 @@ enable_silent_rules
 enable_dependency_tracking
 enable_largefile
 with_pkgconfigdir
+with_python_sys_prefix
+with_python_prefix
+with_python_exec_prefix
 enable_static
 enable_shared
 with_pic
@@ -865,6 +912,7 @@ with_expat
 with_expat_includes
 with_expat_lib
 enable_libxml2
+with_default_sub_pixel_rendering
 with_default_hinting
 with_default_fonts
 with_add_fonts
@@ -873,7 +921,9 @@ with_templatedir
 with_baseconfigdir
 with_configdir
 with_xmldir
+enable_docbook
 enable_docs
+enable_cache_build
 '
       ac_precious_vars='build_alias
 host_alias
@@ -883,16 +933,15 @@ CFLAGS
 LDFLAGS
 LIBS
 CPPFLAGS
-CPP
 PKG_CONFIG
 PKG_CONFIG_PATH
 PKG_CONFIG_LIBDIR
+PYTHON
 LT_SYS_LIBRARY_PATH
+CPP
 CC_FOR_BUILD
 FREETYPE_CFLAGS
 FREETYPE_LIBS
-UUID_CFLAGS
-UUID_LIBS
 EXPAT_CFLAGS
 EXPAT_LIBS
 LIBXML2_CFLAGS
@@ -937,6 +986,7 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -966,8 +1016,6 @@ do
   *)    ac_optarg=yes ;;
   esac
 
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
   case $ac_dashdash$ac_option in
   --)
     ac_dashdash=yes ;;
@@ -1008,9 +1056,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1034,9 +1082,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1189,6 +1237,15 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1238,9 +1295,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1254,9 +1311,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1300,9 +1357,9 @@ Try \`$0 --help' for more information"
 
   *)
     # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+      printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2
     : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
@@ -1318,7 +1375,7 @@ if test -n "$ac_unrecognized_opts"; then
   case $enable_option_checking in
     no) ;;
     fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+    *)     printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
   esac
 fi
 
@@ -1326,7 +1383,7 @@ fi
 for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
                datadir sysconfdir sharedstatedir localstatedir includedir \
                oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
+               libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1382,7 +1439,7 @@ $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$as_myself" : 'X\(//\)[^/]' \| \
         X"$as_myself" : 'X\(//\)$' \| \
         X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
+printf "%s\n" X"$as_myself" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -1439,7 +1496,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 fontconfig 2.13.1 to adapt to many kinds of systems.
+\`configure' configures fontconfig 2.14.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1479,6 +1536,7 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1509,7 +1567,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of fontconfig 2.13.1:";;
+     short | recursive ) echo "Configuration of fontconfig 2.14.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1533,13 +1591,21 @@ Optional Features:
   --disable-rpath         do not hardcode runtime library paths
   --enable-iconv          Use iconv to support non-Unicode SFNT name
   --enable-libxml2        Use libxml2 instead of Expat
+  --disable-docbook       Disable building docs with docbook2html (default:
+                          no)
   --disable-docs          Don't build and install documentation
+  --disable-cache-build   Don't run fc-cache during the build
 
 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-python-sys-prefix
+                          use Python's sys.prefix and sys.exec_prefix values
+  --with-python_prefix    override the default PYTHON_PREFIX
+  --with-python_exec_prefix
+                          override the default PYTHON_EXEC_PREFIX
   --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                           both]
   --with-aix-soname=aix|svr4|both
@@ -1562,11 +1628,15 @@ Optional Packages:
   --with-expat-includes=DIR
                           Use Expat includes in DIR
   --with-expat-lib=DIR
+  --with-default-sub-pixel-rendering=NAME
+                          Enable your preferred sub-pixel rendering
+                          configuration (none/bgr/rgb/vbgr/vrgb)
+                          [default=none]
   --with-default-hinting=NAME
                           Enable your preferred hinting configuration
                           (none/slight/medium/full) [default=slight]
-  --with-default-fonts=DIR
-                          Use fonts from DIR when config is busted
+  --with-default-fonts=DIR1,DIR2,...
+                          Use fonts from DIR1,DIR2,... when config is busted
   --with-add-fonts=DIR1,DIR2,...
                           Find additional fonts in DIR1,DIR2,...
   --with-cache-dir=DIR    Use DIR to store cache files
@@ -1589,22 +1659,21 @@ Some influential environment variables:
   LIBS        libraries to pass to the linker, e.g. -l<library>
   CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
   PKG_CONFIG  path to pkg-config utility
   PKG_CONFIG_PATH
               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
   LT_SYS_LIBRARY_PATH
               User-defined run-time library search path.
+  CPP         C preprocessor
   CC_FOR_BUILD
               build system C compiler
   FREETYPE_CFLAGS
               C compiler flags for FREETYPE, overriding pkg-config
   FREETYPE_LIBS
               linker flags for FREETYPE, overriding pkg-config
-  UUID_CFLAGS C compiler flags for UUID, overriding pkg-config
-  UUID_LIBS   linker flags for UUID, overriding pkg-config
   EXPAT_CFLAGS
               C compiler flags for EXPAT, overriding pkg-config
   EXPAT_LIBS  linker flags for EXPAT, overriding pkg-config
@@ -1635,9 +1704,9 @@ if test "$ac_init_help" = "recursive"; then
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -1665,7 +1734,8 @@ esac
 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 
     cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
+    # Check for configure.gnu first; this name is used for a wrapper for
+    # Metaconfig's "Configure" on case-insensitive file systems.
     if test -f "$ac_srcdir/configure.gnu"; then
       echo &&
       $SHELL "$ac_srcdir/configure.gnu" --help=recursive
@@ -1673,7 +1743,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
       echo &&
       $SHELL "$ac_srcdir/configure" --help=recursive
     else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+      printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2
     fi || ac_status=$?
     cd "$ac_pwd" || { ac_status=$?; break; }
   done
@@ -1682,10 +1752,10 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-fontconfig configure 2.13.1
-generated by GNU Autoconf 2.69
+fontconfig configure 2.14.2
+generated by GNU Autoconf 2.71
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1702,14 +1772,14 @@ fi
 ac_fn_c_try_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
+  rm -f conftest.$ac_objext conftest.beam
   if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1717,14 +1787,15 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
         test -z "$ac_c_werror_flag" ||
         test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
+       } && test -s conftest.$ac_objext
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
        ac_retval=1
@@ -1734,176 +1805,6 @@ fi
 
 } # ac_fn_c_try_compile
 
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&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;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$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://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new ##
-## ------------------------------------------------------------------------------ ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
 # -------------------------------------------------------
 # Tests whether HEADER exists and can be compiled using the include files in
@@ -1911,26 +1812,28 @@ fi
 ac_fn_c_check_header_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 #include <$2>
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_header_compile
@@ -1941,14 +1844,14 @@ $as_echo "$ac_res" >&6; }
 ac_fn_c_try_link ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
+  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
   if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1956,17 +1859,18 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
         test -z "$ac_c_werror_flag" ||
         test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
         test "$cross_compiling" = yes ||
         test -x conftest$ac_exeext
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
        ac_retval=1
@@ -1987,11 +1891,12 @@ fi
 ac_fn_c_check_func ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 /* Define $2 to an innocuous variant, in case <limits.h> declares $2.
@@ -1999,16 +1904,9 @@ else
 #define $2 innocuous_$2
 
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+   which can conflict with char $2 (); below.  */
 
+#include <limits.h>
 #undef $2
 
 /* Override any GCC internal prototype to avoid an error.
@@ -2026,92 +1924,181 @@ choke me
 #endif
 
 int
-main ()
+main (void)
 {
 return $2 ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # 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 ()
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
 {
   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
+  if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } > conftest.i && {
+        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       }
+then :
+  ac_retval=0
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-  ;
-  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
+    ac_retval=1
 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
+  as_fn_set_status $ac_retval
 
-} # ac_fn_c_check_decl
+} # ac_fn_c_try_cpp
 
-# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-# -------------------------------------------
-# Tests whether TYPE exists after having included INCLUDES, setting cache
-# variable VAR accordingly.
-ac_fn_c_check_type ()
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
+# executables *can* be run.
+ac_fn_c_try_run ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }
+then :
+  ac_retval=0
+else $as_nop
+  printf "%s\n" "$as_me: program exited with status $ac_status" >&5
+       printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR
+# ------------------------------------------------------------------
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
+# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR.
+ac_fn_check_decl ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  as_decl_name=`echo $2|sed 's/ *(.*//'`
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+printf %s "checking whether $as_decl_name is declared... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
+  eval ac_save_FLAGS=\$$6
+  as_fn_append $6 " $5"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main (void)
+{
+#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 $as_nop
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+  eval $6=\$ac_save_FLAGS
+
+fi
+eval ac_res=\$$3
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_check_decl
+
+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
+# -------------------------------------------
+# Tests whether TYPE exists after having included INCLUDES, setting cache
+# variable VAR accordingly.
+ac_fn_c_check_type ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   eval "$3=no"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 if (sizeof ($2))
         return 0;
@@ -2119,12 +2106,13 @@ if (sizeof ($2))
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 if (sizeof (($2)))
            return 0;
@@ -2132,18 +2120,19 @@ if (sizeof (($2)))
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   eval "$3=yes"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_type
@@ -2162,7 +2151,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($2) >= 0)];
 test_array [0] = 0;
@@ -2172,14 +2161,15 @@ return test_array [0];
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_lo=0 ac_mid=0
   while :; do
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($2) <= $ac_mid)];
 test_array [0] = 0;
@@ -2189,9 +2179,10 @@ return test_array [0];
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_hi=$ac_mid; break
-else
+else $as_nop
   as_fn_arith $ac_mid + 1 && ac_lo=$as_val
                        if test $ac_lo -le $ac_mid; then
                          ac_lo= ac_hi=
@@ -2199,14 +2190,14 @@ else
                        fi
                        as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   done
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($2) < 0)];
 test_array [0] = 0;
@@ -2216,14 +2207,15 @@ return test_array [0];
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_hi=-1 ac_mid=-1
   while :; do
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($2) >= $ac_mid)];
 test_array [0] = 0;
@@ -2233,9 +2225,10 @@ return test_array [0];
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_lo=$ac_mid; break
-else
+else $as_nop
   as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
                        if test $ac_mid -le $ac_hi; then
                          ac_lo= ac_hi=
@@ -2243,14 +2236,14 @@ else
                        fi
                        as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   done
-else
+else $as_nop
   ac_lo= ac_hi=
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 # Binary search between lo and hi bounds.
 while test "x$ac_lo" != "x$ac_hi"; do
   as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
@@ -2258,7 +2251,7 @@ while test "x$ac_lo" != "x$ac_hi"; do
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($2) <= $ac_mid)];
 test_array [0] = 0;
@@ -2268,12 +2261,13 @@ return test_array [0];
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_hi=$ac_mid
-else
+else $as_nop
   as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 done
 case $ac_lo in #((
 ?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
@@ -2283,12 +2277,12 @@ esac
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
+static long int longval (void) { return $2; }
+static unsigned long int ulongval (void) { return $2; }
 #include <stdio.h>
 #include <stdlib.h>
 int
-main ()
+main (void)
 {
 
   FILE *f = fopen ("conftest.val", "w");
@@ -2316,9 +2310,10 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
+else $as_nop
   ac_retval=1
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -2338,16 +2333,17 @@ rm -f conftest.val
 ac_fn_c_check_member ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
+printf %s "checking for $2.$3... " >&6; }
+if eval test \${$4+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $5
 int
-main ()
+main (void)
 {
 static $2 ac_aggr;
 if (ac_aggr.$3)
@@ -2356,14 +2352,15 @@ return 0;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$4=yes"
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $5
 int
-main ()
+main (void)
 {
 static $2 ac_aggr;
 if (sizeof ac_aggr.$3)
@@ -2372,29 +2369,50 @@ return 0;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$4=yes"
-else
+else $as_nop
   eval "$4=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$4
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_member
+ac_configure_args_raw=
+for ac_arg
+do
+  case $ac_arg in
+  *\'*)
+    ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+  esac
+  as_fn_append ac_configure_args_raw " '$ac_arg'"
+done
+
+case $ac_configure_args_raw in
+  *$as_nl*)
+    ac_safe_unquote= ;;
+  *)
+    ac_unsafe_z='|&;<>()$`\\"*?[ ''    ' # This string ends in space, tab.
+    ac_unsafe_a="$ac_unsafe_z#~"
+    ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"
+    ac_configure_args_raw=`      printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;
+esac
+
 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 fontconfig $as_me 2.13.1, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+It was created by fontconfig $as_me 2.14.2, which was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
-  $ $0 $@
+  $ $0$ac_configure_args_raw
 
 _ACEOF
 exec 5>>config.log
@@ -2427,8 +2445,12 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    printf "%s\n" "PATH: $as_dir"
   done
 IFS=$as_save_IFS
 
@@ -2463,7 +2485,7 @@ do
     | -silent | --silent | --silen | --sile | --sil)
       continue ;;
     *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
     1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
@@ -2498,11 +2520,13 @@ done
 # WARNING: Use '\'' to represent an apostrophe within the trap.
 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 trap 'exit_status=$?
+  # Sanitize IFS.
+  IFS=" ""     $as_nl"
   # Save into config.log some information that might help in debugging.
   {
     echo
 
-    $as_echo "## ---------------- ##
+    printf "%s\n" "## ---------------- ##
 ## Cache variables. ##
 ## ---------------- ##"
     echo
@@ -2513,8 +2537,8 @@ trap 'exit_status=$?
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -2538,7 +2562,7 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 )
     echo
 
-    $as_echo "## ----------------- ##
+    printf "%s\n" "## ----------------- ##
 ## Output variables. ##
 ## ----------------- ##"
     echo
@@ -2546,14 +2570,14 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
     do
       eval ac_val=\$$ac_var
       case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
       esac
-      $as_echo "$ac_var='\''$ac_val'\''"
+      printf "%s\n" "$ac_var='\''$ac_val'\''"
     done | sort
     echo
 
     if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
+      printf "%s\n" "## ------------------- ##
 ## File substitutions. ##
 ## ------------------- ##"
       echo
@@ -2561,15 +2585,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       do
        eval ac_val=\$$ac_var
        case $ac_val in
-       *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+       *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
        esac
-       $as_echo "$ac_var='\''$ac_val'\''"
+       printf "%s\n" "$ac_var='\''$ac_val'\''"
       done | sort
       echo
     fi
 
     if test -s confdefs.h; then
-      $as_echo "## ----------- ##
+      printf "%s\n" "## ----------- ##
 ## confdefs.h. ##
 ## ----------- ##"
       echo
@@ -2577,8 +2601,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       echo
     fi
     test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
+      printf "%s\n" "$as_me: caught signal $ac_signal"
+    printf "%s\n" "$as_me: exit $exit_status"
   } >&5
   rm -f core *.core core.conftest.* &&
     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -2592,63 +2616,48 @@ ac_signal=0
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
-$as_echo "/* confdefs.h */" > confdefs.h
+printf "%s\n" "/* confdefs.h */" > confdefs.h
 
 # Predefined preprocessor variables.
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
+printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
+printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
+printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
+printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h
 
 
 # Let the site file select an alternate cache file if it wants to.
 # Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
+  ac_site_files="$CONFIG_SITE"
 elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
+  ac_site_files="$prefix/share/config.site $prefix/etc/config.site"
 else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
+  ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
 fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+
+for ac_site_file in $ac_site_files
 do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+  case $ac_site_file in #(
+  */*) :
+     ;; #(
+  *) :
+    ac_site_file=./$ac_site_file ;;
+esac
+  if test -f "$ac_site_file" && test -r "$ac_site_file"; then
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
     . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+      || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "failed to load site script $ac_site_file
 See \`config.log' for more details" "$LINENO" 5; }
   fi
@@ -2658,23 +2667,440 @@ if test -r "$cache_file"; then
   # Some versions of bash will fail to source /dev/null (special files
   # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
   if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+printf "%s\n" "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
       *)                      . "./$cache_file";;
     esac
   fi
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
 
+# Test code for whether the C compiler supports C89 (global declarations)
+ac_c_conftest_c89_globals='
+/* Does the compiler advertise C89 conformance?
+   Do not test the value of __STDC__, because some compilers set it to 0
+   while being otherwise adequately conformant. */
+#if !defined __STDC__
+# error "Compiler does not advertise C89 conformance"
+#endif
+
+#include <stddef.h>
+#include <stdarg.h>
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7 src/conf.sh.  */
+struct buf { int x; };
+struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not \xHH hex character constants.
+   These do not provoke an error unfortunately, instead are silently treated
+   as an "x".  The following induces an error, until -std is added to get
+   proper ANSI mode.  Curiously \x00 != x always comes out true, for an
+   array size at least.  It is necessary to write \x00 == 0 to get something
+   that is true only with -std.  */
+int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+   inside strings and character constants.  */
+#define FOO(x) '\''x'\''
+int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
+               int, int);'
+
+# Test code for whether the C compiler supports C89 (body of main).
+ac_c_conftest_c89_main='
+ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
+'
+
+# Test code for whether the C compiler supports C99 (global declarations)
+ac_c_conftest_c99_globals='
+// Does the compiler advertise C99 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
+# error "Compiler does not advertise C99 conformance"
+#endif
+
+#include <stdbool.h>
+extern int puts (const char *);
+extern int printf (const char *, ...);
+extern int dprintf (int, const char *, ...);
+extern void *malloc (size_t);
+
+// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+// dprintf is used instead of fprintf to avoid needing to declare
+// FILE and stderr.
+#define debug(...) dprintf (2, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+  int x = 1234;
+  int y = 5678;
+  debug ("Flag");
+  debug ("X = %d\n", x);
+  showlist (The first, second, and third items.);
+  report (x>y, "x is %d but y is %d", x, y);
+}
+
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+  #error "your preprocessor is broken"
+#endif
+#if BIG_OK
+#else
+  #error "your preprocessor is broken"
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
+
+struct incomplete_array
+{
+  int datasize;
+  double data[];
+};
+
+struct named_init {
+  int number;
+  const wchar_t *name;
+  double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict (ccp restrict text)
+{
+  // See if C++-style comments work.
+  // Iterate through items via the restricted pointer.
+  // Also check for declarations in for loops.
+  for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)
+    continue;
+  return 0;
+}
+
+// Check varargs and va_copy.
+static bool
+test_varargs (const char *format, ...)
+{
+  va_list args;
+  va_start (args, format);
+  va_list args_copy;
+  va_copy (args_copy, args);
+
+  const char *str = "";
+  int number = 0;
+  float fnumber = 0;
+
+  while (*format)
+    {
+      switch (*format++)
+       {
+       case '\''s'\'': // string
+         str = va_arg (args_copy, const char *);
+         break;
+       case '\''d'\'': // int
+         number = va_arg (args_copy, int);
+         break;
+       case '\''f'\'': // float
+         fnumber = va_arg (args_copy, double);
+         break;
+       default:
+         break;
+       }
+    }
+  va_end (args_copy);
+  va_end (args);
+
+  return *str && number && fnumber;
+}
+'
+
+# Test code for whether the C compiler supports C99 (body of main).
+ac_c_conftest_c99_main='
+  // Check bool.
+  _Bool success = false;
+  success |= (argc != 0);
+
+  // Check restrict.
+  if (test_restrict ("String literal") == 0)
+    success = true;
+  char *restrict newvar = "Another string";
+
+  // Check varargs.
+  success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);
+  test_varargs_macros ();
+
+  // Check flexible array members.
+  struct incomplete_array *ia =
+    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+  ia->datasize = 10;
+  for (int i = 0; i < ia->datasize; ++i)
+    ia->data[i] = i * 1.234;
+
+  // Check named initializers.
+  struct named_init ni = {
+    .number = 34,
+    .name = L"Test wide string",
+    .average = 543.34343,
+  };
+
+  ni.number = 58;
+
+  int dynamic_array[ni.number];
+  dynamic_array[0] = argv[0][0];
+  dynamic_array[ni.number - 1] = 543;
+
+  // work around unused variable warnings
+  ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''
+        || dynamic_array[ni.number - 1] != 543);
+'
+
+# Test code for whether the C compiler supports C11 (global declarations)
+ac_c_conftest_c11_globals='
+// Does the compiler advertise C11 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
+# error "Compiler does not advertise C11 conformance"
+#endif
+
+// Check _Alignas.
+char _Alignas (double) aligned_as_double;
+char _Alignas (0) no_special_alignment;
+extern char aligned_as_int;
+char _Alignas (0) _Alignas (int) aligned_as_int;
+
+// Check _Alignof.
+enum
+{
+  int_alignment = _Alignof (int),
+  int_array_alignment = _Alignof (int[100]),
+  char_alignment = _Alignof (char)
+};
+_Static_assert (0 < -_Alignof (int), "_Alignof is signed");
+
+// Check _Noreturn.
+int _Noreturn does_not_return (void) { for (;;) continue; }
+
+// Check _Static_assert.
+struct test_static_assert
+{
+  int x;
+  _Static_assert (sizeof (int) <= sizeof (long int),
+                  "_Static_assert does not work in struct");
+  long int y;
+};
+
+// Check UTF-8 literals.
+#define u8 syntax error!
+char const utf8_literal[] = u8"happens to be ASCII" "another string";
+
+// Check duplicate typedefs.
+typedef long *long_ptr;
+typedef long int *long_ptr;
+typedef long_ptr long_ptr;
+
+// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
+struct anonymous
+{
+  union {
+    struct { int i; int j; };
+    struct { int k; long int l; } w;
+  };
+  int m;
+} v1;
+'
+
+# Test code for whether the C compiler supports C11 (body of main).
+ac_c_conftest_c11_main='
+  _Static_assert ((offsetof (struct anonymous, i)
+                  == offsetof (struct anonymous, w.k)),
+                 "Anonymous union alignment botch");
+  v1.i = 2;
+  v1.w.k = 5;
+  ok |= v1.i != 5;
+'
+
+# Test code for whether the C compiler supports C11 (complete).
+ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+${ac_c_conftest_c11_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  ${ac_c_conftest_c11_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C99 (complete).
+ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C89 (complete).
+ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  return ok;
+}
+"
+
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
+as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
+as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
+as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
+as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"
+as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
+as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
+as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
+as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H"
+as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H"
 gt_needs="$gt_needs "
-as_fn_append ac_header_list " stdlib.h"
-as_fn_append ac_header_list " unistd.h"
-as_fn_append ac_header_list " sys/param.h"
+as_fn_append ac_func_c_list " vprintf HAVE_VPRINTF"
+as_fn_append ac_header_c_list " sys/param.h sys_param_h HAVE_SYS_PARAM_H"
+as_fn_append ac_func_c_list " getpagesize HAVE_GETPAGESIZE"
+
+# Auxiliary files required by this configure script.
+ac_aux_files="config.rpath config.guess config.sub ltmain.sh compile missing install-sh"
+
+# Locations in which to look for auxiliary files.
+ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.."
+
+# Search for a directory containing all of the required auxiliary files,
+# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.
+# If we don't find one directory that contains all the files we need,
+# we report the set of missing files from the *first* directory in
+# $ac_aux_dir_candidates and give up.
+ac_missing_aux_files=""
+ac_first_candidate=:
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in $ac_aux_dir_candidates
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+  as_found=:
+
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}:  trying $as_dir" >&5
+  ac_aux_dir_found=yes
+  ac_install_sh=
+  for ac_aux in $ac_aux_files
+  do
+    # As a special case, if "install-sh" is required, that requirement
+    # can be satisfied by any of "install-sh", "install.sh", or "shtool",
+    # and $ac_install_sh is set appropriately for whichever one is found.
+    if test x"$ac_aux" = x"install-sh"
+    then
+      if test -f "${as_dir}install-sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install-sh found" >&5
+        ac_install_sh="${as_dir}install-sh -c"
+      elif test -f "${as_dir}install.sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install.sh found" >&5
+        ac_install_sh="${as_dir}install.sh -c"
+      elif test -f "${as_dir}shtool"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}shtool found" >&5
+        ac_install_sh="${as_dir}shtool install -c"
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} install-sh"
+        else
+          break
+        fi
+      fi
+    else
+      if test -f "${as_dir}${ac_aux}"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}${ac_aux} found" >&5
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"
+        else
+          break
+        fi
+      fi
+    fi
+  done
+  if test "$ac_aux_dir_found" = yes; then
+    ac_aux_dir="$as_dir"
+    break
+  fi
+  ac_first_candidate=false
+
+  as_found=false
+done
+IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5
+fi
+
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+if test -f "${ac_aux_dir}config.guess"; then
+  ac_config_guess="$SHELL ${ac_aux_dir}config.guess"
+fi
+if test -f "${ac_aux_dir}config.sub"; then
+  ac_config_sub="$SHELL ${ac_aux_dir}config.sub"
+fi
+if test -f "$ac_aux_dir/configure"; then
+  ac_configure="$SHELL ${ac_aux_dir}configure"
+fi
+
 # Check that the precious variables saved in the cache have kept the same
 # value.
 ac_cache_corrupted=false
@@ -2685,12 +3111,12 @@ for ac_var in $ac_precious_vars; do
   eval ac_new_val=\$ac_env_${ac_var}_value
   case $ac_old_set,$ac_new_set in
     set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
     *)
@@ -2699,24 +3125,24 @@ $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
        ac_old_val_w=`echo x $ac_old_val`
        ac_new_val_w=`echo x $ac_new_val`
        if test "$ac_old_val_w" != "$ac_new_val_w"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
          ac_cache_corrupted=:
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
          eval $ac_var=\$ac_old_val
        fi
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
+printf "%s\n" "$as_me:   former value:  \`$ac_old_val'" >&2;}
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
+printf "%s\n" "$as_me:   current value: \`$ac_new_val'" >&2;}
       fi;;
   esac
   # Pass precious variables to config.status.
   if test "$ac_new_set" = set; then
     case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
     *) ac_arg=$ac_var=$ac_new_val ;;
     esac
     case " $ac_configure_args " in
@@ -2726,11 +3152,12 @@ $as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
   fi
 done
 if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}
+  as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file'
+           and start over" "$LINENO" 5
 fi
 ## -------------------- ##
 ## Main body of script. ##
@@ -2745,36 +3172,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 am__api_version='1.16'
 
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
-# Find a good install program.  We prefer a C program (faster),
+  # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
 # SysV /etc/install, /usr/sbin/install
@@ -2788,20 +3188,25 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 # OS/2's system install, which has a completely different semantic
 # ./install, which can be erroneously created by make from ./install.sh.
 # Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+printf %s "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_path_install+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    # Account for fact that we put trailing slashes in our PATH walk.
+case $as_dir in #((
+  ./ | /[cC]/* | \
   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
   ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
   /usr/ucb/* ) ;;
@@ -2811,13 +3216,13 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-       if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+       if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
          if test $ac_prog = install &&
-           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
            # AIX install.  It has an incompatible calling convention.
            :
          elif test $ac_prog = install &&
-           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
            # program-specific install script used by HP pwplus--don't use.
            :
          else
@@ -2825,12 +3230,12 @@ case $as_dir/ in #((
            echo one > conftest.one
            echo two > conftest.two
            mkdir conftest.dir
-           if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+           if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
              test -s conftest.one && test -s conftest.two &&
              test -s conftest.dir/conftest.one &&
              test -s conftest.dir/conftest.two
            then
-             ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+             ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
              break 3
            fi
          fi
@@ -2846,7 +3251,7 @@ IFS=$as_save_IFS
 rm -rf conftest.one conftest.two conftest.dir
 
 fi
-  if test "${ac_cv_path_install+set}" = set; then
+  if test ${ac_cv_path_install+y}; then
     INSTALL=$ac_cv_path_install
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -2856,8 +3261,8 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+printf "%s\n" "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
@@ -2867,8 +3272,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+printf %s "checking whether build environment is sane... " >&6; }
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -2922,8 +3327,8 @@ else
    as_fn_error $? "newly created file is older than distributed files!
 Check your system clock" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 # If we didn't sleep, we still need to ensure time stamps of config.status and
 # generated files are strictly newer.
 am_sleep_pid=
@@ -2942,26 +3347,23 @@ test "$program_suffix" != NONE &&
 # Double any \ or $.
 # By default was `s,x,x', remove it if useless.
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"`
+
 
 # Expand $ac_aux_dir to an absolute path.
 am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\    *)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+
+  if test x"${MISSING+set}" != xset; then
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 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
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
 if test x"${install_sh+set}" != xset; then
@@ -2981,11 +3383,12 @@ if test "$cross_compiling" != no; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; 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_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -2993,11 +3396,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3008,11 +3415,11 @@ fi
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3021,11 +3428,12 @@ if test -z "$ac_cv_prog_STRIP"; then
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; 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_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -3033,11 +3441,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3048,11 +3460,11 @@ fi
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -3060,8 +3472,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -3073,25 +3485,31 @@ fi
 fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5
+printf %s "checking for a race-free mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if ${ac_cv_path_mkdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${ac_cv_path_mkdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_prog in mkdir gmkdir; do
         for ac_exec_ext in '' $ac_executable_extensions; do
-          as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
-          case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
-            'mkdir (GNU coreutils) '* | \
-            'mkdir (coreutils) '* | \
+          as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue
+          case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #(
+            'mkdir ('*'coreutils) '* | \
+            'BusyBox '* | \
             'mkdir (fileutils) '4.1*)
-              ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+              ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext
               break 3;;
           esac
         done
@@ -3102,7 +3520,7 @@ IFS=$as_save_IFS
 fi
 
   test -d ./--version && rmdir ./--version
-  if test "${ac_cv_path_mkdir+set}" = set; then
+  if test ${ac_cv_path_mkdir+y}; then
     MKDIR_P="$ac_cv_path_mkdir -p"
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -3112,18 +3530,19 @@ fi
     MKDIR_P="$ac_install_sh -d"
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+printf "%s\n" "$MKDIR_P" >&6; }
 
 for ac_prog in gawk mawk nawk awk
 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_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AWK"; then
   ac_cv_prog_AWK="$AWK" # Let the user override the test.
 else
@@ -3131,11 +3550,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3146,24 +3569,25 @@ fi
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
   test -n "$AWK" && break
 done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "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_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
@@ -3179,12 +3603,12 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
@@ -3198,7 +3622,8 @@ fi
 rmdir .tst 2>/dev/null
 
 # Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
   enableval=$enable_silent_rules;
 fi
 
@@ -3208,12 +3633,13 @@ case $enable_silent_rules in # (((
     *) 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))
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+printf %s "checking whether $am_make supports nested variables... " >&6; }
+if test ${am_cv_make_support_nested_variables+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if printf "%s\n" 'TRUE=$(BAR$(V))
 BAR0=false
 BAR1=true
 V=1
@@ -3225,8 +3651,8 @@ 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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+printf "%s\n" "$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)'
@@ -3258,17 +3684,13 @@ fi
 
 # Define the identity of the package.
  PACKAGE='fontconfig'
- VERSION='2.13.1'
+ VERSION='2.14.2'
 
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
+printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
+printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h
 
 # Some tools Automake needs.
 
@@ -3308,6 +3730,20 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
 
 
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+
+
 
 # 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
@@ -3352,7 +3788,8 @@ END
 fi
 
 # Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
   enableval=$enable_silent_rules;
 fi
 
@@ -3362,12 +3799,13 @@ case $enable_silent_rules in # (((
     *) AM_DEFAULT_VERBOSITY=0;;
 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))
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+printf %s "checking whether $am_make supports nested variables... " >&6; }
+if test ${am_cv_make_support_nested_variables+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if printf "%s\n" 'TRUE=$(BAR$(V))
 BAR0=false
 BAR1=true
 V=1
@@ -3379,8 +3817,8 @@ 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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+printf "%s\n" "$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)'
@@ -3396,6 +3834,15 @@ ac_config_headers="$ac_config_headers config.h"
 
 
 
+
+
+
+
+
+
+
+
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3404,11 +3851,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; 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_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3416,11 +3864,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3431,11 +3883,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3444,11 +3896,12 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; 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_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -3456,11 +3909,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3471,11 +3928,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CC" = x; then
@@ -3483,8 +3940,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -3497,11 +3954,12 @@ if test -z "$CC"; then
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; 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_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3509,11 +3967,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3524,11 +3986,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3537,11 +3999,12 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; 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_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3550,15 +4013,19 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3574,18 +4041,18 @@ if test $ac_prog_rejected = yes; then
     # However, it has the same basename, so the bogon will be chosen
     # first if we set CC to just the basename; use the full file name.
     shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
   fi
 fi
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3596,11 +4063,12 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$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_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3608,11 +4076,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3623,11 +4095,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3640,11 +4112,12 @@ if test -z "$CC"; then
 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_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -3652,11 +4125,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3667,11 +4144,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3683,34 +4160,138 @@ done
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    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_CC="${ac_tool_prefix}clang"
+    printf "%s\n" "$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
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    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_CC="clang"
+    printf "%s\n" "$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_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
   fi
+else
+  CC="$ac_cv_prog_CC"
 fi
 
 fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "no acceptable C compiler found in \$PATH
 See \`config.log' for more details" "$LINENO" 5; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
   { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -3720,7 +4301,7 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
@@ -3728,7 +4309,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -3740,9 +4321,9 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+printf %s "checking whether the C compiler works... " >&6; }
+ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 
 # The possible output files:
 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
@@ -3763,11 +4344,12 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 # in a Makefile.  We should not override ac_cv_exeext if it was cached,
@@ -3784,7 +4366,7 @@ do
        # certainly right.
        break;;
     *.* )
-       if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+       if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
        then :; else
           ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
        fi
@@ -3800,44 +4382,46 @@ do
 done
 test "$ac_cv_exeext" = no && ac_cv_exeext=
 
-else
+else $as_nop
   ac_file=''
 fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "C compiler cannot create executables
 See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+printf %s "checking for C compiler default output file name... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+printf "%s\n" "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+printf %s "checking for suffix of executables... " >&6; }
 if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -3851,15 +4435,15 @@ for ac_file in conftest.exe conftest conftest.*; do
     * ) break;;
   esac
 done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of executables: cannot compile and link
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+printf "%s\n" "$ac_cv_exeext" >&6; }
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
@@ -3868,7 +4452,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdio.h>
 int
-main ()
+main (void)
 {
 FILE *f = fopen ("conftest.out", "w");
  return ferror (f) || fclose (f) != 0;
@@ -3880,8 +4464,8 @@ _ACEOF
 ac_clean_files="$ac_clean_files conftest.out"
 # Check that the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+printf %s "checking whether we are cross compiling... " >&6; }
 if test "$cross_compiling" != yes; then
   { { ac_try="$ac_link"
 case "(($ac_try" in
@@ -3889,10 +4473,10 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
   if { ac_try='./conftest$ac_cv_exeext'
   { { case "(($ac_try" in
@@ -3900,39 +4484,40 @@ $as_echo "$ac_try_echo"; } >&5
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_try") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
        cross_compiling=yes
     else
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
+       { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot run C compiled programs.
 If you meant to cross compile, use \`--host'.
 See \`config.log' for more details" "$LINENO" 5; }
     fi
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+printf "%s\n" "$cross_compiling" >&6; }
 
 rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+printf %s "checking for suffix of object files... " >&6; }
+if test ${ac_cv_objext+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -3946,11 +4531,12 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   for ac_file in conftest.o conftest.obj conftest.*; do
   test -f "$ac_file" || continue;
   case $ac_file in
@@ -3959,31 +4545,32 @@ $as_echo "$ac_try_echo"; } >&5
        break;;
   esac
 done
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of object files: cannot compile
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+printf "%s\n" "$ac_cv_objext" >&6; }
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 #ifndef __GNUC__
        choke me
@@ -3993,29 +4580,33 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GCC=yes
 else
   GCC=
 fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
@@ -4024,57 +4615,60 @@ else
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
-else
+else $as_nop
   CFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_c_werror_flag=$ac_save_c_werror_flag
         CFLAGS="-g"
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
   CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
@@ -4089,94 +4683,144 @@ else
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c11=no
 ac_save_CC=$CC
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+     CC="$CC $ac_cv_prog_cc_c11"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+  ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c99" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+     CC="$CC $ac_cv_prog_cc_c99"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+  ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c89_program
 _ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-       -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
+  if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_c89=$ac_arg
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
 rm -f conftest.$ac_ext
 CC=$ac_save_CC
-
 fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c89" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+     CC="$CC $ac_cv_prog_cc_c89"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+  ac_prog_cc_stdc=c89
+fi
 fi
 
 ac_ext=c
@@ -4185,21 +4829,23 @@ 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_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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+printf %s "checking whether $CC understands -c and -o together... " >&6; }
+if test ${am_cv_prog_cc_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -4227,8 +4873,8 @@ _ACEOF
   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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+printf "%s\n" "$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.
@@ -4247,8 +4893,8 @@ DEPDIR="${am__leading_dot}deps"
 
 ac_config_commands="$ac_config_commands depfiles"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
-$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }
 cat > confinc.mk << 'END'
 am__doit:
        @echo this is the am__doit target >confinc.out
@@ -4284,11 +4930,12 @@ esac
   fi
 done
 rm -f confinc.* confmf.*
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
-$as_echo "${_am_result}" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+printf "%s\n" "${_am_result}" >&6; }
 
 # Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
+if test ${enable_dependency_tracking+y}
+then :
   enableval=$enable_dependency_tracking;
 fi
 
@@ -4309,11 +4956,12 @@ fi
 
 depcc="$CC"   am_compiler_list=
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+printf %s "checking dependency style of $depcc... " >&6; }
+if test ${am_cv_CC_dependencies_compiler_type+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
@@ -4420,8 +5068,8 @@ else
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; }
 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
  if
 
 
 
-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 how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
 do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+  if test $ac_cache; then
+    ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+    if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+      printf "%s\n" "#define $ac_item 1" >> confdefs.h
+    fi
+    ac_header= ac_cache=
+  elif test $ac_header; then
+    ac_cache=$ac_item
+  else
+    ac_header=$ac_item
+  fi
+done
+
+
+
+
+
+
+
+
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
+
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
 
-else
-  # Broken: fails on valid input.
-continue
 fi
-rm -f conftest.err conftest.i conftest.$ac_ext
 
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
+
+
+
+
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
+printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
+if test ${ac_cv_safe_to_define___extensions__+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <ac_nonexistent.h>
+
+#         define __EXTENSIONS__ 1
+          $ac_includes_default
+int
+main (void)
+{
+
+  ;
+  return 0;
+}
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
+if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_safe_to_define___extensions__=yes
+else $as_nop
+  ac_cv_safe_to_define___extensions__=no
 fi
-rm -f conftest.err conftest.i conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
+printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }
 
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-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
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      as_fn_executable_p "$ac_path_GREP" || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      as_fn_executable_p "$ac_path_EGREP" || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
+printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
+if test ${ac_cv_should_define__xopen_source+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_should_define__xopen_source=no
+    if test $ac_cv_header_wchar_h = yes
+then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
 
+          #include <wchar.h>
+          mbstate_t x;
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <string.h>
 
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+            #define _XOPEN_SOURCE 500
+            #include <wchar.h>
+            mbstate_t x;
 int
-main ()
+main (void)
 {
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
+
+  ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
+if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_should_define__xopen_source=yes
 fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
+printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }
 
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+  printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
 
-fi
+  printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h
 
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+  printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h
 
-fi
+  printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h
 
-done
+  printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h
 
+  printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h
 
+  printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
 
-  ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
-  MINIX=yes
-else
-  MINIX=
-fi
+  printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h
 
+  printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h
 
-  if test "$MINIX" = yes; then
+  printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h
 
-$as_echo "#define _POSIX_SOURCE 1" >>confdefs.h
+  printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h
 
+  printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h
 
-$as_echo "#define _POSIX_1_SOURCE 2" >>confdefs.h
+  printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h
 
+  printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h
 
-$as_echo "#define _MINIX 1" >>confdefs.h
+  printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h
 
-  fi
+  if test $ac_cv_header_minix_config_h = yes
+then :
+  MINIX=yes
+    printf "%s\n" "#define _MINIX 1" >>confdefs.h
 
+    printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
+    printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h
 
-#         define __EXTENSIONS__ 1
-          $ac_includes_default
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_safe_to_define___extensions__=yes
-else
-  ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else $as_nop
+  MINIX=
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-  test $ac_cv_safe_to_define___extensions__ = yes &&
-    $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h
-
-  $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
+  if test $ac_cv_safe_to_define___extensions__ = yes
+then :
+  printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h
 
-  $as_echo "#define _GNU_SOURCE 1" >>confdefs.h
-
-  $as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
-  $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h
+fi
+  if test $ac_cv_should_define__xopen_source = yes
+then :
+  printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h
 
+fi
 
 # Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
+if test ${enable_largefile+y}
+then :
   enableval=$enable_largefile;
 fi
 
 if test "$enable_largefile" != no; then
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
+printf %s "checking for special C compiler options needed for large files... " >&6; }
+if test ${ac_cv_sys_largefile_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_sys_largefile_CC=no
      if test "$GCC" != yes; then
        ac_save_CC=$CC
@@ -4919,44 +5281,47 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       && LARGE_OFF_T % 2147483647 == 1)
                      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-        if ac_fn_c_try_compile "$LINENO"; then :
+        if ac_fn_c_try_compile "$LINENO"
+then :
   break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
         CC="$CC -n32"
-        if ac_fn_c_try_compile "$LINENO"; then :
+        if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_largefile_CC=' -n32'; break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
         break
        done
        CC=$ac_save_CC
        rm -f conftest.$ac_ext
     fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
+printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; }
   if test "$ac_cv_sys_largefile_CC" != no; then
     CC=$CC$ac_cv_sys_largefile_CC
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
+if test ${ac_cv_sys_file_offset_bits+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -4965,22 +5330,23 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       && LARGE_OFF_T % 2147483647 == 1)
                      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _FILE_OFFSET_BITS 64
@@ -4989,43 +5355,43 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       && LARGE_OFF_T % 2147483647 == 1)
                      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=64; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_file_offset_bits=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
+printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; }
 case $ac_cv_sys_file_offset_bits in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
+printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
+printf %s "checking for _LARGE_FILES value needed for large files... " >&6; }
+if test ${ac_cv_sys_large_files+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -5034,22 +5400,23 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       && LARGE_OFF_T % 2147483647 == 1)
                      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _LARGE_FILES 1
@@ -5058,61 +5425,59 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       && LARGE_OFF_T % 2147483647 == 1)
                      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=1; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_large_files=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
+printf "%s\n" "$ac_cv_sys_large_files" >&6; }
 case $ac_cv_sys_large_files in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
+printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   fi
-
-
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+printf %s "checking whether ln -s works... " >&6; }
 LN_S=$as_ln_s
 if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+printf "%s\n" "no, using $LN_S" >&6; }
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "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_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
@@ -5128,12 +5493,12 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
@@ -5148,11 +5513,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKG_CONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
@@ -5162,11 +5528,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     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
+  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"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5178,11 +5548,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+printf "%s\n" "$PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5191,11 +5561,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   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.
@@ -5205,11 +5576,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     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
+  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"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5221,11 +5596,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKG_CONFIG" = x; then
@@ -5233,8 +5608,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKG_CONFIG=$ac_pt_PKG_CONFIG
@@ -5246,14 +5621,14 @@ fi
 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; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+printf %s "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; }
+               { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        else
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+               { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
                PKG_CONFIG=""
        fi
 fi
@@ -5261,9 +5636,10 @@ fi
 
 
 # Check whether --with-pkgconfigdir was given.
-if test "${with_pkgconfigdir+set}" = set; then :
+if test ${with_pkgconfigdir+y}
+then :
   withval=$with_pkgconfigdir;
-else
+else $as_nop
   with_pkgconfigdir='${libdir}/pkgconfig'
 fi
 
@@ -5280,19 +5656,416 @@ GIT=${GIT-"${am_missing_run}git"}
 GPERF=${GPERF-"${am_missing_run}gperf"}
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
-$as_echo_n "checking for RM macro... " >&6; }
+
+
+
+
+
+        if test -n "$PYTHON"; then
+      # If the user set $PYTHON, use it and don't search something else.
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 3" >&5
+printf %s "checking whether $PYTHON version is >= 3... " >&6; }
+      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, '3'.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)"
+  if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5
+   ($PYTHON -c "$prog") >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+                              as_fn_error $? "Python interpreter is too old" "$LINENO" 5
+fi
+      am_display_PYTHON=$PYTHON
+    else
+      # Otherwise, try each interpreter until we find one that satisfies
+      # VERSION.
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 3" >&5
+printf %s "checking for a Python interpreter with version >= 3... " >&6; }
+if test ${am_cv_pathless_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+
+       for am_cv_pathless_PYTHON in python python2 python3  python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3  python3.2 python3.1 python3.0  python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1  python2.0 none; do
+         test "$am_cv_pathless_PYTHON" = none && break
+         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, '3'.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)"
+  if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5
+   ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }
+then :
+  break
+fi
+       done
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
+printf "%s\n" "$am_cv_pathless_PYTHON" >&6; }
+      # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
+      if test "$am_cv_pathless_PYTHON" = none; then
+       PYTHON=:
+      else
+        # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
+set dummy $am_cv_pathless_PYTHON; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  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
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    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_PYTHON="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$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
+PYTHON=$ac_cv_path_PYTHON
+if test -n "$PYTHON"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+printf "%s\n" "$PYTHON" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+      fi
+      am_display_PYTHON=$am_cv_pathless_PYTHON
+    fi
+
+
+  if test "$PYTHON" = :; then
+        as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
+  else
+
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
+printf %s "checking for $am_display_PYTHON version... " >&6; }
+if test ${am_cv_python_version+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[:2])"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
+printf "%s\n" "$am_cv_python_version" >&6; }
+  PYTHON_VERSION=$am_cv_python_version
+
+
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
+printf %s "checking for $am_display_PYTHON platform... " >&6; }
+if test ${am_cv_python_platform+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
+printf "%s\n" "$am_cv_python_platform" >&6; }
+  PYTHON_PLATFORM=$am_cv_python_platform
+
+
+                            if test "x$prefix" = xNONE; then
+    am__usable_prefix=$ac_default_prefix
+  else
+    am__usable_prefix=$prefix
+  fi
+
+  # Allow user to request using sys.* values from Python,
+  # instead of the GNU $prefix values.
+
+# Check whether --with-python-sys-prefix was given.
+if test ${with_python_sys_prefix+y}
+then :
+  withval=$with_python_sys_prefix; am_use_python_sys=:
+else $as_nop
+  am_use_python_sys=false
+fi
+
+
+  # Allow user to override whatever the default Python prefix is.
+
+# Check whether --with-python_prefix was given.
+if test ${with_python_prefix+y}
+then :
+  withval=$with_python_prefix; am_python_prefix_subst=$withval
+   am_cv_python_prefix=$withval
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON prefix" >&5
+printf %s "checking for explicit $am_display_PYTHON prefix... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5
+printf "%s\n" "$am_cv_python_prefix" >&6; }
+else $as_nop
+
+   if $am_use_python_sys; then
+     # using python sys.prefix value, not GNU
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON prefix" >&5
+printf %s "checking for python default $am_display_PYTHON prefix... " >&6; }
+if test ${am_cv_python_prefix+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5
+printf "%s\n" "$am_cv_python_prefix" >&6; }
+
+               case $am_cv_python_prefix in
+     $am__usable_prefix*)
+       am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
+       am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
+       ;;
+     *)
+       am_python_prefix_subst=$am_cv_python_prefix
+       ;;
+     esac
+   else # using GNU prefix value, not python sys.prefix
+     am_python_prefix_subst='${prefix}'
+     am_python_prefix=$am_python_prefix_subst
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON prefix" >&5
+printf %s "checking for GNU default $am_display_PYTHON prefix... " >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_prefix" >&5
+printf "%s\n" "$am_python_prefix" >&6; }
+   fi
+fi
+
+  # Substituting python_prefix_subst value.
+  PYTHON_PREFIX=$am_python_prefix_subst
+
+
+  # emacs-page Now do it all over again for Python exec_prefix, but with yet
+  # another conditional: fall back to regular prefix if that was specified.
+
+# Check whether --with-python_exec_prefix was given.
+if test ${with_python_exec_prefix+y}
+then :
+  withval=$with_python_exec_prefix; am_python_exec_prefix_subst=$withval
+   am_cv_python_exec_prefix=$withval
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for explicit $am_display_PYTHON exec_prefix... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+else $as_nop
+
+   # no explicit --with-python_exec_prefix, but if
+   # --with-python_prefix was given, use its value for python_exec_prefix too.
+   if test -n "$with_python_prefix"
+then :
+  am_python_exec_prefix_subst=$with_python_prefix
+    am_cv_python_exec_prefix=$with_python_prefix
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python_prefix-given $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for python_prefix-given $am_display_PYTHON exec_prefix... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+else $as_nop
+
+    # Set am__usable_exec_prefix whether using GNU or Python values,
+    # since we use that variable for pyexecdir.
+    if test "x$exec_prefix" = xNONE; then
+      am__usable_exec_prefix=$am__usable_prefix
+    else
+      am__usable_exec_prefix=$exec_prefix
+    fi
+    #
+    if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for python default $am_display_PYTHON exec_prefix... " >&6; }
+if test ${am_cv_python_exec_prefix+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+                        case $am_cv_python_exec_prefix in
+      $am__usable_exec_prefix*)
+        am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
+        am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
+        ;;
+      *)
+        am_python_exec_prefix_subst=$am_cv_python_exec_prefix
+        ;;
+     esac
+   else # using GNU $exec_prefix, not python sys.exec_prefix
+     am_python_exec_prefix_subst='${exec_prefix}'
+     am_python_exec_prefix=$am_python_exec_prefix_subst
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for GNU default $am_display_PYTHON exec_prefix... " >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_exec_prefix" >&5
+printf "%s\n" "$am_python_exec_prefix" >&6; }
+   fi
+fi
+fi
+
+  # Substituting python_exec_prefix_subst.
+  PYTHON_EXEC_PREFIX=$am_python_exec_prefix_subst
+
+
+  # Factor out some code duplication into this shell variable.
+  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"
+
+
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory (pythondir)" >&5
+printf %s "checking for $am_display_PYTHON script directory (pythondir)... " >&6; }
+if test ${am_cv_python_pythondir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test "x$am_cv_python_prefix" = x; then
+     am_py_prefix=$am__usable_prefix
+   else
+     am_py_prefix=$am_cv_python_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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
+printf "%s\n" "$am_cv_python_pythondir" >&6; }
+  pythondir=$am_cv_python_pythondir
+
+
+          pkgpythondir=\${pythondir}/$PACKAGE
+
+
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory (pyexecdir)" >&5
+printf %s "checking for $am_display_PYTHON extension module directory (pyexecdir)... " >&6; }
+if test ${am_cv_python_pyexecdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test "x$am_cv_python_exec_prefix" = x; then
+     am_py_exec_prefix=$am__usable_exec_prefix
+   else
+     am_py_exec_prefix=$am_cv_python_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_exec_prefix'})
+else:
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
+printf "%s\n" "$am_cv_python_pyexecdir" >&6; }
+  pyexecdir=$am_cv_python_pyexecdir
+
+
+      pkgpyexecdir=\${pyexecdir}/$PACKAGE
+
+
+
+  fi
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
+printf %s "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; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no predefined RM" >&5
+printf "%s\n" "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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RM+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$RM"; then
   ac_cv_prog_RM="$RM" # Let the user override the test.
 else
@@ -5300,11 +6073,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5315,30 +6092,31 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RM" >&5
+printf "%s\n" "$RM" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 else
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
-$as_echo "$_predefined_rm" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
+printf "%s\n" "$_predefined_rm" >&6; }
 fi
 
 
 case `pwd` in
   *\ * | *\    *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
 esac
 
 
 
-macro_version='2.4.6'
-macro_revision='2.4.6'
+macro_version='2.4.7'
+macro_revision='2.4.7'
+
 
 
 
@@ -5354,26 +6132,29 @@ macro_revision='2.4.6'
 
 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
+
+  # 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
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+printf %s "checking build system type... " >&6; }
+if test ${ac_cv_build+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_build_alias=$build_alias
 test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+  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
+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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+printf "%s\n" "$ac_cv_build" >&6; }
 case $ac_cv_build in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
@@ -5392,21 +6173,22 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+printf %s "checking host system type... " >&6; }
+if test ${ac_cv_host+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   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
+  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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+printf "%s\n" "$ac_cv_host" >&6; }
 case $ac_cv_host in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
@@ -5446,8 +6228,8 @@ ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
+printf %s "checking how to print strings... " >&6; }
 # Test print first, because it will be a builtin if present.
 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
    test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
@@ -5473,12 +6255,12 @@ func_echo_all ()
 }
 
 case $ECHO in
-  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
-  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
+  printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5
+printf "%s\n" "printf" >&6; } ;;
+  print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
+printf "%s\n" "print -r" >&6; } ;;
+  *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5
+printf "%s\n" "cat" >&6; } ;;
 esac
 
 
@@ -5494,11 +6276,12 @@ esac
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
             ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
      for ac_i in 1 2 3 4 5 6 7; do
        ac_script="$ac_script$as_nl$ac_script"
@@ -5512,10 +6295,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in sed gsed
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_SED" || continue
 # Check for GNU ac_path_SED and select it if it is found.
   # Check for GNU $ac_path_SED
@@ -5524,13 +6312,13 @@ case `"$ac_path_SED" --version 2>&1` in
   ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
+    printf "%s\n" '' >> "conftest.nl"
     "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5558,8 +6346,8 @@ else
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
  SED="$ac_cv_path_SED"
   rm -f conftest.sed
 
@@ -5576,11 +6364,154 @@ Xsed="$SED -e 1s/^X//"
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+printf %s "checking for grep that handles long lines and -e... " >&6; }
+if test ${ac_cv_path_GREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -z "$GREP"; then
+  ac_path_GREP_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in grep ggrep
+   do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_GREP" || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+  # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+  ac_count=0
+  printf %s 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    printf "%s\n" 'GREP' >> "conftest.nl"
+    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    if test $ac_count -gt ${ac_path_GREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_GREP="$ac_path_GREP"
+      ac_path_GREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+      $ac_path_GREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_GREP"; then
+    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
+else
+  ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+printf "%s\n" "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+   then ac_cv_path_EGREP="$GREP -E"
+   else
+     if test -z "$EGREP"; then
+  ac_path_EGREP_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in egrep
+   do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_EGREP" || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+  # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+  ac_count=0
+  printf %s 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    printf "%s\n" 'EGREP' >> "conftest.nl"
+    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_EGREP="$ac_path_EGREP"
+      ac_path_EGREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+      $ac_path_EGREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_EGREP"; then
+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
 else
+  ac_cv_path_EGREP=$EGREP
+fi
+
+   fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
+printf %s "checking for fgrep... " >&6; }
+if test ${ac_cv_path_FGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
    then ac_cv_path_FGREP="$GREP -F"
    else
@@ -5591,10 +6522,15 @@ else
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in fgrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in fgrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_FGREP" || continue
 # Check for GNU ac_path_FGREP and select it if it is found.
   # Check for GNU $ac_path_FGREP
@@ -5603,13 +6539,13 @@ case `"$ac_path_FGREP" --version 2>&1` in
   ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'FGREP' >> "conftest.nl"
+    printf "%s\n" 'FGREP' >> "conftest.nl"
     "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5638,8 +6574,8 @@ fi
 
    fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
+printf "%s\n" "$ac_cv_path_FGREP" >&6; }
  FGREP="$ac_cv_path_FGREP"
 
 
@@ -5664,17 +6600,18 @@ test -z "$GREP" && GREP=grep
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
   withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
-else
+else $as_nop
   with_gnu_ld=no
 fi
 
 ac_prog=ld
 if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return, which upsets mingw
@@ -5703,15 +6640,16 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
     ;;
   esac
 elif test yes = "$with_gnu_ld"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
 fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${lt_cv_path_LD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$LD"; then
   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
@@ -5740,18 +6678,19 @@ fi
 
 LD=$lt_cv_path_LD
 if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${lt_cv_prog_gnu_ld+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
@@ -5762,8 +6701,8 @@ case `$LD -v 2>&1 </dev/null` in
   ;;
 esac
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
+printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
@@ -5774,11 +6713,12 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
+printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test ${lt_cv_path_NM+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NM"; then
   # Let the user override the test.
   lt_cv_path_NM=$NM
@@ -5803,13 +6743,13 @@ else
        mingw*) lt_bad_file=conftest.nm/nofile ;;
        *) lt_bad_file=/dev/null ;;
        esac
-       case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+       case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
        *$lt_bad_file* | *'Invalid file or object type'*)
          lt_cv_path_NM="$tmp_nm -B"
          break 2
          ;;
        *)
-         case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+         case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
          */dev/null*)
            lt_cv_path_NM="$tmp_nm -p"
            break 2
@@ -5828,8 +6768,8 @@ else
   : ${lt_cv_path_NM=no}
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
+printf "%s\n" "$lt_cv_path_NM" >&6; }
 if test no != "$lt_cv_path_NM"; then
   NM=$lt_cv_path_NM
 else
@@ -5842,11 +6782,12 @@ else
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$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_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DUMPBIN"; then
   ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
 else
@@ -5854,11 +6795,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5869,11 +6814,11 @@ fi
 fi
 DUMPBIN=$ac_cv_prog_DUMPBIN
 if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
+printf "%s\n" "$DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5886,11 +6831,12 @@ if test -z "$DUMPBIN"; then
 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_ac_ct_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DUMPBIN"; then
   ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
 else
@@ -5898,11 +6844,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5913,11 +6863,11 @@ fi
 fi
 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
 if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
+printf "%s\n" "$ac_ct_DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5929,15 +6879,15 @@ done
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DUMPBIN=$ac_ct_DUMPBIN
   fi
 fi
 
-    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
     *COFF*)
       DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
@@ -5958,11 +6908,12 @@ test -z "$NM" && NM=nm
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
+printf %s "checking the name lister ($NM) interface... " >&6; }
+if test ${lt_cv_nm_interface+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
   (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
@@ -5978,15 +6929,16 @@ else
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
+printf "%s\n" "$lt_cv_nm_interface" >&6; }
 
 # find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
+printf %s "checking the maximum length of command line arguments... " >&6; }
+if test ${lt_cv_sys_max_cmd_len+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
     i=0
   teststring=ABCD
 
@@ -6028,7 +6980,7 @@ else
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
+  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -6071,7 +7023,7 @@ else
   sysv5* | sco5v6* | sysv4.2uw2*)
     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
     if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[         ]//'`
+      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[        ]//'`
     else
       lt_cv_sys_max_cmd_len=32768
     fi
@@ -6113,11 +7065,11 @@ else
 fi
 
 if test -n "$lt_cv_sys_max_cmd_len"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
+printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5
+printf "%s\n" "none" >&6; }
 fi
 max_cmd_len=$lt_cv_sys_max_cmd_len
 
@@ -6161,11 +7113,12 @@ esac
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+printf %s "checking how to convert $build file names to $host format... " >&6; }
+if test ${lt_cv_to_host_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $host in
   *-*-mingw* )
     case $build in
@@ -6201,18 +7154,19 @@ esac
 fi
 
 to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+printf %s "checking how to convert $build file names to toolchain format... " >&6; }
+if test ${lt_cv_to_tool_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   #assume ordinary cross tools, or native build.
 lt_cv_to_tool_file_cmd=func_convert_file_noop
 case $host in
@@ -6228,22 +7182,23 @@ esac
 fi
 
 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
+printf %s "checking for $LD option to reload object files... " >&6; }
+if test ${lt_cv_ld_reload_flag+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_reload_flag='-r'
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
+printf "%s\n" "$lt_cv_ld_reload_flag" >&6; }
 reload_flag=$lt_cv_ld_reload_flag
 case $reload_flag in
 "" | " "*) ;;
@@ -6274,13 +7229,122 @@ esac
 
 
 if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args.
+set dummy ${ac_tool_prefix}file; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_FILECMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$FILECMD"; then
+  ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    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_FILECMD="${ac_tool_prefix}file"
+    printf "%s\n" "$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
+FILECMD=$ac_cv_prog_FILECMD
+if test -n "$FILECMD"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5
+printf "%s\n" "$FILECMD" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_FILECMD"; then
+  ac_ct_FILECMD=$FILECMD
+  # Extract the first word of "file", so it can be a program name with args.
+set dummy file; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_FILECMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_FILECMD"; then
+  ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    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_FILECMD="file"
+    printf "%s\n" "$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_FILECMD=$ac_cv_prog_ac_ct_FILECMD
+if test -n "$ac_ct_FILECMD"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5
+printf "%s\n" "$ac_ct_FILECMD" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_FILECMD" = x; then
+    FILECMD=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    FILECMD=$ac_ct_FILECMD
+  fi
+else
+  FILECMD="$ac_cv_prog_FILECMD"
+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 $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OBJDUMP"; then
   ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
@@ -6288,11 +7352,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6303,11 +7371,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6316,11 +7384,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OBJDUMP"; then
   ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
@@ -6328,11 +7397,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6343,11 +7416,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OBJDUMP" = x; then
@@ -6355,8 +7428,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OBJDUMP=$ac_ct_OBJDUMP
@@ -6372,11 +7445,12 @@ test -z "$OBJDUMP" && OBJDUMP=objdump
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
+printf %s "checking how to recognize dependent libraries... " >&6; }
+if test ${lt_cv_deplibs_check_method+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_file_magic_cmd='$MAGIC_CMD'
 lt_cv_file_magic_test_file=
 lt_cv_deplibs_check_method='unknown'
@@ -6402,7 +7476,7 @@ beos*)
 
 bsdi[45]*)
   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  lt_cv_file_magic_cmd='$FILECMD -L'
   lt_cv_file_magic_test_file=/shlib/libc.so
   ;;
 
@@ -6436,14 +7510,14 @@ darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     case $host_cpu in
     i*86 )
       # Not sure whether the presence of OpenBSD here was a mistake.
       # Let's accept both of them until this is cleared up.
       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
+      lt_cv_file_magic_cmd=$FILECMD
       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
       ;;
     esac
@@ -6457,7 +7531,7 @@ haiku*)
   ;;
 
 hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   case $host_cpu in
   ia64*)
     lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
@@ -6504,7 +7578,7 @@ netbsd*)
 
 newos6*)
   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   lt_cv_file_magic_test_file=/usr/lib/libnls.so
   ;;
 
@@ -6572,8 +7646,8 @@ os2*)
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
+printf "%s\n" "$lt_cv_deplibs_check_method" >&6; }
 
 file_magic_glob=
 want_nocaseglob=no
@@ -6617,11 +7691,12 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
 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_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DLLTOOL"; then
   ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
@@ -6629,11 +7704,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6644,11 +7723,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6657,11 +7736,12 @@ 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_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DLLTOOL"; then
   ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
@@ -6669,11 +7749,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6684,11 +7768,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DLLTOOL" = x; then
@@ -6696,8 +7780,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DLLTOOL=$ac_ct_DLLTOOL
@@ -6714,11 +7798,12 @@ test -z "$DLLTOOL" && DLLTOOL=dlltool
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+printf %s "checking how to associate runtime and link libraries... " >&6; }
+if test ${lt_cv_sharedlib_from_linklib_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_sharedlib_from_linklib_cmd='unknown'
 
 case $host_os in
@@ -6741,8 +7826,8 @@ cygwin* | mingw* | pw32* | cegcc*)
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
+printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
 
@@ -6757,11 +7842,12 @@ if test -n "$ac_tool_prefix"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$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_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AR"; then
   ac_cv_prog_AR="$AR" # Let the user override the test.
 else
@@ -6769,11 +7855,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6784,11 +7874,11 @@ fi
 fi
 AR=$ac_cv_prog_AR
 if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6801,11 +7891,12 @@ if test -z "$AR"; then
 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_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_AR"; then
   ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
 else
@@ -6813,11 +7904,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AR="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6828,11 +7923,11 @@ fi
 fi
 ac_ct_AR=$ac_cv_prog_ac_ct_AR
 if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6844,8 +7939,8 @@ done
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AR=$ac_ct_AR
@@ -6853,42 +7948,60 @@ esac
 fi
 
 : ${AR=ar}
-: ${AR_FLAGS=cru}
 
 
 
 
 
 
+# Use ARFLAGS variable as AR's operation code to sync the variable naming with
+# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
+# higher priority because thats what people were doing historically (setting
+# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS
+# variable obsoleted/removed.
 
+test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
+lt_ar_flags=$AR_FLAGS
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+
+# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override
+# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
+
+
+
+
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+printf %s "checking for archiver @FILE support... " >&6; }
+if test ${lt_cv_ar_at_file+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ar_at_file=no
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   echo conftest.$ac_objext > conftest.lst
       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
       { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
       if test 0 -eq "$ac_status"; then
        # Ensure the archiver fails upon bogus file names.
@@ -6896,7 +8009,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
        { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
        if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
@@ -6905,11 +8018,11 @@ if ac_fn_c_try_compile "$LINENO"; then :
       rm -f conftest.* libconftest.a
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+printf "%s\n" "$lt_cv_ar_at_file" >&6; }
 
 if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
@@ -6926,11 +8039,12 @@ fi
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; 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_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -6938,11 +8052,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6953,11 +8071,11 @@ fi
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6966,11 +8084,12 @@ if test -z "$ac_cv_prog_STRIP"; then
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; 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_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -6978,11 +8097,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6993,11 +8116,11 @@ fi
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -7005,8 +8128,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -7025,11 +8148,12 @@ test -z "$STRIP" && STRIP=:
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ranlib; 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_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$RANLIB"; then
   ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
 else
@@ -7037,11 +8161,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7052,11 +8180,11 @@ fi
 fi
 RANLIB=$ac_cv_prog_RANLIB
 if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+printf "%s\n" "$RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7065,11 +8193,12 @@ if test -z "$ac_cv_prog_RANLIB"; then
   ac_ct_RANLIB=$RANLIB
   # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; 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_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_RANLIB"; then
   ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
 else
@@ -7077,11 +8206,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7092,11 +8225,11 @@ fi
 fi
 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
 if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+printf "%s\n" "$ac_ct_RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_RANLIB" = x; then
@@ -7104,8 +8237,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     RANLIB=$ac_ct_RANLIB
@@ -7194,11 +8327,12 @@ compiler=$CC
 
 
 # Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
+printf %s "checking command to parse $NM output from $compiler object... " >&6; }
+if test ${lt_cv_sys_global_symbol_pipe+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
 # These are sane defaults that work on at least a few old systems.
 # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
@@ -7253,7 +8387,7 @@ esac
 
 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
   # Gets list of data symbols to import.
-  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
   # Adjust the below global symbol transforms to fixup imported variables.
   lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
   lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
@@ -7271,20 +8405,20 @@ fi
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
 $lt_cdecl_hook\
 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
 $lt_c_name_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
 
 # Transform an extracted symbol line into symbol name with lib prefix and
 # symbol address.
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
 $lt_c_name_lib_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
@@ -7308,7 +8442,7 @@ for ac_symprfx in "" "_"; do
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
     # Fake it for dumpbin and say T for any non-static function,
     # D for any global variable and I for any imported variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
+    # Also find C++ and __fastcall symbols from MSVC++ or ICC,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK '"\
 "     {last_section=section; section=\$ 3};"\
@@ -7326,9 +8460,9 @@ for ac_symprfx in "" "_"; do
 "     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx"
   else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[     ]\($symcode$symcode*\)[         ][      ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[    ]\($symcode$symcode*\)[         ][      ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
   fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
+  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
 
   # Check to see that the pipe works correctly.
   pipe_works=no
@@ -7350,14 +8484,14 @@ _LT_EOF
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     # Now try to grab the symbols.
     nlist=conftest.nm
     if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
   (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
@@ -7426,7 +8560,7 @@ _LT_EOF
          if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s conftest$ac_exeext; then
            pipe_works=yes
          fi
@@ -7461,11 +8595,11 @@ if test -z "$lt_cv_sys_global_symbol_pipe"; then
   lt_cv_sys_global_symbol_to_cdecl=
 fi
 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5
+printf "%s\n" "ok" >&6; }
 fi
 
 # Response file support.
@@ -7511,13 +8645,14 @@ fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+printf %s "checking for sysroot... " >&6; }
 
 # Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
+if test ${with_sysroot+y}
+then :
   withval=$with_sysroot;
-else
+else $as_nop
   with_sysroot=no
 fi
 
@@ -7530,29 +8665,30 @@ case $with_sysroot in #(
    fi
    ;; #(
  /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
+   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
    ;; #(
  no|'')
    ;; #(
  *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
-$as_echo "$with_sysroot" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+printf "%s\n" "$with_sysroot" >&6; }
    as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
    ;;
 esac
 
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+printf "%s\n" "${lt_sysroot:-no}" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
-$as_echo_n "checking for a working dd... " >&6; }
-if ${ac_cv_path_lt_DD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+printf %s "checking for a working dd... " >&6; }
+if test ${ac_cv_path_lt_DD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 : ${lt_DD:=$DD}
@@ -7563,10 +8699,15 @@ if test -z "$lt_DD"; then
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in dd; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in dd
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_lt_DD" || continue
 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
   cmp -s conftest.i conftest.out \
@@ -7586,15 +8727,16 @@ fi
 
 rm -f conftest.i conftest2.i conftest.out
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
-$as_echo "$ac_cv_path_lt_DD" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+printf "%s\n" "$ac_cv_path_lt_DD" >&6; }
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
-$as_echo_n "checking how to truncate binary pipes... " >&6; }
-if ${lt_cv_truncate_bin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+printf %s "checking how to truncate binary pipes... " >&6; }
+if test ${lt_cv_truncate_bin+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 lt_cv_truncate_bin=
@@ -7605,8 +8747,8 @@ fi
 rm -f conftest.i conftest2.i conftest.out
 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
-$as_echo "$lt_cv_truncate_bin" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+printf "%s\n" "$lt_cv_truncate_bin" >&6; }
 
 
 
@@ -7629,7 +8771,8 @@ func_cc_basename ()
 }
 
 # Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
+if test ${enable_libtool_lock+y}
+then :
   enableval=$enable_libtool_lock;
 fi
 
@@ -7645,9 +8788,9 @@ ia64-*-hpux*)
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *ELF-32*)
        HPUX_IA64_MODE=32
        ;;
@@ -7665,10 +8808,10 @@ ia64-*-hpux*)
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     if test yes = "$lt_cv_prog_gnu_ld"; then
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -melf32bsmip"
          ;;
@@ -7680,7 +8823,7 @@ ia64-*-hpux*)
        ;;
       esac
     else
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -32"
          ;;
@@ -7703,10 +8846,10 @@ mips64*-*linux*)
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     emul=elf
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *32-bit*)
        emul="${emul}32"
        ;;
@@ -7714,7 +8857,7 @@ mips64*-*linux*)
        emul="${emul}64"
        ;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *MSB*)
        emul="${emul}btsmip"
        ;;
@@ -7722,7 +8865,7 @@ mips64*-*linux*)
        emul="${emul}ltsmip"
        ;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *N32*)
        emul="${emul}n32"
        ;;
@@ -7744,16 +8887,16 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
       *32-bit*)
        case $host in
          x86_64-*kfreebsd*-gnu)
            LD="${LD-ld} -m elf_i386_fbsd"
            ;;
          x86_64-*linux*)
-           case `/usr/bin/file conftest.o` in
+           case `$FILECMD conftest.o` in
              *x86-64*)
                LD="${LD-ld} -m elf32_x86_64"
                ;;
@@ -7807,11 +8950,12 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
   SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
+printf %s "checking whether the C compiler needs -belf... " >&6; }
+if test ${lt_cv_cc_needs_belf+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -7822,19 +8966,20 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_cc_needs_belf=yes
-else
+else $as_nop
   lt_cv_cc_needs_belf=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
      ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -7843,8 +8988,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
+printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }
   if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
     CFLAGS=$SAVE_CFLAGS
@@ -7857,9 +9002,9 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*)
@@ -7894,11 +9039,12 @@ need_locks=$enable_libtool_lock
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}mt; 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_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$MANIFEST_TOOL"; then
   ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
 else
@@ -7906,11 +9052,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7921,11 +9071,11 @@ fi
 fi
 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
 if test -n "$MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
+printf "%s\n" "$MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7934,11 +9084,12 @@ if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
   ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
   # Extract the first word of "mt", so it can be a program name with args.
 set dummy mt; 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_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_MANIFEST_TOOL"; then
   ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
 else
@@ -7946,11 +9097,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7961,11 +9116,11 @@ fi
 fi
 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
 if test -n "$ac_ct_MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
+printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_MANIFEST_TOOL" = x; then
@@ -7973,8 +9128,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
@@ -7984,11 +9139,12 @@ else
 fi
 
 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
+if test ${lt_cv_path_mainfest_tool+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_path_mainfest_tool=no
   echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
   $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
@@ -7998,8 +9154,8 @@ else
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
+printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; }
 if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
@@ -8014,11 +9170,12 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dsymutil; 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_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DSYMUTIL"; then
   ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
 else
@@ -8026,11 +9183,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8041,11 +9202,11 @@ fi
 fi
 DSYMUTIL=$ac_cv_prog_DSYMUTIL
 if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
+printf "%s\n" "$DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8054,11 +9215,12 @@ if test -z "$ac_cv_prog_DSYMUTIL"; then
   ac_ct_DSYMUTIL=$DSYMUTIL
   # Extract the first word of "dsymutil", so it can be a program name with args.
 set dummy dsymutil; 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_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DSYMUTIL"; then
   ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
 else
@@ -8066,11 +9228,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8081,11 +9247,11 @@ fi
 fi
 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
 if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
+printf "%s\n" "$ac_ct_DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DSYMUTIL" = x; then
@@ -8093,8 +9259,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DSYMUTIL=$ac_ct_DSYMUTIL
@@ -8106,11 +9272,12 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
 set dummy ${ac_tool_prefix}nmedit; 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_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NMEDIT"; then
   ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
 else
@@ -8118,11 +9285,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8133,11 +9304,11 @@ fi
 fi
 NMEDIT=$ac_cv_prog_NMEDIT
 if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
+printf "%s\n" "$NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8146,11 +9317,12 @@ if test -z "$ac_cv_prog_NMEDIT"; then
   ac_ct_NMEDIT=$NMEDIT
   # Extract the first word of "nmedit", so it can be a program name with args.
 set dummy nmedit; 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_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_NMEDIT"; then
   ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
 else
@@ -8158,11 +9330,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8173,11 +9349,11 @@ fi
 fi
 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
 if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
+printf "%s\n" "$ac_ct_NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_NMEDIT" = x; then
@@ -8185,8 +9361,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     NMEDIT=$ac_ct_NMEDIT
@@ -8198,11 +9374,12 @@ fi
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
 set dummy ${ac_tool_prefix}lipo; 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_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$LIPO"; then
   ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
 else
@@ -8210,11 +9387,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8225,11 +9406,11 @@ fi
 fi
 LIPO=$ac_cv_prog_LIPO
 if test -n "$LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
+printf "%s\n" "$LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8238,11 +9419,12 @@ if test -z "$ac_cv_prog_LIPO"; then
   ac_ct_LIPO=$LIPO
   # Extract the first word of "lipo", so it can be a program name with args.
 set dummy lipo; 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_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_LIPO"; then
   ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
 else
@@ -8250,11 +9432,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8265,11 +9451,11 @@ fi
 fi
 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
 if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
+printf "%s\n" "$ac_ct_LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_LIPO" = x; then
@@ -8277,8 +9463,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     LIPO=$ac_ct_LIPO
@@ -8290,11 +9476,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL"; then
   ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
 else
@@ -8302,11 +9489,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8317,11 +9508,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
+printf "%s\n" "$OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8330,11 +9521,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL"; then
   ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
 else
@@ -8342,11 +9534,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8357,11 +9553,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
+printf "%s\n" "$ac_ct_OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL" = x; then
@@ -8369,8 +9565,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL=$ac_ct_OTOOL
@@ -8382,11 +9578,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL64"; then
   ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
 else
@@ -8394,11 +9591,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8409,11 +9610,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
+printf "%s\n" "$OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8422,11 +9623,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL64"; then
   ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
 else
@@ -8434,11 +9636,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8449,11 +9655,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
+printf "%s\n" "$ac_ct_OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL64" = x; then
@@ -8461,8 +9667,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL64=$ac_ct_OTOOL64
@@ -8497,11 +9703,12 @@ 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
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
+printf %s "checking for -single_module linker flag... " >&6; }
+if test ${lt_cv_apple_cc_single_mod+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   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
@@ -8530,14 +9737,15 @@ else
        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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
+printf "%s\n" "$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
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
+printf %s "checking for -exported_symbols_list linker flag... " >&6; }
+if test ${lt_cv_ld_exported_symbols_list+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
       save_LDFLAGS=$LDFLAGS
       echo "_main" > conftest.sym
@@ -8546,39 +9754,41 @@ else
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_ld_exported_symbols_list=yes
-else
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
+printf "%s\n" "$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
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
+printf %s "checking for -force_load linker flag... " >&6; }
+if test ${lt_cv_ld_force_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   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 "$AR $AR_FLAGS libconftest.a conftest.o" >&5
+      $AR $AR_FLAGS libconftest.a conftest.o 2>&5
       echo "$RANLIB libconftest.a" >&5
       $RANLIB libconftest.a 2>&5
       cat > conftest.c << _LT_EOF
@@ -8598,24 +9808,19 @@ _LT_EOF
         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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
+printf "%s\n" "$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' ;;
+    darwin*)
+      case $MACOSX_DEPLOYMENT_TARGET,$host in
+        10.[012],*|,*powerpc*-darwin[5-8]*)
+          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+        *)
+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
@@ -8670,26 +9875,22 @@ func_munge_path_list ()
     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
+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
+if test "x$ac_cv_header_dlfcn_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h
 
 fi
 
-done
-
 
 
 
 
 # Set options
 # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
+if test ${enable_static+y}
+then :
   enableval=$enable_static; p=${PACKAGE-default}
     case $enableval in
     yes) enable_static=yes ;;
@@ -8707,7 +9908,7 @@ if test "${enable_static+set}" = set; then :
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_static=no
 fi
 
@@ -8724,11 +9925,12 @@ case $host in
   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_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AS+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AS"; then
   ac_cv_prog_AS="$AS" # Let the user override the test.
 else
@@ -8736,11 +9938,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AS="${ac_tool_prefix}as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8751,11 +9957,11 @@ 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
+printf "%s\n" "$AS" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8764,11 +9970,12 @@ 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_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AS+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_AS"; then
   ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
 else
@@ -8776,11 +9983,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AS="as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
+printf "%s\n" "$ac_ct_AS" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_AS" = x; then
@@ -8803,8 +10014,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AS=$ac_ct_AS
   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_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DLLTOOL"; then
   ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
@@ -8828,11 +10040,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8856,11 +10072,12 @@ 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_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DLLTOOL"; then
   ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
@@ -8868,11 +10085,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DLLTOOL" = x; then
@@ -8895,8 +10116,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DLLTOOL=$ac_ct_DLLTOOL
   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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OBJDUMP"; then
   ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
@@ -8920,11 +10142,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8948,11 +10174,12 @@ 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OBJDUMP"; then
   ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
@@ -8960,11 +10187,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  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
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OBJDUMP" = x; then
@@ -8987,8 +10218,8 @@ fi
   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;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OBJDUMP=$ac_ct_OBJDUMP
@@ -9025,7 +10256,8 @@ test -z "$OBJDUMP" && OBJDUMP=objdump
 
 
             # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
+if test ${enable_shared+y}
+then :
   enableval=$enable_shared; p=${PACKAGE-default}
     case $enableval in
     yes) enable_shared=yes ;;
@@ -9043,7 +10275,7 @@ if test "${enable_shared+set}" = set; then :
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_shared=yes
 fi
 
@@ -9058,7 +10290,8 @@ fi
 
 
 # Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
+if test ${with_pic+y}
+then :
   withval=$with_pic; lt_p=${PACKAGE-default}
     case $withval in
     yes|no) pic_mode=$withval ;;
@@ -9075,7 +10308,7 @@ if test "${with_pic+set}" = set; then :
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   pic_mode=default
 fi
 
@@ -9087,7 +10320,8 @@ fi
 
 
   # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
+if test ${enable_fast_install+y}
+then :
   enableval=$enable_fast_install; p=${PACKAGE-default}
     case $enableval in
     yes) enable_fast_install=yes ;;
@@ -9105,7 +10339,7 @@ if test "${enable_fast_install+set}" = set; then :
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_fast_install=yes
 fi
 
   shared_archive_member_spec=
 case $host,$enable_shared in
 power*-*-aix[5-9]*,yes)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
-$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+printf %s "checking which variant of shared library versioning to provide... " >&6; }
 
 # Check whether --with-aix-soname was given.
-if test "${with_aix_soname+set}" = set; then :
+if test ${with_aix_soname+y}
+then :
   withval=$with_aix_soname; case $withval in
     aix|svr4|both)
       ;;
@@ -9132,18 +10367,19 @@ if test "${with_aix_soname+set}" = set; then :
       ;;
     esac
     lt_cv_with_aix_soname=$with_aix_soname
-else
-  if ${lt_cv_with_aix_soname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  if test ${lt_cv_with_aix_soname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_with_aix_soname=aix
 fi
 
     with_aix_soname=$lt_cv_with_aix_soname
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
-$as_echo "$with_aix_soname" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+printf "%s\n" "$with_aix_soname" >&6; }
   if test aix != "$with_aix_soname"; then
     # For the AIX way of multilib, we name the shared archive member
     # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
@@ -9225,11 +10461,12 @@ if test -n "${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
+printf %s "checking for objdir... " >&6; }
+if test ${lt_cv_objdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   rm -f .libs 2>/dev/null
 mkdir .libs 2>/dev/null
 if test -d .libs; then
@@ -9240,17 +10477,15 @@ else
 fi
 rmdir .libs 2>/dev/null
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
+printf "%s\n" "$lt_cv_objdir" >&6; }
 objdir=$lt_cv_objdir
 
 
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
+printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h
 
 
 
@@ -9271,8 +10506,8 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a '.a' archive for static linking (except MSVC,
-# which needs '.lib').
+# All known linkers require a '.a' archive for static linking (except MSVC and
+# ICC, which need '.lib').
 libext=a
 
 with_gnu_ld=$lt_cv_prog_gnu_ld
@@ -9296,11 +10531,12 @@ test -z "$MAGIC_CMD" && MAGIC_CMD=file
 case $deplibs_check_method in
 file_magic*)
   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
+printf %s "checking for ${ac_tool_prefix}file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 
 if test -z "$lt_cv_path_MAGIC_CMD"; then
   if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5
+printf %s "checking for file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9504,11 +10741,12 @@ if test yes = "$GCC"; then
     lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
   esac
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test ${lt_cv_prog_compiler_rtti_exceptions+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_rtti_exceptions=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -9539,8 +10777,8 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
     lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
@@ -9781,7 +11019,7 @@ lt_prog_compiler_static=
        lt_prog_compiler_static='-qstaticlink'
        ;;
       *)
-       case `$CC -V 2>&1 | sed 5q` in
+       case `$CC -V 2>&1 | $SED 5q` in
        *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
          # Sun Fortran 8.3 passes all unrecognized flags to the linker
          lt_prog_compiler_pic='-KPIC'
@@ -9897,26 +11135,28 @@ case $host_os in
     ;;
 esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+printf %s "checking for $compiler option to produce PIC... " >&6; }
+if test ${lt_cv_prog_compiler_pic+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }
 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
 
 #
 # Check to make sure the PIC flag actually works.
 #
 if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test ${lt_cv_prog_compiler_pic_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -9947,8 +11187,8 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_pic_works"; then
     case $lt_prog_compiler_pic in
 # Check to make sure the static flag actually works.
 #
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test ${lt_cv_prog_compiler_static_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_static_works=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
@@ -10004,8 +11245,8 @@ else
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_static_works"; then
     :
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -10066,19 +11308,20 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -10121,8 +11364,8 @@ else
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
@@ -10130,19 +11373,19 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 hard_links=nottested
 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
+printf %s "checking if we can lock with hard links... " >&6; }
   hard_links=yes
   $RM conftest*
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   touch conftest.a
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
+printf "%s\n" "$hard_links" >&6; }
   if test no = "$hard_links"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -10154,8 +11397,8 @@ fi
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
 
   runpath_var=
   allow_undefined_flag=
@@ -10199,15 +11442,15 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
 
   case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
+    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
+    # Microsoft Visual C++ or Intel C++ Compiler.
     if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
   interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
+    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
     with_gnu_ld=yes
     ;;
   openbsd* | bitrig*)
@@ -10259,7 +11502,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
       whole_archive_flag_spec=
     fi
     supports_anon_versioning=no
-    case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
+    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -10371,6 +11614,7 @@ _LT_EOF
        emximp -o $lib $output_objdir/$libname.def'
       old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       enable_shared_with_static_runtimes=yes
+      file_list_spec='@'
       ;;
 
     interix[3-9]*)
@@ -10385,7 +11629,7 @@ _LT_EOF
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
@@ -10428,7 +11672,7 @@ _LT_EOF
          compiler_needs_object=yes
          ;;
        esac
-       case `$CC -V 2>&1 | sed 5q` in
+       case `$CC -V 2>&1 | $SED 5q` in
        *Sun\ C*)                       # Sun C 5.9
          whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          compiler_needs_object=yes
@@ -10440,7 +11684,7 @@ _LT_EOF
 
         if test yes = "$supports_anon_versioning"; then
           archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
             echo "local: *; };" >> $output_objdir/$libname.ver~
             $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
@@ -10456,7 +11700,7 @@ _LT_EOF
          archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
          if test yes = "$supports_anon_versioning"; then
            archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
               echo "local: *; };" >> $output_objdir/$libname.ver~
               $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
          fi
@@ -10588,7 +11832,7 @@ _LT_EOF
        if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
          export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
        else
-         export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+         export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
        fi
        aix_use_runtimelinking=no
 
@@ -10710,21 +11954,23 @@ _LT_EOF
         if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -10739,7 +11985,7 @@ if ac_fn_c_try_link "$LINENO"; then :
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
         if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -10792,7 +12040,7 @@ if ac_fn_c_try_link "$LINENO"; then :
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
 
     cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
+      # Microsoft Visual C++ or Intel C++ Compiler.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
       # no search path for DLLs.
       case $cc_basename in
-      cl*)
-       # Native MSVC
+      cl* | icl*)
+       # Native MSVC or ICC
        hardcode_libdir_flag_spec=' '
        allow_undefined_flag=unsupported
        always_export_symbols=yes
@@ -10901,7 +12149,7 @@ fi
           fi'
        ;;
       *)
-       # Assume MSVC wrapper
+       # Assume MSVC and ICC wrapper
        hardcode_libdir_flag_spec=' '
        allow_undefined_flag=unsupported
        # Tell ltmain to make .lib files, not .a files.
@@ -10942,8 +12190,8 @@ fi
     output_verbose_link_cmd=func_echo_all
     archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
     module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
-    archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
-    module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+    archive_expsym_cmds="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    module_expsym_cmds="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
 
   else
   ld_shlibs=no
@@ -10977,7 +12225,7 @@ fi
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
+    freebsd* | dragonfly* | midnightbsd*)
       archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
       hardcode_libdir_flag_spec='-R$libdir'
       hardcode_direct=yes
 
          # Older versions of the 11.00 compiler do not understand -b yet
          # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-         { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
+printf %s "checking if $CC understands -b... " >&6; }
+if test ${lt_cv_prog_compiler__b+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler__b=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS -b"
@@ -11071,8 +12320,8 @@ else
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
+printf "%s\n" "$lt_cv_prog_compiler__b" >&6; }
 
 if test yes = "$lt_cv_prog_compiler__b"; then
     archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
        # work, assume that -exports_file does not work either and
        # implicitly export all symbols.
        # This should be the same for all languages, so no per-tag cache variable.
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
+if test ${lt_cv_irix_exported_symbol+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   save_LDFLAGS=$LDFLAGS
           LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo (void) { return 0; }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_irix_exported_symbol=yes
-else
+else $as_nop
   lt_cv_irix_exported_symbol=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
            LDFLAGS=$save_LDFLAGS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
+printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
        if test yes = "$lt_cv_irix_exported_symbol"; then
           archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
@@ -11225,6 +12476,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
        emximp -o $lib $output_objdir/$libname.def'
       old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       enable_shared_with_static_runtimes=yes
+      file_list_spec='@'
       ;;
 
     osf3*)
@@ -11413,8 +12665,8 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
     fi
   fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
+printf "%s\n" "$ld_shlibs" >&6; }
 test no = "$ld_shlibs" && can_build_shared=no
 
 with_gnu_ld=$with_gnu_ld
@@ -11450,18 +12702,19 @@ x|xyes)
       # Test whether the compiler implicitly links with -lc since on some
       # systems, -lgcc has to come before -lc. If gcc already passes -lc
       # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
+printf %s "checking whether -lc should be explicitly linked in... " >&6; }
+if test ${lt_cv_archive_cmds_need_lc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   $RM conftest*
        echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
        if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } 2>conftest.err; then
          soname=conftest
          lib=conftest
@@ -11479,7 +12732,7 @@ else
          if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
   (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
          then
            lt_cv_archive_cmds_need_lc=no
@@ -11493,8 +12746,8 @@ else
        $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
+printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; }
       archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
       ;;
     esac
@@ -11653,8 +12906,8 @@ esac
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
+printf %s "checking dynamic linker characteristics... " >&6; }
 
 if test yes = "$GCC"; then
   case $host_os in
@@ -11916,7 +13169,7 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
 
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
       ;;
@@ -11926,14 +13179,14 @@ cygwin* | mingw* | pw32* | cegcc*)
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
     ;;
 
-  *,cl*)
-    # Native MSVC
+  *,cl* | *,icl*)
+    # Native MSVC or ICC
     libname_spec='$name'
     soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
     library_names_spec='$libname.dll.lib'
@@ -11952,7 +13205,7 @@ cygwin* | mingw* | pw32* | cegcc*)
       done
       IFS=$lt_save_ifs
       # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
       ;;
     cygwin*)
       # Convert to unix form, then to dos form, then back to unix form
@@ -11989,7 +13242,7 @@ cygwin* | mingw* | pw32* | cegcc*)
     ;;
 
   *)
-    # Assume MSVC wrapper
+    # Assume MSVC and ICC wrapper
     library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
@@ -12022,7 +13275,7 @@ dgux*)
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
   if test -x /usr/bin/objformat; then
@@ -12215,9 +13468,10 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   shlibpath_overrides_runpath=no
 
   # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_shlibpath_overrides_runpath+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_shlibpath_overrides_runpath=no
     save_LDFLAGS=$LDFLAGS
     save_libdir=$libdir
@@ -12227,19 +13481,21 @@ else
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
+if ac_fn_c_try_link "$LINENO"
+then :
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null
+then :
   lt_cv_shlibpath_overrides_runpath=yes
 fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     LDFLAGS=$save_LDFLAGS
     libdir=$save_libdir
@@ -12474,8 +13730,8 @@ uts4*)
   dynamic_linker=no
   ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
+printf "%s\n" "$dynamic_linker" >&6; }
 test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
@@ -12596,8 +13852,8 @@ configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
+printf %s "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
    test -n "$runpath_var" ||
@@ -12621,8 +13877,8 @@ else
   # directories.
   hardcode_action=unsupported
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
+printf "%s\n" "$hardcode_action" >&6; }
 
 if test relink = "$hardcode_action" ||
    test yes = "$inherit_rpath"; then
@@ -12666,11 +13922,12 @@ else
 
   darwin*)
     # if libdl is installed we need to link against it
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12679,32 +13936,31 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
+else $as_nop
 
     lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
 
   *)
     ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
+if test "x$ac_cv_func_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
+printf %s "checking for shl_load in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_shl_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12740,41 +13998,42 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char shl_load ();
 int
-main ()
+main (void)
 {
 return shl_load ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_shl_load=yes
-else
+else $as_nop
   ac_cv_lib_dld_shl_load=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
+printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
-else
+else $as_nop
   ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
+if test "x$ac_cv_func_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12783,37 +14042,37 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
+printf %s "checking for dlopen in -lsvld... " >&6; }
+if test ${ac_cv_lib_svld_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsvld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12822,37 +14081,37 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_svld_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_svld_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
+printf %s "checking for dld_link in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_dld_link+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12861,30 +14120,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dld_link ();
 int
-main ()
+main (void)
 {
 return dld_link ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_dld_link=yes
-else
+else $as_nop
   ac_cv_lib_dld_dld_link=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
+printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = xyes
+then :
   lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
 fi
 
     save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
+printf %s "checking whether a program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
          if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self=cross
 else
@@ -13006,7 +14265,7 @@ _LT_EOF
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -13024,16 +14283,17 @@ rm -fr conftest*
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
+printf "%s\n" "$lt_cv_dlopen_self" >&6; }
 
     if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
+printf %s "checking whether a statically linked program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self_static+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
          if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self_static=cross
 else
@@ -13112,7 +14372,7 @@ _LT_EOF
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -13130,8 +14390,8 @@ rm -fr conftest*
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
+printf "%s\n" "$lt_cv_dlopen_self_static" >&6; }
     fi
 
     CPPFLAGS=$save_CPPFLAGS
 
 striplib=
 old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP"; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
+printf %s "checking whether stripping libraries is possible... " >&6; }
+if test -z "$STRIP"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+else
+  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+    old_striplib="$STRIP --strip-debug"
+    striplib="$STRIP --strip-unneeded"
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+  else
+    case $host_os in
+    darwin*)
+      # FIXME - insert some real tests, host_os isn't really good enough
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
-      { $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; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-  esac
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+      ;;
+    freebsd*)
+      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
+        old_striplib="$STRIP --strip-debug"
+        striplib="$STRIP --strip-unneeded"
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+      else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      fi
+      ;;
+    *)
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      ;;
+    esac
+  fi
 fi
 
 
 
 
   # Report what library types will actually be built
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
+printf %s "checking if libtool supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
+printf "%s\n" "$can_build_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
+printf %s "checking whether to build shared libraries... " >&6; }
   test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
@@ -13239,15 +14510,15 @@ $as_echo_n "checking whether to build shared libraries... " >&6; }
     fi
     ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
+printf "%s\n" "$enable_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
+printf %s "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
   test yes = "$enable_shared" || enable_static=yes
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
+printf "%s\n" "$enable_static" >&6; }
 
 
 
@@ -13300,12 +14571,16 @@ LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
 PKGCONFIG_REQUIRES=
 PKGCONFIG_REQUIRES_PRIVATELY=
 
-case "$host" in
-  *-*-mingw*)
-    os_win32=yes
-    ;;
-  *)
-    os_win32=no
+
+os_win32=no
+os_darwin=no
+case "${host_os}" in
+       cygwin*|mingw*)
+               os_win32=yes
+               ;;
+       darwin*)
+               os_darwin=yes
+               ;;
 esac
  if test "$os_win32" = "yes"; then
   OS_WIN32_TRUE=
@@ -13315,28 +14590,35 @@ else
   OS_WIN32_FALSE=
 fi
 
+ if test "$os_darwin" = "yes"; then
+  OS_DARWIN_TRUE=
+  OS_DARWIN_FALSE='#'
+else
+  OS_DARWIN_TRUE='#'
+  OS_DARWIN_FALSE=
+fi
+
 
 GETTEXT_PACKAGE=$PACKAGE
 
 
-cat >>confdefs.h <<_ACEOF
-#define GETTEXT_PACKAGE "$GETTEXT_PACKAGE"
-_ACEOF
+printf "%s\n" "#define GETTEXT_PACKAGE \"$GETTEXT_PACKAGE\"" >>confdefs.h
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
+printf %s "checking whether NLS is requested... " >&6; }
     # Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
+if test ${enable_nls+y}
+then :
   enableval=$enable_nls; USE_NLS=$enableval
-else
+else $as_nop
   USE_NLS=yes
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+printf "%s\n" "$USE_NLS" >&6; }
 
 
 
@@ -13375,11 +14657,12 @@ rm -f conf$$.file
 
 # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; 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_MSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_MSGFMT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case "$MSGFMT" in
   [\\/]* | ?:[\\/]*)
     ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
@@ -13407,20 +14690,21 @@ esac
 fi
 MSGFMT="$ac_cv_path_MSGFMT"
 if test "$MSGFMT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
-$as_echo "$MSGFMT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
+printf "%s\n" "$MSGFMT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; 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_GMSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_GMSGFMT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $GMSGFMT in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
@@ -13430,11 +14714,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     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_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_GMSGFMT="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -13447,11 +14735,11 @@ esac
 fi
 GMSGFMT=$ac_cv_path_GMSGFMT
 if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
-$as_echo "$GMSGFMT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
+printf "%s\n" "$GMSGFMT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -13497,11 +14785,12 @@ rm -f conf$$.file
 
 # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; 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_XGETTEXT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_XGETTEXT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case "$XGETTEXT" in
   [\\/]* | ?:[\\/]*)
     ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
@@ -13529,11 +14818,11 @@ esac
 fi
 XGETTEXT="$ac_cv_path_XGETTEXT"
 if test "$XGETTEXT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
-$as_echo "$XGETTEXT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
+printf "%s\n" "$XGETTEXT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
     rm -f messages.po
@@ -13574,11 +14863,12 @@ rm -f conf$$.file
 
 # Extract the first word of "msgmerge", so it can be a program name with args.
 set dummy msgmerge; 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_MSGMERGE+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_MSGMERGE+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case "$MSGMERGE" in
   [\\/]* | ?:[\\/]*)
     ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
@@ -13605,11 +14895,11 @@ esac
 fi
 MSGMERGE="$ac_cv_path_MSGMERGE"
 if test "$MSGMERGE" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
-$as_echo "$MSGMERGE" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
+printf "%s\n" "$MSGMERGE" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
   withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
+else $as_nop
   with_gnu_ld=no
 fi
 
@@ -13663,8 +14954,8 @@ fi
 ac_prog=ld
 if test "$GCC" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return which upsets mingw
@@ -13693,15 +14984,16 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
     ;;
   esac
 elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
 fi
-if ${acl_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${acl_cv_path_LD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$LD"; then
   acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
 
 LD="$acl_cv_path_LD"
 if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${acl_cv_prog_gnu_ld+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
@@ -13752,18 +15045,20 @@ case `$LD -v 2>&1 </dev/null` in
   ;;
 esac
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
+printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$acl_cv_prog_gnu_ld
 
 
 
 
-                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+                                                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
+printf %s "checking for shared library run path origin... " >&6; }
+if test ${acl_cv_rpath+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
     ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
@@ -13772,8 +15067,8 @@ else
     acl_cv_rpath=done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$acl_cv_rpath" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
+printf "%s\n" "$acl_cv_rpath" >&6; }
   wl="$acl_cv_wl"
   acl_libext="$acl_cv_libext"
   acl_shlibext="$acl_cv_shlibext"
@@ -13784,24 +15079,159 @@ $as_echo "$acl_cv_rpath" >&6; }
   acl_hardcode_direct="$acl_cv_hardcode_direct"
   acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
     # Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
+if test ${enable_rpath+y}
+then :
   enableval=$enable_rpath; :
-else
+else $as_nop
   enable_rpath=yes
 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+printf %s "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+  if test ${ac_cv_prog_CPP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+      # Double quotes because $CC needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <limits.h>
+                    Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+
+else $as_nop
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+  # Broken: success on invalid input.
+continue
+else $as_nop
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok
+then :
+  break
+fi
+
+    done
+    ac_cv_prog_CPP=$CPP
+
+fi
+  CPP=$ac_cv_prog_CPP
+else
+  ac_cv_prog_CPP=$CPP
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+printf "%s\n" "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <limits.h>
+                    Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+
+else $as_nop
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+  # Broken: success on invalid input.
+continue
+else $as_nop
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok
+then :
+
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
+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
+
+
 
 
   acl_libdirstem=lib
   acl_libdirstem2=
   case "$host_os" in
     solaris*)
-                                    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
-$as_echo_n "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+                                    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
+printf %s "checking for 64-bit host... " >&6; }
+if test ${gl_cv_solaris_64bit+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -13811,17 +15241,18 @@ sixtyfour bits
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sixtyfour bits" >/dev/null 2>&1; then :
+  $EGREP "sixtyfour bits" >/dev/null 2>&1
+then :
   gl_cv_solaris_64bit=yes
-else
+else $as_nop
   gl_cv_solaris_64bit=no
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
+printf "%s\n" "$gl_cv_solaris_64bit" >&6; }
       if test $gl_cv_solaris_64bit = yes; then
         acl_libdirstem=lib/64
         case "$host_cpu" in
@@ -13880,7 +15311,8 @@ $as_echo "$gl_cv_solaris_64bit" >&6; }
 
 
 # Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
+if test ${with_libiconv_prefix+y}
+then :
   withval=$with_libiconv_prefix;
     if test "X$withval" = "Xno"; then
       use_additional=no
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
-$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
-if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
+printf %s "checking for CFPreferencesCopyAppValue... " >&6; }
+if test ${gt_cv_func_CFPreferencesCopyAppValue+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   gt_save_LIBS="$LIBS"
      LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <CoreFoundation/CFPreferences.h>
 int
-main ()
+main (void)
 {
 CFPreferencesCopyAppValue(NULL, NULL)
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   gt_cv_func_CFPreferencesCopyAppValue=yes
-else
+else $as_nop
   gt_cv_func_CFPreferencesCopyAppValue=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
      LIBS="$gt_save_LIBS"
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
-$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
+printf "%s\n" "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
   if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
 
-$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
+printf "%s\n" "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
 
   fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
-$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
-if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
+printf %s "checking for CFLocaleCopyCurrent... " >&6; }
+if test ${gt_cv_func_CFLocaleCopyCurrent+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   gt_save_LIBS="$LIBS"
      LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <CoreFoundation/CFLocale.h>
 int
-main ()
+main (void)
 {
 CFLocaleCopyCurrent();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   gt_cv_func_CFLocaleCopyCurrent=yes
-else
+else $as_nop
   gt_cv_func_CFLocaleCopyCurrent=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
      LIBS="$gt_save_LIBS"
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
-$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
+printf "%s\n" "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
   if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
 
-$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
 
   fi
   INTL_MACOSX_LIBS=
@@ -14454,11 +15890,12 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
           gt_expression_test_code=
         fi
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
-$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if eval \${$gt_func_gnugettext_libc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
+printf %s "checking for GNU gettext in libc... " >&6; }
+if eval test \${$gt_func_gnugettext_libc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -14473,7 +15910,7 @@ extern int *_nl_domain_bindings;
 $gt_revision_test_code
 
 int
-main ()
+main (void)
 {
 
 bindtextdomain ("", "");
@@ -14483,17 +15920,18 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$gt_func_gnugettext_libc=yes"
-else
+else $as_nop
   eval "$gt_func_gnugettext_libc=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 eval ac_res=\$$gt_func_gnugettext_libc
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
 
         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
 
@@ -14526,11 +15964,12 @@ $as_echo "$ac_res" >&6; }
   done
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+printf %s "checking for iconv... " >&6; }
+if test ${am_cv_func_iconv+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     am_cv_func_iconv="no, consider installing GNU libiconv"
     am_cv_lib_iconv=no
@@ -14541,7 +15980,7 @@ else
 #include <iconv.h>
 
 int
-main ()
+main (void)
 {
 iconv_t cd = iconv_open("","");
            iconv(cd,NULL,NULL,NULL,NULL);
@@ -14550,10 +15989,11 @@ iconv_t cd = iconv_open("","");
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   am_cv_func_iconv=yes
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     if test "$am_cv_func_iconv" != yes; then
       am_save_LIBS="$LIBS"
@@ -14565,7 +16005,7 @@ rm -f core conftest.err conftest.$ac_objext \
 #include <iconv.h>
 
 int
-main ()
+main (void)
 {
 iconv_t cd = iconv_open("","");
              iconv(cd,NULL,NULL,NULL,NULL);
@@ -14574,24 +16014,26 @@ iconv_t cd = iconv_open("","");
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   am_cv_lib_iconv=yes
         am_cv_func_iconv=yes
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
       LIBS="$am_save_LIBS"
     fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+printf "%s\n" "$am_cv_func_iconv" >&6; }
   if test "$am_cv_func_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
-$as_echo_n "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
+printf %s "checking for working iconv... " >&6; }
+if test ${am_cv_func_iconv_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
                   am_save_LIBS="$LIBS"
       if test $am_cv_lib_iconv = yes; then
@@ -14599,12 +16041,13 @@ else
       fi
       am_cv_func_iconv_works=no
       for ac_iconv_const in '' 'const'; do
-        if test "$cross_compiling" = yes; then :
+        if test "$cross_compiling" = yes
+then :
   case "$host_os" in
              aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
              *)            am_cv_func_iconv_works="guessing yes" ;;
            esac
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -14616,7 +16059,7 @@ else
 #endif
 
 int
-main ()
+main (void)
 {
 int result = 0;
   /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
@@ -14716,7 +16159,8 @@ int result = 0;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   am_cv_func_iconv_works=yes
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -14728,8 +16172,8 @@ fi
       LIBS="$am_save_LIBS"
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
-$as_echo "$am_cv_func_iconv_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
+printf "%s\n" "$am_cv_func_iconv_works" >&6; }
     case "$am_cv_func_iconv_works" in
       *no) am_func_iconv=no am_cv_lib_iconv=no ;;
       *)   am_func_iconv=yes ;;
@@ -14739,14 +16183,14 @@ $as_echo "$am_cv_func_iconv_works" >&6; }
   fi
   if test "$am_func_iconv" = yes; then
 
-$as_echo "#define HAVE_ICONV 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ICONV 1" >>confdefs.h
 
   fi
   if test "$am_cv_lib_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+printf %s "checking how to link with libiconv... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+printf "%s\n" "$LIBICONV" >&6; }
   else
             CPPFLAGS="$am_save_CPPFLAGS"
     LIBICONV=
@@ -14778,7 +16222,8 @@ $as_echo "$LIBICONV" >&6; }
 
 
 # Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
+if test ${with_libintl_prefix+y}
+then :
   withval=$with_libintl_prefix;
     if test "X$withval" = "Xno"; then
       use_additional=no
 
 
 
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
-$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if eval \${$gt_func_gnugettext_libintl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
+printf %s "checking for GNU gettext in libintl... " >&6; }
+if eval test \${$gt_func_gnugettext_libintl+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   gt_save_CPPFLAGS="$CPPFLAGS"
             CPPFLAGS="$CPPFLAGS $INCINTL"
             gt_save_LIBS="$LIBS"
@@ -15244,7 +16690,7 @@ const char *_nl_expand_alias (const char *);
 $gt_revision_test_code
 
 int
-main ()
+main (void)
 {
 
 bindtextdomain ("", "");
@@ -15254,12 +16700,13 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$gt_func_gnugettext_libintl=yes"
-else
+else $as_nop
   eval "$gt_func_gnugettext_libintl=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
                         if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
               LIBS="$LIBS $LIBICONV"
@@ -15281,7 +16728,7 @@ const char *_nl_expand_alias (const char *);
 $gt_revision_test_code
 
 int
-main ()
+main (void)
 {
 
 bindtextdomain ("", "");
@@ -15291,21 +16738,22 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   LIBINTL="$LIBINTL $LIBICONV"
                  LTLIBINTL="$LTLIBINTL $LTLIBICONV"
                  eval "$gt_func_gnugettext_libintl=yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
             fi
             CPPFLAGS="$gt_save_CPPFLAGS"
             LIBS="$gt_save_LIBS"
 fi
 eval ac_res=\$$gt_func_gnugettext_libintl
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
         fi
 
                                         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
@@ -15332,20 +16780,20 @@ $as_echo "$ac_res" >&6; }
     if test "$gt_use_preinstalled_gnugettext" = "yes" \
        || test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-$as_echo "#define ENABLE_NLS 1" >>confdefs.h
+printf "%s\n" "#define ENABLE_NLS 1" >>confdefs.h
 
     else
       USE_NLS=no
     fi
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
-$as_echo_n "checking whether to use NLS... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
+printf %s "checking whether to use NLS... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+printf "%s\n" "$USE_NLS" >&6; }
   if test "$USE_NLS" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
-$as_echo_n "checking where the gettext function comes from... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
+printf %s "checking where the gettext function comes from... " >&6; }
     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
         gt_source="external libintl"
@@ -15355,18 +16803,18 @@ $as_echo_n "checking where the gettext function comes from... " >&6; }
     else
       gt_source="included intl directory"
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
-$as_echo "$gt_source" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
+printf "%s\n" "$gt_source" >&6; }
   fi
 
   if test "$USE_NLS" = "yes"; then
 
     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
-$as_echo_n "checking how to link with libintl... " >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
-$as_echo "$LIBINTL" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
+printf %s "checking how to link with libintl... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
+printf "%s\n" "$LIBINTL" >&6; }
 
   for element in $INCINTL; do
     haveit=
@@ -15393,10 +16841,10 @@ $as_echo "$LIBINTL" >&6; }
       fi
 
 
-$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GETTEXT 1" >>confdefs.h
 
 
-$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_DCGETTEXT 1" >>confdefs.h
 
     fi
 
@@ -15417,11 +16865,12 @@ $as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
 if test "$os_win32" = "yes"; then
   # Extract the first word of "lib.exe", so it can be a program name with args.
 set dummy lib.exe; 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_ms_librarian+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ms_librarian+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ms_librarian"; then
   ac_cv_prog_ms_librarian="$ms_librarian" # Let the user override the test.
 else
@@ -15429,11 +16878,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ms_librarian="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 fi
 ms_librarian=$ac_cv_prog_ms_librarian
 if test -n "$ms_librarian"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ms_librarian" >&5
-$as_echo "$ms_librarian" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ms_librarian" >&5
+printf "%s\n" "$ms_librarian" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -15463,13 +16916,93 @@ 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 :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
+printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; }
+if test ${ac_cv_c_undeclared_builtin_options+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_save_CFLAGS=$CFLAGS
+   ac_cv_c_undeclared_builtin_options='cannot detect'
+   for ac_arg in '' -fno-builtin; do
+     CFLAGS="$ac_save_CFLAGS $ac_arg"
+     # This test program should *not* compile successfully.
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main (void)
+{
+(void) strchr;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else $as_nop
+  # This test program should compile successfully.
+        # No library function is consistently available on
+        # freestanding implementations, so test against a dummy
+        # declaration.  Include always-available headers on the
+        # off chance that they somehow elicit warnings.
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <float.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stddef.h>
+extern void ac_decl (int, char *);
+
+int
+main (void)
+{
+(void) ac_decl (0, (char *) 0);
+  (void) ac_decl;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  if test x"$ac_arg" = x
+then :
+  ac_cv_c_undeclared_builtin_options='none needed'
+else $as_nop
+  ac_cv_c_undeclared_builtin_options=$ac_arg
+fi
+          break
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+    done
+    CFLAGS=$ac_save_CFLAGS
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5
+printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; }
+  case $ac_cv_c_undeclared_builtin_options in #(
+  'cannot detect') :
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot make $CC report undeclared builtins
+See \`config.log' for more details" "$LINENO" 5; } ;; #(
+  'none needed') :
+    ac_c_undeclared_builtin_options='' ;; #(
+  *) :
+    ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;;
+esac
+
+ac_fn_check_decl "$LINENO" "__SUNPRO_C" "ac_cv_have_decl___SUNPRO_C" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl___SUNPRO_C" = xyes
+then :
   SUNCC="yes"
-else
+else $as_nop
   SUNCC="no"
 fi
-
 WARN_CFLAGS=""
 WARNING_CPP_DIRECTIVE="no"
 if test "x$GCC" = "xyes"; then
@@ -15483,9 +17016,7 @@ elif test "x$SUNCC" = "xyes"; then
 fi
 if test "x$WARNING_CPP_DIRECTIVE" = "xyes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WARNING_CPP_DIRECTIVE 1
-_ACEOF
+printf "%s\n" "#define HAVE_WARNING_CPP_DIRECTIVE 1" >>confdefs.h
 
 fi
 
 if test "x$cross_compiling" = "xno"; then
   EXEEXT_FOR_BUILD='$(EXEEXT)'
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for build system executable suffix" >&5
-$as_echo_n "checking for build system executable suffix... " >&6; }
-if ${bfd_cv_build_exeext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for build system executable suffix" >&5
+printf %s "checking for build system executable suffix... " >&6; }
+if test ${bfd_cv_build_exeext+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   rm -f conftest*
      echo 'int main () { return 0; }' > conftest.c
      bfd_cv_build_exeext=
@@ -15523,8 +17055,8 @@ else
      rm -f conftest*
      test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_build_exeext" >&5
-$as_echo "$bfd_cv_build_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_build_exeext" >&5
+printf "%s\n" "$bfd_cv_build_exeext" >&6; }
   EXEEXT_FOR_BUILD=""
   test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext}
 fi
 
 
 # Check whether --with-arch was given.
-if test "${with_arch+set}" = set; then :
+if test ${with_arch+y}
+then :
   withval=$with_arch; arch="$withval"
-else
+else $as_nop
   arch=auto
 fi
 
 
 if test "x$arch" != xauto; then
 
-cat >>confdefs.h <<_ACEOF
-#define FC_ARCHITECTURE "$arch"
-_ACEOF
+printf "%s\n" "#define FC_ARCHITECTURE \"$arch\"" >>confdefs.h
 
 fi
 
 # Checks for header files.
 ac_header_dirent=no
 for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
-$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if eval \${$as_ac_Header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  as_ac_Header=`printf "%s\n" "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
+printf %s "checking for $ac_hdr that defines DIR... " >&6; }
+if eval test \${$as_ac_Header+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/types.h>
 #include <$ac_hdr>
 
 int
-main ()
+main (void)
 {
 if ((DIR *) 0)
 return 0;
@@ -15590,19 +17122,21 @@ return 0;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$as_ac_Header=yes"
-else
+else $as_nop
   eval "$as_ac_Header=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$as_ac_Header
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_$ac_hdr" | $as_tr_cpp` 1
 _ACEOF
 
 ac_header_dirent=$ac_hdr; break
 done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+printf %s "checking for library containing opendir... " >&6; }
+if test ${ac_cv_search_opendir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -15623,56 +17158,59 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char opendir ();
 int
-main ()
+main (void)
 {
 return opendir ();
   ;
   return 0;
 }
 _ACEOF
-for ac_lib in '' dir; do
+for ac_lib in '' dir
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_opendir=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
+  if test ${ac_cv_search_opendir+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_opendir=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+printf "%s\n" "$ac_cv_search_opendir" >&6; }
 ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
 fi
 
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+printf %s "checking for library containing opendir... " >&6; }
+if test ${ac_cv_search_opendir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -15680,186 +17218,202 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char opendir ();
 int
-main ()
+main (void)
 {
 return opendir ();
   ;
   return 0;
 }
 _ACEOF
-for ac_lib in '' x; do
+for ac_lib in '' x
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_opendir=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
+  if test ${ac_cv_search_opendir+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_opendir=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+printf "%s\n" "$ac_cv_search_opendir" >&6; }
 ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
 fi
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
+# Autoupdate added the next two lines to ensure that your configure
+# script's behavior did not change.  They are probably safe to remove.
 
-int
-main ()
-{
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+   then ac_cv_path_EGREP="$GREP -E"
+   else
+     if test -z "$EGREP"; then
+  ac_path_EGREP_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in egrep
+   do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_EGREP" || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+  # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+  ac_count=0
+  printf %s 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    printf "%s\n" 'EGREP' >> "conftest.nl"
+    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_EGREP="$ac_path_EGREP"
+      ac_path_EGREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
+      $ac_path_EGREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_EGREP"; then
+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
 else
-  ac_cv_header_stdc=no
+  ac_cv_path_EGREP=$EGREP
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
 
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
+   fi
 fi
-rm -f conftest*
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
 
-fi
 
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
 
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
+ac_fn_c_check_header_compile "$LINENO" "dirent.h" "ac_cv_header_dirent_h" "$ac_includes_default"
+if test "x$ac_cv_header_dirent_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_DIRENT_H 1" >>confdefs.h
 
-else
-  ac_cv_header_stdc=no
 fi
-rm -f conftest*
+ac_fn_c_check_header_compile "$LINENO" "fcntl.h" "ac_cv_header_fcntl_h" "$ac_includes_default"
+if test "x$ac_cv_header_fcntl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_FCNTL_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STDLIB_H 1" >>confdefs.h
 
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
+ac_fn_c_check_header_compile "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default"
+if test "x$ac_cv_header_string_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRING_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$ac_includes_default"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
+
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
+ac_fn_c_check_header_compile "$LINENO" "sys/statvfs.h" "ac_cv_header_sys_statvfs_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_statvfs_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_STATVFS_H 1" >>confdefs.h
 
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/vfs.h" "ac_cv_header_sys_vfs_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_vfs_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_VFS_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/statfs.h" "ac_cv_header_sys_statfs_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_statfs_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_STATFS_H 1" >>confdefs.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"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_param_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_PARAM_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_mount_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_MOUNT_H 1" >>confdefs.h
 
-done
+fi
 
 # ------ AX CREATE STDINT H -------------------------------------
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint types" >&5
-$as_echo_n "checking for stdint types... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint types" >&5
+printf %s "checking for stdint types... " >&6; }
 ac_stdint_h=`echo src/fcstdint.h`
 # try to shortcircuit - if the default include path of the compiler
 # can find a "stdint.h" header then we assume that all compilers can.
-if ${ac_cv_header_stdint_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_header_stdint_t+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
 old_CXXFLAGS="$CXXFLAGS" ; CXXFLAGS=""
 old_CPPFLAGS="$CPPFLAGS" ; CPPFLAGS=""
@@ -15868,38 +17422,40 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdint.h>
 int
-main ()
+main (void)
 {
 int_least32_t v = 0;
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_stdint_result="(assuming C99 compatible system)"
  ac_cv_header_stdint_t="stdint.h";
-else
+else $as_nop
   ac_cv_header_stdint_t=""
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 if test "$GCC" = "yes" && test ".$ac_cv_header_stdint_t" = "."; then
 CFLAGS="-std=c99"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdint.h>
 int
-main ()
+main (void)
 {
 int_least32_t v = 0;
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: your GCC compiler has a defunct stdint.h for its default-mode" >&5
-$as_echo "$as_me: WARNING: your GCC compiler has a defunct stdint.h for its default-mode" >&2;}
+if ac_fn_c_try_compile "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: your GCC compiler has a defunct stdint.h for its default-mode" >&5
+printf "%s\n" "$as_me: WARNING: your GCC compiler has a defunct stdint.h for its default-mode" >&2;}
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 CXXFLAGS="$old_CXXFLAGS"
 CPPFLAGS="$old_CPPFLAGS"
 
 v="... $ac_cv_header_stdint_h"
 if test "$ac_stdint_h" = "stdint.h" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: (are you sure you want them in ./stdint.h?)" >&5
-$as_echo "(are you sure you want them in ./stdint.h?)" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (are you sure you want them in ./stdint.h?)" >&5
+printf "%s\n" "(are you sure you want them in ./stdint.h?)" >&6; }
 elif test "$ac_stdint_h" = "inttypes.h" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: (are you sure you want them in ./inttypes.h?)" >&5
-$as_echo "(are you sure you want them in ./inttypes.h?)" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (are you sure you want them in ./inttypes.h?)" >&5
+printf "%s\n" "(are you sure you want them in ./inttypes.h?)" >&6; }
 elif test "_$ac_cv_header_stdint_t" = "_" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: (putting them into $ac_stdint_h)$v" >&5
-$as_echo "(putting them into $ac_stdint_h)$v" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (putting them into $ac_stdint_h)$v" >&5
+printf "%s\n" "(putting them into $ac_stdint_h)$v" >&6; }
 else
  ac_cv_header_stdint="$ac_cv_header_stdint_t"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint (shortcircuit)" >&5
-$as_echo "$ac_cv_header_stdint (shortcircuit)" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint (shortcircuit)" >&5
+printf "%s\n" "$ac_cv_header_stdint (shortcircuit)" >&6; }
 fi
 
 if test "_$ac_cv_header_stdint_t" = "_" ; then # can not shortcircuit..
@@ -15930,74 +17486,80 @@ inttype_headers=`echo  | sed -e 's/,/ /g'`
 
 ac_cv_stdint_result="(no helpful system typedefs seen)"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uintptr_t" >&5
-$as_echo_n "checking for stdint uintptr_t... " >&6; }
-if ${ac_cv_header_stdint_x+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint uintptr_t" >&5
+printf %s "checking for stdint uintptr_t... " >&6; }
+if test ${ac_cv_header_stdint_x+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
  ac_cv_header_stdint_x="" # the 1997 typedefs (inttypes.h)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
-$as_echo "(..)" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
+printf "%s\n" "(..)" >&6; }
   for i in    stdint.h inttypes.h sys/inttypes.h $inttype_headers
   do
    unset ac_cv_type_uintptr_t
    unset ac_cv_type_uint64_t
    ac_fn_c_check_type "$LINENO" "uintptr_t" "ac_cv_type_uintptr_t" "#include <$i>
 "
-if test "x$ac_cv_type_uintptr_t" = xyes; then :
+if test "x$ac_cv_type_uintptr_t" = xyes
+then :
   ac_cv_header_stdint_x=$i
-else
+else $as_nop
   continue
 fi
 
    ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "#include<$i>
 "
-if test "x$ac_cv_type_uint64_t" = xyes; then :
+if test "x$ac_cv_type_uint64_t" = xyes
+then :
   and64="/uint64_t"
-else
+else $as_nop
   and64=""
 fi
 
    ac_cv_stdint_result="(seen uintptr_t$and64 in $i)"
  break
   done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uintptr_t" >&5
-$as_echo_n "checking for stdint uintptr_t... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint uintptr_t" >&5
+printf %s "checking for stdint uintptr_t... " >&6; }
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_x" >&5
-$as_echo "$ac_cv_header_stdint_x" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_x" >&5
+printf "%s\n" "$ac_cv_header_stdint_x" >&6; }
 
 
 if test "_$ac_cv_header_stdint_x" = "_" ; then
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uint32_t" >&5
-$as_echo_n "checking for stdint uint32_t... " >&6; }
-if ${ac_cv_header_stdint_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint uint32_t" >&5
+printf %s "checking for stdint uint32_t... " >&6; }
+if test ${ac_cv_header_stdint_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
  ac_cv_header_stdint_o="" # the 1995 typedefs (sys/inttypes.h)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
-$as_echo "(..)" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
+printf "%s\n" "(..)" >&6; }
   for i in    inttypes.h sys/inttypes.h stdint.h $inttype_headers
   do
    unset ac_cv_type_uint32_t
    unset ac_cv_type_uint64_t
    ac_fn_c_check_type "$LINENO" "uint32_t" "ac_cv_type_uint32_t" "#include <$i>
 "
-if test "x$ac_cv_type_uint32_t" = xyes; then :
+if test "x$ac_cv_type_uint32_t" = xyes
+then :
   ac_cv_header_stdint_o=$i
-else
+else $as_nop
   continue
 fi
 
    ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "#include<$i>
 "
-if test "x$ac_cv_type_uint64_t" = xyes; then :
+if test "x$ac_cv_type_uint64_t" = xyes
+then :
   and64="/uint64_t"
-else
+else $as_nop
   and64=""
 fi
 
  break
    break;
   done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uint32_t" >&5
-$as_echo_n "checking for stdint uint32_t... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint uint32_t" >&5
+printf %s "checking for stdint uint32_t... " >&6; }
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_o" >&5
-$as_echo "$ac_cv_header_stdint_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_o" >&5
+printf "%s\n" "$ac_cv_header_stdint_o" >&6; }
 
 fi
 
 if test "_$ac_cv_header_stdint_x" = "_" ; then
 if test "_$ac_cv_header_stdint_o" = "_" ; then
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint u_int32_t" >&5
-$as_echo_n "checking for stdint u_int32_t... " >&6; }
-if ${ac_cv_header_stdint_u+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint u_int32_t" >&5
+printf %s "checking for stdint u_int32_t... " >&6; }
+if test ${ac_cv_header_stdint_u+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
  ac_cv_header_stdint_u="" # the BSD typedefs (sys/types.h)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
-$as_echo "(..)" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
+printf "%s\n" "(..)" >&6; }
   for i in    sys/types.h inttypes.h sys/inttypes.h $inttype_headers ; do
    unset ac_cv_type_u_int32_t
    unset ac_cv_type_u_int64_t
    ac_fn_c_check_type "$LINENO" "u_int32_t" "ac_cv_type_u_int32_t" "#include <$i>
 "
-if test "x$ac_cv_type_u_int32_t" = xyes; then :
+if test "x$ac_cv_type_u_int32_t" = xyes
+then :
   ac_cv_header_stdint_u=$i
-else
+else $as_nop
   continue
 fi
 
    ac_fn_c_check_type "$LINENO" "u_int64_t" "ac_cv_type_u_int64_t" "#include<$i>
 "
-if test "x$ac_cv_type_u_int64_t" = xyes; then :
+if test "x$ac_cv_type_u_int64_t" = xyes
+then :
   and64="/u_int64_t"
-else
+else $as_nop
   and64=""
 fi
 
  break
    break;
   done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint u_int32_t" >&5
-$as_echo_n "checking for stdint u_int32_t... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint u_int32_t" >&5
+printf %s "checking for stdint u_int32_t... " >&6; }
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_u" >&5
-$as_echo "$ac_cv_header_stdint_u" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdint_u" >&5
+printf "%s\n" "$ac_cv_header_stdint_u" >&6; }
 
 fi fi
 
 if test "_$ac_cv_header_stdint_x" = "_" ; then
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint datatype model" >&5
-$as_echo_n "checking for stdint datatype model... " >&6; }
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
-$as_echo "(..)" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint datatype model" >&5
+printf %s "checking for stdint datatype model... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (..)" >&5
+printf "%s\n" "(..)" >&6; }
 
    # The cast to long int works around a bug in the HP C Compiler
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
-$as_echo_n "checking size of char... " >&6; }
-if ${ac_cv_sizeof_char+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
+printf %s "checking size of char... " >&6; }
+if test ${ac_cv_sizeof_char+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"
+then :
+
+else $as_nop
   if test "$ac_cv_type_char" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (char)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -16087,31 +17654,31 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
-$as_echo "$ac_cv_sizeof_char" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
+printf "%s\n" "$ac_cv_sizeof_char" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
+printf "%s\n" "#define SIZEOF_CHAR $ac_cv_sizeof_char" >>confdefs.h
 
 
    # The cast to long int works around a bug in the HP C Compiler
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
+printf %s "checking size of short... " >&6; }
+if test ${ac_cv_sizeof_short+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"
+then :
+
+else $as_nop
   if test "$ac_cv_type_short" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (short)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -16120,31 +17687,31 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
+printf "%s\n" "$ac_cv_sizeof_short" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
+printf "%s\n" "#define SIZEOF_SHORT $ac_cv_sizeof_short" >>confdefs.h
 
 
    # The cast to long int works around a bug in the HP C Compiler
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
+printf %s "checking size of int... " >&6; }
+if test ${ac_cv_sizeof_int+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"
+then :
+
+else $as_nop
   if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (int)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -16153,31 +17720,31 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
+printf "%s\n" "$ac_cv_sizeof_int" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
+printf "%s\n" "#define SIZEOF_INT $ac_cv_sizeof_int" >>confdefs.h
 
 
    # The cast to long int works around a bug in the HP C Compiler
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
+printf %s "checking size of long... " >&6; }
+if test ${ac_cv_sizeof_long+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"
+then :
+
+else $as_nop
   if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (long)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -16186,31 +17753,31 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
+printf "%s\n" "$ac_cv_sizeof_long" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
+printf "%s\n" "#define SIZEOF_LONG $ac_cv_sizeof_long" >>confdefs.h
 
 
    # The cast to long int works around a bug in the HP C Compiler
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void*" >&5
-$as_echo_n "checking size of void*... " >&6; }
-if ${ac_cv_sizeof_voidp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void*))" "ac_cv_sizeof_voidp"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of void*" >&5
+printf %s "checking size of void*... " >&6; }
+if test ${ac_cv_sizeof_voidp+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void*))" "ac_cv_sizeof_voidp"        "$ac_includes_default"
+then :
+
+else $as_nop
   if test "$ac_cv_type_voidp" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (void*)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -16219,14 +17786,12 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_voidp" >&5
-$as_echo "$ac_cv_sizeof_voidp" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_voidp" >&5
+printf "%s\n" "$ac_cv_sizeof_voidp" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_VOIDP $ac_cv_sizeof_voidp
-_ACEOF
+printf "%s\n" "#define SIZEOF_VOIDP $ac_cv_sizeof_voidp" >>confdefs.h
 
 
    ac_cv_char_data_model=""
@@ -16237,8 +17802,8 @@ _ACEOF
    ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_int"
    ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_long"
    ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_voidp"
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking data model" >&5
-$as_echo_n "checking data model... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking data model" >&5
+printf %s "checking data model... " >&6; }
    case "$ac_cv_char_data_model/$ac_cv_long_data_model" in
     122/242)     ac_cv_data_model="IP16"  ; n="standard 16bit machine" ;;
     122/244)     ac_cv_data_model="LP32"  ; n="standard 32bit machine" ;;
@@ -16258,8 +17823,8 @@ $as_echo_n "checking data model... " >&6; }
                  ac_cv_data_model="iDSP"  ; n="unusual dsptype" ;;
      *)          ac_cv_data_model="none"  ; n="very unusual model" ;;
    esac
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_data_model ($ac_cv_long_data_model, $n)" >&5
-$as_echo "$ac_cv_data_model ($ac_cv_long_data_model, $n)" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_data_model ($ac_cv_long_data_model, $n)" >&5
+printf "%s\n" "$ac_cv_data_model ($ac_cv_long_data_model, $n)" >&6; }
 
 fi
 
@@ -16273,27 +17838,30 @@ else
    ac_cv_header_stdint="stddef.h"
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for extra inttypes in chosen header" >&5
-$as_echo_n "checking for extra inttypes in chosen header... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ($ac_cv_header_stdint)" >&5
-$as_echo "($ac_cv_header_stdint)" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for extra inttypes in chosen header" >&5
+printf %s "checking for extra inttypes in chosen header... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ($ac_cv_header_stdint)" >&5
+printf "%s\n" "($ac_cv_header_stdint)" >&6; }
 unset ac_cv_type_int_least32_t
 unset ac_cv_type_int_fast32_t
 ac_fn_c_check_type "$LINENO" "int_least32_t" "ac_cv_type_int_least32_t" "#include <$ac_cv_header_stdint>
 "
-if test "x$ac_cv_type_int_least32_t" = xyes; then :
+if test "x$ac_cv_type_int_least32_t" = xyes
+then :
 
 fi
 
 ac_fn_c_check_type "$LINENO" "int_fast32_t" "ac_cv_type_int_fast32_t" "#include<$ac_cv_header_stdint>
 "
-if test "x$ac_cv_type_int_fast32_t" = xyes; then :
+if test "x$ac_cv_type_int_fast32_t" = xyes
+then :
 
 fi
 
 ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" "#include <$ac_cv_header_stdint>
 "
-if test "x$ac_cv_type_intmax_t" = xyes; then :
+if test "x$ac_cv_type_intmax_t" = xyes
+then :
 
 fi
 
@@ -16306,8 +17874,8 @@ else
 ac_cv_stdint_message="using $CC"
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: make use of $ac_cv_header_stdint in $ac_stdint_h $ac_cv_stdint_result" >&5
-$as_echo "make use of $ac_cv_header_stdint in $ac_stdint_h $ac_cv_stdint_result" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: make use of $ac_cv_header_stdint in $ac_stdint_h $ac_cv_stdint_result" >&5
+printf "%s\n" "make use of $ac_cv_header_stdint in $ac_stdint_h $ac_cv_stdint_result" >&6; }
 
 # ----------------- DONE inttypes.h checks START header -------------
 ac_config_commands="$ac_config_commands $ac_stdint_h"
@@ -16315,16 +17883,17 @@ ac_config_commands="$ac_config_commands $ac_stdint_h"
 
 
 # Checks for typedefs, structures, and compiler characteristics.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
+printf %s "checking for an ANSI C-conforming const... " >&6; }
+if test ${ac_cv_c_const+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
 #ifndef __cplusplus
@@ -16337,7 +17906,7 @@ main ()
   /* NEC SVR4.0.2 mips cc rejects this.  */
   struct point {int x, y;};
   static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
+  /* IBM XL C 1.02.0.0 rejects this.
      It does not let you subtract one const X* pointer from another in
      an arm of an if-expression whose if-part is not a constant
      expression */
@@ -16365,7 +17934,7 @@ main ()
     iptr p = 0;
     ++p;
   }
-  { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
+  { /* IBM XL C 1.02.0.0 rejects this sort of thing, saying
        "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
     struct s { int j; const int *ap[3]; } bx;
     struct s *b = &bx; b->j = 5;
@@ -16381,47 +17950,50 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_const=yes
-else
+else $as_nop
   ac_cv_c_const=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
+printf "%s\n" "$ac_cv_c_const" >&6; }
 if test $ac_cv_c_const = no; then
 
-$as_echo "#define const /**/" >>confdefs.h
+printf "%s\n" "#define const /**/" >>confdefs.h
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
+printf %s "checking for inline... " >&6; }
+if test ${ac_cv_c_inline+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifndef __cplusplus
 typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
+static $ac_kw foo_t static_foo (void) {return 0; }
+$ac_kw foo_t foo (void) {return 0; }
 #endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_inline=$ac_kw
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   test "$ac_cv_c_inline" != no && break
 done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
+printf "%s\n" "$ac_cv_c_inline" >&6; }
 
 case $ac_cv_c_inline in
   inline | yes) ;;
@@ -16439,11 +18011,12 @@ _ACEOF
 esac
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for flexible array members" >&5
-$as_echo_n "checking for flexible array members... " >&6; }
-if ${ac_cv_c_flexmember+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for flexible array members" >&5
+printf %s "checking for flexible array members... " >&6; }
+if test ${ac_cv_c_flexmember+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
            #include <stddef.h>
            struct s { int n; double d[]; };
 int
-main ()
+main (void)
 {
 int m = getchar ();
-           struct s *p = malloc (offsetof (struct s, d)
-                                 + m * sizeof (double));
+           struct s *p = (struct s *) malloc (offsetof (struct s, d)
+                                              + m * sizeof (double));
            p->d[0] = 0.0;
            return p->d != (double *) NULL;
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_flexmember=yes
-else
+else $as_nop
   ac_cv_c_flexmember=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5
-$as_echo "$ac_cv_c_flexmember" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5
+printf "%s\n" "$ac_cv_c_flexmember" >&6; }
   if test $ac_cv_c_flexmember = yes; then
 
-$as_echo "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h
+printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h
 
   else
-    $as_echo "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h
+    printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h
 
   fi
 
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define pid_t int
-_ACEOF
-
-fi
 
+  ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default
+"
+if test "x$ac_cv_type_pid_t" = xyes
+then :
 
-# Checks for library functions.
-for ac_func in vprintf
-do :
-  ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf"
-if test "x$ac_cv_func_vprintf" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_VPRINTF 1
-_ACEOF
+else $as_nop
+                                          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
-ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt"
-if test "x$ac_cv_func__doprnt" = xyes; then :
+          #if defined _WIN64 && !defined __CYGWIN__
+          LLP64
+          #endif
 
-$as_echo "#define HAVE_DOPRNT 1" >>confdefs.h
+int
+main (void)
+{
 
-fi
+  ;
+  return 0;
+}
 
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_pid_type='int'
+else $as_nop
+  ac_pid_type='__int64'
 fi
-done
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
+printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h
 
 
-
-
-  for ac_header in $ac_header_list
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
 fi
 
-done
 
 
+# Checks for library functions.
+ac_func=
+for ac_item in $ac_func_c_list
+do
+  if test $ac_func; then
+    ac_fn_c_check_func "$LINENO" $ac_func ac_cv_func_$ac_func
+    if eval test \"x\$ac_cv_func_$ac_func\" = xyes; then
+      echo "#define $ac_item 1" >> confdefs.h
+    fi
+    ac_func=
+  else
+    ac_func=$ac_item
+  fi
+done
 
+if test "x$ac_cv_func_vprintf" = xno
+then :
+  ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt"
+if test "x$ac_cv_func__doprnt" = xyes
+then :
 
+printf "%s\n" "#define HAVE_DOPRNT 1" >>confdefs.h
 
+fi
 
+fi
 
 
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_GETPAGESIZE 1
-_ACEOF
 
-fi
-done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
+printf %s "checking for working mmap... " >&6; }
+if test ${ac_cv_func_mmap_fixed_mapped+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test "$cross_compiling" = yes
+then :
+  case "$host_os" in # ((
+                         # Guess yes on platforms where we know the result.
+                 linux*) ac_cv_func_mmap_fixed_mapped=yes ;;
+                         # If we don't know, assume the worst.
+                 *)      ac_cv_func_mmap_fixed_mapped=no ;;
+               esac
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
@@ -16586,10 +18168,6 @@ $ac_includes_default
 #include <fcntl.h>
 #include <sys/mman.h>
 
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
 /* This mess was copied from the GNU getpagesize.h.  */
 #ifndef HAVE_GETPAGESIZE
 # ifdef _SC_PAGESIZE
@@ -16623,7 +18201,7 @@ char *malloc ();
 #endif /* no HAVE_GETPAGESIZE */
 
 int
-main ()
+main (void)
 {
   char *data, *data2, *data3;
   const char *cdata2;
@@ -16691,12 +18269,15 @@ main ()
     if (*(data + i) != *(data3 + i))
       return 14;
   close (fd);
+  free (data);
+  free (data3);
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   ac_cv_func_mmap_fixed_mapped=yes
-else
+else $as_nop
   ac_cv_func_mmap_fixed_mapped=no
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -16704,33 +18285,143 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
+printf "%s\n" "$ac_cv_func_mmap_fixed_mapped" >&6; }
 if test $ac_cv_func_mmap_fixed_mapped = yes; then
 
-$as_echo "#define HAVE_MMAP 1" >>confdefs.h
+printf "%s\n" "#define HAVE_MMAP 1" >>confdefs.h
 
 fi
 rm -f conftest.mmap conftest.txt
 
-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 strerror strerror_r
-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"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "link" "ac_cv_func_link"
+if test "x$ac_cv_func_link" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINK 1" >>confdefs.h
 
 fi
-done
+ac_fn_c_check_func "$LINENO" "mkstemp" "ac_cv_func_mkstemp"
+if test "x$ac_cv_func_mkstemp" = xyes
+then :
+  printf "%s\n" "#define HAVE_MKSTEMP 1" >>confdefs.h
 
+fi
+ac_fn_c_check_func "$LINENO" "mkostemp" "ac_cv_func_mkostemp"
+if test "x$ac_cv_func_mkostemp" = xyes
+then :
+  printf "%s\n" "#define HAVE_MKOSTEMP 1" >>confdefs.h
 
-{ $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
+fi
+ac_fn_c_check_func "$LINENO" "_mktemp_s" "ac_cv_func__mktemp_s"
+if test "x$ac_cv_func__mktemp_s" = xyes
+then :
+  printf "%s\n" "#define HAVE__MKTEMP_S 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "mkdtemp" "ac_cv_func_mkdtemp"
+if test "x$ac_cv_func_mkdtemp" = xyes
+then :
+  printf "%s\n" "#define HAVE_MKDTEMP 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "getopt" "ac_cv_func_getopt"
+if test "x$ac_cv_func_getopt" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETOPT 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "getopt_long" "ac_cv_func_getopt_long"
+if test "x$ac_cv_func_getopt_long" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETOPT_LONG 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "getprogname" "ac_cv_func_getprogname"
+if test "x$ac_cv_func_getprogname" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETPROGNAME 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "getexecname" "ac_cv_func_getexecname"
+if test "x$ac_cv_func_getexecname" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETEXECNAME 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "rand" "ac_cv_func_rand"
+if test "x$ac_cv_func_rand" = xyes
+then :
+  printf "%s\n" "#define HAVE_RAND 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "random" "ac_cv_func_random"
+if test "x$ac_cv_func_random" = xyes
+then :
+  printf "%s\n" "#define HAVE_RANDOM 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "lrand48" "ac_cv_func_lrand48"
+if test "x$ac_cv_func_lrand48" = xyes
+then :
+  printf "%s\n" "#define HAVE_LRAND48 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "random_r" "ac_cv_func_random_r"
+if test "x$ac_cv_func_random_r" = xyes
+then :
+  printf "%s\n" "#define HAVE_RANDOM_R 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "rand_r" "ac_cv_func_rand_r"
+if test "x$ac_cv_func_rand_r" = xyes
+then :
+  printf "%s\n" "#define HAVE_RAND_R 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "readlink" "ac_cv_func_readlink"
+if test "x$ac_cv_func_readlink" = xyes
+then :
+  printf "%s\n" "#define HAVE_READLINK 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "fstatvfs" "ac_cv_func_fstatvfs"
+if test "x$ac_cv_func_fstatvfs" = xyes
+then :
+  printf "%s\n" "#define HAVE_FSTATVFS 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "fstatfs" "ac_cv_func_fstatfs"
+if test "x$ac_cv_func_fstatfs" = xyes
+then :
+  printf "%s\n" "#define HAVE_FSTATFS 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "lstat" "ac_cv_func_lstat"
+if test "x$ac_cv_func_lstat" = xyes
+then :
+  printf "%s\n" "#define HAVE_LSTAT 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strerror" "ac_cv_func_strerror"
+if test "x$ac_cv_func_strerror" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRERROR 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r"
+if test "x$ac_cv_func_strerror_r" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h
+
+fi
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for posix_fadvise in fcntl.h" >&5
+printf %s "checking for posix_fadvise in fcntl.h... " >&6; }
+if test ${ac_cv_func_posix_fadvise+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   symbol="[^a-zA-Z_0-9]posix_fadvise[^a-zA-Z_0-9]"
 ac_found=no
 for ac_header in fcntl.h ; do
@@ -16743,40 +18434,38 @@ for ac_header in fcntl.h ; do
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$symbol" >/dev/null 2>&1; then :
+  $EGREP "$symbol" >/dev/null 2>&1
+then :
   ac_found="$ac_header"
 fi
-rm -f conftest*
+rm -rf 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; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_found" >&5
+printf "%s\n" "$ac_found" >&6; }
   fc_func_posix_fadvise=1
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fc_func_posix_fadvise=0
 fi
 
 fi
 
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POSIX_FADVISE $fc_func_posix_fadvise
-_ACEOF
+printf "%s\n" "#define HAVE_POSIX_FADVISE $fc_func_posix_fadvise" >>confdefs.h
 
 
 #
 ac_fn_c_check_member "$LINENO" "struct stat" "st_mtim" "ac_cv_member_struct_stat_st_mtim" "#include <sys/stat.h>
 "
-if test "x$ac_cv_member_struct_stat_st_mtim" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_mtim" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STAT_ST_MTIM 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_STAT_ST_MTIM 1" >>confdefs.h
 
 
 fi
 if test "x$ac_cv_func_fstatvfs" = "xyes"; then
        ac_fn_c_check_member "$LINENO" "struct statvfs" "f_basetype" "ac_cv_member_struct_statvfs_f_basetype" "#include <sys/statvfs.h>
 "
-if test "x$ac_cv_member_struct_statvfs_f_basetype" = xyes; then :
+if test "x$ac_cv_member_struct_statvfs_f_basetype" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STATVFS_F_BASETYPE 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_STATVFS_F_BASETYPE 1" >>confdefs.h
 
 
 fi
 ac_fn_c_check_member "$LINENO" "struct statvfs" "f_fstypename" "ac_cv_member_struct_statvfs_f_fstypename" "#include <sys/statvfs.h>
 "
-if test "x$ac_cv_member_struct_statvfs_f_fstypename" = xyes; then :
+if test "x$ac_cv_member_struct_statvfs_f_fstypename" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STATVFS_F_FSTYPENAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_STATVFS_F_FSTYPENAME 1" >>confdefs.h
 
 
 fi
@@ -16821,11 +18508,10 @@ if test "x$ac_cv_func_fstatfs" = "xyes"; then
 #include <sys/mount.h>
 #endif
 "
-if test "x$ac_cv_member_struct_statfs_f_flags" = xyes; then :
+if test "x$ac_cv_member_struct_statfs_f_flags" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STATFS_F_FLAGS 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_STATFS_F_FLAGS 1" >>confdefs.h
 
 
 fi
@@ -16843,11 +18529,10 @@ ac_fn_c_check_member "$LINENO" "struct statfs" "f_fstypename" "ac_cv_member_stru
 #include <sys/mount.h>
 #endif
 "
-if test "x$ac_cv_member_struct_statfs_f_fstypename" = xyes; then :
+if test "x$ac_cv_member_struct_statfs_f_fstypename" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STATFS_F_FSTYPENAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_STATFS_F_FSTYPENAME 1" >>confdefs.h
 
 
 fi
 fi
 ac_fn_c_check_member "$LINENO" "struct dirent" "d_type" "ac_cv_member_struct_dirent_d_type" "#include <dirent.h>
 "
-if test "x$ac_cv_member_struct_dirent_d_type" = xyes; then :
+if test "x$ac_cv_member_struct_dirent_d_type" = xyes
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_DIRENT_D_TYPE 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_DIRENT_D_TYPE 1" >>confdefs.h
 
 
 fi
 
 
 # Check the argument type of the gperf hash/lookup function
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking The type of len parameter of gperf hash/lookup function" >&5
-$as_echo_n "checking The type of len parameter of gperf hash/lookup function... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking The type of len parameter of gperf hash/lookup function" >&5
+printf %s "checking The type of len parameter of gperf hash/lookup function... " >&6; }
 fc_gperf_test="$(echo 'foo' | gperf -L ANSI-C)"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -16878,16 +18562,17 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
        $fc_gperf_test
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   FC_GPERF_SIZE_T=size_t
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -16897,65 +18582,68 @@ else
                $fc_gperf_test
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   FC_GPERF_SIZE_T="unsigned int"
-else
+else $as_nop
   as_fn_error $? "Unable to determine the type of the len parameter of the gperf hash/lookup function" "$LINENO" 5
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
-cat >>confdefs.h <<_ACEOF
-#define FC_GPERF_SIZE_T $FC_GPERF_SIZE_T
-_ACEOF
+printf "%s\n" "#define FC_GPERF_SIZE_T $FC_GPERF_SIZE_T" >>confdefs.h
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $FC_GPERF_SIZE_T" >&5
-$as_echo "$FC_GPERF_SIZE_T" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FC_GPERF_SIZE_T" >&5
+printf "%s\n" "$FC_GPERF_SIZE_T" >&6; }
 
 #
 # Checks for iconv
 #
 # Check whether --enable-iconv was given.
-if test "${enable_iconv+set}" = set; then :
+if test ${enable_iconv+y}
+then :
   enableval=$enable_iconv;
-else
+else $as_nop
   enable_iconv=no
 fi
 
 
 # Check whether --with-libiconv was given.
-if test "${with_libiconv+set}" = set; then :
+if test ${with_libiconv+y}
+then :
   withval=$with_libiconv; if test "x$withval" = "xyes"; then
                libiconv_prefix=$prefix
         else
                libiconv_prefix=$withval
         fi
-else
+else $as_nop
   libiconv_prefix=auto
 fi
 
 
 # Check whether --with-libiconv-includes was given.
-if test "${with_libiconv_includes+set}" = set; then :
+if test ${with_libiconv_includes+y}
+then :
   withval=$with_libiconv_includes; libiconv_includes=$withval
-else
+else $as_nop
   libiconv_includes=auto
 fi
 
 
 # Check whether --with-libiconv-lib was given.
-if test "${with_libiconv_lib+set}" = set; then :
+if test ${with_libiconv_lib+y}
+then :
   withval=$with_libiconv_lib; libiconv_lib=$withval
-else
+else $as_nop
   libiconv_lib=auto
 fi
 
@@ -16982,8 +18670,8 @@ fi
 
 use_iconv=0
 if test "x$enable_iconv" != "xno"; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a usable iconv" >&5
-$as_echo_n "checking for a usable iconv... " >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a usable iconv" >&5
+printf %s "checking for a usable iconv... " >&6; }
        if test "x$libiconv_cflags" != "x" -o "x$libiconv_libs" != "x"; then
                iconvsaved_CFLAGS="$CFLAGS"
                iconvsaved_LIBS="$LIBS"
@@ -16994,23 +18682,24 @@ $as_echo_n "checking for a usable iconv... " >&6; }
 /* end confdefs.h.  */
 #include <iconv.h>
 int
-main ()
+main (void)
 {
 iconv_open ("from", "to");
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   iconv_type="libiconv"
                         use_iconv=1
                         ICONV_CFLAGS="$libiconv_cflags"
                         ICONV_LIBS="$libiconv_libs"
 
-else
+else $as_nop
   use_iconv=0
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
                CFLAGS="$iconvsaved_CFLAGS"
@@ -17021,50 +18710,49 @@ rm -f core conftest.err conftest.$ac_objext \
 /* end confdefs.h.  */
 #include <iconv.h>
 int
-main ()
+main (void)
 {
 iconv_open ("from", "to");
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   iconv_type="libc"
                         use_iconv=1
-else
+else $as_nop
   iconv_type="not found"
                         use_iconv=0
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
        fi
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $iconv_type" >&5
-$as_echo "$iconv_type" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $iconv_type" >&5
+printf "%s\n" "$iconv_type" >&6; }
 
 
 fi
 
-cat >>confdefs.h <<_ACEOF
-#define USE_ICONV $use_iconv
-_ACEOF
+printf "%s\n" "#define USE_ICONV $use_iconv" >>confdefs.h
 
 #
 # Checks for FreeType
 #
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FREETYPE" >&5
-$as_echo_n "checking for FREETYPE... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for FREETYPE" >&5
+printf %s "checking for FREETYPE... " >&6; }
 
 if test -n "$FREETYPE_CFLAGS"; then
     pkg_cv_FREETYPE_CFLAGS="$FREETYPE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 21.0.15\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 21.0.15\""; } >&5
   ($PKG_CONFIG --exists --print-errors "freetype2 >= 21.0.15") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FREETYPE_CFLAGS=`$PKG_CONFIG --cflags "freetype2 >= 21.0.15" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17078,10 +18766,10 @@ if test -n "$FREETYPE_LIBS"; then
     pkg_cv_FREETYPE_LIBS="$FREETYPE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 21.0.15\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 21.0.15\""; } >&5
   ($PKG_CONFIG --exists --print-errors "freetype2 >= 21.0.15") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FREETYPE_LIBS=`$PKG_CONFIG --libs "freetype2 >= 21.0.15" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17095,8 +18783,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17122,10 +18810,10 @@ Alternatively, you may set the environment variables FREETYPE_CFLAGS
 and FREETYPE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+       { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "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.
@@ -17139,8 +18827,8 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
        FREETYPE_CFLAGS=$pkg_cv_FREETYPE_CFLAGS
        FREETYPE_LIBS=$pkg_cv_FREETYPE_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2 >= 21.0.15"
@@ -17152,17 +18840,36 @@ fontconfig_save_libs="$LIBS"
 fontconfig_save_cflags="$CFLAGS"
 LIBS="$LIBS $FREETYPE_LIBS"
 CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
-for ac_func in FT_Get_BDF_Property FT_Get_PS_Font_Info FT_Has_PS_Glyph_Names FT_Get_X11_Font_Format FT_Done_MM_Var
-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"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "FT_Get_BDF_Property" "ac_cv_func_FT_Get_BDF_Property"
+if test "x$ac_cv_func_FT_Get_BDF_Property" = xyes
+then :
+  printf "%s\n" "#define HAVE_FT_GET_BDF_PROPERTY 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "FT_Get_PS_Font_Info" "ac_cv_func_FT_Get_PS_Font_Info"
+if test "x$ac_cv_func_FT_Get_PS_Font_Info" = xyes
+then :
+  printf "%s\n" "#define HAVE_FT_GET_PS_FONT_INFO 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "FT_Has_PS_Glyph_Names" "ac_cv_func_FT_Has_PS_Glyph_Names"
+if test "x$ac_cv_func_FT_Has_PS_Glyph_Names" = xyes
+then :
+  printf "%s\n" "#define HAVE_FT_HAS_PS_GLYPH_NAMES 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "FT_Get_X11_Font_Format" "ac_cv_func_FT_Get_X11_Font_Format"
+if test "x$ac_cv_func_FT_Get_X11_Font_Format" = xyes
+then :
+  printf "%s\n" "#define HAVE_FT_GET_X11_FONT_FORMAT 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "FT_Done_MM_Var" "ac_cv_func_FT_Done_MM_Var"
+if test "x$ac_cv_func_FT_Done_MM_Var" = xyes
+then :
+  printf "%s\n" "#define HAVE_FT_DONE_MM_VAR 1" >>confdefs.h
 
 fi
-done
 
 
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17175,12 +18882,13 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
        #endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   have_pcf_long_family_names=yes
-else
+else $as_nop
   have_pcf_long_family_names=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  if test "x$have_pcf_long_family_names" = xyes; then
   FREETYPE_PCF_LONG_FAMILY_NAMES_TRUE=
   FREETYPE_PCF_LONG_FAMILY_NAMES_FALSE='#'
@@ -17194,147 +18902,32 @@ LIBS="$fontconfig_save_libs"
 CFLAGS="$fontconfig_save_cflags"
 
 #
-# Check for uuid
-#
-if test "$os_win32" != "yes"; then
-       use_pkgconfig_for_uuid=yes
-       if test -n "${UUID_LIBS}"; then
-               save_UUID_LIBS=$UUID_LIBS
-       fi
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for UUID" >&5
-$as_echo_n "checking for UUID... " >&6; }
-
-if test -n "$UUID_CFLAGS"; then
-    pkg_cv_UUID_CFLAGS="$UUID_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"uuid\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "uuid") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_UUID_CFLAGS=`$PKG_CONFIG --cflags "uuid" 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-if test -n "$UUID_LIBS"; then
-    pkg_cv_UUID_LIBS="$UUID_LIBS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"uuid\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "uuid") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_UUID_LIBS=`$PKG_CONFIG --libs "uuid" 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi
-        if test $_pkg_short_errors_supported = yes; then
-               UUID_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "uuid" 2>&1`
-        else
-               UUID_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "uuid" 2>&1`
-        fi
-       # Put the nasty error message in config.log where it belongs
-       echo "$UUID_PKG_ERRORS" >&5
-
-       use_pkgconfig_for_uuid=no
-elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       use_pkgconfig_for_uuid=no
-else
-       UUID_CFLAGS=$pkg_cv_UUID_CFLAGS
-       UUID_LIBS=$pkg_cv_UUID_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       use_pkgconfig_for_uuid=yes
-fi
-       if test "x$use_pkgconfig_for_uuid" = "xno"; then
-               { $as_echo "$as_me:${as_lineno-$LINENO}: checking where uuid functions comes from" >&5
-$as_echo_n "checking where uuid functions comes from... " >&6; }
-               cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <uuid/uuid.h>
-int
-main ()
-{
-uuid_t a; uuid_generate(a);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: builtin" >&5
-$as_echo "builtin" >&6; }
-                        UUID_CFLAGS=""
-                        UUID_LIBS=""
-
-else
-  as_fn_error $? "
-*** uuid is required. install util-linux.
-                       " "$LINENO" 5
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-       else
-               if test -z "${save_UUID_LIBS+x}" && test "x${UUID_LIBS}" != "x"; then
-                       PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY uuid"
-               fi
-       fi
-else
-       UUID_CFLAGS=""
-       UUID_LIBS=""
-fi
-
-
-
-#
 # Check expat configuration
 #
 
 # Check whether --with-expat was given.
-if test "${with_expat+set}" = set; then :
+if test ${with_expat+y}
+then :
   withval=$with_expat; expat_prefix=$withval
-else
+else $as_nop
   expat_prefix=auto
 fi
 
 
 # Check whether --with-expat-includes was given.
-if test "${with_expat_includes+set}" = set; then :
+if test ${with_expat_includes+y}
+then :
   withval=$with_expat_includes; expat_includes=$withval
-else
+else $as_nop
   expat_includes=auto
 fi
 
 
 # Check whether --with-expat-lib was given.
-if test "${with_expat_lib+set}" = set; then :
+if test ${with_expat_lib+y}
+then :
   withval=$with_expat_lib; expat_lib=$withval
-else
+else $as_nop
   expat_lib=auto
 fi
 
@@ -17344,17 +18937,17 @@ if test "$enable_libxml2" != "yes"; then
        if test "$expat_prefix" = "auto" -a "$expat_includes" = "auto" -a "$expat_lib" = "auto"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EXPAT" >&5
-$as_echo_n "checking for EXPAT... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EXPAT" >&5
+printf %s "checking for EXPAT... " >&6; }
 
 if test -n "$EXPAT_CFLAGS"; then
     pkg_cv_EXPAT_CFLAGS="$EXPAT_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"expat\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"expat\""; } >&5
   ($PKG_CONFIG --exists --print-errors "expat") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_EXPAT_CFLAGS=`$PKG_CONFIG --cflags "expat" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17368,10 +18961,10 @@ if test -n "$EXPAT_LIBS"; then
     pkg_cv_EXPAT_LIBS="$EXPAT_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"expat\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"expat\""; } >&5
   ($PKG_CONFIG --exists --print-errors "expat") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_EXPAT_LIBS=`$PKG_CONFIG --libs "expat" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17385,8 +18978,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
 
        use_pkgconfig_for_expat=no
 elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        use_pkgconfig_for_expat=no
 else
        EXPAT_CFLAGS=$pkg_cv_EXPAT_CFLAGS
        EXPAT_LIBS=$pkg_cv_EXPAT_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
        else
        CPPFLAGS="$CPPFLAGS $EXPAT_CFLAGS"
        LIBS="$LIBS $EXPAT_LIBS"
 
-       ac_fn_c_check_header_mongrel "$LINENO" "expat.h" "ac_cv_header_expat_h" "$ac_includes_default"
-if test "x$ac_cv_header_expat_h" = xyes; then :
+       ac_fn_c_check_header_compile "$LINENO" "expat.h" "ac_cv_header_expat_h" "$ac_includes_default"
+if test "x$ac_cv_header_expat_h" = xyes
+then :
 
 fi
 
-
        if test "$ac_cv_header_expat_h" = "no"; then
-               ac_fn_c_check_header_mongrel "$LINENO" "xmlparse.h" "ac_cv_header_xmlparse_h" "$ac_includes_default"
-if test "x$ac_cv_header_xmlparse_h" = xyes; then :
+               ac_fn_c_check_header_compile "$LINENO" "xmlparse.h" "ac_cv_header_xmlparse_h" "$ac_includes_default"
+if test "x$ac_cv_header_xmlparse_h" = xyes
+then :
 
 fi
 
-
                if test "$ac_cv_header_xmlparse_h" = "yes"; then
                        HAVE_XMLPARSE_H=1
 
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_XMLPARSE_H $HAVE_XMLPARSE_H
-_ACEOF
+printf "%s\n" "#define HAVE_XMLPARSE_H $HAVE_XMLPARSE_H" >>confdefs.h
 
                else
                        as_fn_error $? "
 *** expat is required. or try to use --enable-libxml2" "$LINENO" 5
                fi
        fi
-       for ac_func in XML_SetDoctypeDeclHandler
-do :
-  ac_fn_c_check_func "$LINENO" "XML_SetDoctypeDeclHandler" "ac_cv_func_XML_SetDoctypeDeclHandler"
-if test "x$ac_cv_func_XML_SetDoctypeDeclHandler" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_XML_SETDOCTYPEDECLHANDLER 1
-_ACEOF
+       ac_fn_c_check_func "$LINENO" "XML_SetDoctypeDeclHandler" "ac_cv_func_XML_SetDoctypeDeclHandler"
+if test "x$ac_cv_func_XML_SetDoctypeDeclHandler" = xyes
+then :
+  printf "%s\n" "#define HAVE_XML_SETDOCTYPEDECLHANDLER 1" >>confdefs.h
 
 fi
-done
 
        if test "$ac_cv_func_XML_SetDoctypeDeclHandler" = "no"; then
                as_fn_error $? "
@@ -17498,7 +19085,8 @@ fi
 # Check libxml2 configuration
 #
 # Check whether --enable-libxml2 was given.
-if test "${enable_libxml2+set}" = set; then :
+if test ${enable_libxml2+y}
+then :
   enableval=$enable_libxml2;
 fi
 
 if test "$enable_libxml2" = "yes"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBXML2" >&5
-$as_echo_n "checking for LIBXML2... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LIBXML2" >&5
+printf %s "checking for LIBXML2... " >&6; }
 
 if test -n "$LIBXML2_CFLAGS"; then
     pkg_cv_LIBXML2_CFLAGS="$LIBXML2_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.6\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.6\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libxml-2.0 >= 2.6") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBXML2_CFLAGS=`$PKG_CONFIG --cflags "libxml-2.0 >= 2.6" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17530,10 +19118,10 @@ if test -n "$LIBXML2_LIBS"; then
     pkg_cv_LIBXML2_LIBS="$LIBXML2_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.6\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.6\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libxml-2.0 >= 2.6") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBXML2_LIBS=`$PKG_CONFIG --libs "libxml-2.0 >= 2.6" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17547,8 +19135,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -17574,10 +19162,10 @@ Alternatively, you may set the environment variables LIBXML2_CFLAGS
 and LIBXML2_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+       { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "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.
@@ -17591,15 +19179,13 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
        LIBXML2_CFLAGS=$pkg_cv_LIBXML2_CFLAGS
        LIBXML2_LIBS=$pkg_cv_LIBXML2_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
     PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0 >= 2.6"
 
-cat >>confdefs.h <<_ACEOF
-#define ENABLE_LIBXML2 1
-_ACEOF
+printf "%s\n" "#define ENABLE_LIBXML2 1" >>confdefs.h
 
 
 
@@ -17607,8 +19193,8 @@ _ACEOF
 
     fc_saved_CFLAGS="$CFLAGS"
     CFLAGS="$CFLAGS $LIBXML2_CFLAGS"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking SAX1 support in libxml2" >&5
-$as_echo_n "checking SAX1 support in libxml2... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking SAX1 support in libxml2" >&5
+printf %s "checking SAX1 support in libxml2... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -17618,14 +19204,15 @@ $as_echo_n "checking SAX1 support in libxml2... " >&6; }
        #endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-else
+if ac_fn_c_try_compile "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
+else $as_nop
   as_fn_error $? "
 *** SAX1 support in libxml2 is required. enable it or use expat instead." "$LINENO" 5
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     CFLAGS="$fc_saved_CFLAGS"
 fi
 
 #
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSONC" >&5
-$as_echo_n "checking for JSONC... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for JSONC" >&5
+printf %s "checking for JSONC... " >&6; }
 
 if test -n "$JSONC_CFLAGS"; then
     pkg_cv_JSONC_CFLAGS="$JSONC_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
   ($PKG_CONFIG --exists --print-errors "json-c") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_JSONC_CFLAGS=`$PKG_CONFIG --cflags "json-c" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17658,10 +19245,10 @@ if test -n "$JSONC_LIBS"; then
     pkg_cv_JSONC_LIBS="$JSONC_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
   ($PKG_CONFIG --exists --print-errors "json-c") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_JSONC_LIBS=`$PKG_CONFIG --libs "json-c" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
@@ -17675,8 +19262,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
 
        use_jsonc=no
 elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        use_jsonc=no
 else
        JSONC_CFLAGS=$pkg_cv_JSONC_CFLAGS
        JSONC_LIBS=$pkg_cv_JSONC_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        use_jsonc=yes
 fi
 
 
 
 #
+# Set default sub-pixel rendering
+#
+
+
+# Check whether --with-default-sub-pixel-rendering was given.
+if test ${with_default_sub_pixel_rendering+y}
+then :
+  withval=$with_default_sub_pixel_rendering; preferred_sub_pixel_rendering="$withval"
+else $as_nop
+  preferred_sub_pixel_rendering=none
+fi
+
+
+case "$preferred_sub_pixel_rendering" in
+none|bgr|rgb|vbgr|vrgb)
+    PREFERRED_SUB_PIXEL_RENDERING="$preferred_sub_pixel_rendering"
+
+    ;;
+*)
+    as_fn_error $? "Invalid sub-pixel rendering. please choose one of none, bgr, rgb, vbgr, or vrgb" "$LINENO" 5
+    ;;
+esac
+
+#
 # Set default hinting
 #
 
 
 # Check whether --with-default-hinting was given.
-if test "${with_default_hinting+set}" = set; then :
+if test ${with_default_hinting+y}
+then :
   withval=$with_default_hinting; preferred_hinting="$withval"
-else
+else $as_nop
   preferred_hinting=slight
 fi
 
@@ -17744,9 +19356,10 @@ esac
 
 
 # Check whether --with-default-fonts was given.
-if test "${with_default_fonts+set}" = set; then :
+if test ${with_default_fonts+y}
+then :
   withval=$with_default_fonts; default_fonts="$withval"
-else
+else $as_nop
   default_fonts=yes
 fi
 
 case "$default_fonts" in
 yes)
        if test "$os_win32" = "yes"; then
-               FC_DEFAULT_FONTS="WINDOWSFONTDIR"
-
-cat >>confdefs.h <<_ACEOF
-#define FC_DEFAULT_FONTS "WINDOWSFONTDIR"
-_ACEOF
-
+               default_fonts="WINDOWSFONTDIR,WINDOWSUSERFONTDIR"
+       elif test "$os_darwin" = "yes"; then
+               default_fonts="/System/Library/Fonts,/Library/Fonts,~/Library/Fonts,/System/Library/Assets/com_apple_MobileAsset_Font3,/System/Library/Assets/com_apple_MobileAsset_Font4"
        else
-               FC_DEFAULT_FONTS="/usr/share/fonts"
-
-cat >>confdefs.h <<_ACEOF
-#define FC_DEFAULT_FONTS "/usr/share/fonts"
-_ACEOF
-
+               default_fonts="/usr/share/fonts"
        fi
        ;;
-*)
-       FC_DEFAULT_FONTS="$default_fonts"
+esac
 
-cat >>confdefs.h <<_ACEOF
-#define FC_DEFAULT_FONTS "$default_fonts"
-_ACEOF
+FC_DEFAULT_FONTS=""
+if test x${default_fonts+set} = xset; then
+       fc_IFS=$IFS
+       IFS=","
+       for p in $default_fonts; do
+               if test x"$FC_DEFAULT_FONTS" != x; then
+                       FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS "
+               fi
+               FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS<dir>$p</dir>"
+       done
+       IFS=$fc_IFS
+fi
+
+
+printf "%s\n" "#define FC_DEFAULT_FONTS \"$FC_DEFAULT_FONTS\"" >>confdefs.h
 
-       ;;
-esac
 
 
 
@@ -17788,9 +19402,10 @@ esac
 #
 
 # Check whether --with-add-fonts was given.
-if test "${with_add_fonts+set}" = set; then :
+if test ${with_add_fonts+y}
+then :
   withval=$with_add_fonts; add_fonts="$withval"
-else
+else $as_nop
   add_fonts=yes
 fi
 
@@ -17816,9 +19431,7 @@ yes)
                esac
        done
 
-cat >>confdefs.h <<_ACEOF
-#define FC_ADD_FONTS "$add_fonts"
-_ACEOF
+printf "%s\n" "#define FC_ADD_FONTS \"$add_fonts\"" >>confdefs.h
 
        ;;
 no)
@@ -17827,9 +19440,7 @@ no)
 *)
        FC_ADD_FONTS="$add_fonts"
 
-cat >>confdefs.h <<_ACEOF
-#define FC_ADD_FONTS "$add_fonts"
-_ACEOF
+printf "%s\n" "#define FC_ADD_FONTS \"$add_fonts\"" >>confdefs.h
 
        ;;
 esac
@@ -17854,9 +19465,10 @@ esac
 #
 
 # Check whether --with-cache-dir was given.
-if test "${with_cache_dir+set}" = set; then :
+if test ${with_cache_dir+y}
+then :
   withval=$with_cache_dir; fc_cachedir="$withval"
-else
+else $as_nop
   fc_cachedir=yes
 fi
 
@@ -17886,33 +19498,37 @@ FC_FONTDATE=`LC_ALL=C date`
 
 
 # Check whether --with-templatedir was given.
-if test "${with_templatedir+set}" = set; then :
+if test ${with_templatedir+y}
+then :
   withval=$with_templatedir; templatedir="$withval"
-else
+else $as_nop
   templatedir=yes
 fi
 
 
 # Check whether --with-baseconfigdir was given.
-if test "${with_baseconfigdir+set}" = set; then :
+if test ${with_baseconfigdir+y}
+then :
   withval=$with_baseconfigdir; baseconfigdir="$withval"
-else
+else $as_nop
   baseconfigdir=yes
 fi
 
 
 # Check whether --with-configdir was given.
-if test "${with_configdir+set}" = set; then :
+if test ${with_configdir+y}
+then :
   withval=$with_configdir; configdir="$withval"
-else
+else $as_nop
   configdir=yes
 fi
 
 
 # Check whether --with-xmldir was given.
-if test "${with_xmldir+set}" = set; then :
+if test ${with_xmldir+y}
+then :
   withval=$with_xmldir; xmldir="$withval"
-else
+else $as_nop
   xmldir=yes
 fi
 
@@ -17961,11 +19577,55 @@ XMLDIR=${xmldir}
 # Thread-safety primitives
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Intel atomic primitives" >&5
-$as_echo_n "checking for Intel atomic primitives... " >&6; }
-if ${fc_cv_have_intel_atomic_primitives+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking stdatomic.h atomic primitives" >&5
+printf %s "checking stdatomic.h atomic primitives... " >&6; }
+if test ${fc_cv_have_stdatomic_atomic_primitives+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+
+       fc_cv_have_stdatomic_atomic_primitives=false
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+               #include <stdatomic.h>
+
+               void memory_barrier (void) { atomic_thread_fence (memory_order_acq_rel); }
+               int atomic_add (atomic_int *i) { return atomic_fetch_add_explicit (i, 1, memory_order_relaxed); }
+               int mutex_trylock (atomic_flag *m) { return atomic_flag_test_and_set_explicit (m, memory_order_acquire); }
+               void mutex_unlock (atomic_flag *m) { atomic_flag_clear_explicit (m, memory_order_release); }
+
+int
+main (void)
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+  fc_cv_have_stdatomic_atomic_primitives=true
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+    conftest$ac_exeext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fc_cv_have_stdatomic_atomic_primitives" >&5
+printf "%s\n" "$fc_cv_have_stdatomic_atomic_primitives" >&6; }
+if $fc_cv_have_stdatomic_atomic_primitives; then
+
+printf "%s\n" "#define HAVE_STDATOMIC_PRIMITIVES 1" >>confdefs.h
+
+fi
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Intel atomic primitives" >&5
+printf %s "checking for Intel atomic primitives... " >&6; }
+if test ${fc_cv_have_intel_atomic_primitives+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
        fc_cv_have_intel_atomic_primitives=false
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17977,34 +19637,36 @@ else
                void mutex_unlock (int *m) { __sync_lock_release (m); }
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   fc_cv_have_intel_atomic_primitives=true
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fc_cv_have_intel_atomic_primitives" >&5
-$as_echo "$fc_cv_have_intel_atomic_primitives" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fc_cv_have_intel_atomic_primitives" >&5
+printf "%s\n" "$fc_cv_have_intel_atomic_primitives" >&6; }
 if $fc_cv_have_intel_atomic_primitives; then
 
-$as_echo "#define HAVE_INTEL_ATOMIC_PRIMITIVES 1" >>confdefs.h
+printf "%s\n" "#define HAVE_INTEL_ATOMIC_PRIMITIVES 1" >>confdefs.h
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Solaris atomic operations" >&5
-$as_echo_n "checking for Solaris atomic operations... " >&6; }
-if ${fc_cv_have_solaris_atomic_ops+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Solaris atomic operations" >&5
+printf %s "checking for Solaris atomic operations... " >&6; }
+if test ${fc_cv_have_solaris_atomic_ops+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
        fc_cv_have_solaris_atomic_ops=false
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18018,47 +19680,44 @@ else
                void *atomic_ptr_cmpxchg (volatile void **target, void *cmp, void *newval) { return atomic_cas_ptr (target, cmp, newval); }
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   fc_cv_have_solaris_atomic_ops=true
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fc_cv_have_solaris_atomic_ops" >&5
-$as_echo "$fc_cv_have_solaris_atomic_ops" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fc_cv_have_solaris_atomic_ops" >&5
+printf "%s\n" "$fc_cv_have_solaris_atomic_ops" >&6; }
 if $fc_cv_have_solaris_atomic_ops; then
 
-$as_echo "#define HAVE_SOLARIS_ATOMIC_OPS 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SOLARIS_ATOMIC_OPS 1" >>confdefs.h
 
 fi
 
 if test "$os_win32" = no && ! $have_pthread; then
-       for ac_header in sched.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "sched.h" "ac_cv_header_sched_h" "$ac_includes_default"
-if test "x$ac_cv_header_sched_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SCHED_H 1
-_ACEOF
+       ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "$ac_includes_default"
+if test "x$ac_cv_header_sched_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SCHED_H 1" >>confdefs.h
 
 fi
 
-done
-
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing sched_yield" >&5
-$as_echo_n "checking for library containing sched_yield... " >&6; }
-if ${ac_cv_search_sched_yield+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing sched_yield" >&5
+printf %s "checking for library containing sched_yield... " >&6; }
+if test ${ac_cv_search_sched_yield+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -18066,49 +19725,51 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char sched_yield ();
 int
-main ()
+main (void)
 {
 return sched_yield ();
   ;
   return 0;
 }
 _ACEOF
-for ac_lib in '' rt; do
+for ac_lib in '' rt
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_sched_yield=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_sched_yield+:} false; then :
+  if test ${ac_cv_search_sched_yield+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_sched_yield+:} false; then :
+if test ${ac_cv_search_sched_yield+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_sched_yield=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_sched_yield" >&5
-$as_echo "$ac_cv_search_sched_yield" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_sched_yield" >&5
+printf "%s\n" "$ac_cv_search_sched_yield" >&6; }
 ac_res=$ac_cv_search_sched_yield
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
-$as_echo "#define HAVE_SCHED_YIELD 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SCHED_YIELD 1" >>confdefs.h
 
 fi
 
@@ -18138,33 +19799,31 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
         CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
         save_LIBS="$LIBS"
         LIBS="$PTHREAD_LIBS $LIBS"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5
-$as_echo_n "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5
+printf %s "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; }
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char pthread_join ();
 int
-main ()
+main (void)
 {
 return pthread_join ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ax_pthread_ok=yes
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5
-$as_echo "$ax_pthread_ok" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5
+printf "%s\n" "$ax_pthread_ok" >&6; }
         if test x"$ax_pthread_ok" = xno; then
                 PTHREAD_LIBS=""
                 PTHREAD_CFLAGS=""
@@ -18233,8 +19892,8 @@ esac
 # -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; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5
+printf %s "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"
@@ -18242,22 +19901,23 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo(void);
 int
-main ()
+main (void)
 {
 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
+if ac_fn_c_try_compile "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
   ax_pthread_extra_flags=
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+                   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 CFLAGS="$save_CFLAGS"
 
 if test x"$ax_pthread_ok" = xno; then
@@ -18265,24 +19925,25 @@ for flag in $ax_pthread_flags; do
 
         case $flag in
                 none)
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5
-$as_echo_n "checking whether pthreads work without any flags... " >&6; }
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5
+printf %s "checking whether pthreads work without any flags... " >&6; }
                 ;;
 
                 -*)
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5
-$as_echo_n "checking whether pthreads work with $flag... " >&6; }
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5
+printf %s "checking whether pthreads work with $flag... " >&6; }
                 PTHREAD_CFLAGS="$flag"
                 ;;
 
                 pthread-config)
                 # Extract the first word of "pthread-config", so it can be a program name with args.
 set dummy pthread-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_ax_pthread_config+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ax_pthread_config+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ax_pthread_config"; then
   ac_cv_prog_ax_pthread_config="$ax_pthread_config" # Let the user override the test.
 else
@@ -18290,11 +19951,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ax_pthread_config="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 fi
 ax_pthread_config=$ac_cv_prog_ax_pthread_config
 if test -n "$ax_pthread_config"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_config" >&5
-$as_echo "$ax_pthread_config" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_config" >&5
+printf "%s\n" "$ax_pthread_config" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -18320,8 +19985,8 @@ fi
                 ;;
 
                 *)
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5
-$as_echo_n "checking for the pthreads library -l$flag... " >&6; }
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5
+printf %s "checking for the pthreads library -l$flag... " >&6; }
                 PTHREAD_LIBS="-l$flag"
                 ;;
         esac
@@ -18346,7 +20011,7 @@ $as_echo_n "checking for the pthreads library -l$flag... " >&6; }
                         static void routine(void *a) { a = 0; }
                         static void *start_routine(void *a) { return a; }
 int
-main ()
+main (void)
 {
 pthread_t th; pthread_attr_t attr;
                         pthread_create(&th, 0, start_routine, 0);
@@ -18358,17 +20023,18 @@ pthread_t th; pthread_attr_t attr;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ax_pthread_ok=yes
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5
-$as_echo "$ax_pthread_ok" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5
+printf "%s\n" "$ax_pthread_ok" >&6; }
         if test "x$ax_pthread_ok" = xyes; then
                 break;
         fi
@@ -18386,39 +20052,38 @@ if test "x$ax_pthread_ok" = xyes; then
         CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
 
         # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5
-$as_echo_n "checking for joinable pthread attribute... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5
+printf %s "checking for joinable pthread attribute... " >&6; }
         attr_name=unknown
         for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
             cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <pthread.h>
 int
-main ()
+main (void)
 {
 int attr = $attr; return attr /* ; */
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   attr_name=$attr; break
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
         done
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5
-$as_echo "$attr_name" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5
+printf "%s\n" "$attr_name" >&6; }
         if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
 
-cat >>confdefs.h <<_ACEOF
-#define PTHREAD_CREATE_JOINABLE $attr_name
-_ACEOF
+printf "%s\n" "#define PTHREAD_CREATE_JOINABLE $attr_name" >>confdefs.h
 
         fi
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5
-$as_echo_n "checking if more special flags are required for pthreads... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5
+printf %s "checking if more special flags are required for pthreads... " >&6; }
         flag=no
         case ${host_os} in
             aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";;
@@ -18432,43 +20097,46 @@ $as_echo_n "checking if more special flags are required for pthreads... " >&6; }
             fi
             ;;
         esac
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5
-$as_echo "$flag" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $flag" >&5
+printf "%s\n" "$flag" >&6; }
         if test "x$flag" != xno; then
             PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
         fi
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5
-$as_echo_n "checking for PTHREAD_PRIO_INHERIT... " >&6; }
-if ${ax_cv_PTHREAD_PRIO_INHERIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5
+printf %s "checking for PTHREAD_PRIO_INHERIT... " >&6; }
+if test ${ax_cv_PTHREAD_PRIO_INHERIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
                 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <pthread.h>
 int
-main ()
+main (void)
 {
 int i = PTHREAD_PRIO_INHERIT;
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ax_cv_PTHREAD_PRIO_INHERIT=yes
-else
+else $as_nop
   ax_cv_PTHREAD_PRIO_INHERIT=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5
-$as_echo "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; }
-        if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5
+printf "%s\n" "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; }
+        if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"
+then :
 
-$as_echo "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h
 
 fi
 
@@ -18484,7 +20152,8 @@ fi
     #handle absolute path differently from PATH based program lookup
                    case "x$CC" in #(
   x/*) :
-    if as_fn_executable_p ${CC}_r; then :
+    if as_fn_executable_p ${CC}_r
+then :
   PTHREAD_CC="${CC}_r"
 fi ;; #(
   *) :
@@ -18492,11 +20161,12 @@ fi ;; #(
 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_PTHREAD_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_PTHREAD_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$PTHREAD_CC"; then
   ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test.
 else
@@ -18504,11 +20174,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_PTHREAD_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 fi
 PTHREAD_CC=$ac_cv_prog_PTHREAD_CC
 if test -n "$PTHREAD_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5
-$as_echo "$PTHREAD_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5
+printf "%s\n" "$PTHREAD_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -18567,7 +20241,7 @@ if $have_pthread; then
        CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
        CC="$PTHREAD_CC"
 
-$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PTHREAD 1" >>confdefs.h
 
 fi
  if $have_pthread; then
 # Let people not build/install docs if they don't have docbook
 #
 
-# Extract the first word of "docbook2html", so it can be a program name with args.
+# Check whether --enable-docbook was given.
+if test ${enable_docbook+y}
+then :
+  enableval=$enable_docbook;
+fi
+
+
+if test x$enable_docbook != xno; then
+       # Extract the first word of "docbook2html", so it can be a program name with args.
 set dummy docbook2html; 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_HASDOCBOOK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_HASDOCBOOK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$HASDOCBOOK"; then
   ac_cv_prog_HASDOCBOOK="$HASDOCBOOK" # Let the user override the test.
 else
@@ -18599,11 +20282,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_HASDOCBOOK="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
 fi
 HASDOCBOOK=$ac_cv_prog_HASDOCBOOK
 if test -n "$HASDOCBOOK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HASDOCBOOK" >&5
-$as_echo "$HASDOCBOOK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $HASDOCBOOK" >&5
+printf "%s\n" "$HASDOCBOOK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
+fi
 
  if test "x$HASDOCBOOK" = xyes; then
   USEDOCBOOK_TRUE=
@@ -18646,9 +20334,10 @@ if test x$HASDOCBOOK = xno; then
 fi
 
 # Check whether --enable-docs was given.
-if test "${enable_docs+set}" = set; then :
+if test ${enable_docs+y}
+then :
   enableval=$enable_docs;
-else
+else $as_nop
   enable_docs=$default_docs
 fi
 
@@ -18676,12 +20365,35 @@ else
 fi
 
 
+default_cache_build="yes"
+if test $cross_compiling = "yes"; then
+       default_cache_build="no"
+fi
+# Check whether --enable-cache-build was given.
+if test ${enable_cache_build+y}
+then :
+  enableval=$enable_cache_build;
+else $as_nop
+  enable_cache_build=$default_cache_build
+fi
+
 
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
-  $as_echo_n "(cached) " >&6
+ if test "x$enable_cache_build" = xyes; then
+  ENABLE_CACHE_BUILD_TRUE=
+  ENABLE_CACHE_BUILD_FALSE='#'
 else
+  ENABLE_CACHE_BUILD_TRUE='#'
+  ENABLE_CACHE_BUILD_FALSE=
+fi
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
+printf %s "checking whether byte ordering is bigendian... " >&6; }
+if test ${ac_cv_c_bigendian+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_c_bigendian=unknown
     # See if we're dealing with a universal compiler.
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18692,7 +20404,8 @@ else
             typedef int dummy;
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
        # Check for potential -arch flags.  It is not universal unless
        # there are at least two -arch flags with different values.
@@ -18716,7 +20429,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
         fi
        done
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     if test $ac_cv_c_bigendian = unknown; then
       # See if sys/param.h defines the BYTE_ORDER macro.
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18725,7 +20438,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
             #include <sys/param.h>
 
 int
-main ()
+main (void)
 {
 #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
                     && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
@@ -18737,7 +20450,8 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   # It does; now see whether it defined to BIG_ENDIAN or not.
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -18745,7 +20459,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
                #include <sys/param.h>
 
 int
-main ()
+main (void)
 {
 #if BYTE_ORDER != BIG_ENDIAN
                 not big endian
@@ -18755,14 +20469,15 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_bigendian=yes
-else
+else $as_nop
   ac_cv_c_bigendian=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test $ac_cv_c_bigendian = unknown; then
       # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
@@ -18771,7 +20486,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 #include <limits.h>
 
 int
-main ()
+main (void)
 {
 #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
              bogus endian macros
@@ -18781,14 +20496,15 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   # It does; now see whether it defined to _BIG_ENDIAN or not.
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <limits.h>
 
 int
-main ()
+main (void)
 {
 #ifndef _BIG_ENDIAN
                 not big endian
@@ -18798,31 +20514,33 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_bigendian=yes
-else
+else $as_nop
   ac_cv_c_bigendian=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test $ac_cv_c_bigendian = unknown; then
       # Compile a test program.
-      if test "$cross_compiling" = yes; then :
+      if test "$cross_compiling" = yes
+then :
   # Try to guess by grepping values from an object file.
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-short int ascii_mm[] =
+unsigned short int ascii_mm[] =
                  { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-               short int ascii_ii[] =
+               unsigned short int ascii_ii[] =
                  { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
                int use_ascii (int i) {
                  return ascii_mm[i] + ascii_ii[i];
                }
-               short int ebcdic_ii[] =
+               unsigned short int ebcdic_ii[] =
                  { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-               short int ebcdic_mm[] =
+               unsigned short int ebcdic_mm[] =
                  { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
                int use_ebcdic (int i) {
                  return ebcdic_mm[i] + ebcdic_ii[i];
@@ -18830,14 +20548,15 @@ short int ascii_mm[] =
                extern int foo;
 
 int
-main ()
+main (void)
 {
 return use_ascii (foo) == use_ebcdic (foo);
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
              ac_cv_c_bigendian=yes
            fi
@@ -18850,13 +20569,13 @@ if ac_fn_c_try_compile "$LINENO"; then :
              fi
            fi
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 int
-main ()
+main (void)
 {
 
             /* Are we little or big endian?  From Harbison&Steele.  */
@@ -18872,9 +20591,10 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   ac_cv_c_bigendian=no
-else
+else $as_nop
   ac_cv_c_bigendian=yes
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
 
     fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
+printf "%s\n" "$ac_cv_c_bigendian" >&6; }
  case $ac_cv_c_bigendian in #(
    yes)
-     $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
+     printf "%s\n" "#define WORDS_BIGENDIAN 1" >>confdefs.h
 ;; #(
    no)
       ;; #(
    universal)
 
-$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
+printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
 
      ;; #(
    *)
@@ -18905,17 +20625,19 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 # This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5
-$as_echo_n "checking size of void *... " >&6; }
-if ${ac_cv_sizeof_void_p+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p"        "$ac_includes_default"; then :
-
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5
+printf %s "checking size of void *... " >&6; }
+if test ${ac_cv_sizeof_void_p+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p"        "$ac_includes_default"
+then :
+
+else $as_nop
   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;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute sizeof (void *)
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -18924,33 +20646,30 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
-$as_echo "$ac_cv_sizeof_void_p" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
+printf "%s\n" "$ac_cv_sizeof_void_p" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_VOID_P $ac_cv_sizeof_void_p
-_ACEOF
+printf "%s\n" "#define SIZEOF_VOID_P $ac_cv_sizeof_void_p" >>confdefs.h
 
 
 # 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 double" >&5
-$as_echo_n "checking alignment of double... " >&6; }
-if ${ac_cv_alignof_double+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of double" >&5
+printf %s "checking alignment of double... " >&6; }
+if test ${ac_cv_alignof_double+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if ac_fn_c_compute_int "$LINENO" "(long int) offsetof (ac__type_alignof_, y)" "ac_cv_alignof_double"        "$ac_includes_default
-#ifndef offsetof
-# define offsetof(type, member) ((char *) &((type *) 0)->member - (char *) 0)
-#endif
-typedef struct { char x; double y; } ac__type_alignof_;"; then :
+typedef struct { char x; double y; } ac__type_alignof_;"
+then :
 
-else
+else $as_nop
   if test "$ac_cv_type_double" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "cannot compute alignment of double
 See \`config.log' for more details" "$LINENO" 5; }
    else
@@ -18959,33 +20678,30 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_double" >&5
-$as_echo "$ac_cv_alignof_double" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_double" >&5
+printf "%s\n" "$ac_cv_alignof_double" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define ALIGNOF_DOUBLE $ac_cv_alignof_double
-_ACEOF
+printf "%s\n" "#define ALIGNOF_DOUBLE $ac_cv_alignof_double" >>confdefs.h
 
 
 # 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
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of void *" >&5
+printf %s "checking alignment of void *... " >&6; }
+if test ${ac_cv_alignof_void_p+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   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 :
+typedef struct { char x; void * y; } ac__type_alignof_;"
+then :
 
-else
+else $as_nop
   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;}
+     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$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
@@ -18994,14 +20710,12 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_void_p" >&5
-$as_echo "$ac_cv_alignof_void_p" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_void_p" >&5
+printf "%s\n" "$ac_cv_alignof_void_p" >&6; }
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define ALIGNOF_VOID_P $ac_cv_alignof_void_p
-_ACEOF
+printf "%s\n" "#define ALIGNOF_VOID_P $ac_cv_alignof_void_p" >>confdefs.h
 
 
 
@@ -19010,7 +20724,7 @@ _ACEOF
 
 
 
-ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-conflist/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml its/Makefile po/Makefile.in po-conf/Makefile.in test/Makefile fontconfig.spec fontconfig.pc fontconfig-zip"
+ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-conflist/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml its/Makefile po/Makefile.in po-conf/Makefile.in test/Makefile fontconfig.pc fontconfig-zip"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -19039,8 +20753,8 @@ _ACEOF
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -19070,15 +20784,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
      /^ac_cv_env_/b end
      t clear
      :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
      t end
      s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
      :end' >>confcache
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
     if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+printf "%s\n" "$as_me: updating cache $cache_file" >&6;}
       if test ! -f "$cache_file" || test -h "$cache_file"; then
        cat confcache >"$cache_file"
       else
@@ -19092,8 +20806,8 @@ $as_echo "$as_me: updating cache $cache_file" >&6;}
       fi
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
 rm -f confcache
@@ -19110,7 +20824,7 @@ U=
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+  ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`
   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
   #    will be set to the directory where LIBOBJS objects are built.
   as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -19121,14 +20835,14 @@ LIBOBJS=$ac_libobjs
 LTLIBOBJS=$ac_ltlibobjs
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+printf %s "checking that generated files are newer than configure... " >&6; }
    if test -n "$am_sleep_pid"; then
      # Hide warnings about reused PIDs.
      wait $am_sleep_pid 2>/dev/null
    fi
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
+printf "%s\n" "done" >&6; }
  if test -n "$EXEEXT"; then
   am__EXEEXT_TRUE=
   am__EXEEXT_FALSE='#'
@@ -19149,6 +20863,10 @@ if test -z "${OS_WIN32_TRUE}" && test -z "${OS_WIN32_FALSE}"; then
   as_fn_error $? "conditional \"OS_WIN32\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${OS_DARWIN_TRUE}" && test -z "${OS_DARWIN_FALSE}"; then
+  as_fn_error $? "conditional \"OS_DARWIN\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${MS_LIB_AVAILABLE_TRUE}" && test -z "${MS_LIB_AVAILABLE_FALSE}"; then
   as_fn_error $? "conditional \"MS_LIB_AVAILABLE\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -19181,14 +20899,18 @@ if test -z "${ENABLE_DOCS_TRUE}" && test -z "${ENABLE_DOCS_FALSE}"; then
   as_fn_error $? "conditional \"ENABLE_DOCS\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${ENABLE_CACHE_BUILD_TRUE}" && test -z "${ENABLE_CACHE_BUILD_FALSE}"; then
+  as_fn_error $? "conditional \"ENABLE_CACHE_BUILD\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 
 
 : "${CONFIG_STATUS=./config.status}"
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}
 as_write_fail=0
 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
@@ -19211,14 +20933,16 @@ cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -19228,46 +20952,46 @@ esac
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""       $as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -19276,13 +21000,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -19291,8 +21008,12 @@ case $0 in #((
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -19304,30 +21025,10 @@ if test "x$as_myself" = x; then
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
@@ -19340,13 +21041,14 @@ as_fn_error ()
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -19373,18 +21075,20 @@ as_fn_unset ()
   { eval $1=; unset $1;}
 }
 as_unset=as_fn_unset
+
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -19396,12 +21100,13 @@ fi # as_fn_append
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
@@ -19432,7 +21137,7 @@ as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
         X"$0" : 'X\(//\)$' \| \
         X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
            s//\1/
            q
@@ -19454,6 +21159,10 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
 as_cr_digits='0123456789'
 as_cr_alnum=$as_cr_Letters$as_cr_digits
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -19467,6 +21176,12 @@ case `echo -n x` in #(((((
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -19508,7 +21223,7 @@ as_fn_mkdir_p ()
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -19517,7 +21232,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$as_dir" : 'X\(//\)[^/]' \| \
         X"$as_dir" : 'X\(//\)$' \| \
         X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -19579,8 +21294,8 @@ 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 fontconfig $as_me 2.13.1, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+This file was extended by fontconfig $as_me 2.14.2, which was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -19642,14 +21357,16 @@ $config_commands
 Report bugs to <https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new>."
 
 _ACEOF
+ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`
+ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-fontconfig config.status 2.13.1
-configured by $0, generated by GNU Autoconf 2.69,
+fontconfig config.status 2.14.2
+configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
+    printf "%s\n" "$ac_cs_version"; exit ;;
   --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
+    printf "%s\n" "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     '') as_fn_error $? "missing file argument" ;;
     esac
     as_fn_append CONFIG_FILES " '$ac_optarg'"
@@ -19705,7 +21422,7 @@ do
   --header | --heade | --head | --hea )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     as_fn_append CONFIG_HEADERS " '$ac_optarg'"
     ac_need_defaults=false;;
@@ -19714,7 +21431,7 @@ do
     as_fn_error $? "ambiguous option: \`$1'
 Try \`$0 --help' for more information.";;
   --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
+    printf "%s\n" "$ac_cs_usage"; exit ;;
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil | --si | --s)
     ac_cs_silent=: ;;
@@ -19742,7 +21459,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
   set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+  \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
   export CONFIG_SHELL
   exec "\$@"
@@ -19756,7 +21473,7 @@ exec 5>>config.log
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 ## Running $as_me. ##
 _ASBOX
-  $as_echo "$ac_log"
+  printf "%s\n" "$ac_log"
 } >&5
 
 _ACEOF
@@ -19811,12 +21528,14 @@ lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_q
 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
+FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
 file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
 want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
+lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`'
 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
@@ -19940,13 +21659,13 @@ LN_S \
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+FILECMD \
 deplibs_check_method \
 file_magic_cmd \
 file_magic_glob \
 want_nocaseglob \
 sharedlib_from_linklib_cmd \
 AR \
-AR_FLAGS \
 archiver_list_spec \
 STRIP \
 RANLIB \
@@ -20061,7 +21780,7 @@ fi
 PACKAGE="$PACKAGE"
 VERSION="$VERSION"
 ac_stdint_h="$ac_stdint_h"
-_ac_stdint_h=`$as_echo "_$PACKAGE-$ac_stdint_h" | $as_tr_cpp`
+_ac_stdint_h=`printf "%s\n" "_$PACKAGE-$ac_stdint_h" | $as_tr_cpp`
 ac_cv_stdint_message="$ac_cv_stdint_message"
 ac_cv_header_stdint_t="$ac_cv_header_stdint_t"
 ac_cv_header_stdint_x="$ac_cv_header_stdint_x"
@@ -20110,7 +21829,6 @@ do
     "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
     "po-conf/Makefile.in") CONFIG_FILES="$CONFIG_FILES po-conf/Makefile.in" ;;
     "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;;
-    "fontconfig.spec") CONFIG_FILES="$CONFIG_FILES fontconfig.spec" ;;
     "fontconfig.pc") CONFIG_FILES="$CONFIG_FILES fontconfig.pc" ;;
     "fontconfig-zip") CONFIG_FILES="$CONFIG_FILES fontconfig-zip" ;;
 
@@ -20124,9 +21842,9 @@ done
 # We use the long form for the default assignment because of an extremely
 # bizarre bug on SunOS 4.1.3.
 if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+  test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+  test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
+  test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands
 fi
 
 # Have a temporary directory for convenience.  Make it in the build tree
@@ -20462,7 +22180,7 @@ do
           esac ||
           as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
       esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+      case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
       as_fn_append ac_file_inputs " '$ac_f'"
     done
 
     # use $as_me), people would be surprised to read:
     #    /* config.h.  Generated by config.status.  */
     configure_input='Generated from '`
-         $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+         printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
        `' by configure.'
     if test x"$ac_file" != x-; then
       configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+printf "%s\n" "$as_me: creating $ac_file" >&6;}
     fi
     # Neutralize special characters interpreted by sed in replacement strings.
     case $configure_input in #(
     *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
+       ac_sed_conf_input=`printf "%s\n" "$configure_input" |
        sed 's/[\\\\&|]/\\\\&/g'`;; #(
     *) ac_sed_conf_input=$configure_input;;
     esac
@@ -20497,7 +22215,7 @@ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$ac_file" : 'X\(//\)[^/]' \| \
         X"$ac_file" : 'X\(//\)$' \| \
         X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
+printf "%s\n" X"$ac_file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -20521,9 +22239,9 @@ $as_echo X"$ac_file" |
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -20585,8 +22303,8 @@ ac_sed_dataroot='
 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 *datarootdir*) ac_datarootdir_seen=yes;;
 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   ac_datarootdir_hack='
@@ -20630,9 +22348,9 @@ test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
   { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
   { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
       "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&2;}
 
   rm -f "$ac_tmp/stdin"
@@ -20648,20 +22366,20 @@ which seems to be undefined.  Please make sure it is defined" >&2;}
   #
   if test x"$ac_file" != x-; then
     {
-      $as_echo "/* $configure_input  */" \
+      printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
     } >"$ac_tmp/config.h" \
       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}
     else
       rm -f "$ac_file"
       mv "$ac_tmp/config.h" "$ac_file" \
        || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
-    $as_echo "/* $configure_input  */" \
+    printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
       || as_fn_error $? "could not create -" "$LINENO" 5
   fi
@@ -20681,7 +22399,7 @@ $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$_am_arg" : 'X\(//\)[^/]' \| \
         X"$_am_arg" : 'X\(//\)$' \| \
         X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
+printf "%s\n" X"$_am_arg" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -20701,8 +22419,8 @@ $as_echo X"$_am_arg" |
          s/.*/./; q'`/stamp-h$_am_stamp_count
  ;;
 
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
+  :C)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+printf "%s\n" "$as_me: executing $ac_file commands" >&6;}
  ;;
   esac
 
@@ -20728,7 +22446,7 @@ esac
   for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
+    am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`
     # Check whether this is an Automake generated Makefile which includes
     # dependency-tracking related rules and includes.
     # Grep'ing the whole file directly is not great: AIX grep has a line
@@ -20740,7 +22458,7 @@ $as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$am_mf" : 'X\(//\)[^/]' \| \
         X"$am_mf" : 'X\(//\)$' \| \
         X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$am_mf" |
+printf "%s\n" X"$am_mf" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -20762,7 +22480,7 @@ $as_echo X"$am_mf" |
 $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
         X"$am_mf" : 'X\(//\)$' \| \
         X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$am_mf" |
+printf "%s\n" X/"$am_mf" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
            s//\1/
            q
@@ -20787,10 +22505,12 @@ $as_echo X/"$am_mf" |
    (exit $ac_status); } || am_rc=$?
   done
   if test $am_rc -ne 0; then
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  Try re-running configure with the
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
 See \`config.log' for more details" "$LINENO" 5; }
@@ -20946,6 +22666,9 @@ to_host_file_cmd=$lt_cv_to_host_file_cmd
 # convert \$build files to toolchain format.
 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
 
+# A file(cmd) program that detects file types.
+FILECMD=$lt_FILECMD
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -20964,8 +22687,11 @@ sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
 # The archiver.
 AR=$lt_AR
 
+# Flags to create an archive (by configure).
+lt_ar_flags=$lt_ar_flags
+
 # Flags to create an archive.
-AR_FLAGS=$lt_AR_FLAGS
+AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"}
 
 # How to feed a file listing to the archiver.
 archiver_list_spec=$lt_archiver_list_spec
@@ -21333,6 +23059,7 @@ _LT_EOF
   esac
 
 
+
 ltmain=$ac_aux_dir/ltmain.sh
 
 
@@ -21340,7 +23067,7 @@ ltmain=$ac_aux_dir/ltmain.sh
   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
   # text mode, it properly converts lines to CR/LF.  This bash problem
   # is reportedly fixed, but why not run on old versions too?
-  sed '$q' "$ltmain" >> "$cfgfile" \
+  $SED '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
    mv -f "$cfgfile" "$ofile" ||
@@ -21463,8 +23190,8 @@ ltmain=$ac_aux_dir/ltmain.sh
       esac
     done ;;
     "$ac_stdint_h":C)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_stdint_h : $_ac_stdint_h" >&5
-$as_echo "$as_me: creating $ac_stdint_h : $_ac_stdint_h" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_stdint_h : $_ac_stdint_h" >&5
+printf "%s\n" "$as_me: creating $ac_stdint_h : $_ac_stdint_h" >&6;}
 ac_stdint=$tmp/_stdint.h
 
 echo "#ifndef" $_ac_stdint_h >$ac_stdint
@@ -21895,15 +23622,15 @@ typedef           long   intptr_t;
 STDINT_EOF
 fi
     if cmp -s $ac_stdint_h $ac_stdint 2>/dev/null; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_stdint_h is unchanged" >&5
-$as_echo "$as_me: $ac_stdint_h is unchanged" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_stdint_h is unchanged" >&5
+printf "%s\n" "$as_me: $ac_stdint_h is unchanged" >&6;}
     else
       ac_dir=`$as_dirname -- "$ac_stdint_h" ||
 $as_expr X"$ac_stdint_h" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$ac_stdint_h" : 'X\(//\)[^/]' \| \
         X"$ac_stdint_h" : 'X\(//\)$' \| \
         X"$ac_stdint_h" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_stdint_h" |
+printf "%s\n" X"$ac_stdint_h" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -21960,7 +23687,8 @@ if test "$no_create" != yes; then
   $ac_cs_success || as_fn_exit 1
 fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
+
index fb8af46..f9a2c36 100644 (file)
@@ -1,8 +1,8 @@
-dnl 
+dnl
 dnl  fontconfig/configure.in
-dnl 
+dnl
 dnl  Copyright © 2003 Keith Packard
-dnl 
+dnl
 dnl  Permission to use, copy, modify, distribute, and sell this software and its
 dnl  documentation for any purpose is hereby granted without fee, provided that
 dnl  the above copyright notice appear in all copies and that both that
@@ -12,7 +12,7 @@ dnl  advertising or publicity pertaining to distribution of the software without
 dnl  specific, written prior permission.  The authors make no
 dnl  representations about the suitability of this software for any purpose.  It
 dnl  is provided "as is" without express or implied warranty.
-dnl 
+dnl
 dnl  THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 dnl  INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 dnl  EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
@@ -26,15 +26,15 @@ dnl Process this file with autoconf to create configure.
 AC_PREREQ(2.61)
 
 dnl ==========================================================================
-dnl                               Versioning              
+dnl                               Versioning
 dnl ==========================================================================
 
 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
-AC_INIT([fontconfig], [2.13.1], [https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new])
-AM_INIT_AUTOMAKE([1.11 parallel-tests dist-bzip2])
+AC_INIT([fontconfig], [2.14.2], [https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new])
+AM_INIT_AUTOMAKE([1.11 parallel-tests dist-xz])
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
 dnl ==========================================================================
@@ -53,6 +53,7 @@ m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], AC_SUBST([pkgconfigdir], ${libdir}/
 
 AM_MISSING_PROG([GIT], [git])
 AM_MISSING_PROG([GPERF], [gperf])
+AM_PATH_PYTHON([3])
 
 AC_MSG_CHECKING([for RM macro])
 _predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
@@ -88,14 +89,19 @@ PKGCONFIG_REQUIRES=
 PKGCONFIG_REQUIRES_PRIVATELY=
 
 dnl ==========================================================================
-case "$host" in
-  *-*-mingw*)
-    os_win32=yes
-    ;;
-  *)
-    os_win32=no
+AC_CANONICAL_HOST
+os_win32=no
+os_darwin=no
+case "${host_os}" in
+       cygwin*|mingw*)
+               os_win32=yes
+               ;;
+       darwin*)
+               os_darwin=yes
+               ;;
 esac
 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
+AM_CONDITIONAL(OS_DARWIN, test "$os_darwin" = "yes")
 
 dnl ==========================================================================
 dnl gettext stuff
@@ -104,7 +110,7 @@ GETTEXT_PACKAGE=$PACKAGE
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
 
-AM_GNU_GETTEXT_VERSION([0.19.8])
+AM_GNU_GETTEXT_VERSION([0.19.7])
 AM_GNU_GETTEXT([external])
 
 dnl ==========================================================================
@@ -157,7 +163,7 @@ dnl ==========================================================================
 # Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
-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])
+AC_CHECK_HEADERS([dirent.h 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.
@@ -333,39 +339,6 @@ LIBS="$fontconfig_save_libs"
 CFLAGS="$fontconfig_save_cflags"
 
 #
-# Check for uuid
-#
-if test "$os_win32" != "yes"; then
-       use_pkgconfig_for_uuid=yes
-       if test -n "${UUID_LIBS}"; then
-               save_UUID_LIBS=$UUID_LIBS
-       fi
-       PKG_CHECK_MODULES([UUID], [uuid],
-                         [use_pkgconfig_for_uuid=yes],
-                         [use_pkgconfig_for_uuid=no])
-       if test "x$use_pkgconfig_for_uuid" = "xno"; then
-               AC_MSG_CHECKING([where uuid functions comes from])
-               AC_TRY_LINK([#include <uuid/uuid.h>],
-                       [uuid_t a; uuid_generate(a);],
-                       [AC_MSG_RESULT([builtin])
-                        UUID_CFLAGS=""
-                        UUID_LIBS=""
-                       ],[AC_MSG_ERROR([
-*** uuid is required. install util-linux.
-                       ])])
-       else
-               if test -z "${save_UUID_LIBS+x}" && test "x${UUID_LIBS}" != "x"; then
-                       PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY uuid"
-               fi
-       fi
-else
-       UUID_CFLAGS=""
-       UUID_LIBS=""
-fi
-AC_SUBST(UUID_CFLAGS)
-AC_SUBST(UUID_LIBS)
-
-#
 # Check expat configuration
 #
 AC_ARG_WITH(expat,
@@ -483,6 +456,25 @@ AC_SUBST(JSONC_CFLAGS)
 AC_SUBST(JSONC_LIBS)
 
 #
+# Set default sub-pixel rendering
+#
+
+AC_ARG_WITH(default-sub-pixel-rendering,
+    [AC_HELP_STRING([--with-default-sub-pixel-rendering=NAME],
+            [Enable your preferred sub-pixel rendering configuration (none/bgr/rgb/vbgr/vrgb) [default=none]])],
+    preferred_sub_pixel_rendering="$withval", preferred_sub_pixel_rendering=none)
+
+case "$preferred_sub_pixel_rendering" in
+none|bgr|rgb|vbgr|vrgb)
+    PREFERRED_SUB_PIXEL_RENDERING="$preferred_sub_pixel_rendering"
+    AC_SUBST(PREFERRED_SUB_PIXEL_RENDERING)
+    ;;
+*)
+    AC_MSG_ERROR([Invalid sub-pixel rendering. please choose one of none, bgr, rgb, vbgr, or vrgb])
+    ;;
+esac
+
+#
 # Set default hinting
 #
 
@@ -506,29 +498,38 @@ esac
 #
 
 AC_ARG_WITH(default-fonts,
-       [AC_HELP_STRING([--with-default-fonts=DIR],
-                       [Use fonts from DIR when config is busted])],
+       [AC_HELP_STRING([--with-default-fonts=DIR1,DIR2,...],
+                       [Use fonts from DIR1,DIR2,... when config is busted])],
        default_fonts="$withval", default_fonts=yes)
 
 case "$default_fonts" in
 yes)
        if test "$os_win32" = "yes"; then
-               FC_DEFAULT_FONTS="WINDOWSFONTDIR"
-               AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "WINDOWSFONTDIR", 
-                                  [Windows font directory])
+               default_fonts="WINDOWSFONTDIR,WINDOWSUSERFONTDIR"
+       elif test "$os_darwin" = "yes"; then
+               default_fonts="/System/Library/Fonts,/Library/Fonts,~/Library/Fonts,/System/Library/Assets/com_apple_MobileAsset_Font3,/System/Library/Assets/com_apple_MobileAsset_Font4"
        else
-               FC_DEFAULT_FONTS="/usr/share/fonts"
-               AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts", 
-                                  [System font directory])
+               default_fonts="/usr/share/fonts"
        fi
        ;;
-*)
-       FC_DEFAULT_FONTS="$default_fonts"
-       AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts",
-                          [System font directory])
-       ;;
 esac
 
+FC_DEFAULT_FONTS=""
+if test x${default_fonts+set} = xset; then
+       fc_IFS=$IFS
+       IFS=","
+       for p in $default_fonts; do
+               if test x"$FC_DEFAULT_FONTS" != x; then
+                       FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS "
+               fi
+               FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS<dir>$p</dir>"
+       done
+       IFS=$fc_IFS
+fi
+
+AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$FC_DEFAULT_FONTS",
+                          [System font directory])
+
 AC_SUBST(FC_DEFAULT_FONTS)
 
 #
@@ -580,7 +581,7 @@ case "$FC_ADD_FONTS" in
 "")
        ;;
 *)
-       FC_FONTPATH=`echo $FC_ADD_FONTS | 
+       FC_FONTPATH=`echo $FC_ADD_FONTS |
                        sed -e 's/^/<dir>/' -e 's/$/<\/dir>/' -e 's/,/<\/dir> <dir>/g'`
        ;;
 esac
@@ -684,6 +685,22 @@ dnl ===========================================================================
 # Thread-safety primitives
 #
 
+AC_CACHE_CHECK([stdatomic.h atomic primitives], fc_cv_have_stdatomic_atomic_primitives, [
+       fc_cv_have_stdatomic_atomic_primitives=false
+       AC_TRY_LINK([
+               #include <stdatomic.h>
+
+               void memory_barrier (void) { atomic_thread_fence (memory_order_acq_rel); }
+               int atomic_add (atomic_int *i) { return atomic_fetch_add_explicit (i, 1, memory_order_relaxed); }
+               int mutex_trylock (atomic_flag *m) { return atomic_flag_test_and_set_explicit (m, memory_order_acquire); }
+               void mutex_unlock (atomic_flag *m) { atomic_flag_clear_explicit (m, memory_order_release); }
+               ], [], fc_cv_have_stdatomic_atomic_primitives=true
+       )
+])
+if $fc_cv_have_stdatomic_atomic_primitives; then
+       AC_DEFINE(HAVE_STDATOMIC_PRIMITIVES, 1, [Have C99 stdatomic atomic primitives])
+fi
+
 AC_CACHE_CHECK([for Intel atomic primitives], fc_cv_have_intel_atomic_primitives, [
        fc_cv_have_intel_atomic_primitives=false
        AC_TRY_LINK([
@@ -738,7 +755,13 @@ dnl ===========================================================================
 # Let people not build/install docs if they don't have docbook
 #
 
-AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+AC_ARG_ENABLE(docbook,
+       [AS_HELP_STRING([--disable-docbook],
+               [Disable building docs with docbook2html (default: no)])],,)
+
+if test x$enable_docbook != xno; then
+       AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+fi
 
 AM_CONDITIONAL(USEDOCBOOK, test "x$HASDOCBOOK" = xyes)
 
@@ -776,6 +799,19 @@ else
 fi
 AC_SUBST(DOCMAN3)
 
+dnl ===========================================================================
+default_cache_build="yes"
+if test $cross_compiling = "yes"; then
+       default_cache_build="no"
+fi
+AC_ARG_ENABLE(cache-build,
+       [AC_HELP_STRING([--disable-cache-build],
+                       [Don't run fc-cache during the build])],
+       ,
+       enable_cache_build=$default_cache_build)
+
+AM_CONDITIONAL(ENABLE_CACHE_BUILD, test "x$enable_cache_build" = xyes)
+
 
 dnl Figure out what cache format suffix to use for this architecture
 AC_C_BIGENDIAN
@@ -815,7 +851,6 @@ its/Makefile
 po/Makefile.in
 po-conf/Makefile.in
 test/Makefile
-fontconfig.spec
 fontconfig.pc
 fontconfig-zip
 ])
index 87d56c2..7782e37 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicCreate \- create an FcAtomic object
 .SH SYNOPSIS
index d5df889..6d94dd3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDeleteNew" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicDeleteNew" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicDeleteNew \- delete new file
 .SH SYNOPSIS
index a3f30cc..caf34cd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicDestroy \- destroy an FcAtomic object
 .SH SYNOPSIS
index 192a735..7c3474c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicLock" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicLock" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicLock \- lock a file
 .SH SYNOPSIS
index 1ae0589..5807c52 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicNewFile" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicNewFile" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicNewFile \- return new temporary file name
 .SH SYNOPSIS
index d902385..7bf2cd6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicOrigFile" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicOrigFile" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicOrigFile \- return original file name
 .SH SYNOPSIS
index c5f8899..5e648ee 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicReplaceOrig" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicReplaceOrig" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicReplaceOrig \- replace original with new
 .SH SYNOPSIS
index e08f78f..620053a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicUnlock" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcAtomicUnlock" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcAtomicUnlock \- unlock a file
 .SH SYNOPSIS
index bc5e0cb..54cef84 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcBlanksAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcBlanksAdd \- Add a character to an FcBlanks
 .SH SYNOPSIS
index 328b023..b27d2de 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcBlanksCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcBlanksCreate \- Create an FcBlanks
 .SH SYNOPSIS
index e2a5e18..789c198 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcBlanksDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcBlanksDestroy \- Destroy and FcBlanks
 .SH SYNOPSIS
index e735a78..9331275 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksIsMember" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcBlanksIsMember" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcBlanksIsMember \- Query membership in an FcBlanks
 .SH SYNOPSIS
index 2a754f5..e87625d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCopySet" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheCopySet" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheCopySet \- Returns a copy of the fontset from cache
 .SH SYNOPSIS
index cce2ebc..0107b0c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCreateTagFile" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheCreateTagFile" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheCreateTagFile \- Create CACHEDIR.TAG at cache directory.
 .SH SYNOPSIS
index a720e27..d2657e4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheDir" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheDir" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheDir \- Return directory of cache
 .SH SYNOPSIS
index 1c0698e..9602ca8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumFont" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheNumFont" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheNumFont \- Returns the number of fonts in cache.
 .SH SYNOPSIS
index 5ec1888..ae3f80d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumSubdir" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheNumSubdir" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheNumSubdir \- Return the number of subdirectories in cache.
 .SH SYNOPSIS
index b51c0a1..8f57b49 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheSubdir" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCacheSubdir" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCacheSubdir \- Return the i'th subdirectory.
 .SH SYNOPSIS
index fbae1b2..b3d4fa0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetAddChar" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetAddChar" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetAddChar \- Add a character to a charset
 .SH SYNOPSIS
index 91ddbbe..2c1f410 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCopy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetCopy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetCopy \- Copy a charset
 .SH SYNOPSIS
index a0c63b8..798758f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCount" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetCount" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetCount \- Count entries in a charset
 .SH SYNOPSIS
index 1a31902..db1770f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCoverage" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetCoverage" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetCoverage \- DEPRECATED return coverage for a Unicode page
 .SH SYNOPSIS
index 69933b7..d7051ee 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetCreate \- Create an empty character set
 .SH SYNOPSIS
index b2de649..9f70d8f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDelChar" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetDelChar" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetDelChar \- Add a character to a charset
 .SH SYNOPSIS
index 295357c..4dd5a47 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetDestroy \- Destroy a character set
 .SH SYNOPSIS
@@ -10,6 +10,6 @@ void FcCharSetDestroy (FcCharSet *\fIfcs\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-\fBFcCharSetDestroy\fR decrements the reference count 
+\fBFcCharSetDestroy\fR decrements the reference count
 \fIfcs\fR\&. If the reference count becomes zero, all
 memory referenced is freed.
index d5ff9a8..2a59811 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetEqual \- Compare two charsets
 .SH SYNOPSIS
index 5f126c4..be4f5b4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetFirstPage" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetFirstPage" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetFirstPage \- Start enumerating charset contents
 .SH SYNOPSIS
@@ -31,5 +31,5 @@ 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
+map[3] and later are left as an exercise for the
 reader ;).
index 47c2129..6f0bfef 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetHasChar" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetHasChar" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetHasChar \- Check a charset for a char
 .SH SYNOPSIS
index 557a2b7..8cd5351 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersect" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetIntersect" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetIntersect \- Intersect charsets
 .SH SYNOPSIS
index 038589b..3919c14 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersectCount" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetIntersectCount" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetIntersectCount \- Intersect and count charsets
 .SH SYNOPSIS
index c80bc0a..f76d683 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIsSubset" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetIsSubset" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetIsSubset \- Test for charset inclusion
 .SH SYNOPSIS
index 0c85401..973b551 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetMerge" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetMerge" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetMerge \- Merge charsets
 .SH SYNOPSIS
index 3988181..7782bd3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNew" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetNew" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetNew \- DEPRECATED alias for FcCharSetCreate
 .SH SYNOPSIS
index 229ee8c..b5e0edb 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNextPage" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetNextPage" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetNextPage \- Continue enumerating charset contents
 .SH SYNOPSIS
index 7537bee..e108eb9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtract" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetSubtract" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetSubtract \- Subtract charsets
 .SH SYNOPSIS
index fbc2f29..abff9e1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtractCount" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetSubtractCount" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetSubtractCount \- Subtract and count charsets
 .SH SYNOPSIS
index f7379bd..794914a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetUnion" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcCharSetUnion" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcCharSetUnion \- Add charsets
 .SH SYNOPSIS
index ba6c3c7..3e0009e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddDir" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigAppFontAddDir" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigAppFontAddDir \- Add fonts from directory to font database
 .SH SYNOPSIS
index 99db1c3..3bdeb65 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddFile" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigAppFontAddFile" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigAppFontAddFile \- Add font file to font database
 .SH SYNOPSIS
index 1675ddd..1a4427d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontClear" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigAppFontClear" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigAppFontClear \- Remove all app fonts from font database
 .SH SYNOPSIS
index 0fb537d..058deef 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigBuildFonts" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigBuildFonts" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigBuildFonts \- Build font database
 .SH SYNOPSIS
index 1f88703..4b9a64c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigCreate \- Create a configuration
 .SH SYNOPSIS
index 2a484eb..eef55ed 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigDestroy \- Destroy a configuration
 .SH SYNOPSIS
index f1a8896..dca85f5 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigEnableHome" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigEnableHome" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigEnableHome \- controls use of the home directory.
 .SH SYNOPSIS
index 0af674e..2408e43 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFileInfoIterGet" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigFileInfoIterGet" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigFileInfoIterGet \- Obtain the configuration file information
 .SH SYNOPSIS
@@ -13,6 +13,10 @@ FcBool FcConfigFileInfoIterGet (FcConfig *\fIconfig\fB, FcConfigFileInfoIter *\f
 Obtain the filename, the description and the flag whether it is enabled or not
 for 'iter' where points to current configuration file information.
 If the iterator is invalid, FcFalse is returned.
+.PP
+This function isn't MT-safe. \fBFcConfigReference\fR must be called
+before using \fBFcConfigFileInfoIterInit\fR and then
+\fBFcConfigDestroy\fR when the relevant values are no longer referenced.
 .SH "SINCE"
 .PP
 version 2.12.91
index 819fae2..483f153 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFileInfoIterInit" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigFileInfoIterInit" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigFileInfoIterInit \- Initialize the iterator
 .SH SYNOPSIS
@@ -11,6 +11,13 @@ void FcConfigFileInfoIterInit (FcConfig *\fIconfig\fB, FcConfigFileInfoIter *\fI
 .SH "DESCRIPTION"
 .PP
 Initialize 'iter' with the first iterator in the config file information list.
+.PP
+The config file information list is stored in numerical order for filenames
+i.e. how fontconfig actually read them.
+.PP
+This function isn't MT-safe. \fBFcConfigReference\fR must be called
+before using this and then \fBFcConfigDestroy\fR when the relevant
+values are no longer referenced.
 .SH "SINCE"
 .PP
 version 2.12.91
index 004dfd9..7b72c3e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFileInfoIterNext" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigFileInfoIterNext" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigFileInfoIterNext \- Set the iterator to point to the next list
 .SH SYNOPSIS
@@ -12,6 +12,10 @@ FcBool FcConfigFileInfoIterNext (FcConfig *\fIconfig\fB, FcConfigFileInfoIter *\
 .PP
 Set 'iter' to point to the next node in the config file information list.
 If there is no next node, FcFalse is returned.
+.PP
+This function isn't MT-safe. \fBFcConfigReference\fR must be called
+before using \fBFcConfigFileInfoIterInit\fR and then
+\fBFcConfigDestroy\fR when the relevant values are no longer referenced.
 .SH "SINCE"
 .PP
 version 2.12.91
index 771a48a..4cb261f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFilename" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigFilename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigFilename \- Find a config file
 .SH SYNOPSIS
@@ -10,14 +10,4 @@ FcChar8 * FcConfigFilename (const FcChar8 *\fIname\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Given the specified external entity name, return the associated filename.
-This provides applications a way to convert various configuration file
-references into filename form.
-.PP
-A null or empty \fIname\fR 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 \fI~\fR, 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.
+This function is deprecated and is replaced by \fBFcConfigGetFilename\fR\&.
index fd05673..10b9d7d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetBlanks" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetBlanks" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetBlanks \- Get config blanks
 .SH SYNOPSIS
index 73cdba3..8837a15 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCache" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetCache" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetCache \- DEPRECATED used to return per-user cache filename
 .SH SYNOPSIS
index 36ba9c6..5c1ef25 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCacheDirs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetCacheDirs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetCacheDirs \- return the list of directories searched for cache files
 .SH SYNOPSIS
index 5ce1e34..d1d3baa 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigDirs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetConfigDirs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetConfigDirs \- Get config directories
 .SH SYNOPSIS
index 2ef1ef6..475db67 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigFiles" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetConfigFiles" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetConfigFiles \- Get config files
 .SH SYNOPSIS
index ce7a7f5..514e589 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCurrent" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetCurrent" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetCurrent \- Return current configuration
 .SH SYNOPSIS
diff --git a/doc/FcConfigGetFilename.3 b/doc/FcConfigGetFilename.3
new file mode 100644 (file)
index 0000000..9e21bd0
--- /dev/null
@@ -0,0 +1,25 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcConfigGetFilename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
+.SH NAME
+FcConfigGetFilename \- Find a config file
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcChar8 * FcConfigGetFilename (FcConfig *\fIconfig\fB, const FcChar8 *\fIname\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Given the specified external entity name, return the associated filename.
+This provides applications a way to convert various configuration file
+references into filename form.
+.PP
+A null or empty \fIname\fR 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 \fI~\fR, 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.
+.PP
+The result of this function is affected by the FONTCONFIG_SYSROOT environment variable or equivalent functionality.
index 648545f..2c091ea 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFontDirs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetFontDirs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetFontDirs \- Get font directories
 .SH SYNOPSIS
index 5017b19..4c3fa23 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFonts" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetFonts" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetFonts \- Get config font set
 .SH SYNOPSIS
@@ -14,3 +14,7 @@ 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.
+.PP
+This function isn't MT-safe. \fBFcConfigReference\fR must be called
+before using this and then \fBFcConfigDestroy\fR when
+the return value is no longer referenced.
index 5ed759f..b1a9088 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetRescanInterval" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetRescanInterval" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetRescanInterval \- Get config rescan interval
 .SH SYNOPSIS
index 43de435..dc169ff 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetSysRoot" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigGetSysRoot" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigGetSysRoot \- Obtain the system root directory
 .SH SYNOPSIS
@@ -10,7 +10,13 @@ const FcChar8 * FcConfigGetSysRoot (const FcConfig *\fIconfig\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Obtrains the system root directory in 'config' if available.
+Obtains the system root directory in 'config' if available. All files
+(including file properties in patterns) obtained from this 'config' are
+relative to this system root directory.
+.PP
+This function isn't MT-safe. \fBFcConfigReference\fR must be called
+before using this and then \fBFcConfigDestroy\fR when
+the return value is no longer referenced.
 .SH "SINCE"
 .PP
 version 2.10.92
index 864c88b..c59dc34 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigHome" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigHome" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigHome \- return the current home directory.
 .SH SYNOPSIS
index 2184dbf..17ebf57 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigParseAndLoad" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigParseAndLoad" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigParseAndLoad \- load a configuration file
 .SH SYNOPSIS
index bd7ad44..2fe3421 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigParseAndLoadFromMemory" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigParseAndLoadFromMemory" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigParseAndLoadFromMemory \- load a configuration from memory
 .SH SYNOPSIS
index b680f10..f2bfa57 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigReference" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigReference" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigReference \- Increment config reference count
 .SH SYNOPSIS
index e462b52..aad28df 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetCurrent" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigSetCurrent" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigSetCurrent \- Set configuration as default
 .SH SYNOPSIS
index 1004eb3..7351bdc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetRescanInterval" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigSetRescanInterval" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigSetRescanInterval \- Set config rescan interval
 .SH SYNOPSIS
index e1e1183..a562e3c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetSysRoot" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigSetSysRoot" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigSetSysRoot \- Set the system root directory
 .SH SYNOPSIS
@@ -10,10 +10,13 @@ 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.
+Set 'sysroot' as the system root directory. All file paths used or created with
+this 'config' (including file properties in patterns) will be considered or
+made relative to this 'sysroot'. This allows a host to generate caches for
+targets at build time. This also allows a cache to be re-targeted to a
+different base directory if 'FcConfigGetSysRoot' is used to resolve file paths.
+When setting this on the current config this causes changing current config
+(calls FcConfigSetCurrent()).
 .SH "SINCE"
 .PP
 version 2.10.92
index 490bb5c..2edd9ed 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstitute" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigSubstitute" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigSubstitute \- Execute substitutions
 .SH SYNOPSIS
index 7f69124..8f862f1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstituteWithPat" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigSubstituteWithPat" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigSubstituteWithPat \- Execute substitutions
 .SH SYNOPSIS
index 05a32a2..4226abc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigUptoDate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcConfigUptoDate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcConfigUptoDate \- Check timestamps on config files
 .SH SYNOPSIS
index 929f7af..2f44c06 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDefaultSubstitute" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDefaultSubstitute" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDefaultSubstitute \- Perform default substitutions in a pattern
 .SH SYNOPSIS
index 6833348..9f5acf1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheClean" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheClean" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheClean \- Clean up a cache directory
 .SH SYNOPSIS
index 7fe56d3..5ac2e2b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheCreateUUID" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheCreateUUID" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheCreateUUID \- Create .uuid file at a directory
 .SH SYNOPSIS
@@ -10,10 +10,7 @@ FcBool FcDirCacheCreateUUID (FcChar8 *\fIdir\fB, FcBool\fIforce\fB, FcConfig *\f
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-This is to create .uuid file containing an UUID at a font directory of
-\fIdir\fR\&.
-The UUID will be used to identify the font directory and is used to determine
-the cache filename if available.
+This function is deprecated. it doesn't take any effects.
 .SH "SINCE"
 .PP
 version 2.12.92
index da1d7b7..1e4a1fc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheDeleteUUID" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheDeleteUUID" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheDeleteUUID \- Delete .uuid file
 .SH SYNOPSIS
index 4ebcdaa..8c861fa 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoad" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheLoad" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheLoad \- load a directory cache
 .SH SYNOPSIS
index bedd727..4042555 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoadFile" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheLoadFile" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheLoadFile \- load a cache file
 .SH SYNOPSIS
index 42f70a6..b8b8f74 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheRead" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheRead" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheRead \- read or construct a directory cache
 .SH SYNOPSIS
index 4f2819c..8cebea7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheRescan" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheRescan" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheRescan \- Re-scan a directory cache
 .SH SYNOPSIS
index ff73c26..f260e1d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnlink" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheUnlink" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheUnlink \- Remove all caches related to dir
 .SH SYNOPSIS
index acc5545..b5d2862 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnload" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheUnload" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheUnload \- unload a cache file
 .SH SYNOPSIS
index c89a40e..6833a16 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheValid" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirCacheValid" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirCacheValid \- check directory cache
 .SH SYNOPSIS
index ed5f858..e6f10e9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirSave" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirSave" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirSave \- DEPRECATED: formerly used to save a directory cache
 .SH SYNOPSIS
index 2dfcc21..c1e1eb7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirScan" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcDirScan" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcDirScan \- scan a font directory without caching it
 .SH SYNOPSIS
index 7fda564..74d38f4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileIsDir" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFileIsDir" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFileIsDir \- check whether a file is a directory
 .SH SYNOPSIS
index 7e1eb5c..e69cd71 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileScan" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFileScan" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFileScan \- scan a font file
 .SH SYNOPSIS
index 87cb829..56dc6d7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFini" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFini" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFini \- finalize fontconfig library
 .SH SYNOPSIS
index f3eb232..b4b862a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontList" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontList" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontList \- List fonts
 .SH SYNOPSIS
index d94d711..6636804 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontMatch" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontMatch" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontMatch \- Return best font
 .SH SYNOPSIS
index 9cf37b0..1e6b6b9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontRenderPrepare" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontRenderPrepare" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontRenderPrepare \- Prepare pattern for loading font file
 .SH SYNOPSIS
index 52dbc3d..711105c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetAdd \- Add to a font set
 .SH SYNOPSIS
index fbf9d3d..9a1c341 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetCreate \- Create a font set
 .SH SYNOPSIS
index 5d2d056..fd2eeef 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetDestroy \- Destroy a font set
 .SH SYNOPSIS
index 0d92bd1..9a61626 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetList" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetList" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetList \- List fonts from a set of font sets
 .SH SYNOPSIS
index 03268eb..df7eef6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetMatch" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetMatch" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetMatch \- Return the best font from a set of font sets
 .SH SYNOPSIS
index a7d4653..929a0e7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetPrint" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetPrint" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetPrint \- Print a set of patterns to stdout
 .SH SYNOPSIS
index 580c9a7..4ae7670 100644 (file)
@@ -1,17 +1,17 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSort" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetSort" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetSort \- Add to a font set
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
 .sp
-FcFontSetSort (FcConfig *\fIconfig\fB, FcFontSet **\fIsets\fB, int\fInsets\fB, FcPattern *\fIpattern\fB, FcBool \fItrim\fB, FcCharSet **\fIcsp\fB, FcResult *\fIresult\fB);
+FcFontSet * FcFontSetSort (FcConfig *\fIconfig\fB, FcFontSet **\fIsets\fB, int\fInsets\fB, FcPattern *\fIpattern\fB, FcBool \fItrim\fB, FcCharSet **\fIcsp\fB, FcResult *\fIresult\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
 Returns the list of fonts from \fIsets\fR
-sorted by closeness to \fIpattern\fR\&. 
+sorted by closeness to \fIpattern\fR\&.
 If \fItrim\fR 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
index d509446..9ca94a8 100644 (file)
@@ -1,12 +1,12 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSortDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSetSortDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSetSortDestroy \- DEPRECATED destroy a font set
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
 .sp
-FcFontSetSortDestroy (FcFontSet *\fIset\fB);
+void FcFontSetSortDestroy (FcFontSet *\fIset\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
index 48715f1..796db2f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSort" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFontSort" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFontSort \- Return list of matching fonts
 .SH SYNOPSIS
index 39106cb..1708209 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharIndex" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeCharIndex" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeCharIndex \- map Unicode to glyph id
 .SH SYNOPSIS
index 2dbff35..085d4cb 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSet" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeCharSet" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeCharSet \- compute Unicode coverage
 .SH SYNOPSIS
index b6e9bab..0978db7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSetAndSpacing" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeCharSetAndSpacing" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeCharSetAndSpacing \- compute Unicode coverage and spacing type
 .SH SYNOPSIS
index 3e1f44e..230a219 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQuery" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeQuery" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeQuery \- compute pattern from font file (and index)
 .SH SYNOPSIS
index 23b15d4..1c91f3a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQueryAll" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeQueryAll" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeQueryAll \- compute all patterns from font file (and index)
 .SH SYNOPSIS
index 008e130..cfa3421 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQueryFace" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcFreeTypeQueryFace" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcFreeTypeQueryFace \- compute pattern from FT_Face
 .SH SYNOPSIS
index 86edc52..43ea544 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetDefaultLangs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcGetDefaultLangs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcGetDefaultLangs \- Get the default languages list
 .SH SYNOPSIS
index 2e9e287..cc64aa2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetLangs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcGetLangs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcGetLangs \- Get list of languages
 .SH SYNOPSIS
index 7f71b9e..dec74d9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetVersion" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcGetVersion" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcGetVersion \- library version number
 .SH SYNOPSIS
index ffcffdf..0e7ee4a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInit" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcInit" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcInit \- initialize fontconfig library
 .SH SYNOPSIS
index 2edbe9a..01d8664 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitBringUptoDate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcInitBringUptoDate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcInitBringUptoDate \- reload configuration files if needed
 .SH SYNOPSIS
index 3e4bc32..3d63d10 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfig" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcInitLoadConfig" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcInitLoadConfig \- load configuration
 .SH SYNOPSIS
index 04e0818..2f44b57 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfigAndFonts" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcInitLoadConfigAndFonts" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcInitLoadConfigAndFonts \- load configuration and font data
 .SH SYNOPSIS
index b70dde6..072b6d8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitReinitialize" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcInitReinitialize" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcInitReinitialize \- re-initialize library
 .SH SYNOPSIS
index 4d4408d..7411ce2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsLower" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcIsLower" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcIsLower \- check for lower case ASCII character
 .SH SYNOPSIS
index 9b955f4..a1e0f0b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsUpper" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcIsUpper" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcIsUpper \- check for upper case ASCII character
 .SH SYNOPSIS
index 5329dd6..9d76cdf 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangGetCharSet" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangGetCharSet" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangGetCharSet \- Get character map for a language
 .SH SYNOPSIS
index 257e783..2c31861 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangNormalize" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangNormalize" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangNormalize \- Normalize the language string
 .SH SYNOPSIS
index e59447e..71eb775 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetAdd \- add a language to a langset
 .SH SYNOPSIS
index 442e50f..e8202ac 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCompare" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetCompare" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetCompare \- compare language sets
 .SH SYNOPSIS
index b693a41..1c50585 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetContains" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetContains" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetContains \- check langset subset relation
 .SH SYNOPSIS
index f94578e..ee54429 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCopy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetCopy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetCopy \- copy a langset object
 .SH SYNOPSIS
index 446a93b..b7a3d4a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetCreate \- create a langset object
 .SH SYNOPSIS
index a4fa56f..b455ce2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDel" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetDel" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetDel \- delete a language from a langset
 .SH SYNOPSIS
index 84ab8ba..d5f01b1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetDestroy \- destroy a langset object
 .SH SYNOPSIS
index a623bf8..2eb21ee 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetEqual \- test for matching langsets
 .SH SYNOPSIS
index 54ad78c..62357fb 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetGetLangs" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetGetLangs" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetGetLangs \- get the list of languages in the langset
 .SH SYNOPSIS
index 2d9bb19..62b958f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHasLang" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetHasLang" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetHasLang \- test langset for language support
 .SH SYNOPSIS
@@ -11,9 +11,9 @@ FcLangResult FcLangSetHasLang (const FcLangSet *\fIls\fB, const FcChar8 *\fIlang
 .SH "DESCRIPTION"
 .PP
 \fBFcLangSetHasLang\fR checks whether
-\fIls\fR supports \fIlang\fR\&. If 
+\fIls\fR supports \fIlang\fR\&. If
 \fIls\fR has a matching language and territory pair,
 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 
+function returns FcLangDifferentTerritory. If \fIls\fR
 has no matching language, this function returns FcLangDifferentLang.
index 34ba788..5b3b207 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHash" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetHash" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetHash \- return a hash value for a langset
 .SH SYNOPSIS
index 4117a13..d5db786 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetSubtract" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetSubtract" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetSubtract \- Subtract langsets
 .SH SYNOPSIS
index fc36862..945570c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetUnion" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcLangSetUnion" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcLangSetUnion \- Add langsets
 .SH SYNOPSIS
index 51bbd50..83e2f6a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixCopy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixCopy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixCopy \- Copy a matrix
 .SH SYNOPSIS
index 065494e..f73807e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixEqual \- Compare two matrices
 .SH SYNOPSIS
index 7cb5dd7..1222c5a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixInit" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixInit" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixInit \- initialize an FcMatrix structure
 .SH SYNOPSIS
index ed817b3..57ebe99 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixMultiply" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixMultiply" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixMultiply \- Multiply matrices
 .SH SYNOPSIS
index 9a6191c..563cad1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixRotate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixRotate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixRotate \- Rotate a matrix
 .SH SYNOPSIS
index 72c95ea..0a52889 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixScale" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixScale" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixScale \- Scale a matrix
 .SH SYNOPSIS
index 1b69645..d340819 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixShear" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcMatrixShear" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcMatrixShear \- Shear a matrix
 .SH SYNOPSIS
index 50d6691..a465c65 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameConstant" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameConstant" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameConstant \- Get the value for a symbolic constant
 .SH SYNOPSIS
index 5761d06..3033853 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetConstant" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameGetConstant" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameGetConstant \- Lookup symbolic constant
 .SH SYNOPSIS
diff --git a/doc/FcNameGetConstantFor.3 b/doc/FcNameGetConstantFor.3
new file mode 100644 (file)
index 0000000..20d6176
--- /dev/null
@@ -0,0 +1,14 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcNameGetConstantFor" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
+.SH NAME
+FcNameGetConstantFor \- Lookup symbolic constant For object
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+const FcConstant * FcNameGetConstantFor (FcChar8 *\fIstring\fB, char *\fIobject\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Return the FcConstant structure related to symbolic constant \fIstring\fR
+for \fIobject\fR\&.
index 3c88e59..745dfbd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetObjectType" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameGetObjectType" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameGetObjectType \- Lookup an object type
 .SH SYNOPSIS
index cc0abba..1aee8cc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameParse" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameParse" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameParse \- Parse a pattern string
 .SH SYNOPSIS
index 1a34de2..0c8c704 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterConstants" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameRegisterConstants" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameRegisterConstants \- Register symbolic constants
 .SH SYNOPSIS
index 0b57706..ccee471 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterObjectTypes" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameRegisterObjectTypes" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameRegisterObjectTypes \- Register object types
 .SH SYNOPSIS
index a203b8b..ec582ad 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnparse" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameUnparse" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameUnparse \- Convert a pattern back into a string that can be parsed
 .SH SYNOPSIS
index 4d7cdfa..11000e6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterConstants" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameUnregisterConstants" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameUnregisterConstants \- Unregister symbolic constants
 .SH SYNOPSIS
index bdddb00..1920815 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterObjectTypes" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcNameUnregisterObjectTypes" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcNameUnregisterObjectTypes \- Unregister object types
 .SH SYNOPSIS
index 28210c8..e611cda 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcObjectSetAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcObjectSetAdd \- Add to an object set
 .SH SYNOPSIS
index abcb789..6fd3aba 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetBuild" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcObjectSetBuild" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild \- Build object set from args
 .SH SYNOPSIS
index 8a2c29b..f777238 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcObjectSetCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcObjectSetCreate \- Create an object set
 .SH SYNOPSIS
index 20dc60b..b4d3f31 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcObjectSetDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcObjectSetDestroy \- Destroy an object set
 .SH SYNOPSIS
index 98fc8f9..f766044 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd-Type" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternAdd-Type" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange \- Add a typed value to a pattern
 .SH SYNOPSIS
index 01d869e..c4a6c7f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternAdd \- Add a value to a pattern
 .SH SYNOPSIS
index 61facda..d180314 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAddWeak" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternAddWeak" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternAddWeak \- Add a value to a pattern with weak binding
 .SH SYNOPSIS
index 15adc06..deddf90 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternBuild" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternBuild" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild \- Create patterns from arguments
 .SH SYNOPSIS
index a20c11f..33f07a1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternCreate \- Create a pattern
 .SH SYNOPSIS
index 37b849f..304a915 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDel" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternDel" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternDel \- Delete a property from a pattern
 .SH SYNOPSIS
@@ -10,5 +10,5 @@ FcBool FcPatternDel (FcPattern *\fIp\fB, const char *\fIobject\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Deletes all values associated with the property `object', returning 
+Deletes all values associated with the property `object', returning
 whether the property existed or not.
index 4753f20..6077317 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternDestroy \- Destroy a pattern
 .SH SYNOPSIS
index 0047ebc..4d9a7a1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDuplicate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternDuplicate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternDuplicate \- Copy a pattern
 .SH SYNOPSIS
index b001a04..4588b2b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternEqual \- Compare patterns
 .SH SYNOPSIS
index 5346a4b..de88cdc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqualSubset" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternEqualSubset" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternEqualSubset \- Compare portions of patterns
 .SH SYNOPSIS
index 9afa876..3c4193f 100644 (file)
@@ -1,12 +1,12 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFilter" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternFilter" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternFilter \- Filter the objects of pattern
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
 .sp
-FcPattern * FcPatternFilter (FcPattern *\fIp\fB, const FcObjectSet *\fI\fB);
+FcPattern * FcPatternFilter (FcPattern *\fIp\fB, const FcObjectSet *\fIos\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
index 2a8f55e..31d1b82 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFindIter" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternFindIter" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternFindIter \- Set the iterator to point to the object in the pattern
 .SH SYNOPSIS
index bd3c89a..ef56a27 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFormat" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternFormat" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternFormat \- Format a pattern into a string according to a format specifier
 .SH SYNOPSIS
index f6d01c2..bb61e86 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet-Type" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternGet-Type" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange \- Return a typed value from a pattern
 .SH SYNOPSIS
index 9f2af8d..3f322d0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternGet" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternGet \- Return a value from a pattern
 .SH SYNOPSIS
index 9b7c656..c83ca05 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGetWithBinding" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternGetWithBinding" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternGetWithBinding \- Return a value with binding from a pattern
 .SH SYNOPSIS
index ffff86d..1f7730b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternHash" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternHash" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternHash \- Compute a pattern hash value
 .SH SYNOPSIS
index 629a54f..fd6718a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterEqual \- Compare iterators
 .SH SYNOPSIS
index 564f94b..d0e9410 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterGetObject" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterGetObject" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterGetObject \- Returns an object name which the iterator point to
 .SH SYNOPSIS
index d8f32cc..b09e1a4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterGetValue" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterGetValue" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterGetValue \- Returns a value which the iterator point to
 .SH SYNOPSIS
index a5558f9..ee723fe 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterIsValid" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterIsValid" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterIsValid \- Check whether the iterator is valid or not
 .SH SYNOPSIS
index ab4d9f9..49a8484 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterNext" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterNext" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterNext \- 
 .SH SYNOPSIS
index 8eedd78..0f4ed98 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterStart" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterStart" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterStart \- Initialize the iterator with the first iterator in the pattern
 .SH SYNOPSIS
index db108a1..17d0373 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternIterValueCount" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternIterValueCount" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternIterValueCount \- Returns the number of the values which the iterator point to
 .SH SYNOPSIS
index 9fa71a1..f094426 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternObjectCount" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternObjectCount" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternObjectCount \- Returns the number of the object
 .SH SYNOPSIS
index 7396e76..607abb9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternPrint" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternPrint" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternPrint \- Print a pattern for debugging
 .SH SYNOPSIS
index ae25fb9..538c529 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternReference" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternReference" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternReference \- Increment pattern reference count
 .SH SYNOPSIS
index 5fe9442..d2287a5 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternRemove" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcPatternRemove" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcPatternRemove \- Remove one object of the specified type from the pattern
 .SH SYNOPSIS
@@ -10,5 +10,5 @@ FcBool FcPatternRemove (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIid\
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Removes the value associated with the property `object' at position `id', returning 
+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.
index 29562f4..a5a24c0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcRangeCopy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcRangeCopy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcRangeCopy \- Copy a range object
 .SH SYNOPSIS
index e9777fa..c62ec51 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcRangeCreateDouble" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcRangeCreateDouble" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcRangeCreateDouble \- create a range object for double
 .SH SYNOPSIS
index 8e5f0b9..ac79033 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcRangeCreateInteger" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcRangeCreateInteger" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcRangeCreateInteger \- create a range object for integer
 .SH SYNOPSIS
index f0a2583..301f7ef 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcRangeDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcRangeDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcRangeDestroy \- destroy a range object
 .SH SYNOPSIS
index 80ee398..6c76cfc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcRangeGetDouble" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcRangeGetDouble" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcRangeGetDouble \- Get the range in double
 .SH SYNOPSIS
index a736554..819527e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrBasename" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrBasename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrBasename \- last component of filename
 .SH SYNOPSIS
diff --git a/doc/FcStrBuildFilename.3 b/doc/FcStrBuildFilename.3
new file mode 100644 (file)
index 0000000..db9dfca
--- /dev/null
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcStrBuildFilename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
+.SH NAME
+FcStrBuildFilename \- Concatenate strings as a file path
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcChar8 * FcStrBuildFilename (const FcChar8 *\fIpath\fB, \&...\fI\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Creates a filename from the given elements of strings as file paths
+and concatenate them with the appropriate file separator.
+Arguments must be null-terminated.
+This returns a newly-allocated memory which should be freed when no longer needed.
index 5256ec1..af58daa 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmp" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrCmp" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrCmp \- compare UTF-8 strings
 .SH SYNOPSIS
index a6ae228..34958f8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmpIgnoreCase" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrCmpIgnoreCase" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrCmpIgnoreCase \- compare UTF-8 strings ignoring case
 .SH SYNOPSIS
index 114add2..bf3da61 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrCopy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrCopy \- duplicate a string
 .SH SYNOPSIS
index d22155a..7413a39 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopyFilename" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrCopyFilename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrCopyFilename \- create a complete path from a filename
 .SH SYNOPSIS
index 4285304..92036f4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDirname" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrDirname" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrDirname \- directory part of filename
 .SH SYNOPSIS
index 10460f6..25e5861 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDowncase" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrDowncase" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrDowncase \- create a lower case translation of a string
 .SH SYNOPSIS
index a04fe10..6970f7d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrFree" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrFree" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrFree \- free a string
 .SH SYNOPSIS
index 6e58c8c..93ce5f9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrListCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrListCreate \- create a string iterator
 .SH SYNOPSIS
index e9ed958..458af7b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListDone" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrListDone" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrListDone \- destroy a string iterator
 .SH SYNOPSIS
index a1d7ce8..fe4a49f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListFirst" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrListFirst" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrListFirst \- get first string in iteration
 .SH SYNOPSIS
index 40a7709..db7da6f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListNext" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrListNext" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrListNext \- get next string in iteration
 .SH SYNOPSIS
index 4e0ca5a..60a0b29 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrPlus" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrPlus" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrPlus \- concatenate two strings
 .SH SYNOPSIS
index 707009f..e03630c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAdd" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetAdd" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetAdd \- add to a string set
 .SH SYNOPSIS
index dfbdc8f..40d3cfc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAddFilename" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetAddFilename" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetAddFilename \- add a filename to a string set
 .SH SYNOPSIS
index 01da3fe..d6e9cd0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetCreate" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetCreate" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetCreate \- create a string set
 .SH SYNOPSIS
index 10e3d93..667ea5a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDel" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetDel" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetDel \- delete from a string set
 .SH SYNOPSIS
index 32984fd..89ecbc9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetDestroy \- destroy a string set
 .SH SYNOPSIS
index 2caceb5..4c37521 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetEqual \- check sets for equality
 .SH SYNOPSIS
index 2d664a2..f2a49d8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetMember" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrSetMember" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrSetMember \- check set for membership
 .SH SYNOPSIS
index 5b5d920..fda4d76 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStr" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrStr" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcStrStr \- locate UTF-8 substring
 .SH SYNOPSIS
index c9f9797..d75b5d2 100644 (file)
@@ -1,7 +1,7 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStrIgnoreCase" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcStrStrIgnoreCase" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
-FcStrStrIgnoreCase \- locate UTF-8 substring ignoring ASCII case
+FcStrStrIgnoreCase \- locate UTF-8 substring ignoring case
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
@@ -10,7 +10,7 @@ FcChar8 * FcStrStrIgnoreCase (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Returns the location of \fIs2\fR in 
+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.
index e940f83..9d2bdc6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcToLower" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcToLower" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcToLower \- convert upper case ASCII to lower case
 .SH SYNOPSIS
index 963213a..dda6fd1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUcs4ToUtf8" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcUcs4ToUtf8" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcUcs4ToUtf8 \- convert UCS4 to UTF-8
 .SH SYNOPSIS
index ea4b871..5f5ed9c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16Len" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcUtf16Len" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcUtf16Len \- count UTF-16 encoded chars
 .SH SYNOPSIS
index 4408953..2af5cdb 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16ToUcs4" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcUtf16ToUcs4" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcUtf16ToUcs4 \- convert UTF-16 to UCS4
 .SH SYNOPSIS
index 7ab7701..c00a6e9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8Len" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcUtf8Len" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcUtf8Len \- count UTF-8 encoded chars
 .SH SYNOPSIS
index 69bf3ee..d04d11f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8ToUcs4" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcUtf8ToUcs4" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcUtf8ToUcs4 \- convert UTF-8 to UCS4
 .SH SYNOPSIS
index 212badc..0571f28 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueDestroy" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcValueDestroy" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcValueDestroy \- Free a value
 .SH SYNOPSIS
index 3813364..e5f9597 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueEqual" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcValueEqual" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcValueEqual \- Test two values for equality
 .SH SYNOPSIS
index a812cc3..577e597 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValuePrint" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcValuePrint" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcValuePrint \- Print a value to stdout
 .SH SYNOPSIS
index 41c5ac2..d015107 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueSave" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcValueSave" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcValueSave \- Copy a value
 .SH SYNOPSIS
index b7d2f94..07f63ea 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcWeightFromOpenType" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcWeightFromOpenType" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcWeightFromOpenType \- Convert from OpenType weight values to fontconfig ones
 .SH SYNOPSIS
index 3c53821..1ec2c01 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcWeightFromOpenTypeDouble" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcWeightFromOpenTypeDouble" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcWeightFromOpenTypeDouble \- Convert from OpenType weight values to fontconfig ones
 .SH SYNOPSIS
@@ -14,7 +14,7 @@ double FcWeightFromOpenTypeDouble (double\fIot_weight\fB);
 to use with FC_WEIGHT, from an double 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 doubleerpolates
+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"
index 3954c5c..22bee39 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcWeightToOpenType" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcWeightToOpenType" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcWeightToOpenType \- Convert from fontconfig weight values to OpenType ones
 .SH SYNOPSIS
index 90c69e1..62a069b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcWeightToOpenTypeDouble" "3" "30 8月 2018" "Fontconfig 2.13.1" ""
+.TH "FcWeightToOpenTypeDouble" "3" "27 1月 2023" "Fontconfig 2.14.2" ""
 .SH NAME
 FcWeightToOpenTypeDouble \- Convert from fontconfig weight values to OpenType ones
 .SH SYNOPSIS
index 2194ab7..a66420c 100644 (file)
@@ -26,24 +26,39 @@ NULL =
 EXTRA_DIST =                   \
        $(BUILT_DOCS)           \
        $(DOC_FUNCS_FNCS)       \
-       $(DOC_FUNCS_SGML)       \
        $(HTML_DIR)/*           \
        $(SGML_FILES)           \
        $(check_SCRIPTS)        \
        confdir.sgml.in         \
        func.sgml               \
        $(NULL)
-MAINTAINERCLEANFILES =         \
+BUILT_SOURCES =                        \
        $(DOC_FUNCS_SGML)       \
        $(NULL)
-CLEANFILES =                   \
+
+if USEDOCBOOK
+maintainerdoccleanfiles =      \
+       $(NULL)
+cleandocfiles =                        \
        $(BUILT_DOCS)           \
+       $(NULL)
+else
+maintainerdoccleanfiles =      \
+       $(BUILT_DOCS)           \
+       $(NULL)
+cleandocfiles =                        \
+       $(NULL)
+endif
+MAINTAINERCLEANFILES =                 \
+       $(DOC_FUNCS_SGML)               \
+       $(maintainerdoccleanfiles)      \
+       $(NULL)
+CLEANFILES =                   \
+       $(cleandocfiles)        \
        $(LOCAL_SGML_FILES)     \
        confdir.sgml            \
        func.refs               \
        $(NULL)
-BUILT_SOURCES =                        \
-       $(NULL)
 SUFFIXES =     \
        .fncs   \
        .sgml   \
@@ -119,15 +134,10 @@ HTML_DIR = fontconfig-devel
 #
 noinst_PROGRAMS =      \
        $(NULL)
-##
-edit_sgml_SOURCES =    \
-       edit-sgml.c     \
+noinst_SCRIPTS =               \
+       edit-sgml.py            \
        $(NULL)
-$(edit_sgml_OBJECTS) : CC:=$(CC_FOR_BUILD)
-$(edit_sgml_OBJECTS) : CFLAGS:=$(CFLAGS_FOR_BUILD)
-$(edit_sgml_OBJECTS) : CPPFLAGS:=$(CPPFLAGS_FOR_BUILD)
-edit_sgml_LINK = $(CC_FOR_BUILD) -o $@
-#
+##
 check_SCRIPTS =                        \
        check-missing-doc       \
        $(NULL)
@@ -153,15 +163,12 @@ if USEDOCBOOK
 BUILT_SOURCES +=               \
        $(LOCAL_SGML_FILES)     \
        $(NULL)
-noinst_PROGRAMS +=     \
-       edit-sgml       \
-       $(NULL)
 htmldoc_DATA += $(HTML_DIR)/*
 
 ##
 .fncs.sgml:
        $(AM_V_GEN) $(RM) $@; \
-       $(builddir)/edit-sgml$(EXEEXT) $(srcdir)/func.sgml < '$(srcdir)/$*.fncs' > $*.sgml
+       $(PYTHON) $(srcdir)/edit-sgml.py $(srcdir)/func.sgml '$(srcdir)/$*.fncs' $*.sgml
 .sgml.txt:
        $(AM_V_GEN) $(RM) $@; \
        $(DOC2TXT) $*.sgml
@@ -186,9 +193,9 @@ func.refs: local-fontconfig-devel.sgml $(DOCS_DEPS)
        $(RM) devel-man/manpage.* &&            \
        rmdir devel-man || rm $@ || :
 confdir.sgml: $(srcdir)/confdir.sgml.in
-       $(AM_V_GEN) sed -e 's,@CONFDIR\@,${CONFDIR},' $(srcdir)/$@.in | awk '{if (NR > 1) printf("\n"); printf("%s", $$0);}' > $@
+       $(AM_V_GEN) sed -e 's,@BASECONFIGDIR\@,${BASECONFIGDIR},' $(srcdir)/$@.in | awk '{if (NR > 1) printf("\n"); printf("%s", $$0);}' > $@
 ##
-$(DOC_FUNCS_SGML): $(DOC_FUNCS_FNCS) edit-sgml$(EXEEXT) $(srcdir)/func.sgml
+$(DOC_FUNCS_SGML): $(DOC_FUNCS_FNCS) $(srcdir)/edit-sgml.py $(srcdir)/func.sgml
 $(TXT_FILES): $(DOCS_DEPS)
 $(PDF_FILES): $(DOCS_DEPS)
 $(HTML_FILES): $(DOCS_DEPS)
@@ -211,6 +218,9 @@ dist-local-check-docs-enabled:
        @true
 else
 htmldoc_DATA += $(srcdir)/$(HTML_DIR)/*
+.fncs.sgml:
+       $(AM_V_GEN) $(RM) $@; \
+       touch -r $< $@
 all-local:
 clean-local:
 dist-local-check-docs-enabled:
@@ -218,7 +228,7 @@ dist-local-check-docs-enabled:
        @false
 endif
 
-# force doc rebulid after configure
+# force doc rebuild after configure
 dist-hook-local: dist-local-check-docs-enabled
 
 -include $(top_srcdir)/git.mk
index b8ae0b4..ca6d545 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -39,6 +39,7 @@
 # PERFORMANCE OF THIS SOFTWARE.
 
 
+
 VPATH = @srcdir@
 am__is_gnu_make = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -114,17 +115,13 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 TESTS = check-missing-doc $(am__EXEEXT_1)
-noinst_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
+noinst_PROGRAMS = $(am__EXEEXT_1)
 @USEDOCBOOK_TRUE@am__append_1 = \
 @USEDOCBOOK_TRUE@      $(LOCAL_SGML_FILES)     \
 @USEDOCBOOK_TRUE@      $(NULL)
 
-@USEDOCBOOK_TRUE@am__append_2 = \
-@USEDOCBOOK_TRUE@      edit-sgml       \
-@USEDOCBOOK_TRUE@      $(NULL)
-
-@USEDOCBOOK_TRUE@am__append_3 = $(HTML_DIR)/*
-@USEDOCBOOK_FALSE@am__append_4 = $(srcdir)/$(HTML_DIR)/*
+@USEDOCBOOK_TRUE@am__append_2 = $(HTML_DIR)/*
+@USEDOCBOOK_FALSE@am__append_3 = $(srcdir)/$(HTML_DIR)/*
 subdir = doc
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
@@ -147,12 +144,8 @@ CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = version.sgml
 CONFIG_CLEAN_VPATH_FILES =
 am__EXEEXT_1 =
-@USEDOCBOOK_TRUE@am__EXEEXT_2 = edit-sgml$(EXEEXT) $(am__EXEEXT_1)
 PROGRAMS = $(noinst_PROGRAMS)
-am__objects_1 =
-am_edit_sgml_OBJECTS = edit-sgml.$(OBJEXT) $(am__objects_1)
-edit_sgml_OBJECTS = $(am_edit_sgml_OBJECTS)
-edit_sgml_LDADD = $(LDADD)
+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
@@ -165,35 +158,8 @@ 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 = 
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__maybe_remake_depfiles = depfiles
-am__depfiles_remade = ./$(DEPDIR)/edit-sgml.Po
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-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 = 
-LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
-       $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
-       $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
-       $(AM_CFLAGS) $(CFLAGS)
-AM_V_CC = $(am__v_CC_@AM_V@)
-am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
-am__v_CC_0 = @echo "  CC      " $@;
-am__v_CC_1 = 
-CCLD = $(CC)
-LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
-       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-       $(AM_LDFLAGS) $(LDFLAGS) -o $@
-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 = $(edit_sgml_SOURCES)
-DIST_SOURCES = $(edit_sgml_SOURCES)
+SOURCES =
+DIST_SOURCES =
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -234,24 +200,6 @@ 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
@@ -407,6 +355,7 @@ am__set_TESTS_bases = \
   bases='$(TEST_LOGS)'; \
   bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
   bases=`echo $$bases`
+AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)'
 RECHECK_LOGS = $(TEST_LOGS)
 AM_RECURSIVE_TARGETS = check recheck
 TEST_SUITE_LOG = test-suite.log
@@ -430,7 +379,7 @@ TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/version.sgml.in \
-       $(top_srcdir)/depcomp $(top_srcdir)/test-driver
+       $(top_srcdir)/test-driver
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -449,6 +398,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -460,6 +411,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -470,6 +422,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -540,9 +493,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -551,8 +510,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -604,9 +561,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -619,7 +581,6 @@ NULL =
 EXTRA_DIST = \
        $(BUILT_DOCS)           \
        $(DOC_FUNCS_FNCS)       \
-       $(DOC_FUNCS_SGML)       \
        $(HTML_DIR)/*           \
        $(SGML_FILES)           \
        $(check_SCRIPTS)        \
@@ -627,18 +588,33 @@ EXTRA_DIST = \
        func.sgml               \
        $(NULL)
 
+BUILT_SOURCES = $(DOC_FUNCS_SGML) $(NULL) $(am__append_1)
+@USEDOCBOOK_FALSE@maintainerdoccleanfiles = \
+@USEDOCBOOK_FALSE@     $(BUILT_DOCS)           \
+@USEDOCBOOK_FALSE@     $(NULL)
+
+@USEDOCBOOK_TRUE@maintainerdoccleanfiles = \
+@USEDOCBOOK_TRUE@      $(NULL)
+
+@USEDOCBOOK_FALSE@cleandocfiles = \
+@USEDOCBOOK_FALSE@     $(NULL)
+
+@USEDOCBOOK_TRUE@cleandocfiles = \
+@USEDOCBOOK_TRUE@      $(BUILT_DOCS)           \
+@USEDOCBOOK_TRUE@      $(NULL)
+
 MAINTAINERCLEANFILES = \
-       $(DOC_FUNCS_SGML)       \
+       $(DOC_FUNCS_SGML)               \
+       $(maintainerdoccleanfiles)      \
        $(NULL)
 
 CLEANFILES = \
-       $(BUILT_DOCS)           \
+       $(cleandocfiles)        \
        $(LOCAL_SGML_FILES)     \
        confdir.sgml            \
        func.refs               \
        $(NULL)
 
-BUILT_SOURCES = $(NULL) $(am__append_1)
 SUFFIXES = \
        .fncs   \
        .sgml   \
@@ -713,12 +689,10 @@ HTML_FILES = \
        $(NULL)
 
 HTML_DIR = fontconfig-devel
-edit_sgml_SOURCES = \
-       edit-sgml.c     \
+noinst_SCRIPTS = \
+       edit-sgml.py            \
        $(NULL)
 
-edit_sgml_LINK = $(CC_FOR_BUILD) -o $@
-#
 check_SCRIPTS = \
        check-missing-doc       \
        $(NULL)
@@ -741,12 +715,12 @@ doc_DATA = \
 
 #
 htmldocdir = $(docdir)/$(HTML_DIR)
-htmldoc_DATA = $(NULL) $(am__append_3) $(am__append_4)
+htmldoc_DATA = $(NULL) $(am__append_2) $(am__append_3)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
 .SUFFIXES:
-.SUFFIXES: .fncs .sgml .txt .html .c .lo .log .o .obj .pdf .test .test$(EXEEXT) .trs
+.SUFFIXES: .fncs .sgml .txt .html .log .pdf .test .test$(EXEEXT) .trs
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
@@ -788,45 +762,6 @@ clean-noinstPROGRAMS:
        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_GEN)$(edit_sgml_LINK) $(edit_sgml_OBJECTS) $(edit_sgml_LDADD) $(LIBS)
-
-mostlyclean-compile:
-       -rm -f *.$(OBJEXT)
-
-distclean-compile:
-       -rm -f *.tab.c
-
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/edit-sgml.Po@am__quote@ # am--include-marker
-
-$(am__depfiles_remade):
-       @$(MKDIR_P) $(@D)
-       @echo '# dummy' >$@-t && $(am__mv) $@-t $@
-
-am--depfiles: $(am__depfiles_remade)
-
-.c.o:
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@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 -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 -o $@ `$(CYGPATH_W) '$<'`
-
-.c.lo:
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
-
 mostlyclean-libtool:
        -rm -f *.lo
 
@@ -956,58 +891,12 @@ uninstall-htmldocDATA:
        @list='$(htmldoc_DATA)'; test -n "$(htmldocdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(htmldocdir)'; $(am__uninstall_files_from_dir)
+tags TAGS:
 
-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
+ctags CTAGS:
+
+cscope cscopelist:
 
-distclean-tags:
-       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 # Recover from deleted '.trs' file; this should ensure that
 # "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
@@ -1116,7 +1005,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
          test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG);               \
        fi;                                                             \
        echo "$${col}$$br$${std}";                                      \
-       echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}";   \
+       echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; \
        echo "$${col}$$br$${std}";                                      \
        create_testsuite_report --maybe-color;                          \
        echo "$$col$$br$$std";                                          \
@@ -1171,7 +1060,6 @@ check-missing-doc.log: check-missing-doc
 @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: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -1210,14 +1098,15 @@ check-am: all-am
        $(MAKE) $(AM_MAKEFLAGS) check-TESTS
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) all-local
+all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) all-local
 installdirs:
        for dir in "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(htmldocdir)"; do \
          test -z "$$dir" || $(MKDIR_P) "$$dir"; \
        done
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -1258,10 +1147,8 @@ clean-am: clean-generic clean-libtool clean-local clean-noinstPROGRAMS \
        mostlyclean-am
 
 distclean: distclean-am
-               -rm -f ./$(DEPDIR)/edit-sgml.Po
        -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-       distclean-tags
+distclean-am: clean-am distclean-generic
 
 dvi: dvi-am
 
@@ -1304,14 +1191,12 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-               -rm -f ./$(DEPDIR)/edit-sgml.Po
        -rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
 mostlyclean: mostlyclean-am
 
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
 
 pdf: pdf-am
 
@@ -1325,35 +1210,31 @@ uninstall-am: uninstall-docDATA uninstall-htmldocDATA uninstall-man
 
 uninstall-man: uninstall-man3 uninstall-man5
 
-.MAKE: all check check-am install install-am install-strip
+.MAKE: all check check-am install install-am install-exec \
+       install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am all-local am--depfiles 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 install-docDATA install-dvi install-dvi-am \
-       install-exec install-exec-am install-html install-html-am \
+.PHONY: all all-am all-local check check-TESTS check-am clean \
+       clean-generic clean-libtool clean-local clean-noinstPROGRAMS \
+       cscopelist-am ctags-am distclean distclean-generic \
+       distclean-libtool distdir dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am \
+       install-docDATA install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am \
        install-htmldocDATA install-info install-info-am install-man \
        install-man3 install-man5 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 \
-       recheck tags tags-am uninstall uninstall-am uninstall-docDATA \
-       uninstall-htmldocDATA uninstall-man uninstall-man3 \
-       uninstall-man5
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool pdf pdf-am ps ps-am recheck tags-am \
+       uninstall uninstall-am uninstall-docDATA uninstall-htmldocDATA \
+       uninstall-man uninstall-man3 uninstall-man5
 
 .PRECIOUS: Makefile
 
-$(edit_sgml_OBJECTS) : CC:=$(CC_FOR_BUILD)
-$(edit_sgml_OBJECTS) : CFLAGS:=$(CFLAGS_FOR_BUILD)
-$(edit_sgml_OBJECTS) : CPPFLAGS:=$(CPPFLAGS_FOR_BUILD)
 
 @USEDOCBOOK_TRUE@.fncs.sgml:
 @USEDOCBOOK_TRUE@      $(AM_V_GEN) $(RM) $@; \
-@USEDOCBOOK_TRUE@      $(builddir)/edit-sgml$(EXEEXT) $(srcdir)/func.sgml < '$(srcdir)/$*.fncs' > $*.sgml
+@USEDOCBOOK_TRUE@      $(PYTHON) $(srcdir)/edit-sgml.py $(srcdir)/func.sgml '$(srcdir)/$*.fncs' $*.sgml
 @USEDOCBOOK_TRUE@.sgml.txt:
 @USEDOCBOOK_TRUE@      $(AM_V_GEN) $(RM) $@; \
 @USEDOCBOOK_TRUE@      $(DOC2TXT) $*.sgml
@@ -1376,8 +1257,8 @@ $(edit_sgml_OBJECTS) : CPPFLAGS:=$(CPPFLAGS_FOR_BUILD)
 @USEDOCBOOK_TRUE@      $(RM) devel-man/manpage.* &&            \
 @USEDOCBOOK_TRUE@      rmdir devel-man || rm $@ || :
 @USEDOCBOOK_TRUE@confdir.sgml: $(srcdir)/confdir.sgml.in
-@USEDOCBOOK_TRUE@      $(AM_V_GEN) sed -e 's,@CONFDIR\@,${CONFDIR},' $(srcdir)/$@.in | awk '{if (NR > 1) printf("\n"); printf("%s", $$0);}' > $@
-@USEDOCBOOK_TRUE@$(DOC_FUNCS_SGML): $(DOC_FUNCS_FNCS) edit-sgml$(EXEEXT) $(srcdir)/func.sgml
+@USEDOCBOOK_TRUE@      $(AM_V_GEN) sed -e 's,@BASECONFIGDIR\@,${BASECONFIGDIR},' $(srcdir)/$@.in | awk '{if (NR > 1) printf("\n"); printf("%s", $$0);}' > $@
+@USEDOCBOOK_TRUE@$(DOC_FUNCS_SGML): $(DOC_FUNCS_FNCS) $(srcdir)/edit-sgml.py $(srcdir)/func.sgml
 @USEDOCBOOK_TRUE@$(TXT_FILES): $(DOCS_DEPS)
 @USEDOCBOOK_TRUE@$(PDF_FILES): $(DOCS_DEPS)
 @USEDOCBOOK_TRUE@$(HTML_FILES): $(DOCS_DEPS)
@@ -1398,13 +1279,16 @@ $(edit_sgml_OBJECTS) : CPPFLAGS:=$(CPPFLAGS_FOR_BUILD)
 @USEDOCBOOK_TRUE@      [ "x$(builddir)" != "x$(srcdir)" ] && $(RM) $(builddir)/*.sgml || :
 @USEDOCBOOK_TRUE@dist-local-check-docs-enabled:
 @USEDOCBOOK_TRUE@      @true
+@USEDOCBOOK_FALSE@.fncs.sgml:
+@USEDOCBOOK_FALSE@     $(AM_V_GEN) $(RM) $@; \
+@USEDOCBOOK_FALSE@     touch -r $< $@
 @USEDOCBOOK_FALSE@all-local:
 @USEDOCBOOK_FALSE@clean-local:
 @USEDOCBOOK_FALSE@dist-local-check-docs-enabled:
 @USEDOCBOOK_FALSE@     @echo "*** --enable-man must be used in order to make dist"
 @USEDOCBOOK_FALSE@     @false
 
-# force doc rebulid after configure
+# force doc rebuild after configure
 dist-hook-local: dist-local-check-docs-enabled
 
 -include $(top_srcdir)/git.mk
index cfcaa9f..fd4d737 100644 (file)
@@ -22,5 +22,5 @@
    PERFORMANCE OF THIS SOFTWARE.
 -->
 <!-- this is filled in at make time -->
-<!--@CONFDIR@-->
+<!--@BASECONFIGDIR@-->
 /etc/fonts
diff --git a/doc/edit-sgml.c b/doc/edit-sgml.c
deleted file mode 100644 (file)
index cc2ee76..0000000
+++ /dev/null
@@ -1,546 +0,0 @@
-/*
- * fontconfig/doc/edit-sgml.c
- *
- * 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.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-
-static void *
-New (int size);
-
-static void *
-Reallocate (void *p, int size);
-
-static void
-Dispose (void *p);
-
-typedef enum { False, True } Bool;
-
-typedef struct {
-    char    *buf;
-    int            size;
-    int            len;
-} String;
-
-static String *
-StringNew (void);
-
-static void
-StringAdd (String *s, char c);
-
-static void
-StringAddString (String *s, char *buf);
-
-static String *
-StringMake (char *buf);
-
-static void
-StringDel (String *s);
-
-static void
-StringPut (FILE *f, String *s);
-
-static void
-StringDispose (String *s);
-
-typedef struct {
-    String  *tag;
-    String  *text;
-} Replace;
-
-static Replace *
-ReplaceNew (void);
-
-static void
-ReplaceDispose (Replace *r);
-
-static void
-Bail (const char *format, int line, const char *arg);
-
-static Replace *
-ReplaceRead (FILE *f, int *linep);
-
-typedef struct _replaceList {
-    struct _replaceList        *next;
-    Replace            *r;
-} ReplaceList;
-
-static ReplaceList *
-ReplaceListNew (Replace *r, ReplaceList *next);
-
-static void
-ReplaceListDispose (ReplaceList *l);
-
-typedef struct {
-    ReplaceList        *head;
-} ReplaceSet;
-
-static ReplaceSet *
-ReplaceSetNew (void);
-
-static void
-ReplaceSetDispose (ReplaceSet *s);
-
-static void
-ReplaceSetAdd (ReplaceSet *s, Replace *r);
-
-static Replace *
-ReplaceSetFind (ReplaceSet *s, char *tag);
-
-static ReplaceSet *
-ReplaceSetRead (FILE *f, int *linep);
-
-typedef struct _skipStack {
-    struct _skipStack  *prev;
-    int                        skipping;
-} SkipStack;
-
-static SkipStack *
-SkipStackPush (SkipStack *prev, int skipping);
-
-static SkipStack *
-SkipStackPop (SkipStack *prev);
-
-typedef struct _loopStack {
-    struct _loopStack  *prev;
-    String             *tag;
-    String             *extra;
-    long               pos;
-} LoopStack;
-
-static LoopStack *
-LoopStackPush (LoopStack *prev, FILE *f, char *tag);
-
-static LoopStack *
-LoopStackLoop (ReplaceSet *rs, LoopStack *ls, FILE *f);
-
-static void
-LineSkip (FILE *f, int *linep);
-
-static void
-DoReplace (FILE *f, int *linep, ReplaceSet *s);
-
-#define STRING_INIT 128
-
-static void *
-New (int size)
-{
-    void    *m = malloc (size);
-    if (!m)
-       abort ();
-    return m;
-}
-
-static void *
-Reallocate (void *p, int size)
-{
-    void    *r = realloc (p, size);
-
-    if (!r)
-       abort ();
-    return r;
-}
-
-static void
-Dispose (void *p)
-{
-    free (p);
-}
-
-static String *
-StringNew (void)
-{
-    String  *s;
-
-    s = New (sizeof (String));
-    s->buf = New (STRING_INIT);
-    s->size = STRING_INIT - 1;
-    s->buf[0] = '\0';
-    s->len = 0;
-    return s;
-}
-
-static void
-StringAdd (String *s, char c)
-{
-    if (s->len == s->size)
-       s->buf = Reallocate (s->buf, (s->size *= 2) + 1);
-    s->buf[s->len++] = c;
-    s->buf[s->len] = '\0';
-}
-
-static void
-StringAddString (String *s, char *buf)
-{
-    while (*buf)
-       StringAdd (s, *buf++);
-}
-
-static String *
-StringMake (char *buf)
-{
-    String  *s = StringNew ();
-    StringAddString (s, buf);
-    return s;
-}
-
-static void
-StringDel (String *s)
-{
-    if (s->len)
-       s->buf[--s->len] = '\0';
-}
-
-static void
-StringPut (FILE *f, String *s)
-{
-    char    *b = s->buf;
-
-    while (*b)
-       putc (*b++, f);
-}
-
-#define StringLast(s)  ((s)->len ? (s)->buf[(s)->len - 1] : '\0')
-
-static void
-StringDispose (String *s)
-{
-    Dispose (s->buf);
-    Dispose (s);
-}
-
-static Replace *
-ReplaceNew (void)
-{
-    Replace *r = New (sizeof (Replace));
-    r->tag = StringNew ();
-    r->text = StringNew ();
-    return r;
-}
-
-static void
-ReplaceDispose (Replace *r)
-{
-    StringDispose (r->tag);
-    StringDispose (r->text);
-    Dispose (r);
-}
-
-static void
-Bail (const char *format, int line, const char *arg)
-{
-    fprintf (stderr, "fatal: ");
-    fprintf (stderr, format, line, arg);
-    fprintf (stderr, "\n");
-    exit (1);
-}
-
-static int
-Getc (FILE *f, int *linep)
-{
-    int        c = getc (f);
-    if (c == '\n')
-       ++(*linep);
-    return c;
-}
-
-static void
-Ungetc (int c, FILE *f, int *linep)
-{
-    if (c == '\n')
-       --(*linep);
-    ungetc (c, f);
-}
-
-static Replace *
-ReplaceRead (FILE *f, int *linep)
-{
-    int            c;
-    Replace *r;
-
-    while ((c = Getc (f, linep)) != '@')
-    {
-       if (c == EOF)
-           return 0;
-    }
-    r = ReplaceNew();
-    while ((c = Getc (f, linep)) != '@')
-    {
-       if (c == EOF)
-       {
-           ReplaceDispose (r);
-           return 0;
-       }
-       if (isspace (c))
-           Bail ("%d: invalid character after tag %s", *linep, r->tag->buf);
-       StringAdd (r->tag, c);
-    }
-    if (r->tag->buf[0] == '\0')
-    {
-       ReplaceDispose (r);
-       return 0;
-    }
-    while (isspace ((c = Getc (f, linep))))
-       ;
-    Ungetc (c, f, linep);
-    while ((c = Getc (f, linep)) != '@' && c != EOF)
-       StringAdd (r->text, c);
-    if (c == '@')
-       Ungetc (c, f, linep);
-    while (isspace (StringLast (r->text)))
-       StringDel (r->text);
-    if (StringLast(r->text) == '%')
-    {
-       StringDel (r->text);
-       StringAdd (r->text, ' ');
-    }
-    return r;
-}
-
-static ReplaceList *
-ReplaceListNew (Replace *r, ReplaceList *next)
-{
-    ReplaceList        *l = New (sizeof (ReplaceList));
-    l->r = r;
-    l->next = next;
-    return l;
-}
-
-static void
-ReplaceListDispose (ReplaceList *l)
-{
-    if (l)
-    {
-       ReplaceListDispose (l->next);
-       ReplaceDispose (l->r);
-       Dispose (l);
-    }
-}
-
-static ReplaceSet *
-ReplaceSetNew (void)
-{
-    ReplaceSet *s = New (sizeof (ReplaceSet));
-    s->head = 0;
-    return s;
-}
-
-static void
-ReplaceSetDispose (ReplaceSet *s)
-{
-    ReplaceListDispose (s->head);
-    Dispose (s);
-}
-
-static void
-ReplaceSetAdd (ReplaceSet *s, Replace *r)
-{
-    s->head = ReplaceListNew (r, s->head);
-}
-
-static Replace *
-ReplaceSetFind (ReplaceSet *s, char *tag)
-{
-    ReplaceList        *l;
-
-    for (l = s->head; l; l = l->next)
-       if (!strcmp (tag, l->r->tag->buf))
-           return l->r;
-    return 0;
-}
-
-static ReplaceSet *
-ReplaceSetRead (FILE *f, int *linep)
-{
-    ReplaceSet *s = ReplaceSetNew ();
-    Replace    *r;
-
-    while ((r = ReplaceRead (f, linep)))
-    {
-       while (ReplaceSetFind (s, r->tag->buf))
-           StringAdd (r->tag, '+');
-       ReplaceSetAdd (s, r);
-    }
-    if (!s->head)
-    {
-       ReplaceSetDispose (s);
-       s = 0;
-    }
-    return s;
-}
-
-static SkipStack *
-SkipStackPush (SkipStack *prev, int skipping)
-{
-    SkipStack  *ss = New (sizeof (SkipStack));
-    ss->prev = prev;
-    ss->skipping = skipping;
-    return ss;
-}
-
-static SkipStack *
-SkipStackPop (SkipStack *prev)
-{
-    SkipStack  *ss = prev->prev;
-    Dispose (prev);
-    return ss;
-}
-
-static LoopStack *
-LoopStackPush (LoopStack *prev, FILE *f, char *tag)
-{
-    LoopStack  *ls = New (sizeof (LoopStack));
-    ls->prev = prev;
-    ls->tag = StringMake (tag);
-    ls->extra = StringNew ();
-    ls->pos = ftell (f);
-    return ls;
-}
-
-static LoopStack *
-LoopStackLoop (ReplaceSet *rs, LoopStack *ls, FILE *f)
-{
-    String     *s = StringMake (ls->tag->buf);
-    LoopStack  *ret = ls;
-    Bool       loop;
-
-    StringAdd (ls->extra, '+');
-    StringAddString (s, ls->extra->buf);
-    loop = ReplaceSetFind (rs, s->buf) != 0;
-    StringDispose (s);
-    if (loop)
-       fseek (f, ls->pos, SEEK_SET);
-    else
-    {
-       ret = ls->prev;
-       StringDispose (ls->tag);
-       StringDispose (ls->extra);
-       Dispose (ls);
-    }
-    return ret;
-}
-
-static void
-LineSkip (FILE *f, int *linep)
-{
-    int        c;
-
-    while ((c = Getc (f, linep)) == '\n')
-       ;
-    Ungetc (c, f, linep);
-}
-
-static void
-DoReplace (FILE *f, int *linep, ReplaceSet *s)
-{
-    int                c;
-    String     *tag;
-    Replace    *r;
-    SkipStack  *ss = 0;
-    LoopStack  *ls = 0;
-    int                skipping = 0;
-
-    while ((c = Getc (f, linep)) != EOF)
-    {
-       if (c == '@')
-       {
-           tag = StringNew ();
-           while ((c = Getc (f, linep)) != '@')
-           {
-               if (c == EOF)
-                   abort ();
-               StringAdd (tag, c);
-           }
-           if (ls)
-               StringAddString (tag, ls->extra->buf);
-           switch (tag->buf[0]) {
-           case '?':
-               ss = SkipStackPush (ss, skipping);
-               if (!ReplaceSetFind (s, tag->buf + 1))
-                   skipping++;
-               LineSkip (f, linep);
-               break;
-           case ':':
-               if (!ss)
-                   abort ();
-               if (ss->skipping == skipping)
-                   ++skipping;
-               else
-                   --skipping;
-               LineSkip (f, linep);
-               break;
-           case ';':
-               skipping = ss->skipping;
-               ss = SkipStackPop (ss);
-               LineSkip (f, linep);
-               break;
-           case '{':
-               ls = LoopStackPush (ls, f, tag->buf + 1);
-               LineSkip (f, linep);
-               break;
-           case '}':
-               ls = LoopStackLoop (s, ls, f);
-               LineSkip (f, linep);
-               break;
-           default:
-               r = ReplaceSetFind (s, tag->buf);
-               if (r && !skipping)
-                   StringPut (stdout, r->text);
-               break;
-           }
-           StringDispose (tag);
-       }
-       else if (!skipping)
-           putchar (c);
-    }
-}
-
-int
-main (int argc, char **argv)
-{
-    FILE       *f;
-    ReplaceSet *s;
-    int                iline, oline;
-
-    if (!argv[1])
-       Bail ("usage: %*s <template.sgml>", 0, argv[0]);
-    f = fopen (argv[1], "r");
-    if (!f)
-    {
-       Bail ("can't open file %s", 0, argv[1]);
-       exit (1);
-    }
-    iline = 1;
-    while ((s = ReplaceSetRead (stdin, &iline)))
-    {
-       oline = 1;
-       DoReplace (f, &oline, s);
-       ReplaceSetDispose (s);
-       rewind (f);
-    }
-    if (ferror (stdout))
-       Bail ("%s", 0, "error writing output");
-    exit (0);
-}
diff --git a/doc/edit-sgml.py b/doc/edit-sgml.py
new file mode 100755 (executable)
index 0000000..e83c008
--- /dev/null
@@ -0,0 +1,160 @@
+#!/usr/bin/env python3
+#
+# fontconfig/doc/edit-sgml.py
+#
+# Copyright © 2003 Keith Packard
+# Copyright © 2020 Tim-Philipp Müller
+#
+# 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.
+
+import argparse
+import sys
+import re
+
+parser = argparse.ArgumentParser()
+parser.add_argument('template')
+parser.add_argument('input')
+parser.add_argument('output')
+
+args = parser.parse_known_args()
+
+template_fn = args[0].template
+output_fn = args[0].output
+input_fn = args[0].input
+
+# -------------
+# Read template
+# -------------
+
+with open(template_fn, 'r', encoding='utf8') as f:
+  template_text = f.read()
+
+template_lines = template_text.strip().split('\n')
+
+# -------------------------------------
+# Read replacement sets from .fncs file
+# -------------------------------------
+
+replacement_sets = []
+
+# TODO: also allow '-' for stdin
+with open(input_fn, 'r', encoding='utf8') as f:
+  fncs_text = f.read()
+
+# split into replacement sets
+fncs_chunks = fncs_text.strip().split('@@')
+
+for chunk in fncs_chunks:
+  # get rid of any preamble such as license and FcFreeTypeQueryAll decl in fcfreetype.fncs
+  start = chunk.find('@')
+  if start:
+    chunk = chunk[start:]
+
+  # split at '@' and remove empty lines (keep it simple instead of doing fancy
+  # things with regular expression matches, we control the input after all)
+  lines = [line for line in chunk.split('@') if line.strip()]
+
+  replacement_set = {}
+
+  while lines:
+    tag = lines.pop(0).strip()
+    # FIXME: this hard codes the tag used in funcs.sgml - we're lazy
+    if tag.startswith('PROTOTYPE'):
+      text = ''
+    else:
+      text = lines.pop(0).strip()
+      if text.endswith('%'):
+        text = text[:-1] + ' '
+
+    replacement_set[tag] = text
+
+  if replacement_set:
+    replacement_sets += [replacement_set]
+
+# ----------------
+# Open output file
+# ----------------
+
+if output_fn == '-':
+  fout = sys.stdout
+else:
+  fout = open(output_fn, "w", encoding='utf8')
+
+# ----------------
+# Process template
+# ----------------
+
+def do_replace(template_lines, rep, tag_suffix=''):
+  skip_tag = None
+  skip_lines = False
+  loop_lines = []
+  loop_tag = None
+
+  for t_line in template_lines:
+    # This makes processing easier and is the case for our templates
+    if t_line.startswith('@') and not t_line.endswith('@'):
+      sys.exit('Template lines starting with @ are expected to end with @, please fix me!')
+
+    if loop_tag:
+      loop_lines += [t_line]
+
+    # Check if line starts with a directive
+    if t_line.startswith('@?'):
+      tag = t_line[2:-1] + tag_suffix
+      if skip_tag:
+        sys.exit('Recursive skipping not supported, please fix me!')
+      skip_tag = tag
+      skip_lines = tag not in rep
+    elif t_line.startswith('@:'):
+      if not skip_tag:
+        sys.exit('Skip else but no active skip list?!')
+      skip_lines = skip_tag in rep
+    elif t_line.startswith('@;'):
+      if not skip_tag:
+        sys.exit('Skip end but no active skip list?!')
+      skip_tag = None
+      skip_lines = False
+    elif t_line.startswith('@{'):
+      if loop_tag or tag_suffix != '':
+        sys.exit('Recursive looping not supported, please fix me!')
+      loop_tag = t_line[2:-1]
+    elif t_line.startswith('@}'):
+      tag = t_line[2:-1] + tag_suffix
+      if not loop_tag:
+        sys.exit('Loop end but no active loop?!')
+      if loop_tag != tag:
+        sys.exit(f'Loop end but loop tag mismatch: {loop_tag} != {tag}!')
+      loop_lines.pop() # remove loop end directive
+      suffix = '+'
+      while loop_tag + suffix in rep:
+        do_replace(loop_lines, rep, suffix)
+        suffix += '+'
+      loop_tag = None
+      loop_lines = []
+    else:
+      if not skip_lines:
+        # special-case inline optional substitution (hard-codes specific pattern in funcs.sgml because we're lazy)
+        output_line = re.sub(r'@\?(RET)@@RET@@:@(void)@;@', lambda m: rep.get(m.group(1) + tag_suffix, m.group(2)), t_line)
+        # replace any substitution tags with their respective substitution text
+        output_line = re.sub(r'@(\w+)@', lambda m: rep.get(m.group(1) + tag_suffix, ''), output_line)
+        print(output_line, file=fout)
+
+# process template for each replacement set
+for rep in replacement_sets:
+  do_replace(template_lines, rep)
diff --git a/doc/extract-man-list.py b/doc/extract-man-list.py
new file mode 100755 (executable)
index 0000000..9298041
--- /dev/null
@@ -0,0 +1,90 @@
+#!/usr/bin/env python3
+#
+# fontconfig/doc/extract-man-list.py
+#
+# Parses .fncs files and extracts list of man pages that will be generated
+#
+# Copyright © 2020 Tim-Philipp Müller
+#
+# 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.
+
+import sys
+import re
+
+replacement_sets = []
+
+# -------------------------------------
+# Read replacement sets from .fncs file
+# -------------------------------------
+
+def read_fncs_file(fn):
+  global replacement_sets
+
+  with open(fn, 'r', encoding='utf8') as f:
+    fncs_text = f.read()
+
+    # split into replacement sets
+    fncs_chunks = fncs_text.strip().split('@@')
+
+    for chunk in fncs_chunks:
+      # get rid of any preamble such as license and FcFreeTypeQueryAll decl in fcfreetype.fncs
+      start = chunk.find('@')
+      if start:
+        chunk = chunk[start:]
+
+      # split at '@' and remove empty lines (keep it simple instead of doing fancy
+      # things with regular expression matches, we control the input after all)
+      lines = [line for line in chunk.split('@') if line.strip()]
+
+      replacement_set = {}
+
+      while lines:
+        tag = lines.pop(0).strip()
+        # FIXME: this hard codes the tag used in funcs.sgml - we're lazy
+        if tag.startswith('PROTOTYPE'):
+          text = ''
+        else:
+          text = lines.pop(0).strip()
+          if text.endswith('%'):
+            text = text[:-1] + ' '
+
+        replacement_set[tag] = text
+
+      if replacement_set:
+        replacement_sets += [replacement_set]
+
+# ----------------------------------------------------------------------------
+#  Main
+# ----------------------------------------------------------------------------
+
+if len(sys.argv) < 2:
+  sys.exit('Usage: {} FILE1.FNCS [FILE2.FNCS...]'.format(sys.argv[0]))
+
+fout = sys.stdout
+
+for input_fn in sys.argv[1:]:
+  read_fncs_file(input_fn)
+
+# process template for each replacement set
+for rep in replacement_sets:
+  if 'FUNC+' in rep:
+    man_page_title = rep.get('TITLE', rep['FUNC'])
+  else:
+    man_page_title = rep['FUNC']
+  print(man_page_title)
index 017756a..0687d70 100644 (file)
@@ -24,8 +24,8 @@
 
 @RET@           FcAtomic *
 @FUNC@          FcAtomicCreate
-@TYPE1@         const FcChar8   *              @ARG1@          file
-@PURPOSE@      create an FcAtomic object
+@TYPE1@         const FcChar8   *               @ARG1@          file
+@PURPOSE@       create an FcAtomic object
 @DESC@
 Creates a data structure containing data needed to control access to <parameter>file</parameter>.
 Writing is done to a separate file.  Once that file is complete, the original
@@ -36,7 +36,7 @@ a consistent and complete file without the need to lock for reading.
 @RET@           FcBool
 @FUNC@          FcAtomicLock
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      lock a file
+@PURPOSE@       lock a file
 @DESC@
 Attempts to lock the file referenced by <parameter>atomic</parameter>.
 Returns FcFalse if the file is already locked, else returns FcTrue and
@@ -46,7 +46,7 @@ leaves the file locked.
 @RET@           FcChar8 *
 @FUNC@          FcAtomicNewFile
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      return new temporary file name 
+@PURPOSE@       return new temporary file name
 @DESC@
 Returns the filename for writing a new version of the file referenced
 by <parameter>atomic</parameter>.
@@ -55,7 +55,7 @@ by <parameter>atomic</parameter>.
 @RET@           FcChar8 *
 @FUNC@          FcAtomicOrigFile
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      return original file name
+@PURPOSE@       return original file name
 @DESC@
 Returns the file referenced by <parameter>atomic</parameter>.
 @@
@@ -63,7 +63,7 @@ Returns the file referenced by <parameter>atomic</parameter>.
 @RET@           FcBool
 @FUNC@          FcAtomicReplaceOrig
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      replace original with new
+@PURPOSE@       replace original with new
 @DESC@
 Replaces the original file referenced by <parameter>atomic</parameter> with
 the new file. Returns FcFalse if the file cannot be replaced due to
@@ -73,7 +73,7 @@ permission issues in the filesystem. Otherwise returns FcTrue.
 @RET@           void
 @FUNC@          FcAtomicDeleteNew
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      delete new file
+@PURPOSE@       delete new file
 @DESC@
 Deletes the new file.  Used in error recovery to back out changes.
 @@
@@ -81,7 +81,7 @@ Deletes the new file.  Used in error recovery to back out changes.
 @RET@           void
 @FUNC@          FcAtomicUnlock
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      unlock a file
+@PURPOSE@       unlock a file
 @DESC@
 Unlocks the file.
 @@
@@ -89,7 +89,7 @@ Unlocks the file.
 @RET@           void
 @FUNC@          FcAtomicDestroy
 @TYPE1@         FcAtomic *                      @ARG1@          atomic
-@PURPOSE@      destroy an FcAtomic object
+@PURPOSE@       destroy an FcAtomic object
 @DESC@
 Destroys <parameter>atomic</parameter>.
 @@
diff --git a/doc/fcatomic.sgml b/doc/fcatomic.sgml
deleted file mode 100644 (file)
index 65c8fd3..0000000
+++ /dev/null
@@ -1,408 +0,0 @@
-<!--
-   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="FcAtomicCreate">
-       <refmeta>
-           <refentrytitle>FcAtomicCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicCreate</refname>
-           <refpurpose>create an FcAtomic object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcAtomic * <function>FcAtomicCreate</function></funcdef>
-               <paramdef>const FcChar8   *<parameter>file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates a data structure containing data needed to control access to <parameter>file</parameter>.
-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.
-           </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="FcAtomicLock">
-       <refmeta>
-           <refentrytitle>FcAtomicLock</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicLock</refname>
-           <refpurpose>lock a file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcAtomicLock</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Attempts to lock the file referenced by <parameter>atomic</parameter>.
-Returns FcFalse if the file is already locked, else returns FcTrue and
-leaves the file locked.
-           </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="FcAtomicNewFile">
-       <refmeta>
-           <refentrytitle>FcAtomicNewFile</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicNewFile</refname>
-           <refpurpose>return new temporary file name</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcAtomicNewFile</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the filename for writing a new version of the file referenced
-by <parameter>atomic</parameter>.
-           </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="FcAtomicOrigFile">
-       <refmeta>
-           <refentrytitle>FcAtomicOrigFile</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicOrigFile</refname>
-           <refpurpose>return original file name</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcAtomicOrigFile</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the file referenced by <parameter>atomic</parameter>.
-           </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="FcAtomicReplaceOrig">
-       <refmeta>
-           <refentrytitle>FcAtomicReplaceOrig</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicReplaceOrig</refname>
-           <refpurpose>replace original with new</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcAtomicReplaceOrig</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Replaces the original file referenced by <parameter>atomic</parameter> with
-the new file. Returns FcFalse if the file cannot be replaced due to
-permission issues in the filesystem. Otherwise returns FcTrue.
-           </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="FcAtomicDeleteNew">
-       <refmeta>
-           <refentrytitle>FcAtomicDeleteNew</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicDeleteNew</refname>
-           <refpurpose>delete new file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcAtomicDeleteNew</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deletes the new file.  Used in error recovery to back out changes.
-           </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="FcAtomicUnlock">
-       <refmeta>
-           <refentrytitle>FcAtomicUnlock</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicUnlock</refname>
-           <refpurpose>unlock a file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcAtomicUnlock</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Unlocks the file.
-           </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="FcAtomicDestroy">
-       <refmeta>
-           <refentrytitle>FcAtomicDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcAtomicDestroy</refname>
-           <refpurpose>destroy an FcAtomic object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcAtomicDestroy</function></funcdef>
-               <paramdef>FcAtomic *<parameter>atomic</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Destroys <parameter>atomic</parameter>.
-           </para>
-       </refsect1>
-    </refentry>
index 776ed70..375235a 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcBlanks *
-@FUNC@         FcBlanksCreate
-@TYPE1@                void
-@PURPOSE@      Create an FcBlanks
+@RET@           FcBlanks *
+@FUNC@          FcBlanksCreate
+@TYPE1@         void
+@PURPOSE@       Create an FcBlanks
 @DESC@
 FcBlanks is deprecated.
 This function always returns NULL.
 @@
 
-@RET@          void
-@FUNC@         FcBlanksDestroy
-@TYPE1@                FcBlanks *                      @ARG1@          b
-@PURPOSE@      Destroy and FcBlanks
+@RET@           void
+@FUNC@          FcBlanksDestroy
+@TYPE1@         FcBlanks *                      @ARG1@          b
+@PURPOSE@       Destroy and FcBlanks
 @DESC@
 FcBlanks is deprecated.
 This function does nothing.
 @@
 
-@RET@          FcBool
-@FUNC@         FcBlanksAdd
-@TYPE1@                FcBlanks *                      @ARG1@          b
-@TYPE2@                FcChar32%                       @ARG2@          ucs4
-@PURPOSE@      Add a character to an FcBlanks
+@RET@           FcBool
+@FUNC@          FcBlanksAdd
+@TYPE1@         FcBlanks *                      @ARG1@          b
+@TYPE2@         FcChar32%                       @ARG2@          ucs4
+@PURPOSE@       Add a character to an FcBlanks
 @DESC@
 FcBlanks is deprecated.
 This function always returns FALSE.
 @@
 
-@RET@          FcBool
-@FUNC@         FcBlanksIsMember
-@TYPE1@                FcBlanks *                      @ARG1@          b
-@TYPE2@                FcChar32%                       @ARG2@          ucs4
-@PURPOSE@      Query membership in an FcBlanks
+@RET@           FcBool
+@FUNC@          FcBlanksIsMember
+@TYPE1@         FcBlanks *                      @ARG1@          b
+@TYPE2@         FcChar32%                       @ARG2@          ucs4
+@PURPOSE@       Query membership in an FcBlanks
 @DESC@
 FcBlanks is deprecated.
 This function always returns FALSE.
diff --git a/doc/fcblanks.sgml b/doc/fcblanks.sgml
deleted file mode 100644 (file)
index 4023f1b..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-<!--
-   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="FcBlanksCreate">
-       <refmeta>
-           <refentrytitle>FcBlanksCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcBlanksCreate</refname>
-           <refpurpose>Create an FcBlanks</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBlanks * <function>FcBlanksCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-FcBlanks is deprecated.
-This function always returns NULL.
-           </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="FcBlanksDestroy">
-       <refmeta>
-           <refentrytitle>FcBlanksDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcBlanksDestroy</refname>
-           <refpurpose>Destroy and FcBlanks</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcBlanksDestroy</function></funcdef>
-               <paramdef>FcBlanks *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-FcBlanks is deprecated.
-This function does nothing.
-           </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="FcBlanksAdd">
-       <refmeta>
-           <refentrytitle>FcBlanksAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcBlanksAdd</refname>
-           <refpurpose>Add a character to an FcBlanks</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcBlanksAdd</function></funcdef>
-               <paramdef>FcBlanks *<parameter>b</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-FcBlanks is deprecated.
-This function always returns FALSE.
-           </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="FcBlanksIsMember">
-       <refmeta>
-           <refentrytitle>FcBlanksIsMember</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcBlanksIsMember</refname>
-           <refpurpose>Query membership in an FcBlanks</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcBlanksIsMember</function></funcdef>
-               <paramdef>FcBlanks *<parameter>b</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-FcBlanks is deprecated.
-This function always returns FALSE.
-           </para>
-       </refsect1>
-    </refentry>
index 972b642..7074b0f 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
+
 @RET@           const FcChar8 *
 @FUNC@          FcCacheDir
-@TYPE1@                const FcCache *                 @ARG1@          cache
-@PURPOSE@      Return directory of <parameter>cache</parameter>
+@TYPE1@         const FcCache *                 @ARG1@          cache
+@PURPOSE@       Return directory of <parameter>cache</parameter>
 @DESC@
 This function returns the directory from which the cache was constructed.
 @@
 
-@RET@          FcFontSet *
-@FUNC@         FcCacheCopySet
-@TYPE1@                const FcCache *                 @ARG1@          cache
-@PURPOSE@      Returns a copy of the fontset from <parameter>cache</parameter>
+@RET@           FcFontSet *
+@FUNC@          FcCacheCopySet
+@TYPE1@         const FcCache *                 @ARG1@          cache
+@PURPOSE@       Returns a copy of the fontset from <parameter>cache</parameter>
 @DESC@
 The returned fontset contains each of the font patterns from
 <parameter>cache</parameter>. This fontset may be modified, but the patterns
 from the cache are read-only.
 @@
 
-@RET@          const FcChar8 *
-@FUNC@         FcCacheSubdir
-@TYPE1@                const FcCache *                 @ARG1@          cache
-@TYPE2@                int                             @ARG2@          i
-@PURPOSE@      Return the <parameter>i</parameter>'th subdirectory.
+@RET@           const FcChar8 *
+@FUNC@          FcCacheSubdir
+@TYPE1@         const FcCache *                 @ARG1@          cache
+@TYPE2@         int                             @ARG2@          i
+@PURPOSE@       Return the <parameter>i</parameter>'th subdirectory.
 @DESC@
 The set of subdirectories stored in a cache file are indexed by this
 function, <parameter>i</parameter> should range from 0 to
@@ -50,65 +50,62 @@ function, <parameter>i</parameter> should range from 0 to
 value from FcCacheNumSubdir.
 @@
 
-@RET@          int
-@FUNC@         FcCacheNumSubdir
-@TYPE1@                const FcCache *                 @ARG1@          cache
-@PURPOSE@      Return the number of subdirectories in <parameter>cache</parameter>.
+@RET@           int
+@FUNC@          FcCacheNumSubdir
+@TYPE1@         const FcCache *                 @ARG1@          cache
+@PURPOSE@       Return the number of subdirectories in <parameter>cache</parameter>.
 @DESC@
 This returns the total number of subdirectories in the cache.
 @@
 
-@RET@          int
-@FUNC@         FcCacheNumFont
-@TYPE1@                const FcCache *                 @ARG1@          cache
-@PURPOSE@      Returns the number of fonts in <parameter>cache</parameter>.
+@RET@           int
+@FUNC@          FcCacheNumFont
+@TYPE1@         const FcCache *                 @ARG1@          cache
+@PURPOSE@       Returns the number of fonts in <parameter>cache</parameter>.
 @DESC@
 This returns the number of fonts which would be included in the return from
 FcCacheCopySet.
 @@
 
-@RET@          FcBool
-@FUNC@         FcDirCacheClean
-@TYPE1@                const FcChar8 *                 @ARG1@          cache_dir
-@TYPE2@                FcBool                          @ARG2@          verbose
-@PURPOSE@      Clean up a cache directory
+@RET@           FcBool
+@FUNC@          FcDirCacheClean
+@TYPE1@         const FcChar8 *                 @ARG1@          cache_dir
+@TYPE2@         FcBool                          @ARG2@          verbose
+@PURPOSE@       Clean up a cache directory
 @DESC@
 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
+@SINCE@         2.9.91
 @@
 
-@RET@          void
-@FUNC@         FcCacheCreateTagFile
-@TYPE1@                const FcConfig *                @ARG1@          config
-@PURPOSE@      Create CACHEDIR.TAG at cache directory.
+@RET@           void
+@FUNC@          FcCacheCreateTagFile
+@TYPE1@         const FcConfig *                @ARG1@          config
+@PURPOSE@       Create CACHEDIR.TAG at cache directory.
 @DESC@
 This tries to create CACHEDIR.TAG file at the cache directory registered
 to <parameter>config</parameter>.
-@SINCE@                2.9.91
+@SINCE@         2.9.91
 @@
 
-@RET@          FcBool
-@FUNC@         FcDirCacheCreateUUID
-@TYPE1@                FcChar8 *                       @ARG1@          dir
-@TYPE2@                FcBool                          @ARG2@          force
-@TYPE3@                FcConfig *                      @ARG3@          config
-@PURPOSE@      Create .uuid file at a directory
+@RET@           FcBool
+@FUNC@          FcDirCacheCreateUUID
+@TYPE1@         FcChar8 *                       @ARG1@          dir
+@TYPE2@         FcBool                          @ARG2@          force
+@TYPE3@         FcConfig *                      @ARG3@          config
+@PURPOSE@       Create .uuid file at a directory
 @DESC@
-This is to create .uuid file containing an UUID at a font directory of
-<parameter>dir</parameter>.
-The UUID will be used to identify the font directory and is used to determine
-the cache filename if available.
-@SINCE@                2.12.92
+This function is deprecated. it doesn't take any effects.
+@SINCE@         2.12.92
 @@
 
-@RET@          FcBool
-@FUNC@         FcDirCacheDeleteUUID
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@TYPE2@                FcConfig *                      @ARG2@          config
-@PURPOSE@      Delete .uuid file
+@RET@           FcBool
+@FUNC@          FcDirCacheDeleteUUID
+@TYPE1@         const FcChar8 *                 @ARG1@          dir
+@TYPE2@         FcConfig *                      @ARG2@          config
+@PURPOSE@       Delete .uuid file
 @DESC@
 This is to delete .uuid file containing an UUID at a font directory of
 <parameter>dir</parameter>.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
diff --git a/doc/fccache.sgml b/doc/fccache.sgml
deleted file mode 100644 (file)
index e29738c..0000000
+++ /dev/null
@@ -1,479 +0,0 @@
-<!--
-   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="FcCacheDir">
-       <refmeta>
-           <refentrytitle>FcCacheDir</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheDir</refname>
-           <refpurpose>Return directory of <parameter>cache</parameter></refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const FcChar8 * <function>FcCacheDir</function></funcdef>
-               <paramdef>const FcCache *<parameter>cache</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function returns the directory from which the cache was constructed.
-           </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="FcCacheCopySet">
-       <refmeta>
-           <refentrytitle>FcCacheCopySet</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheCopySet</refname>
-           <refpurpose>Returns a copy of the fontset from <parameter>cache</parameter></refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcCacheCopySet</function></funcdef>
-               <paramdef>const FcCache *<parameter>cache</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-The returned fontset contains each of the font patterns from
-<parameter>cache</parameter>. This fontset may be modified, but the patterns
-from the cache are read-only.
-           </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="FcCacheSubdir">
-       <refmeta>
-           <refentrytitle>FcCacheSubdir</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheSubdir</refname>
-           <refpurpose>Return the <parameter>i</parameter>'th subdirectory.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const FcChar8 * <function>FcCacheSubdir</function></funcdef>
-               <paramdef>const FcCache *<parameter>cache</parameter></paramdef>
-               <paramdef>int<parameter>i</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-The set of subdirectories stored in a cache file are indexed by this
-function, <parameter>i</parameter> should range from 0 to
-<parameter>n</parameter>-1, where <parameter>n</parameter> is the return
-value from FcCacheNumSubdir.
-           </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="FcCacheNumSubdir">
-       <refmeta>
-           <refentrytitle>FcCacheNumSubdir</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheNumSubdir</refname>
-           <refpurpose>Return the number of subdirectories in <parameter>cache</parameter>.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcCacheNumSubdir</function></funcdef>
-               <paramdef>const FcCache *<parameter>cache</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This returns the total number of subdirectories in the cache.
-           </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="FcCacheNumFont">
-       <refmeta>
-           <refentrytitle>FcCacheNumFont</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheNumFont</refname>
-           <refpurpose>Returns the number of fonts in <parameter>cache</parameter>.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcCacheNumFont</function></funcdef>
-               <paramdef>const FcCache *<parameter>cache</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This returns the number of fonts which would be included in the return from
-FcCacheCopySet.
-           </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="FcDirCacheClean">
-       <refmeta>
-           <refentrytitle>FcDirCacheClean</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheClean</refname>
-           <refpurpose>Clean up a cache directory</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirCacheClean</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>cache_dir</parameter></paramdef>
-               <paramdef>FcBool<parameter>verbose</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This tries to clean up the cache directory of <parameter>cache_dir</parameter>.
-This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
-           </para>
-       </refsect1>
-       <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="FcCacheCreateTagFile">
-       <refmeta>
-           <refentrytitle>FcCacheCreateTagFile</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCacheCreateTagFile</refname>
-           <refpurpose>Create CACHEDIR.TAG at cache directory.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcCacheCreateTagFile</function></funcdef>
-               <paramdef>const FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This tries to create CACHEDIR.TAG file at the cache directory registered
-to <parameter>config</parameter>.
-           </para>
-       </refsect1>
-       <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="FcDirCacheCreateUUID">
-       <refmeta>
-           <refentrytitle>FcDirCacheCreateUUID</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheCreateUUID</refname>
-           <refpurpose>Create .uuid file at a directory</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirCacheCreateUUID</function></funcdef>
-               <paramdef>FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcBool<parameter>force</parameter></paramdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This is to create .uuid file containing an UUID at a font directory of
-<parameter>dir</parameter>.
-The UUID will be used to identify the font directory and is used to determine
-the cache filename if available.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.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="FcDirCacheDeleteUUID">
-       <refmeta>
-           <refentrytitle>FcDirCacheDeleteUUID</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheDeleteUUID</refname>
-           <refpurpose>Delete .uuid file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirCacheDeleteUUID</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This is to delete .uuid file containing an UUID at a font directory of
-<parameter>dir</parameter>.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</para>
-       </refsect1>
-    </refentry>
index 7245a2a..da40848 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcCharSet *
-@FUNC@         FcCharSetCreate
-@TYPE1@                void
-@PURPOSE@      Create an empty character set
+@RET@           FcCharSet *
+@FUNC@          FcCharSetCreate
+@TYPE1@         void
+@PURPOSE@       Create an empty character set
 @DESC@
 <function>FcCharSetCreate</function> allocates and initializes a new empty
 character set object.
 @@
 
-@RET@          void
-@FUNC@         FcCharSetDestroy
-@TYPE1@                FcCharSet *             @ARG1@          fcs
-@PURPOSE@      Destroy a character set
+@RET@           void
+@FUNC@          FcCharSetDestroy
+@TYPE1@         FcCharSet *             @ARG1@          fcs
+@PURPOSE@       Destroy a character set
 @DESC@
-<function>FcCharSetDestroy</function> decrements the reference count 
+<function>FcCharSetDestroy</function> decrements the reference count
 <parameter>fcs</parameter>.  If the reference count becomes zero, all
 memory referenced is freed.
 @@
 
-@RET@          FcBool 
-@FUNC@         FcCharSetAddChar
-@TYPE1@                FcCharSet *             @ARG1@          fcs
-@TYPE2@                FcChar32%               @ARG2@          ucs4 
-@PURPOSE@      Add a character to a charset
+@RET@           FcBool
+@FUNC@          FcCharSetAddChar
+@TYPE1@         FcCharSet *             @ARG1@          fcs
+@TYPE2@         FcChar32%               @ARG2@          ucs4
+@PURPOSE@       Add a character to a charset
 @DESC@
 <function>FcCharSetAddChar</function> 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. 
+running out of memory.
 @@
 
-@RET@          FcBool 
-@FUNC@         FcCharSetDelChar
-@TYPE1@                FcCharSet *             @ARG1@          fcs
-@TYPE2@                FcChar32%               @ARG2@          ucs4 
-@PURPOSE@      Add a character to a charset
+@RET@           FcBool
+@FUNC@          FcCharSetDelChar
+@TYPE1@         FcCharSet *             @ARG1@          fcs
+@TYPE2@         FcChar32%               @ARG2@          ucs4
+@PURPOSE@       Add a character to a charset
 @DESC@
 <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
+@SINCE@         2.9.0
 @@
 
-@RET@          FcCharSet *
-@FUNC@         FcCharSetCopy
-@TYPE1@                FcCharSet *             @ARG1@          src
-@PURPOSE@      Copy a charset
+@RET@           FcCharSet *
+@FUNC@          FcCharSetCopy
+@TYPE1@         FcCharSet *             @ARG1@          src
+@PURPOSE@       Copy a charset
 @DESC@
 Makes a copy of <parameter>src</parameter>; note that this may not actually do anything more
-than increment the reference count on <parameter>src</parameter>. 
+than increment the reference count on <parameter>src</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcCharSetEqual
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Compare two charsets
+@RET@           FcBool
+@FUNC@          FcCharSetEqual
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Compare two charsets
 @DESC@
 Returns whether <parameter>a</parameter> and <parameter>b</parameter>
 contain the same set of Unicode chars.
 @@
 
-@RET@          FcCharSet *
-@FUNC@         FcCharSetIntersect
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Intersect charsets
+@RET@           FcCharSet *
+@FUNC@          FcCharSetIntersect
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Intersect charsets
 @DESC@
 Returns a set including only those chars found in both
-<parameter>a</parameter> and <parameter>b</parameter>. 
+<parameter>a</parameter> and <parameter>b</parameter>.
 @@
 
-@RET@          FcCharSet *
-@FUNC@         FcCharSetUnion
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Add charsets
+@RET@           FcCharSet *
+@FUNC@          FcCharSetUnion
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Add charsets
 @DESC@
-Returns a set including only those chars found in either <parameter>a</parameter> or <parameter>b</parameter>. 
+Returns a set including only those chars found in either <parameter>a</parameter> or <parameter>b</parameter>.
 @@
 
-@RET@          FcCharSet *
-@FUNC@         FcCharSetSubtract
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Subtract charsets
+@RET@           FcCharSet *
+@FUNC@          FcCharSetSubtract
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Subtract charsets
 @DESC@
-Returns a set including only those chars found in <parameter>a</parameter> but not <parameter>b</parameter>. 
+Returns a set including only those chars found in <parameter>a</parameter> but not <parameter>b</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcCharSetMerge
-@TYPE1@                FcCharSet *             @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@TYPE3@                FcBool *                @ARG3@          changed
-@PURPOSE@      Merge charsets
+@RET@           FcBool
+@FUNC@          FcCharSetMerge
+@TYPE1@         FcCharSet *             @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@TYPE3@         FcBool *                @ARG3@          changed
+@PURPOSE@       Merge charsets
 @DESC@
 Adds all chars in <parameter>b</parameter> to <parameter>a</parameter>.
 In other words, this is an in-place version of FcCharSetUnion.
@@ -125,56 +125,56 @@ Returns FcFalse on failure, either when <parameter>a</parameter> is a constant
 set or from running out of memory.
 @@
 
-@RET@          FcBool 
-@FUNC@         FcCharSetHasChar
-@TYPE1@                const FcCharSet *       @ARG1@          fcs
-@TYPE2@                FcChar32%               @ARG2@          ucs4
-@PURPOSE@      Check a charset for a char
+@RET@           FcBool
+@FUNC@          FcCharSetHasChar
+@TYPE1@         const FcCharSet *       @ARG1@          fcs
+@TYPE2@         FcChar32%               @ARG2@          ucs4
+@PURPOSE@       Check a charset for a char
 @DESC@
-Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</parameter>. 
+Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetCount
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@PURPOSE@      Count entries in a charset
+@RET@           FcChar32
+@FUNC@          FcCharSetCount
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@PURPOSE@       Count entries in a charset
 @DESC@
-Returns the total number of Unicode chars in <parameter>a</parameter>. 
+Returns the total number of Unicode chars in <parameter>a</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetIntersectCount
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Intersect and count charsets
+@RET@           FcChar32
+@FUNC@          FcCharSetIntersectCount
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Intersect and count charsets
 @DESC@
-Returns the number of chars that are in both <parameter>a</parameter> and <parameter>b</parameter>. 
+Returns the number of chars that are in both <parameter>a</parameter> and <parameter>b</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetSubtractCount
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Subtract and count charsets
+@RET@           FcChar32
+@FUNC@          FcCharSetSubtractCount
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Subtract and count charsets
 @DESC@
-Returns the number of chars that are in <parameter>a</parameter> but not in <parameter>b</parameter>. 
+Returns the number of chars that are in <parameter>a</parameter> but not in <parameter>b</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcCharSetIsSubset
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                const FcCharSet *       @ARG2@          b
-@PURPOSE@      Test for charset inclusion
+@RET@           FcBool
+@FUNC@          FcCharSetIsSubset
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         const FcCharSet *       @ARG2@          b
+@PURPOSE@       Test for charset inclusion
 @DESC@
-Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>. 
+Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetFirstPage
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                FcChar32[FC_CHARSET_MAP_SIZE]%  @ARG2@  map
-@TYPE3@                FcChar32 *              @ARG3@          next
-@PURPOSE@      Start enumerating charset contents
+@RET@           FcChar32
+@FUNC@          FcCharSetFirstPage
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         FcChar32[FC_CHARSET_MAP_SIZE]%  @ARG2@  map
+@TYPE3@         FcChar32 *              @ARG3@          next
+@PURPOSE@       Start enumerating charset contents
 @DESC@
 Builds an array of bits in <parameter>map</parameter> marking the
 first page of Unicode coverage of <parameter>a</parameter>.
@@ -195,16 +195,16 @@ 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
+<literal>map[3]</literal> and later are left as an exercise for the
 reader ;).
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetNextPage
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                FcChar32[FC_CHARSET_MAP_SIZE]%  @ARG2@  map
-@TYPE3@                FcChar32 *              @ARG3@          next
-@PURPOSE@      Continue enumerating charset contents
+@RET@           FcChar32
+@FUNC@          FcCharSetNextPage
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         FcChar32[FC_CHARSET_MAP_SIZE]%  @ARG2@  map
+@TYPE3@         FcChar32 *              @ARG3@          next
+@PURPOSE@       Continue enumerating charset contents
 @DESC@
 Builds an array of bits in <parameter>map</parameter> marking the
 Unicode coverage of <parameter>a</parameter> for page containing
@@ -217,12 +217,12 @@ code point for the page, or <constant>FC_CHARSET_DONE</constant> if
 <parameter>*next</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcCharSetCoverage
-@TYPE1@                const FcCharSet *       @ARG1@          a
-@TYPE2@                FcChar32                @ARG2@          page
-@TYPE3@                FcChar32[8]             @ARG3@          result
-@PURPOSE@      DEPRECATED return coverage for a Unicode page
+@RET@           FcChar32
+@FUNC@          FcCharSetCoverage
+@TYPE1@         const FcCharSet *       @ARG1@          a
+@TYPE2@         FcChar32                @ARG2@          page
+@TYPE3@         FcChar32[8]             @ARG3@          result
+@PURPOSE@       DEPRECATED return coverage for a Unicode page
 @DESC@
 DEPRECATED
 This function returns a bitmask in <parameter>result</parameter> which
@@ -232,10 +232,10 @@ indicates which code points in
 coverage.
 @@
 
-@RET@          FcCharSet *
-@FUNC@         FcCharSetNew
-@TYPE1@                void
-@PURPOSE@      DEPRECATED alias for FcCharSetCreate
+@RET@           FcCharSet *
+@FUNC@          FcCharSetNew
+@TYPE1@         void
+@PURPOSE@       DEPRECATED alias for FcCharSetCreate
 @DESC@
 <function>FcCharSetNew</function> is a DEPRECATED alias for FcCharSetCreate.
 @@
diff --git a/doc/fccharset.sgml b/doc/fccharset.sgml
deleted file mode 100644 (file)
index dd426cb..0000000
+++ /dev/null
@@ -1,1019 +0,0 @@
-<!--
-   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="FcCharSetCreate">
-       <refmeta>
-           <refentrytitle>FcCharSetCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetCreate</refname>
-           <refpurpose>Create an empty character set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcCharSetCreate</function> allocates and initializes a new empty
-character set object.
-           </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="FcCharSetDestroy">
-       <refmeta>
-           <refentrytitle>FcCharSetDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetDestroy</refname>
-           <refpurpose>Destroy a character set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcCharSetDestroy</function></funcdef>
-               <paramdef>FcCharSet *<parameter>fcs</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcCharSetDestroy</function> decrements the reference count 
-<parameter>fcs</parameter>.  If the reference count becomes zero, all
-memory referenced is freed.
-           </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="FcCharSetAddChar">
-       <refmeta>
-           <refentrytitle>FcCharSetAddChar</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetAddChar</refname>
-           <refpurpose>Add a character to a charset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetAddChar</function></funcdef>
-               <paramdef>FcCharSet *<parameter>fcs</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcCharSetAddChar</function> 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.
-           </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="FcCharSetDelChar">
-       <refmeta>
-           <refentrytitle>FcCharSetDelChar</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetDelChar</refname>
-           <refpurpose>Add a character to a charset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetDelChar</function></funcdef>
-               <paramdef>FcCharSet *<parameter>fcs</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<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.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.9.0</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="FcCharSetCopy">
-       <refmeta>
-           <refentrytitle>FcCharSetCopy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetCopy</refname>
-           <refpurpose>Copy a charset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetCopy</function></funcdef>
-               <paramdef>FcCharSet *<parameter>src</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Makes a copy of <parameter>src</parameter>; note that this may not actually do anything more
-than increment the reference count on <parameter>src</parameter>.
-           </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="FcCharSetEqual">
-       <refmeta>
-           <refentrytitle>FcCharSetEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetEqual</refname>
-           <refpurpose>Compare two charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetEqual</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>a</parameter> and <parameter>b</parameter>
-contain the same set of Unicode chars.
-           </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="FcCharSetIntersect">
-       <refmeta>
-           <refentrytitle>FcCharSetIntersect</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetIntersect</refname>
-           <refpurpose>Intersect charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetIntersect</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a set including only those chars found in both
-<parameter>a</parameter> and <parameter>b</parameter>.
-           </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="FcCharSetUnion">
-       <refmeta>
-           <refentrytitle>FcCharSetUnion</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetUnion</refname>
-           <refpurpose>Add charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetUnion</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a set including only those chars found in either <parameter>a</parameter> or <parameter>b</parameter>.
-           </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="FcCharSetSubtract">
-       <refmeta>
-           <refentrytitle>FcCharSetSubtract</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetSubtract</refname>
-           <refpurpose>Subtract charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetSubtract</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a set including only those chars found in <parameter>a</parameter> but not <parameter>b</parameter>.
-           </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="FcCharSetMerge">
-       <refmeta>
-           <refentrytitle>FcCharSetMerge</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetMerge</refname>
-           <refpurpose>Merge charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetMerge</function></funcdef>
-               <paramdef>FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-               <paramdef>FcBool *<parameter>changed</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Adds all chars in <parameter>b</parameter> to <parameter>a</parameter>.
-In other words, this is an in-place version of FcCharSetUnion.
-If <parameter>changed</parameter> is not NULL, then it returns whether any new
-chars from <parameter>b</parameter> were added to <parameter>a</parameter>.
-Returns FcFalse on failure, either when <parameter>a</parameter> is a constant
-set or from running out of memory.
-           </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="FcCharSetHasChar">
-       <refmeta>
-           <refentrytitle>FcCharSetHasChar</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetHasChar</refname>
-           <refpurpose>Check a charset for a char</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetHasChar</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>fcs</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</parameter>.
-           </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="FcCharSetCount">
-       <refmeta>
-           <refentrytitle>FcCharSetCount</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetCount</refname>
-           <refpurpose>Count entries in a charset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetCount</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the total number of Unicode chars in <parameter>a</parameter>.
-           </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="FcCharSetIntersectCount">
-       <refmeta>
-           <refentrytitle>FcCharSetIntersectCount</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetIntersectCount</refname>
-           <refpurpose>Intersect and count charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetIntersectCount</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the number of chars that are in both <parameter>a</parameter> and <parameter>b</parameter>.
-           </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="FcCharSetSubtractCount">
-       <refmeta>
-           <refentrytitle>FcCharSetSubtractCount</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetSubtractCount</refname>
-           <refpurpose>Subtract and count charsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetSubtractCount</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the number of chars that are in <parameter>a</parameter> but not in <parameter>b</parameter>.
-           </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="FcCharSetIsSubset">
-       <refmeta>
-           <refentrytitle>FcCharSetIsSubset</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetIsSubset</refname>
-           <refpurpose>Test for charset inclusion</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcCharSetIsSubset</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>.
-           </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="FcCharSetFirstPage">
-       <refmeta>
-           <refentrytitle>FcCharSetFirstPage</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetFirstPage</refname>
-           <refpurpose>Start enumerating charset contents</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetFirstPage</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>FcChar32[FC_CHARSET_MAP_SIZE] <parameter>map</parameter></paramdef>
-               <paramdef>FcChar32 *<parameter>next</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-<!--
-   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="FcCharSetNextPage">
-       <refmeta>
-           <refentrytitle>FcCharSetNextPage</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetNextPage</refname>
-           <refpurpose>Continue enumerating charset contents</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetNextPage</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>FcChar32[FC_CHARSET_MAP_SIZE] <parameter>map</parameter></paramdef>
-               <paramdef>FcChar32 *<parameter>next</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-<!--
-   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="FcCharSetCoverage">
-       <refmeta>
-           <refentrytitle>FcCharSetCoverage</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetCoverage</refname>
-           <refpurpose>DEPRECATED return coverage for a Unicode page</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcCharSetCoverage</function></funcdef>
-               <paramdef>const FcCharSet *<parameter>a</parameter></paramdef>
-               <paramdef>FcChar32<parameter>page</parameter></paramdef>
-               <paramdef>FcChar32[8]<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-DEPRECATED
-This function returns a bitmask in <parameter>result</parameter> which
-indicates which code points in
-<parameter>page</parameter> are included in <parameter>a</parameter>.
-<function>FcCharSetCoverage</function> returns the next page in the charset which has any
-coverage.
-           </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="FcCharSetNew">
-       <refmeta>
-           <refentrytitle>FcCharSetNew</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcCharSetNew</refname>
-           <refpurpose>DEPRECATED alias for FcCharSetCreate</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcCharSetNew</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcCharSetNew</function> is a DEPRECATED alias for FcCharSetCreate.
-           </para>
-       </refsect1>
-    </refentry>
index de7a5d7..d8f0674 100644 (file)
@@ -23,8 +23,8 @@
  */
 @RET@           FcConfig *
 @FUNC@          FcConfigCreate
-@TYPE1@                void
-@PURPOSE@      Create a configuration
+@TYPE1@         void
+@PURPOSE@       Create a configuration
 @DESC@
 Creates an empty configuration.
 @@
@@ -32,7 +32,7 @@ Creates an empty configuration.
 @RET@           FcConfig *
 @FUNC@          FcConfigReference
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Increment config reference count
+@PURPOSE@       Increment config reference count
 @DESC@
 Add another reference to <parameter>config</parameter>. Configs are freed only
 when the reference count reaches zero.
@@ -45,7 +45,7 @@ for destroying the configuration when not needed anymore.
 @RET@           void
 @FUNC@          FcConfigDestroy
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Destroy a configuration
+@PURPOSE@       Destroy a configuration
 @DESC@
 Decrements the config reference count. If all references are gone, destroys
 the configuration and any data associated with it.
@@ -56,7 +56,7 @@ cause a new configuration to be created for use as current configuration.
 @RET@           FcBool
 @FUNC@          FcConfigSetCurrent
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Set configuration as default
+@PURPOSE@       Set configuration as default
 @DESC@
 Sets the current default configuration to <parameter>config</parameter>.  Implicitly calls
 FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
@@ -65,8 +65,8 @@ in <parameter>config</parameter> since 2.12.0, returning FcFalse if that call fa
 
 @RET@           FcConfig *
 @FUNC@          FcConfigGetCurrent
-@TYPE1@                void
-@PURPOSE@      Return current configuration
+@TYPE1@         void
+@PURPOSE@       Return current configuration
 @DESC@
 Returns the current default configuration.
 @@
@@ -74,27 +74,27 @@ Returns the current default configuration.
 @RET@           FcBool
 @FUNC@          FcConfigUptoDate
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Check timestamps on config files
+@PURPOSE@       Check timestamps on config files
 @DESC@
 Checks all of the files related to <parameter>config</parameter> and returns
 whether any of them has been modified since the configuration was created.
 If <parameter>config</parameter> is NULL, the current configuration is used.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcConfigHome
-@TYPE1@                void
-@PURPOSE@      return the current home directory.
+@RET@           FcChar8 *
+@FUNC@          FcConfigHome
+@TYPE1@         void
+@PURPOSE@       return the current home directory.
 @DESC@
 Return the current user's home directory, if it is available, and if using it
 is enabled, and NULL otherwise.
 See also <function>FcConfigEnableHome</function>).
 @@
 
-@RET@          FcBool
-@FUNC@         FcConfigEnableHome
-@TYPE1@                FcBool%                         @ARG1@          enable
-@PURPOSE@      controls use of the home directory.
+@RET@           FcBool
+@FUNC@          FcConfigEnableHome
+@TYPE1@         FcBool%                         @ARG1@          enable
+@PURPOSE@       controls use of the home directory.
 @DESC@
 If <parameter>enable</parameter> is FcTrue, then Fontconfig will use various
 files which are specified relative to the user's home directory (using the ~
@@ -106,7 +106,7 @@ disabled. The previous setting of the value is returned.
 @RET@           FcBool
 @FUNC@          FcConfigBuildFonts
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Build font database
+@PURPOSE@       Build font database
 @DESC@
 Builds the set of available fonts for the given configuration.  Note that
 any changes to the configuration after this call have indeterminate effects.
@@ -117,7 +117,7 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @RET@           FcStrList *
 @FUNC@          FcConfigGetConfigDirs
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Get config directories
+@PURPOSE@       Get config directories
 @DESC@
 Returns the list of font directories specified in the configuration files
 for <parameter>config</parameter>.  Does not include any subdirectories.
@@ -127,7 +127,7 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @RET@           FcStrList *
 @FUNC@          FcConfigGetFontDirs
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Get font directories
+@PURPOSE@       Get font directories
 @DESC@
 Returns the list of font directories in <parameter>config</parameter>. This includes the
 configured font directories along with any directories below those in the
@@ -138,7 +138,7 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @RET@           FcStrList *
 @FUNC@          FcConfigGetConfigFiles
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Get config files
+@PURPOSE@       Get config files
 @DESC@
 Returns the list of known configuration files used to generate <parameter>config</parameter>.
 If <parameter>config</parameter> is NULL, the current configuration is used.
@@ -147,16 +147,16 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @RET@           FcChar8 *
 @FUNC@          FcConfigGetCache
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      DEPRECATED used to return per-user cache filename
+@PURPOSE@       DEPRECATED used to return per-user cache filename
 @DESC@
 With fontconfig no longer using per-user cache files, this function now
 simply returns NULL to indicate that no per-user file exists.
 @@
 
-@RET@          FcStrList *
-@FUNC@         FcConfigGetCacheDirs
-@TYPE1@                const FcConfig *                @ARG1@          config
-@PURPOSE@      return the list of directories searched for cache files
+@RET@           FcStrList *
+@FUNC@          FcConfigGetCacheDirs
+@TYPE1@         const FcConfig *                @ARG1@          config
+@PURPOSE@       return the list of directories searched for cache files
 @DESC@
 <function>FcConfigGetCacheDirs</function> returns a string list containing
 all of the directories that fontconfig will search when attempting to load a
@@ -166,20 +166,24 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcFontSet *
 @FUNC@          FcConfigGetFonts
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcSetName%                      @ARG2@          set
-@PURPOSE@      Get config font set
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcSetName%                      @ARG2@          set
+@PURPOSE@       Get config font set
 @DESC@
 Returns one of the two sets of fonts from the configuration as specified
 by <parameter>set</parameter>. This font set is owned by the library and must
 not be modified or freed.
 If <parameter>config</parameter> is NULL, the current configuration is used.
+    </para><para>
+This function isn't MT-safe. <function>FcConfigReference</function> must be called
+before using this and then <function>FcConfigDestroy</function> when
+the return value is no longer referenced.
 @@
 
 @RET@           FcBlanks *
 @FUNC@          FcConfigGetBlanks
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Get config blanks
+@PURPOSE@       Get config blanks
 @DESC@
 FcBlanks is deprecated.
 This function always returns NULL.
@@ -188,7 +192,7 @@ This function always returns NULL.
 @RET@           int
 @FUNC@          FcConfigGetRescanInterval
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Get config rescan interval
+@PURPOSE@       Get config rescan interval
 @DESC@
 Returns the interval between automatic checks of the configuration (in
 seconds) specified in <parameter>config</parameter>.  The configuration is checked during
@@ -199,9 +203,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcBool
 @FUNC@          FcConfigSetRescanInterval
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                int%                            @ARG2@          rescanInterval
-@PURPOSE@      Set config rescan interval
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         int%                            @ARG2@          rescanInterval
+@PURPOSE@       Set config rescan interval
 @DESC@
 Sets the rescan interval. Returns FcFalse if the interval cannot be set (due
 to allocation failure). Otherwise returns FcTrue.
@@ -211,9 +215,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcBool
 @FUNC@          FcConfigAppFontAddFile
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                const FcChar8 *                 @ARG2@          file
-@PURPOSE@      Add font file to font database
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         const FcChar8 *                 @ARG2@          file
+@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 or no fonts found).
@@ -223,9 +227,9 @@ the current configuration is used.
 
 @RET@           FcBool
 @FUNC@          FcConfigAppFontAddDir
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                const FcChar8 *                 @ARG2@          dir
-@PURPOSE@      Add fonts from directory to font database
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         const FcChar8 *                 @ARG2@          dir
+@PURPOSE@       Add fonts from directory to font database
 @DESC@
 Scans the specified directory for fonts, adding each one found to the
 application-specific set of fonts. Returns FcFalse
@@ -237,7 +241,7 @@ the current configuration is used.
 @RET@           void
 @FUNC@          FcConfigAppFontClear
 @TYPE1@         FcConfig *                      @ARG1@          config
-@PURPOSE@      Remove all app fonts from font database
+@PURPOSE@       Remove all app fonts from font database
 @DESC@
 Clears the set of application-specific fonts.
 If <parameter>config</parameter> is NULL, the current configuration is used.
@@ -245,11 +249,11 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcBool
 @FUNC@          FcConfigSubstituteWithPat
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          p
-@TYPE3@                FcPattern *                     @ARG3@          p_pat
-@TYPE4@                FcMatchKind%                     @ARG4@          kind
-@PURPOSE@      Execute substitutions
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          p
+@TYPE3@         FcPattern *                     @ARG3@          p_pat
+@TYPE4@         FcMatchKind%                     @ARG4@          kind
+@PURPOSE@       Execute substitutions
 @DESC@
 Performs the sequence of pattern modification operations, if <parameter>kind</parameter> is
 FcMatchPattern, then those tagged as pattern operations are applied, else
@@ -261,10 +265,10 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcBool
 @FUNC@          FcConfigSubstitute
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          p
-@TYPE3@                FcMatchKind%                    @ARG3@          kind
-@PURPOSE@      Execute substitutions
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          p
+@TYPE3@         FcMatchKind%                    @ARG3@          kind
+@PURPOSE@       Execute substitutions
 @DESC@
 Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse
 if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
@@ -273,10 +277,10 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcPattern *
 @FUNC@          FcFontMatch
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          p
-@TYPE3@                FcResult *                      @ARG3@          result
-@PURPOSE@      Return best font
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          p
+@TYPE3@         FcResult *                      @ARG3@          result
+@PURPOSE@       Return best font
 @DESC@
 Finds the font in <parameter>sets</parameter> most closely matching
 <parameter>pattern</parameter> and returns the result of
@@ -290,12 +294,12 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcFontSet *
 @FUNC@          FcFontSort
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          p
-@TYPE3@                FcBool%                         @ARG3@          trim
-@TYPE4@                FcCharSet **                    @ARG4@          csp
-@TYPE5@                FcResult *                      @ARG5@          result
-@PURPOSE@      Return list of matching fonts
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          p
+@TYPE3@         FcBool%                         @ARG3@          trim
+@TYPE4@         FcCharSet **                    @ARG4@          csp
+@TYPE5@         FcResult *                      @ARG5@          result
+@PURPOSE@       Return list of matching fonts
 @DESC@
 Returns the list of fonts sorted by closeness to <parameter>p</parameter>.  If <parameter>trim</parameter> is FcTrue,
 elements in the list which don't include Unicode coverage not provided by
@@ -315,10 +319,10 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 
 @RET@           FcPattern *
 @FUNC@          FcFontRenderPrepare
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          pat
-@TYPE3@                FcPattern *                     @ARG3@          font
-@PURPOSE@      Prepare pattern for loading font file
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          pat
+@TYPE3@         FcPattern *                     @ARG3@          font
+@PURPOSE@       Prepare pattern for loading font file
 @DESC@
 Creates a new pattern consisting of elements of <parameter>font</parameter> not appearing
 in <parameter>pat</parameter>, elements of <parameter>pat</parameter> not appearing in <parameter>font</parameter> and the best matching
@@ -328,10 +332,10 @@ FcConfigSubstituteWithPat with <parameter>kind</parameter> FcMatchFont and then
 
 @RET@           FcFontSet *
 @FUNC@          FcFontList
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcPattern *                     @ARG2@          p
-@TYPE3@                FcObjectSet *                   @ARG3@          os
-@PURPOSE@      List fonts
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcPattern *                     @ARG2@          p
+@TYPE3@         FcObjectSet *                   @ARG3@          os
+@PURPOSE@       List fonts
 @DESC@
 Selects fonts matching <parameter>p</parameter>, creates patterns from those fonts containing
 only the objects in <parameter>os</parameter> and returns the set of unique such patterns.
@@ -341,8 +345,17 @@ to be up to date, and used.
 
 @RET@           FcChar8 *
 @FUNC@          FcConfigFilename
-@TYPE1@         const FcChar8 *                        @ARG1@          name
-@PURPOSE@      Find a config file
+@TYPE1@         const FcChar8 *                 @ARG1@          name
+@PURPOSE@       Find a config file
+@DESC@
+This function is deprecated and is replaced by <function>FcConfigGetFilename</function>.
+@@
+
+@RET@           FcChar8 *
+@FUNC@          FcConfigGetFilename
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         const FcChar8 *                 @ARG2@          name
+@PURPOSE@       Find a config file
 @DESC@
 Given the specified external entity name, return the associated filename.
 This provides applications a way to convert various configuration file
@@ -355,14 +368,16 @@ 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.
+    </para><para>
+The result of this function is affected by the FONTCONFIG_SYSROOT environment variable or equivalent functionality.
 @@
 
-@RET@          FcBool
-@FUNC@         FcConfigParseAndLoad
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                const FcChar8 *                 @ARG2@          file
-@TYPE3@                FcBool%                         @ARG3@          complain
-@PURPOSE@      load a configuration file
+@RET@           FcBool
+@FUNC@          FcConfigParseAndLoad
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         const FcChar8 *                 @ARG2@          file
+@TYPE3@         FcBool%                         @ARG3@          complain
+@PURPOSE@       load a configuration file
 @DESC@
 Walks the configuration in 'file' and constructs the internal representation
 in 'config'.  Any include files referenced from within 'file' will be loaded
@@ -372,12 +387,12 @@ Returns FcFalse if some error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
 @@
 
-@RET@          FcBool
-@FUNC@         FcConfigParseAndLoadFromMemory
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                const FcChar8 *                 @ARG2@          buffer
-@TYPE3@                FcBool%                         @ARG3@          complain
-@PURPOSE@      load a configuration from memory
+@RET@           FcBool
+@FUNC@          FcConfigParseAndLoadFromMemory
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         const FcChar8 *                 @ARG2@          buffer
+@TYPE3@         FcBool%                         @ARG3@          complain
+@PURPOSE@       load a configuration from memory
 @DESC@
 Walks the configuration in 'memory' and constructs the internal representation
 in 'config'.  Any includes files referenced from within 'memory' will be loaded
@@ -385,63 +400,87 @@ and dparsed.  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 fsome error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
-@SINCE@                2.12.5
+@SINCE@         2.12.5
 @@
 
-@RET@          const FcChar8 *
-@FUNC@         FcConfigGetSysRoot
-@TYPE1@                const FcConfig *                @ARG1@          config
-@PURPOSE@      Obtain the system root directory
+@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
+Obtains the system root directory in 'config' if available. All files
+(including file properties in patterns) obtained from this 'config' are
+relative to this system root directory.
+    </para><para>
+This function isn't MT-safe. <function>FcConfigReference</function> must be called
+before using this and then <function>FcConfigDestroy</function> when
+the return value is no longer referenced.
+@SINCE@         2.10.92
 @@
 
-@RET@          void
-@FUNC@         FcConfigSetSysRoot
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                const FcChar8 *                 @ARG2@          sysroot
-@PURPOSE@      Set the system root directory
+@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
+Set 'sysroot' as the system root directory. All file paths used or created with
+this 'config' (including file properties in patterns) will be considered or
+made relative to this 'sysroot'. This allows a host to generate caches for
+targets at build time. This also allows a cache to be re-targeted to a
+different base directory if 'FcConfigGetSysRoot' is used to resolve file paths.
+When setting this on the current config this causes changing current config
+(calls FcConfigSetCurrent()).
+@SINCE@         2.10.92
 @@
 
-@RET@          void
-@FUNC@         FcConfigFileInfoIterInit
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                FcConfigFileInfoIter *          @ARG2@          iter
-@PURPOSE@      Initialize the iterator
+@RET@           void
+@FUNC@          FcConfigFileInfoIterInit
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcConfigFileInfoIter *          @ARG2@          iter
+@PURPOSE@       Initialize the iterator
 @DESC@
 Initialize 'iter' with the first iterator in the config file information list.
-@SINCE@                2.12.91
+    </para><para>
+The config file information list is stored in numerical order for filenames
+i.e. how fontconfig actually read them.
+    </para><para>
+This function isn't MT-safe. <function>FcConfigReference</function> must be called
+before using this and then <function>FcConfigDestroy</function> when the relevant
+values are no longer referenced.
+@SINCE@         2.12.91
 @@
 
-@RET@          FcBool
-@FUNC@         FcConfigFileInfoIterNext
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                FcConfigFileInfoIter *          @ARG2@          iter
-@PURPOSE@      Set the iterator to point to the next list
+@RET@           FcBool
+@FUNC@          FcConfigFileInfoIterNext
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcConfigFileInfoIter *          @ARG2@          iter
+@PURPOSE@       Set the iterator to point to the next list
 @DESC@
 Set 'iter' to point to the next node in the config file information list.
 If there is no next node, FcFalse is returned.
-@SINCE@                2.12.91
+    </para><para>
+This function isn't MT-safe. <function>FcConfigReference</function> must be called
+before using <function>FcConfigFileInfoIterInit</function> and then
+<function>FcConfigDestroy</function> when the relevant values are no longer referenced.
+@SINCE@         2.12.91
 @@
 
-@RET@          FcBool
-@FUNC@         FcConfigFileInfoIterGet
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                FcConfigFileInfoIter *          @ARG2@          iter
-@TYPE3@                FcChar8 **                      @ARG3@          name
-@TYPE4@                FcChar8 **                      @ARG4@          description
-@TYPE5@                FcBool *                        @ARG5@          enabled
-@PURPOSE@      Obtain the configuration file information
+@RET@           FcBool
+@FUNC@          FcConfigFileInfoIterGet
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcConfigFileInfoIter *          @ARG2@          iter
+@TYPE3@         FcChar8 **                      @ARG3@          name
+@TYPE4@         FcChar8 **                      @ARG4@          description
+@TYPE5@         FcBool *                        @ARG5@          enabled
+@PURPOSE@       Obtain the configuration file information
 @DESC@
 Obtain the filename, the description and the flag whether it is enabled or not
 for 'iter' where points to current configuration file information.
 If the iterator is invalid, FcFalse is returned.
-@SINCE@                2.12.91
+    </para><para>
+This function isn't MT-safe. <function>FcConfigReference</function> must be called
+before using <function>FcConfigFileInfoIterInit</function> and then
+<function>FcConfigDestroy</function> when the relevant values are no longer referenced.
+@SINCE@         2.12.91
 @@
diff --git a/doc/fcconfig.sgml b/doc/fcconfig.sgml
deleted file mode 100644 (file)
index d295203..0000000
+++ /dev/null
@@ -1,1907 +0,0 @@
-<!--
-   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="FcConfigCreate">
-       <refmeta>
-           <refentrytitle>FcConfigCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigCreate</refname>
-           <refpurpose>Create a configuration</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcConfig * <function>FcConfigCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates an empty configuration.
-           </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="FcConfigReference">
-       <refmeta>
-           <refentrytitle>FcConfigReference</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigReference</refname>
-           <refpurpose>Increment config reference count</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcConfig * <function>FcConfigReference</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Add another reference to <parameter>config</parameter>. Configs are freed only
-when the reference count reaches zero.
-If <parameter>config</parameter> 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.
-           </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="FcConfigDestroy">
-       <refmeta>
-           <refentrytitle>FcConfigDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigDestroy</refname>
-           <refpurpose>Destroy a configuration</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcConfigDestroy</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcConfigSetCurrent">
-       <refmeta>
-           <refentrytitle>FcConfigSetCurrent</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigSetCurrent</refname>
-           <refpurpose>Set configuration as default</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigSetCurrent</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Sets the current default configuration to <parameter>config</parameter>.  Implicitly calls
-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>
-<!--
-   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="FcConfigGetCurrent">
-       <refmeta>
-           <refentrytitle>FcConfigGetCurrent</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetCurrent</refname>
-           <refpurpose>Return current configuration</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcConfig * <function>FcConfigGetCurrent</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the current default configuration.
-           </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="FcConfigUptoDate">
-       <refmeta>
-           <refentrytitle>FcConfigUptoDate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigUptoDate</refname>
-           <refpurpose>Check timestamps on config files</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigUptoDate</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Checks all of the files related to <parameter>config</parameter> and returns
-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>
-    </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="FcConfigHome">
-       <refmeta>
-           <refentrytitle>FcConfigHome</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigHome</refname>
-           <refpurpose>return the current home directory.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcConfigHome</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Return the current user's home directory, if it is available, and if using it
-is enabled, and NULL otherwise.
-See also <function>FcConfigEnableHome</function>).
-           </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="FcConfigEnableHome">
-       <refmeta>
-           <refentrytitle>FcConfigEnableHome</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigEnableHome</refname>
-           <refpurpose>controls use of the home directory.</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigEnableHome</function></funcdef>
-               <paramdef>FcBool <parameter>enable</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-If <parameter>enable</parameter> 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 <parameter>enable</parameter> is
-FcFalse, then all use of the home directory in these contexts will be
-disabled. The previous setting of the value is returned.
-           </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="FcConfigBuildFonts">
-       <refmeta>
-           <refentrytitle>FcConfigBuildFonts</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigBuildFonts</refname>
-           <refpurpose>Build font database</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigBuildFonts</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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 <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetConfigDirs">
-       <refmeta>
-           <refentrytitle>FcConfigGetConfigDirs</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetConfigDirs</refname>
-           <refpurpose>Get config directories</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrList * <function>FcConfigGetConfigDirs</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the list of font directories specified in the configuration files
-for <parameter>config</parameter>.  Does not include any subdirectories.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetFontDirs">
-       <refmeta>
-           <refentrytitle>FcConfigGetFontDirs</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetFontDirs</refname>
-           <refpurpose>Get font directories</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrList * <function>FcConfigGetFontDirs</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the list of font directories in <parameter>config</parameter>. This includes the
-configured font directories along with any directories below those in the
-filesystem.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetConfigFiles">
-       <refmeta>
-           <refentrytitle>FcConfigGetConfigFiles</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetConfigFiles</refname>
-           <refpurpose>Get config files</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrList * <function>FcConfigGetConfigFiles</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the list of known configuration files used to generate <parameter>config</parameter>.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetCache">
-       <refmeta>
-           <refentrytitle>FcConfigGetCache</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetCache</refname>
-           <refpurpose>DEPRECATED used to return per-user cache filename</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcConfigGetCache</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-    </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="FcConfigGetCacheDirs">
-       <refmeta>
-           <refentrytitle>FcConfigGetCacheDirs</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetCacheDirs</refname>
-           <refpurpose>return the list of directories searched for cache files</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrList * <function>FcConfigGetCacheDirs</function></funcdef>
-               <paramdef>const FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcConfigGetCacheDirs</function> 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 <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetFonts">
-       <refmeta>
-           <refentrytitle>FcConfigGetFonts</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetFonts</refname>
-           <refpurpose>Get config font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcConfigGetFonts</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcSetName <parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns one of the two sets of fonts from the configuration as specified
-by <parameter>set</parameter>. This font set is owned by the library and must
-not be modified or freed.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigGetBlanks">
-       <refmeta>
-           <refentrytitle>FcConfigGetBlanks</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetBlanks</refname>
-           <refpurpose>Get config blanks</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBlanks * <function>FcConfigGetBlanks</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-FcBlanks is deprecated.
-This function always returns NULL.
-           </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="FcConfigGetRescanInterval">
-       <refmeta>
-           <refentrytitle>FcConfigGetRescanInterval</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigGetRescanInterval</refname>
-           <refpurpose>Get config rescan interval</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcConfigGetRescanInterval</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the interval between automatic checks of the configuration (in
-seconds) specified in <parameter>config</parameter>.  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 <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigSetRescanInterval">
-       <refmeta>
-           <refentrytitle>FcConfigSetRescanInterval</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigSetRescanInterval</refname>
-           <refpurpose>Set config rescan interval</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigSetRescanInterval</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>int <parameter>rescanInterval</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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 <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigAppFontAddFile">
-       <refmeta>
-           <refentrytitle>FcConfigAppFontAddFile</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigAppFontAddFile</refname>
-           <refpurpose>Add font file to font database</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigAppFontAddFile</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <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 or no fonts found).
-Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
-the current configuration is used.
-           </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="FcConfigAppFontAddDir">
-       <refmeta>
-           <refentrytitle>FcConfigAppFontAddDir</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigAppFontAddDir</refname>
-           <refpurpose>Add fonts from directory to font database</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigAppFontAddDir</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <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>
-    </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="FcConfigAppFontClear">
-       <refmeta>
-           <refentrytitle>FcConfigAppFontClear</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigAppFontClear</refname>
-           <refpurpose>Remove all app fonts from font database</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcConfigAppFontClear</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Clears the set of application-specific fonts.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigSubstituteWithPat">
-       <refmeta>
-           <refentrytitle>FcConfigSubstituteWithPat</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigSubstituteWithPat</refname>
-           <refpurpose>Execute substitutions</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigSubstituteWithPat</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p_pat</parameter></paramdef>
-               <paramdef>FcMatchKind <parameter>kind</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Performs the sequence of pattern modification operations, if <parameter>kind</parameter> is
-FcMatchPattern, then those tagged as pattern operations are applied, else
-if <parameter>kind</parameter> is FcMatchFont, those tagged as font operations are applied and
-p_pat is used for &lt;test&gt; elements with target=pattern. Returns FcFalse
-if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcConfigSubstitute">
-       <refmeta>
-           <refentrytitle>FcConfigSubstitute</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigSubstitute</refname>
-           <refpurpose>Execute substitutions</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigSubstitute</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcMatchKind <parameter>kind</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse
-if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcFontMatch">
-       <refmeta>
-           <refentrytitle>FcFontMatch</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontMatch</refname>
-           <refpurpose>Return best font</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcFontMatch</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcResult *<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Finds the font in <parameter>sets</parameter> most closely matching
-<parameter>pattern</parameter> and returns the result of
-<function>FcFontRenderPrepare</function> for that font and the provided
-pattern. This function should be called only after
-<function>FcConfigSubstitute</function> and
-<function>FcDefaultSubstitute</function> have been called for
-<parameter>p</parameter>; otherwise the results will not be correct.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcFontSort">
-       <refmeta>
-           <refentrytitle>FcFontSort</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSort</refname>
-           <refpurpose>Return list of matching fonts</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcFontSort</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcBool <parameter>trim</parameter></paramdef>
-               <paramdef>FcCharSet **<parameter>csp</parameter></paramdef>
-               <paramdef>FcResult *<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the list of fonts sorted by closeness to <parameter>p</parameter>.  If <parameter>trim</parameter> 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 <parameter>csp</parameter>, if <parameter>csp</parameter> is not NULL.  This function
-should be called only after FcConfigSubstitute and FcDefaultSubstitute have
-been called for <parameter>p</parameter>; otherwise the results will not be correct.
-    </para><para>
-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 <parameter>p</parameter> to
-<function>FcFontRenderPrepare</function> which combines them into a complete pattern.
-    </para><para>
-The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </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="FcFontRenderPrepare">
-       <refmeta>
-           <refentrytitle>FcFontRenderPrepare</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontRenderPrepare</refname>
-           <refpurpose>Prepare pattern for loading font file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcFontRenderPrepare</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>pat</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>font</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates a new pattern consisting of elements of <parameter>font</parameter> not appearing
-in <parameter>pat</parameter>, elements of <parameter>pat</parameter> not appearing in <parameter>font</parameter> and the best matching
-value from <parameter>pat</parameter> for elements appearing in both.  The result is passed to
-FcConfigSubstituteWithPat with <parameter>kind</parameter> FcMatchFont and then returned.
-           </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="FcFontList">
-       <refmeta>
-           <refentrytitle>FcFontList</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontList</refname>
-           <refpurpose>List fonts</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcFontList</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcObjectSet *<parameter>os</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Selects fonts matching <parameter>p</parameter>, creates patterns from those fonts containing
-only the objects in <parameter>os</parameter> and returns the set of unique such patterns.
-If <parameter>config</parameter> is NULL, the default configuration is checked
-to be up to date, and used.
-           </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="FcConfigFilename">
-       <refmeta>
-           <refentrytitle>FcConfigFilename</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigFilename</refname>
-           <refpurpose>Find a config file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcConfigFilename</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>name</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Given the specified external entity name, return the associated filename.
-This provides applications a way to convert various configuration file
-references into filename form.
-    </para><para>
-A null or empty <parameter>name</parameter> 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 <parameter>~</parameter>, 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.
-           </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="FcConfigParseAndLoad">
-       <refmeta>
-           <refentrytitle>FcConfigParseAndLoad</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigParseAndLoad</refname>
-           <refpurpose>load a configuration file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigParseAndLoad</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-               <paramdef>FcBool <parameter>complain</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcConfigParseAndLoadFromMemory">
-       <refmeta>
-           <refentrytitle>FcConfigParseAndLoadFromMemory</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigParseAndLoadFromMemory</refname>
-           <refpurpose>load a configuration from memory</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigParseAndLoadFromMemory</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>buffer</parameter></paramdef>
-               <paramdef>FcBool <parameter>complain</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Walks the configuration in 'memory' and constructs the internal representation
-in 'config'.  Any includes files referenced from within 'memory' will be loaded
-and dparsed.  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 fsome error occurred while loading the file, either a
-parse error, semantic error or allocation failure. Otherwise returns FcTrue.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.5</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="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>
-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>
-<!--
-   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="FcConfigFileInfoIterInit">
-       <refmeta>
-           <refentrytitle>FcConfigFileInfoIterInit</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigFileInfoIterInit</refname>
-           <refpurpose>Initialize the iterator</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcConfigFileInfoIterInit</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcConfigFileInfoIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Initialize 'iter' with the first iterator in the config file information list.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.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="FcConfigFileInfoIterNext">
-       <refmeta>
-           <refentrytitle>FcConfigFileInfoIterNext</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigFileInfoIterNext</refname>
-           <refpurpose>Set the iterator to point to the next list</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigFileInfoIterNext</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcConfigFileInfoIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Set 'iter' to point to the next node in the config file information list.
-If there is no next node, FcFalse is returned.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.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="FcConfigFileInfoIterGet">
-       <refmeta>
-           <refentrytitle>FcConfigFileInfoIterGet</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcConfigFileInfoIterGet</refname>
-           <refpurpose>Obtain the configuration file information</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcConfigFileInfoIterGet</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcConfigFileInfoIter *<parameter>iter</parameter></paramdef>
-               <paramdef>FcChar8 **<parameter>name</parameter></paramdef>
-               <paramdef>FcChar8 **<parameter>description</parameter></paramdef>
-               <paramdef>FcBool *<parameter>enabled</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Obtain the filename, the description and the flag whether it is enabled or not
-for 'iter' where points to current configuration file information.
-If the iterator is invalid, FcFalse is returned.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.91</para>
-       </refsect1>
-    </refentry>
index 8f4c878..1d8ffc8 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcBool
-@FUNC@         FcNameRegisterConstants 
-@TYPE1@                const FcConstant *              @ARG1@          consts
-@TYPE2@                int%                            @ARG2@          nconsts
-@PURPOSE@      Register symbolic constants
+@RET@           FcBool
+@FUNC@          FcNameRegisterConstants
+@TYPE1@         const FcConstant *              @ARG1@          consts
+@TYPE2@         int%                            @ARG2@          nconsts
+@PURPOSE@       Register symbolic constants
 @DESC@
 Deprecated.  Does nothing.  Returns FcFalse.
 @@
 
-@RET@          FcBool
-@FUNC@         FcNameUnregisterConstants
-@TYPE1@                const FcConstant *              @ARG1@          consts
-@TYPE2@                int%                            @ARG2@          nconsts
-@PURPOSE@      Unregister symbolic constants
+@RET@           FcBool
+@FUNC@          FcNameUnregisterConstants
+@TYPE1@         const FcConstant *              @ARG1@          consts
+@TYPE2@         int%                            @ARG2@          nconsts
+@PURPOSE@       Unregister symbolic constants
 @DESC@
 Deprecated.  Does nothing.  Returns FcFalse.
 @@
 
-@RET@          const FcConstant *
-@FUNC@         FcNameGetConstant
-@TYPE1@                FcChar8 *                       @ARG1@          string
-@PURPOSE@      Lookup symbolic constant
+@RET@           const FcConstant *
+@FUNC@          FcNameGetConstant
+@TYPE1@         FcChar8 *                       @ARG1@          string
+@PURPOSE@       Lookup symbolic constant
 @DESC@
 Return the FcConstant structure related to symbolic constant <parameter>string</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcNameConstant
-@TYPE1@                FcChar8 *                       @ARG1@          string
-@TYPE2@                int *                           @ARG2@          result
-@PURPOSE@      Get the value for a symbolic constant
+@RET@           const FcConstant *
+@FUNC@          FcNameGetConstantFor
+@TYPE1@         FcChar8 *                       @ARG1@          string
+@TYPE2@         char *                          @ARG2@          object
+@PURPOSE@       Lookup symbolic constant For object
+@DESC@
+Return the FcConstant structure related to symbolic constant <parameter>string</parameter>
+for <parameter>object</parameter>.
+@@
+
+@RET@           FcBool
+@FUNC@          FcNameConstant
+@TYPE1@         FcChar8 *                       @ARG1@          string
+@TYPE2@         int *                           @ARG2@          result
+@PURPOSE@       Get the value for a symbolic constant
 @DESC@
 Returns whether a symbolic constant with name <parameter>string</parameter> is registered,
 placing the value of the constant in <parameter>result</parameter> if present.
diff --git a/doc/fcconstant.sgml b/doc/fcconstant.sgml
deleted file mode 100644 (file)
index 28097a5..0000000
+++ /dev/null
@@ -1,204 +0,0 @@
-<!--
-   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="FcNameRegisterConstants">
-       <refmeta>
-           <refentrytitle>FcNameRegisterConstants</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameRegisterConstants</refname>
-           <refpurpose>Register symbolic constants</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcNameRegisterConstants</function></funcdef>
-               <paramdef>const FcConstant *<parameter>consts</parameter></paramdef>
-               <paramdef>int <parameter>nconsts</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deprecated.  Does nothing.  Returns FcFalse.
-           </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="FcNameUnregisterConstants">
-       <refmeta>
-           <refentrytitle>FcNameUnregisterConstants</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameUnregisterConstants</refname>
-           <refpurpose>Unregister symbolic constants</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcNameUnregisterConstants</function></funcdef>
-               <paramdef>const FcConstant *<parameter>consts</parameter></paramdef>
-               <paramdef>int <parameter>nconsts</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deprecated.  Does nothing.  Returns FcFalse.
-           </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="FcNameGetConstant">
-       <refmeta>
-           <refentrytitle>FcNameGetConstant</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameGetConstant</refname>
-           <refpurpose>Lookup symbolic constant</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const FcConstant * <function>FcNameGetConstant</function></funcdef>
-               <paramdef>FcChar8 *<parameter>string</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Return the FcConstant structure related to symbolic constant <parameter>string</parameter>.
-           </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="FcNameConstant">
-       <refmeta>
-           <refentrytitle>FcNameConstant</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameConstant</refname>
-           <refpurpose>Get the value for a symbolic constant</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcNameConstant</function></funcdef>
-               <paramdef>FcChar8 *<parameter>string</parameter></paramdef>
-               <paramdef>int *<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether a symbolic constant with name <parameter>string</parameter> is registered,
-placing the value of the constant in <parameter>result</parameter> if present.
-           </para>
-       </refsect1>
-    </refentry>
index faeba29..056439a 100644 (file)
  * OF THIS SOFTWARE.
  */
 
-@RET@          FcBool
-@FUNC@         FcDirCacheUnlink
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@TYPE2@                FcConfig *                      @ARG2@          config
-@PURPOSE@      Remove all caches related to <parameter>dir</parameter>
+@RET@           FcBool
+@FUNC@          FcDirCacheUnlink
+@TYPE1@         const FcChar8 *                 @ARG1@          dir
+@TYPE2@         FcConfig *                      @ARG2@          config
+@PURPOSE@       Remove all caches related to <parameter>dir</parameter>
 @DESC@
 Scans the cache directories in <parameter>config</parameter>, removing any
 instances of the cache file for <parameter>dir</parameter>. Returns FcFalse
@@ -32,21 +32,21 @@ when some internal error occurs (out of memory, etc). Errors actually
 unlinking any files are ignored.
 @@
 
-@RET@          FcBool  
-@FUNC@         FcDirCacheValid 
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@PURPOSE@      check directory cache 
+@RET@           FcBool
+@FUNC@          FcDirCacheValid
+@TYPE1@         const FcChar8 *                 @ARG1@          dir
+@PURPOSE@       check directory cache
 @DESC@
 Returns FcTrue if <parameter>dir</parameter> has an associated valid cache
 file, else returns FcFalse
 @@
 
-@RET@          FcCache *
-@FUNC@         FcDirCacheLoad
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@TYPE2@                FcConfig *                      @ARG2@          config
-@TYPE3@                FcChar8 **                      @ARG3@          cache_file
-@PURPOSE@      load a directory cache
+@RET@           FcCache *
+@FUNC@          FcDirCacheLoad
+@TYPE1@         const FcChar8 *                 @ARG1@          dir
+@TYPE2@         FcConfig *                      @ARG2@          config
+@TYPE3@         FcChar8 **                      @ARG3@          cache_file
+@PURPOSE@       load a directory cache
 @DESC@
 Loads the cache related to <parameter>dir</parameter>. If no cache file
 exists, returns NULL. The name of the cache file is returned in
@@ -54,23 +54,23 @@ exists, returns NULL. The name of the cache file is returned in
 FcDirCacheRead.
 @@
 
-@RET@          FcCache *
-@FUNC@         FcDirCacheRescan
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@TYPE2@                FcConfig *                      @ARG2@          config
-@PURPOSE@      Re-scan a directory cache
+@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
+@SINCE@         2.11.1
 @@
 
-@RET@          FcCache *
-@FUNC@         FcDirCacheRead
-@TYPE1@                const FcChar8 *                 @ARG1@          dir
-@TYPE2@                FcBool%                         @ARG2@          force
-@TYPE3@                FcConfig *                      @ARG3@          config
-@PURPOSE@      read or construct a directory cache
+@RET@           FcCache *
+@FUNC@          FcDirCacheRead
+@TYPE1@         const FcChar8 *                 @ARG1@          dir
+@TYPE2@         FcBool%                         @ARG2@          force
+@TYPE3@         FcConfig *                      @ARG3@          config
+@PURPOSE@       read or construct a directory cache
 @DESC@
 This returns a cache for <parameter>dir</parameter>. If
 <parameter>force</parameter> is FcFalse, then an existing, valid cache file
@@ -78,21 +78,21 @@ will be used. Otherwise, a new cache will be created by scanning the
 directory and that returned.
 @@
 
-@RET@          FcCache *
-@FUNC@         FcDirCacheLoadFile
-@TYPE1@                const FcChar8 *                 @ARG1@          cache_file
-@TYPE2@                struct stat *                   @ARG2@          file_stat
-@PURPOSE@      load a cache file
+@RET@           FcCache *
+@FUNC@          FcDirCacheLoadFile
+@TYPE1@         const FcChar8 *                 @ARG1@          cache_file
+@TYPE2@         struct stat *                   @ARG2@          file_stat
+@PURPOSE@       load a cache file
 @DESC@
 This function loads a directory cache from
 <parameter>cache_file</parameter>. If <parameter>file_stat</parameter> is
 non-NULL, it will be filled with the results of stat(2) on the cache file.
 @@
 
-@RET@          void
-@FUNC@         FcDirCacheUnload
-@TYPE1@                FcCache *                       @ARG1@          cache
-@PURPOSE@      unload a cache file
+@RET@           void
+@FUNC@          FcDirCacheUnload
+@TYPE1@         FcCache *                       @ARG1@          cache
+@PURPOSE@       unload a cache file
 @DESC@
 This function dereferences <parameter>cache</parameter>. When no other
 references to it remain, all memory associated with the cache will be freed.
diff --git a/doc/fcdircache.sgml b/doc/fcdircache.sgml
deleted file mode 100644 (file)
index 154ec41..0000000
+++ /dev/null
@@ -1,374 +0,0 @@
-<!--
-   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="FcDirCacheUnlink">
-       <refmeta>
-           <refentrytitle>FcDirCacheUnlink</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheUnlink</refname>
-           <refpurpose>Remove all caches related to <parameter>dir</parameter></refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirCacheUnlink</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Scans the cache directories in <parameter>config</parameter>, removing any
-instances of the cache file for <parameter>dir</parameter>. Returns FcFalse
-when some internal error occurs (out of memory, etc). Errors actually
-unlinking any files are ignored.
-           </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="FcDirCacheValid">
-       <refmeta>
-           <refentrytitle>FcDirCacheValid</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheValid</refname>
-           <refpurpose>check directory cache</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirCacheValid</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns FcTrue if <parameter>dir</parameter> has an associated valid cache
-file, else returns FcFalse
-           </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="FcDirCacheLoad">
-       <refmeta>
-           <refentrytitle>FcDirCacheLoad</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheLoad</refname>
-           <refpurpose>load a directory cache</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCache * <function>FcDirCacheLoad</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcChar8 **<parameter>cache_file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Loads the cache related to <parameter>dir</parameter>. If no cache file
-exists, returns NULL. The name of the cache file is returned in
-<parameter>cache_file</parameter>, unless that is NULL. See also
-FcDirCacheRead.
-           </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="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>
-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
-  
-   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="FcDirCacheRead">
-       <refmeta>
-           <refentrytitle>FcDirCacheRead</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheRead</refname>
-           <refpurpose>read or construct a directory cache</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCache * <function>FcDirCacheRead</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcBool <parameter>force</parameter></paramdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This returns a cache for <parameter>dir</parameter>. If
-<parameter>force</parameter> 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.
-           </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="FcDirCacheLoadFile">
-       <refmeta>
-           <refentrytitle>FcDirCacheLoadFile</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheLoadFile</refname>
-           <refpurpose>load a cache file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCache * <function>FcDirCacheLoadFile</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>cache_file</parameter></paramdef>
-               <paramdef>struct stat *<parameter>file_stat</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function loads a directory cache from
-<parameter>cache_file</parameter>. If <parameter>file_stat</parameter> is
-non-NULL, it will be filled with the results of stat(2) on the cache file.
-           </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="FcDirCacheUnload">
-       <refmeta>
-           <refentrytitle>FcDirCacheUnload</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirCacheUnload</refname>
-           <refpurpose>unload a cache file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcDirCacheUnload</function></funcdef>
-               <paramdef>FcCache *<parameter>cache</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function dereferences <parameter>cache</parameter>. When no other
-references to it remain, all memory associated with the cache will be freed.
-           </para>
-       </refsect1>
-    </refentry>
index 5f5f32a..798c818 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-@RET@          FcBool  
-@FUNC@         FcFileScan 
-@TYPE1@                FcFontSet *                     @ARG1@          set     
-@TYPE2@                FcStrSet *                      @ARG2@          dirs    
-@TYPE3@                FcFileCache *                   @ARG3@          cache   
-@TYPE4@                FcBlanks *                      @ARG4@          blanks  
-@TYPE5@                const FcChar8 *                 @ARG5@          file    
-@TYPE6@                FcBool%                         @ARG6@          force
-@PURPOSE@      scan a font file
+@RET@           FcBool
+@FUNC@          FcFileScan
+@TYPE1@         FcFontSet *                     @ARG1@          set
+@TYPE2@         FcStrSet *                      @ARG2@          dirs
+@TYPE3@         FcFileCache *                   @ARG3@          cache
+@TYPE4@         FcBlanks *                      @ARG4@          blanks
+@TYPE5@         const FcChar8 *                 @ARG5@          file
+@TYPE6@         FcBool%                         @ARG6@          force
+@PURPOSE@       scan a font file
 @DESC@
 Scans a single file and adds all fonts found to <parameter>set</parameter>.
 If <parameter>force</parameter> is FcTrue, then the file is scanned even if
@@ -45,24 +45,24 @@ contents of the font file itself. Returns FcFalse if any of the fonts cannot be
 added (due to allocation failure). Otherwise returns FcTrue.
 @@
 
-@RET@          FcBool
-@FUNC@         FcFileIsDir
-@TYPE1@                const FcChar8 *                 @ARG1@          file
-@PURPOSE@      check whether a file is a directory
+@RET@           FcBool
+@FUNC@          FcFileIsDir
+@TYPE1@         const FcChar8 *                 @ARG1@          file
+@PURPOSE@       check whether a file is a directory
 @DESC@
 Returns FcTrue if <parameter>file</parameter> is a directory, otherwise
 returns FcFalse.
 @@
 
-@RET@          FcBool  
-@FUNC@         FcDirScan 
-@TYPE1@                FcFontSet *                     @ARG1@          set     
-@TYPE2@                FcStrSet *                      @ARG2@          dirs    
-@TYPE3@                FcFileCache *                   @ARG3@          cache   
-@TYPE4@                FcBlanks *                      @ARG4@          blanks  
-@TYPE5@                const FcChar8 *                 @ARG5@          dir     
-@TYPE6@                FcBool%                         @ARG6@          force
-@PURPOSE@      scan a font directory without caching it
+@RET@           FcBool
+@FUNC@          FcDirScan
+@TYPE1@         FcFontSet *                     @ARG1@          set
+@TYPE2@         FcStrSet *                      @ARG2@          dirs
+@TYPE3@         FcFileCache *                   @ARG3@          cache
+@TYPE4@         FcBlanks *                      @ARG4@          blanks
+@TYPE5@         const FcChar8 *                 @ARG5@          dir
+@TYPE6@         FcBool%                         @ARG6@          force
+@PURPOSE@       scan a font directory without caching it
 @DESC@
 If <parameter>cache</parameter> is not zero or if <parameter>force</parameter>
 is FcFalse, this function currently returns FcFalse.  Otherwise, it scans an
@@ -72,12 +72,12 @@ this function does not create any cache files.  Use FcDirCacheRead() if
 caching is desired.
 @@
 
-@RET@          FcBool  
-@FUNC@         FcDirSave 
-@TYPE1@                FcFontSet *                     @ARG1@          set     
-@TYPE2@                FcStrSet *                      @ARG2@          dirs    
-@TYPE3@                const FcChar8 *                 @ARG3@          dir     
-@PURPOSE@      DEPRECATED: formerly used to save a directory cache
+@RET@           FcBool
+@FUNC@          FcDirSave
+@TYPE1@         FcFontSet *                     @ARG1@          set
+@TYPE2@         FcStrSet *                      @ARG2@          dirs
+@TYPE3@         const FcChar8 *                 @ARG3@          dir
+@PURPOSE@       DEPRECATED: formerly used to save a directory cache
 @DESC@
 This function now does nothing aside from returning FcFalse. It used to creates the
 per-directory cache file for <parameter>dir</parameter> and populates it
diff --git a/doc/fcfile.sgml b/doc/fcfile.sgml
deleted file mode 100644 (file)
index 0703d09..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-<!--
-   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="FcFileScan">
-       <refmeta>
-           <refentrytitle>FcFileScan</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFileScan</refname>
-           <refpurpose>scan a font file</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcFileScan</function></funcdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-               <paramdef>FcStrSet *<parameter>dirs</parameter></paramdef>
-               <paramdef>FcFileCache *<parameter>cache</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-               <paramdef>FcBool <parameter>force</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Scans a single file and adds all fonts found to <parameter>set</parameter>.
-If <parameter>force</parameter> is FcTrue, then the file is scanned even if
-associated information is found in <parameter>cache</parameter>.  If
-<parameter>file</parameter> is a directory, it is added to
-<parameter>dirs</parameter>. 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.
-           </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="FcFileIsDir">
-       <refmeta>
-           <refentrytitle>FcFileIsDir</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFileIsDir</refname>
-           <refpurpose>check whether a file is a directory</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcFileIsDir</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns FcTrue if <parameter>file</parameter> is a directory, otherwise
-returns FcFalse.
-           </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="FcDirScan">
-       <refmeta>
-           <refentrytitle>FcDirScan</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirScan</refname>
-           <refpurpose>scan a font directory without caching it</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirScan</function></funcdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-               <paramdef>FcStrSet *<parameter>dirs</parameter></paramdef>
-               <paramdef>FcFileCache *<parameter>cache</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-               <paramdef>FcBool <parameter>force</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-If <parameter>cache</parameter> is not zero or if <parameter>force</parameter>
-is FcFalse, this function currently returns FcFalse.  Otherwise, it scans an
-entire directory and adds all fonts found to <parameter>set</parameter>.
-Any subdirectories found are added to <parameter>dirs</parameter>.  Calling
-this function does not create any cache files.  Use FcDirCacheRead() if
-caching is desired.
-           </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="FcDirSave">
-       <refmeta>
-           <refentrytitle>FcDirSave</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDirSave</refname>
-           <refpurpose>DEPRECATED: formerly used to save a directory cache</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcDirSave</function></funcdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-               <paramdef>FcStrSet *<parameter>dirs</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function now does nothing aside from returning FcFalse. It used to creates the
-per-directory cache file for <parameter>dir</parameter> and populates it
-with the fonts in <parameter>set</parameter> and subdirectories in
-<parameter>dirs</parameter>. All of this functionality is now automatically
-managed by FcDirCacheLoad and FcDirCacheRead.
-           </para>
-       </refsect1>
-    </refentry>
index e076d8b..b4a6a39 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcFontSet *
-@FUNC@         FcFontSetCreate
-@TYPE1@                void
-@PURPOSE@      Create a font set
+@RET@           FcFontSet *
+@FUNC@          FcFontSetCreate
+@TYPE1@         void
+@PURPOSE@       Create a font set
 @DESC@
 Creates an empty font set.
 @@
 
-@RET@          void
-@FUNC@         FcFontSetDestroy
-@TYPE1@                FcFontSet *                     @ARG1@          s
-@PURPOSE@      Destroy a font set
+@RET@           void
+@FUNC@          FcFontSetDestroy
+@TYPE1@         FcFontSet *                     @ARG1@          s
+@PURPOSE@       Destroy a font set
 @DESC@
 Destroys a font set.  Note that this destroys any referenced patterns as
 well.
 @@
 
-@RET@          FcBool
-@FUNC@         FcFontSetAdd
-@TYPE1@                FcFontSet *                     @ARG1@          s
-@TYPE2@                FcPattern *                     @ARG2@          font
-@PURPOSE@      Add to a font set
+@RET@           FcBool
+@FUNC@          FcFontSetAdd
+@TYPE1@         FcFontSet *                     @ARG1@          s
+@TYPE2@         FcPattern *                     @ARG2@          font
+@PURPOSE@       Add to a font set
 @DESC@
 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.
 @@
 
-@RET@          FcFontSet *
-@FUNC@         FcFontSetList
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                FcFontSet **                    @ARG2@          sets
-@TYPE3@                int                             @ARG3@          nsets
-@TYPE4@                FcPattern *                     @ARG4@          pattern
-@TYPE5@                FcObjectSet *                   @ARG5@          object_set
-@PURPOSE@      List fonts from a set of font sets
+@RET@           FcFontSet *
+@FUNC@          FcFontSetList
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcFontSet **                    @ARG2@          sets
+@TYPE3@         int                             @ARG3@          nsets
+@TYPE4@         FcPattern *                     @ARG4@          pattern
+@TYPE5@         FcObjectSet *                   @ARG5@          object_set
+@PURPOSE@       List fonts from a set of font sets
 @DESC@
 Selects fonts matching <parameter>pattern</parameter> from
 <parameter>sets</parameter>, creates patterns from those
@@ -66,14 +66,14 @@ If <parameter>config</parameter> is NULL, the default configuration is checked
 to be up to date, and used.
 @@
 
-@RET@          FcPattern *
-@FUNC@         FcFontSetMatch
-@TYPE1@                FcConfig *                      @ARG1@          config
-@TYPE2@                FcFontSet **                    @ARG2@          sets
-@TYPE3@                int                             @ARG3@          nsets
-@TYPE4@                FcPattern *                     @ARG4@          pattern
-@TYPE5@                FcResult *                      @ARG5@          result
-@PURPOSE@      Return the best font from a set of font sets
+@RET@           FcPattern *
+@FUNC@          FcFontSetMatch
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcFontSet **                    @ARG2@          sets
+@TYPE3@         int                             @ARG3@          nsets
+@TYPE4@         FcPattern *                     @ARG4@          pattern
+@TYPE5@         FcResult *                      @ARG5@          result
+@PURPOSE@       Return the best font from a set of font sets
 @DESC@
 Finds the font in <parameter>sets</parameter> most closely matching
 <parameter>pattern</parameter> and returns the result of
@@ -86,10 +86,10 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 Returns NULL if an error occurs during this process.
 @@
 
-@RET@          void
-@FUNC@         FcFontSetPrint
-@TYPE1@                FcFontSet *                     @ARG1@          set
-@PURPOSE@      Print a set of patterns to stdout
+@RET@           void
+@FUNC@          FcFontSetPrint
+@TYPE1@         FcFontSet *                     @ARG1@          set
+@PURPOSE@       Print a set of patterns to stdout
 @DESC@
 This function is useful for diagnosing font related issues, printing the
 complete contents of every pattern in <parameter>set</parameter>. The format
@@ -97,19 +97,19 @@ of the output is designed to be of help to users and developers, and may
 change at any time.
 @@
 
-@RET@          
-@FUNC@         FcFontSetSort
-@TYPE1@         FcConfig *                     @ARG1@          config
-@TYPE2@                FcFontSet **                    @ARG2@          sets
-@TYPE3@                int                             @ARG3@          nsets
-@TYPE4@                FcPattern *                     @ARG4@          pattern
-@TYPE5@                FcBool%                         @ARG5@          trim
-@TYPE6@                FcCharSet **                    @ARG6@          csp
-@TYPE7@                FcResult *                      @ARG7@          result
-@PURPOSE@      Add to a font set
+@RET@           FcFontSet *
+@FUNC@          FcFontSetSort
+@TYPE1@         FcConfig *                      @ARG1@          config
+@TYPE2@         FcFontSet **                    @ARG2@          sets
+@TYPE3@         int                             @ARG3@          nsets
+@TYPE4@         FcPattern *                     @ARG4@          pattern
+@TYPE5@         FcBool%                         @ARG5@          trim
+@TYPE6@         FcCharSet **                    @ARG6@          csp
+@TYPE7@         FcResult *                      @ARG7@          result
+@PURPOSE@       Add to a font set
 @DESC@
 Returns the list of fonts from <parameter>sets</parameter>
-sorted by closeness to <parameter>pattern</parameter>.  
+sorted by closeness to <parameter>pattern</parameter>.
 If <parameter>trim</parameter> 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
@@ -128,10 +128,10 @@ modify these patterns.  Instead, they should be passed, along with
 The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
 @@
 
-@RET@          
-@FUNC@         FcFontSetSortDestroy
-@TYPE1@                FcFontSet *                     @ARG1@          set
-@PURPOSE@      DEPRECATED destroy a font set
+@RET@           void
+@FUNC@          FcFontSetSortDestroy
+@TYPE1@         FcFontSet *                     @ARG1@          set
+@PURPOSE@       DEPRECATED destroy a font set
 @DESC@
 This function is DEPRECATED. <function>FcFontSetSortDestroy</function>
 destroys <parameter>set</parameter> by calling
diff --git a/doc/fcfontset.sgml b/doc/fcfontset.sgml
deleted file mode 100644 (file)
index bb6cd07..0000000
+++ /dev/null
@@ -1,454 +0,0 @@
-<!--
-   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="FcFontSetCreate">
-       <refmeta>
-           <refentrytitle>FcFontSetCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetCreate</refname>
-           <refpurpose>Create a font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcFontSetCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates an empty font set.
-           </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="FcFontSetDestroy">
-       <refmeta>
-           <refentrytitle>FcFontSetDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetDestroy</refname>
-           <refpurpose>Destroy a font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcFontSetDestroy</function></funcdef>
-               <paramdef>FcFontSet *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Destroys a font set.  Note that this destroys any referenced patterns as
-well.
-           </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="FcFontSetAdd">
-       <refmeta>
-           <refentrytitle>FcFontSetAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetAdd</refname>
-           <refpurpose>Add to a font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcFontSetAdd</function></funcdef>
-               <paramdef>FcFontSet *<parameter>s</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>font</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcFontSetList">
-       <refmeta>
-           <refentrytitle>FcFontSetList</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetList</refname>
-           <refpurpose>List fonts from a set of font sets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcFontSet * <function>FcFontSetList</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcFontSet **<parameter>sets</parameter></paramdef>
-               <paramdef>int<parameter>nsets</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>FcObjectSet *<parameter>object_set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Selects fonts matching <parameter>pattern</parameter> from
-<parameter>sets</parameter>, creates patterns from those
-fonts containing only the objects in <parameter>object_set</parameter> and returns
-the set of unique such patterns.
-If <parameter>config</parameter> is NULL, the default configuration is checked
-to be up to date, and used.
-           </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="FcFontSetMatch">
-       <refmeta>
-           <refentrytitle>FcFontSetMatch</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetMatch</refname>
-           <refpurpose>Return the best font from a set of font sets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcFontSetMatch</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcFontSet **<parameter>sets</parameter></paramdef>
-               <paramdef>int<parameter>nsets</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>FcResult *<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Finds the font in <parameter>sets</parameter> most closely matching
-<parameter>pattern</parameter> and returns the result of
-<function>FcFontRenderPrepare</function> for that font and the provided
-pattern. This function should be called only after
-<function>FcConfigSubstitute</function> and
-<function>FcDefaultSubstitute</function> have been called for
-<parameter>pattern</parameter>; otherwise the results will not be correct.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-Returns NULL if an error occurs during this process.
-           </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="FcFontSetPrint">
-       <refmeta>
-           <refentrytitle>FcFontSetPrint</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetPrint</refname>
-           <refpurpose>Print a set of patterns to stdout</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcFontSetPrint</function></funcdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function is useful for diagnosing font related issues, printing the
-complete contents of every pattern in <parameter>set</parameter>. The format
-of the output is designed to be of help to users and developers, and may
-change at any time.
-           </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="FcFontSetSort">
-       <refmeta>
-           <refentrytitle>FcFontSetSort</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetSort</refname>
-           <refpurpose>Add to a font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef> <function>FcFontSetSort</function></funcdef>
-               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
-               <paramdef>FcFontSet **<parameter>sets</parameter></paramdef>
-               <paramdef>int<parameter>nsets</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>FcBool <parameter>trim</parameter></paramdef>
-               <paramdef>FcCharSet **<parameter>csp</parameter></paramdef>
-               <paramdef>FcResult *<parameter>result</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the list of fonts from <parameter>sets</parameter>
-sorted by closeness to <parameter>pattern</parameter>.  
-If <parameter>trim</parameter> 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 <parameter>csp</parameter>,
-if <parameter>csp</parameter> is not NULL.  This function
-should be called only after FcConfigSubstitute and FcDefaultSubstitute have
-been called for <parameter>p</parameter>;
-otherwise the results will not be correct.
-    </para><para>
-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
-<parameter>pattern</parameter> to
-<function>FcFontRenderPrepare</function> which combines them into a complete pattern.
-    </para><para>
-The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
-           </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="FcFontSetSortDestroy">
-       <refmeta>
-           <refentrytitle>FcFontSetSortDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFontSetSortDestroy</refname>
-           <refpurpose>DEPRECATED destroy a font set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef> <function>FcFontSetSortDestroy</function></funcdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function is DEPRECATED. <function>FcFontSetSortDestroy</function>
-destroys <parameter>set</parameter> by calling
-<function>FcFontSetDestroy</function>. Applications should use
-<function>FcFontSetDestroy</function> directly instead.
-           </para>
-       </refsect1>
-    </refentry>
index 71b866b..754004f 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-@RET@          FcChar8 *
-@FUNC@         FcPatternFormat
-@TYPE1@                FcPattern *                     @ARG1@          pat
-@TYPE2@                const FcChar8 *                 @ARG2@          format
-@PURPOSE@      Format a pattern into a string according to a format specifier
+@RET@           FcChar8 *
+@FUNC@          FcPatternFormat
+@TYPE1@         FcPattern *                     @ARG1@          pat
+@TYPE2@         const FcChar8 *                 @ARG2@          format
+@PURPOSE@       Format a pattern into a string according to a format specifier
 @DESC@
 
 Converts given pattern <parameter>pat</parameter> into text described by
@@ -305,5 +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
+@SINCE@         2.9.0
 @@
diff --git a/doc/fcformat.sgml b/doc/fcformat.sgml
deleted file mode 100644 (file)
index 8f7a337..0000000
+++ /dev/null
@@ -1,328 +0,0 @@
-<!--
-   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="FcPatternFormat">
-       <refmeta>
-           <refentrytitle>FcPatternFormat</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternFormat</refname>
-           <refpurpose>Format a pattern into a string according to a format specifier</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcPatternFormat</function></funcdef>
-               <paramdef>FcPattern *<parameter>pat</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>format</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Converts given pattern <parameter>pat</parameter> into text described by
-the format specifier <parameter>format</parameter>.
-The return value refers to newly allocated memory which should be freed by the
-caller using free(), or NULL if <parameter>format</parameter> is invalid.
-
-</para><para>
-
-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.
-
-</para><para>
-
-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.
-
-</para><para>
-
-A <firstterm>simple</firstterm> tag
-is one where the content is an identifier.  When simple
-tags are expanded, the named identifier will be looked up in
-<parameter>pattern</parameter> 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".
-
-</para><para>
-
-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]}".
-
-</para><para>
-
-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 <parameter>pattern</parameter> does not have weight set.
-
-</para><para>
-
-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 <parameter>pattern</parameter> does not have weight set.
-
-</para><para>
-
-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 <parameter>pattern</parameter> does not have weight set.
-
-</para><para>
-
-A <firstterm>count</firstterm> 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
-<parameter>pattern</parameter> has set, which may be zero.
-
-</para><para>
-
-A <firstterm>sub-expression</firstterm> 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.
-
-</para><para>
-
-A <firstterm>filter-out</firstterm> 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 <parameter>pattern</parameter> sans the size and pixelsize elements.
-
-</para><para>
-
-A <firstterm>filter-in</firstterm> 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
-<parameter>pattern</parameter>.
-
-</para><para>
-
-A <firstterm>conditional</firstterm> 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 <parameter>pattern</parameter> has size and dpi elements but
-no pixelsize element, and to "fail" otherwise.
-
-</para><para>
-
-An <firstterm>enumerate</firstterm> 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.
-
-</para><para>
-
-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.
-
-</para><para>
-
-A <firstterm>builtin</firstterm> tag
-is one starting with the character "=" followed by a builtin
-name.  The following builtins are defined:
-
-<variablelist>
-
-<varlistentry><term>
-unparse
-</term><listitem><para>
-Expands to the result of calling FcNameUnparse() on the pattern.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-fcmatch
-</term><listitem><para>
-Expands to the output of the default output format of the fc-match
-command on the pattern, without the final newline.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-fclist
-</term><listitem><para>
-Expands to the output of the default output format of the fc-list
-command on the pattern, without the final newline.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-fccat
-</term><listitem><para>
-Expands to the output of the default output format of the fc-cat
-command on the pattern, without the final newline.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-pkgkit
-</term><listitem><para>
-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.
-</para></listitem></varlistentry>
-
-</variablelist>
-
-For example, the format "%{+family,style{%{=unparse}}}\n" will expand
-to an unparsed name containing only the family and style element values
-from <parameter>pattern</parameter>.
-
-</para><para>
-
-The contents of any tag can be followed by a set of zero or more
-<firstterm>converter</firstterm>s.  A converter is specified by the
-character "|" followed by the converter name and arguments.  The
-following converters are defined:
-
-<variablelist>
-
-<varlistentry><term>
-basename
-</term><listitem><para>
-Replaces text with the results of calling FcStrBasename() on it.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-dirname
-</term><listitem><para>
-Replaces text with the results of calling FcStrDirname() on it.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-downcase
-</term><listitem><para>
-Replaces text with the results of calling FcStrDowncase() on it.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-shescape
-</term><listitem><para>
-Escapes text for one level of shell expansion.
-(Escapes single-quotes, also encloses text in single-quotes.)
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-cescape
-</term><listitem><para>
-Escapes text such that it can be used as part of a C string literal.
-(Escapes backslash and double-quotes.)
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-xmlescape
-</term><listitem><para>
-Escapes text such that it can be used in XML and HTML.
-(Escapes less-than, greater-than, and ampersand.)
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-delete(<parameter>chars</parameter>)
-</term><listitem><para>
-Deletes all occurrences of each of the characters in <parameter>chars</parameter>
-from the text.
-FIXME: This converter is not UTF-8 aware yet.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-escape(<parameter>chars</parameter>)
-</term><listitem><para>
-Escapes all occurrences of each of the characters in <parameter>chars</parameter>
-by prepending it by the first character in <parameter>chars</parameter>.
-FIXME: This converter is not UTF-8 aware yet.
-</para></listitem></varlistentry>
-
-<varlistentry><term>
-translate(<parameter>from</parameter>,<parameter>to</parameter>)
-</term><listitem><para>
-Translates all occurrences of each of the characters in <parameter>from</parameter>
-by replacing them with their corresponding character in <parameter>to</parameter>.
-If <parameter>to</parameter> has fewer characters than
-<parameter>from</parameter>, it will be extended by repeating its last
-character.
-FIXME: This converter is not UTF-8 aware yet.
-</para></listitem></varlistentry>
-
-</variablelist>
-
-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.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.9.0</para>
-       </refsect1>
-    </refentry>
index af63e83..723d34e 100644 (file)
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
-@RET@           FT_UInt       
-@FUNC@          FcFreeTypeCharIndex 
-@TYPE1@         FT_Face%                       @ARG1@          face      
-@TYPE2@         FcChar32%                      @ARG2@          ucs4      
-@PURPOSE@      map Unicode to glyph id
+@RET@           FT_UInt
+@FUNC@          FcFreeTypeCharIndex
+@TYPE1@         FT_Face%                        @ARG1@          face
+@TYPE2@         FcChar32%                       @ARG2@          ucs4
+@PURPOSE@       map Unicode to glyph id
 @DESC@
 Maps a Unicode char to a glyph index.  This function uses information from
 several possible underlying encoding tables to work around broken fonts.
@@ -41,11 +41,11 @@ higher level functions.
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
-@RET@           FcCharSet *      
-@FUNC@          FcFreeTypeCharSet 
-@TYPE1@         FT_Face%                       @ARG1@          face      
-@TYPE2@         FcBlanks *                     @ARG2@          blanks
-@PURPOSE@      compute Unicode coverage
+@RET@           FcCharSet *
+@FUNC@          FcFreeTypeCharSet
+@TYPE1@         FT_Face%                        @ARG1@          face
+@TYPE2@         FcBlanks *                      @ARG2@          blanks
+@PURPOSE@       compute Unicode coverage
 @DESC@
 Scans a FreeType face and returns the set of encoded Unicode chars.
 FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
@@ -55,12 +55,12 @@ accepted only for compatibility with older code.
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
-@RET@           FcCharSet *      
-@FUNC@          FcFreeTypeCharSetAndSpacing 
-@TYPE1@         FT_Face%                       @ARG1@          face      
-@TYPE2@         FcBlanks *                     @ARG2@          blanks
-@TYPE3@                int *                           @ARG3@          spacing
-@PURPOSE@      compute Unicode coverage and spacing type
+@RET@           FcCharSet *
+@FUNC@          FcFreeTypeCharSetAndSpacing
+@TYPE1@         FT_Face%                        @ARG1@          face
+@TYPE2@         FcBlanks *                      @ARG2@          blanks
+@TYPE3@         int *                           @ARG3@          spacing
+@PURPOSE@       compute Unicode coverage and spacing type
 @DESC@
 Scans a FreeType face and returns the set of encoded Unicode chars.
 FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
@@ -69,19 +69,19 @@ accepted only for compatibility with older code.
 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.  
+widths.
 @@
 
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
-@RET@           FcPattern *      
-@FUNC@          FcFreeTypeQuery 
-@TYPE1@         const FcChar8 *                        @ARG1@          file      
-@TYPE2@         int%                           @ARG2@          id      
-@TYPE3@         FcBlanks *                     @ARG3@          blanks      
-@TYPE4@         int *                          @ARG4@          count      
-@PURPOSE@      compute pattern from font file (and index)
+@RET@           FcPattern *
+@FUNC@          FcFreeTypeQuery
+@TYPE1@         const FcChar8 *                 @ARG1@          file
+@TYPE2@         int%                            @ARG2@          id
+@TYPE3@         FcBlanks *                      @ARG3@          blanks
+@TYPE4@         int *                           @ARG4@          count
+@PURPOSE@       compute pattern from font file (and index)
 @DESC@
 Constructs a pattern representing the 'id'th face in 'file'.  The number
 of faces in 'file' is returned in 'count'.
@@ -90,22 +90,22 @@ accepted only for compatibility with older code.
 @@
 
 unsigned int
-FcFreeTypeQueryAll(const FcChar8       *file,
-                  int                  id,
-                  FcBlanks             *blanks,
-                  int                  *count,
-                  FcFontSet            *set)
+FcFreeTypeQueryAll(const FcChar8        *file,
+                   int                  id,
+                   FcBlanks             *blanks,
+                   int                  *count,
+                   FcFontSet            *set)
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
 @RET@           unsigned int
 @FUNC@          FcFreeTypeQueryAll
-@TYPE1@         const FcChar8 *                        @ARG1@          file
-@TYPE2@         int%                           @ARG2@          id
-@TYPE3@         FcBlanks *                     @ARG3@          blanks
-@TYPE4@         int *                          @ARG4@          count
-@TYPE5@         FcFontSet *                    @ARG5@          set
-@PURPOSE@      compute all patterns from font file (and index)
+@TYPE1@         const FcChar8 *                 @ARG1@          file
+@TYPE2@         int%                            @ARG2@          id
+@TYPE3@         FcBlanks *                      @ARG3@          blanks
+@TYPE4@         int *                           @ARG4@          count
+@TYPE5@         FcFontSet *                     @ARG5@          set
+@PURPOSE@       compute all patterns from font file (and index)
 @DESC@
 Constructs patterns found in 'file'.
 If id is -1, then all patterns found in 'file' are added to 'set'.
@@ -114,19 +114,19 @@ The number of faces in 'file' is returned in 'count'.
 The number of patterns added to 'set' is returned.
 FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
 accepted only for compatibility with older code.
-@SINCE@                2.12.91
+@SINCE@         2.12.91
 @@
 
 @SYNOPSIS@
 #include &lt;fontconfig.h&gt;
 #include &lt;fcfreetype.h&gt;
-@RET@           FcPattern *      
+@RET@           FcPattern *
 @FUNC@          FcFreeTypeQueryFace
-@TYPE1@                const FT_Face%                  @ARG1@          face
-@TYPE2@         const FcChar8 *                        @ARG2@          file
-@TYPE3@         int%                           @ARG3@          id
-@TYPE4@         FcBlanks *                     @ARG4@          blanks
-@PURPOSE@      compute pattern from FT_Face
+@TYPE1@         const FT_Face%                  @ARG1@          face
+@TYPE2@         const FcChar8 *                 @ARG2@          file
+@TYPE3@         int%                            @ARG3@          id
+@TYPE4@         FcBlanks *                      @ARG4@          blanks
+@PURPOSE@       compute pattern from FT_Face
 @DESC@
 Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
 data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
diff --git a/doc/fcfreetype.sgml b/doc/fcfreetype.sgml
deleted file mode 100644 (file)
index 1286a3e..0000000
+++ /dev/null
@@ -1,348 +0,0 @@
-<!--
-   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="FcFreeTypeCharIndex">
-       <refmeta>
-           <refentrytitle>FcFreeTypeCharIndex</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeCharIndex</refname>
-           <refpurpose>map Unicode to glyph id</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FT_UInt <function>FcFreeTypeCharIndex</function></funcdef>
-               <paramdef>FT_Face <parameter>face</parameter></paramdef>
-               <paramdef>FcChar32 <parameter>ucs4</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcFreeTypeCharSet">
-       <refmeta>
-           <refentrytitle>FcFreeTypeCharSet</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeCharSet</refname>
-           <refpurpose>compute Unicode coverage</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcFreeTypeCharSet</function></funcdef>
-               <paramdef>FT_Face <parameter>face</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Scans a FreeType face and returns the set of encoded Unicode chars.
-FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
-accepted only for compatibility with older code.
-           </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="FcFreeTypeCharSetAndSpacing">
-       <refmeta>
-           <refentrytitle>FcFreeTypeCharSetAndSpacing</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeCharSetAndSpacing</refname>
-           <refpurpose>compute Unicode coverage and spacing type</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcCharSet * <function>FcFreeTypeCharSetAndSpacing</function></funcdef>
-               <paramdef>FT_Face <parameter>face</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-               <paramdef>int *<parameter>spacing</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Scans a FreeType face and returns the set of encoded Unicode chars.
-FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
-accepted only for compatibility with older code.
-<parameter>spacing</parameter> 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.
-           </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="FcFreeTypeQuery">
-       <refmeta>
-           <refentrytitle>FcFreeTypeQuery</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeQuery</refname>
-           <refpurpose>compute pattern from font file (and index)</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcFreeTypeQuery</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-               <paramdef>int *<parameter>count</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Constructs a pattern representing the 'id'th face in 'file'.  The number
-of faces in 'file' is returned in 'count'.
-FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
-accepted only for compatibility with older code.
-           </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="FcFreeTypeQueryAll">
-       <refmeta>
-           <refentrytitle>FcFreeTypeQueryAll</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeQueryAll</refname>
-           <refpurpose>compute all patterns from font file (and index)</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>unsigned int <function>FcFreeTypeQueryAll</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-               <paramdef>int *<parameter>count</parameter></paramdef>
-               <paramdef>FcFontSet *<parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Constructs patterns found in 'file'.
-If id is -1, then all patterns found in 'file' are added to 'set'.
-Otherwise, this function works exactly like FcFreeTypeQuery().
-The number of faces in 'file' is returned in 'count'.
-The number of patterns added to 'set' is returned.
-FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
-accepted only for compatibility with older code.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.12.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="FcFreeTypeQueryFace">
-       <refmeta>
-           <refentrytitle>FcFreeTypeQueryFace</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFreeTypeQueryFace</refname>
-           <refpurpose>compute pattern from FT_Face</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig.h&gt;
-#include &lt;fcfreetype.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcFreeTypeQueryFace</function></funcdef>
-               <paramdef>const FT_Face <parameter>face</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-               <paramdef>FcBlanks *<parameter>blanks</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
-data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
-FcBlanks is deprecated, <parameter>blanks</parameter> is ignored and
-accepted only for compatibility with older code.
-           </para>
-       </refsect1>
-    </refentry>
index 014af0d..3931857 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcConfig *
-@FUNC@         FcInitLoadConfig
-@TYPE1@                void
-@PURPOSE@      load configuration
+@RET@           FcConfig *
+@FUNC@          FcInitLoadConfig
+@TYPE1@         void
+@PURPOSE@       load configuration
 @DESC@
 Loads the default configuration file and returns the resulting configuration.
 Does not load any font information.
 @@
 
-@RET@           FcConfig *      
-@FUNC@          FcInitLoadConfigAndFonts 
-@TYPE1@                void
-@PURPOSE@      load configuration and font data
+@RET@           FcConfig *
+@FUNC@          FcInitLoadConfigAndFonts
+@TYPE1@         void
+@PURPOSE@       load configuration and font data
 @DESC@
 Loads the default configuration file and builds information about the
 available fonts.  Returns the resulting configuration.
 @@
 
-@RET@           FcBool       
-@FUNC@          FcInit 
-@TYPE1@                void
-@PURPOSE@      initialize fontconfig library
+@RET@           FcBool
+@FUNC@          FcInit
+@TYPE1@         void
+@PURPOSE@       initialize fontconfig library
 @DESC@
 Loads the default configuration file and the fonts referenced therein and
 sets the default configuration to that result.  Returns whether this
@@ -50,10 +50,10 @@ process succeeded or not.  If the default configuration has already
 been loaded, this routine does nothing and returns FcTrue.
 @@
 
-@RET@          void
-@FUNC@         FcFini
-@TYPE1@                void
-@PURPOSE@      finalize fontconfig library
+@RET@           void
+@FUNC@          FcFini
+@TYPE1@         void
+@PURPOSE@       finalize fontconfig library
 @DESC@
 Frees all data structures allocated by previous calls to fontconfig
 functions. Fontconfig returns to an uninitialized state, requiring a
@@ -61,18 +61,18 @@ new call to one of the FcInit functions before any other fontconfig
 function may be called.
 @@
 
-@RET@           int       
-@FUNC@          FcGetVersion 
-@TYPE1@                void
-@PURPOSE@      library version number
+@RET@           int
+@FUNC@          FcGetVersion
+@TYPE1@         void
+@PURPOSE@       library version number
 @DESC@
 Returns the version number of the library.
 @@
 
-@RET@           FcBool       
-@FUNC@          FcInitReinitialize 
-@TYPE1@                void
-@PURPOSE@      re-initialize library
+@RET@           FcBool
+@FUNC@          FcInitReinitialize
+@TYPE1@         void
+@PURPOSE@       re-initialize library
 @DESC@
 Forces the default configuration file to be reloaded and resets the default
 configuration. Returns FcFalse if the configuration cannot be reloaded (due
@@ -80,10 +80,10 @@ to configuration file errors, allocation failures or other issues) and leaves th
 existing configuration unchanged. Otherwise returns FcTrue.
 @@
 
-@RET@           FcBool       
-@FUNC@          FcInitBringUptoDate 
-@TYPE1@                void
-@PURPOSE@      reload configuration files if needed
+@RET@           FcBool
+@FUNC@          FcInitBringUptoDate
+@TYPE1@         void
+@PURPOSE@       reload configuration files if needed
 @DESC@
 Checks the rescan interval in the default configuration, checking the
 configuration if the interval has passed and reloading the configuration if
diff --git a/doc/fcinit.sgml b/doc/fcinit.sgml
deleted file mode 100644 (file)
index 13a6543..0000000
+++ /dev/null
@@ -1,364 +0,0 @@
-<!--
-   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="FcInitLoadConfig">
-       <refmeta>
-           <refentrytitle>FcInitLoadConfig</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcInitLoadConfig</refname>
-           <refpurpose>load configuration</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcConfig * <function>FcInitLoadConfig</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Loads the default configuration file and returns the resulting configuration.
-Does not load any font information.
-           </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="FcInitLoadConfigAndFonts">
-       <refmeta>
-           <refentrytitle>FcInitLoadConfigAndFonts</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcInitLoadConfigAndFonts</refname>
-           <refpurpose>load configuration and font data</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcConfig * <function>FcInitLoadConfigAndFonts</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Loads the default configuration file and builds information about the
-available fonts.  Returns the resulting configuration.
-           </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="FcInit">
-       <refmeta>
-           <refentrytitle>FcInit</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcInit</refname>
-           <refpurpose>initialize fontconfig library</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcInit</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcFini">
-       <refmeta>
-           <refentrytitle>FcFini</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcFini</refname>
-           <refpurpose>finalize fontconfig library</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcFini</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcGetVersion">
-       <refmeta>
-           <refentrytitle>FcGetVersion</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcGetVersion</refname>
-           <refpurpose>library version number</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcGetVersion</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the version number of the library.
-           </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="FcInitReinitialize">
-       <refmeta>
-           <refentrytitle>FcInitReinitialize</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcInitReinitialize</refname>
-           <refpurpose>re-initialize library</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcInitReinitialize</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcInitBringUptoDate">
-       <refmeta>
-           <refentrytitle>FcInitBringUptoDate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcInitBringUptoDate</refname>
-           <refpurpose>reload configuration files if needed</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcInitBringUptoDate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </para>
-       </refsect1>
-    </refentry>
index c7ed83b..401abc0 100644 (file)
  * OF THIS SOFTWARE.
  */
 
-@RET@          FcLangSet *
-@FUNC@         FcLangSetCreate
-@TYPE1@                void
-@PURPOSE@      create a langset object
+@RET@           FcLangSet *
+@FUNC@          FcLangSetCreate
+@TYPE1@         void
+@PURPOSE@       create a langset object
 @DESC@
 <function>FcLangSetCreate</function> creates a new FcLangSet object.
 @@
 
-@RET@          void
-@FUNC@         FcLangSetDestroy
-@TYPE1@                FcLangSet *                     @ARG1@          ls
-@PURPOSE@      destroy a langset object
+@RET@           void
+@FUNC@          FcLangSetDestroy
+@TYPE1@         FcLangSet *                     @ARG1@          ls
+@PURPOSE@       destroy a langset object
 @DESC@
 <function>FcLangSetDestroy</function> destroys a FcLangSet object, freeing
 all memory associated with it.
 @@
 
-@RET@          FcLangSet *
-@FUNC@         FcLangSetCopy
-@TYPE1@                const FcLangSet *               @ARG1@          ls
-@PURPOSE@      copy a langset object
+@RET@           FcLangSet *
+@FUNC@          FcLangSetCopy
+@TYPE1@         const FcLangSet *               @ARG1@          ls
+@PURPOSE@       copy a langset object
 @DESC@
 <function>FcLangSetCopy</function> creates a new FcLangSet object and
 populates it with the contents of <parameter>ls</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcLangSetAdd
-@TYPE1@                FcLangSet *                     @ARG1@          ls
-@TYPE2@                const FcChar8 *                 @ARG2@          lang
-@PURPOSE@      add a language to a langset
+@RET@           FcBool
+@FUNC@          FcLangSetAdd
+@TYPE1@         FcLangSet *                     @ARG1@          ls
+@TYPE2@         const FcChar8 *                 @ARG2@          lang
+@PURPOSE@       add a language to a langset
 @DESC@
 <parameter>lang</parameter> is added to <parameter>ls</parameter>.
 <parameter>lang</parameter> should be of the form Ll-Tt where Ll is a
@@ -58,44 +58,44 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
 @@
 
-@RET@          FcBool
-@FUNC@         FcLangSetDel
-@TYPE1@                FcLangSet *                     @ARG1@          ls
-@TYPE2@                const FcChar8 *                 @ARG2@          lang
-@PURPOSE@      delete a language from a langset
+@RET@           FcBool
+@FUNC@          FcLangSetDel
+@TYPE1@         FcLangSet *                     @ARG1@          ls
+@TYPE2@         const FcChar8 *                 @ARG2@          lang
+@PURPOSE@       delete a language from a langset
 @DESC@
 <parameter>lang</parameter> is removed from <parameter>ls</parameter>.
 <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
+@SINCE@         2.9.0
 @@
 
-@RET@          FcLangSet *
-@FUNC@         FcLangSetUnion
-@TYPE1@                const FcLangSet *               @ARG1@          ls_a
-@TYPE2@                const FcLangSet *               @ARG2@          ls_b
-@PURPOSE@      Add langsets
+@RET@           FcLangSet *
+@FUNC@          FcLangSetUnion
+@TYPE1@         const FcLangSet *               @ARG1@          ls_a
+@TYPE2@         const FcLangSet *               @ARG2@          ls_b
+@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
+@SINCE@         2.9.0
 @@
 
-@RET@          FcLangSet *
-@FUNC@         FcLangSetSubtract
-@TYPE1@                const FcLangSet *               @ARG1@          ls_a
-@TYPE2@                const FcLangSet *               @ARG2@          ls_b
-@PURPOSE@      Subtract langsets
+@RET@           FcLangSet *
+@FUNC@          FcLangSetSubtract
+@TYPE1@         const FcLangSet *               @ARG1@          ls_a
+@TYPE2@         const FcLangSet *               @ARG2@          ls_b
+@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
+@SINCE@         2.9.0
 @@
 
-@RET@          FcLangResult
-@FUNC@         FcLangSetCompare
-@TYPE1@                const FcLangSet *               @ARG1@          ls_a
-@TYPE2@                const FcLangSet *               @ARG2@          ls_b
-@PURPOSE@      compare language sets
+@RET@           FcLangResult
+@FUNC@          FcLangSetCompare
+@TYPE1@         const FcLangSet *               @ARG1@          ls_a
+@TYPE2@         const FcLangSet *               @ARG2@          ls_b
+@PURPOSE@       compare language sets
 @DESC@
 <function>FcLangSetCompare</function> compares language coverage for
 <parameter>ls_a</parameter> and <parameter>ls_b</parameter>. If they share
@@ -105,11 +105,11 @@ function returns FcLangDifferentTerritory. If they share no languages in
 common, this function returns FcLangDifferentLang.
 @@
 
-@RET@          FcBool
-@FUNC@         FcLangSetContains
-@TYPE1@                const FcLangSet *               @ARG1@          ls_a
-@TYPE2@                const FcLangSet *               @ARG2@          ls_b
-@PURPOSE@      check langset subset relation
+@RET@           FcBool
+@FUNC@          FcLangSetContains
+@TYPE1@         const FcLangSet *               @ARG1@          ls_a
+@TYPE2@         const FcLangSet *               @ARG2@          ls_b
+@PURPOSE@       check langset subset relation
 @DESC@
 <function>FcLangSetContains</function> returns FcTrue if
 <parameter>ls_a</parameter> contains every language in
@@ -119,20 +119,20 @@ has exactly the language, or either the language or
 <parameter>ls_a</parameter> has no territory.
 @@
 
-@RET@          FcBool
-@FUNC@         FcLangSetEqual
-@TYPE1@                const FcLangSet *               @ARG1@          ls_a
-@TYPE2@                const FcLangSet *               @ARG2@          ls_b
-@PURPOSE@      test for matching langsets
+@RET@           FcBool
+@FUNC@          FcLangSetEqual
+@TYPE1@         const FcLangSet *               @ARG1@          ls_a
+@TYPE2@         const FcLangSet *               @ARG2@          ls_b
+@PURPOSE@       test for matching langsets
 @DESC@
 Returns FcTrue if and only if <parameter>ls_a</parameter> supports precisely
 the same language and territory combinations as <parameter>ls_b</parameter>.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcLangSetHash
-@TYPE1@                const FcLangSet *               @ARG1@          ls
-@PURPOSE@      return a hash value for a langset
+@RET@           FcChar32
+@FUNC@          FcLangSetHash
+@TYPE1@         const FcLangSet *               @ARG1@          ls
+@PURPOSE@       return a hash value for a langset
 @DESC@
 This function returns a value which depends solely on the languages
 supported by <parameter>ls</parameter>. Any language which equals
@@ -141,61 +141,61 @@ supported by <parameter>ls</parameter>. Any language which equals
 value may not be equal.
 @@
 
-@RET@          FcLangResult
-@FUNC@         FcLangSetHasLang
-@TYPE1@                const FcLangSet *               @ARG1@          ls
-@TYPE2@                const FcChar8 *                 @ARG2@          lang
-@PURPOSE@      test langset for language support
+@RET@           FcLangResult
+@FUNC@          FcLangSetHasLang
+@TYPE1@         const FcLangSet *               @ARG1@          ls
+@TYPE2@         const FcChar8 *                 @ARG2@          lang
+@PURPOSE@       test langset for language support
 @DESC@
 <function>FcLangSetHasLang</function> checks whether
-<parameter>ls</parameter> supports <parameter>lang</parameter>. If 
+<parameter>ls</parameter> supports <parameter>lang</parameter>. If
 <parameter>ls</parameter> has a matching language and territory pair,
 this function returns FcLangEqual. If <parameter>ls</parameter> has
 a matching language but differs in which territory that language is for, this
-function returns FcLangDifferentTerritory. If <parameter>ls</parameter> 
+function returns FcLangDifferentTerritory. If <parameter>ls</parameter>
 has no matching language, this function returns FcLangDifferentLang.
 @@
 
-@RET@          FcStrSet *
-@FUNC@         FcGetDefaultLangs
-@TYPE1@                void
-@PURPOSE@      Get the default languages list
+@RET@           FcStrSet *
+@FUNC@          FcGetDefaultLangs
+@TYPE1@         void
+@PURPOSE@       Get the default languages list
 @DESC@
 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
+@SINCE@         2.9.91
 @@
 
-@RET@          FcStrSet *
-@FUNC@         FcLangSetGetLangs
-@TYPE1@                const FcLangSet *               @ARG1@          ls
-@PURPOSE@      get the list of languages in the langset
+@RET@           FcStrSet *
+@FUNC@          FcLangSetGetLangs
+@TYPE1@         const FcLangSet *               @ARG1@          ls
+@PURPOSE@       get the list of languages in the langset
 @DESC@
 Returns a string set of all languages in <parameter>langset</parameter>.
 @@
 
-@RET@          FcStrSet *
-@FUNC@         FcGetLangs
-@TYPE1@                void
-@PURPOSE@      Get list of languages
+@RET@           FcStrSet *
+@FUNC@          FcGetLangs
+@TYPE1@         void
+@PURPOSE@       Get list of languages
 @DESC@
 Returns a string set of all known languages.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcLangNormalize
-@TYPE1@                const FcChar8 *                 @ARG1@          lang
-@PURPOSE@      Normalize the language string
+@RET@           FcChar8 *
+@FUNC@          FcLangNormalize
+@TYPE1@         const FcChar8 *                 @ARG1@          lang
+@PURPOSE@       Normalize the language string
 @DESC@
 Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
-@SINCE@                2.10.91
+@SINCE@         2.10.91
 @@
 
-@RET@          const FcCharSet *
-@FUNC@         FcLangGetCharSet
-@TYPE1@                const FcChar8 *                 @ARG1@          lang
-@PURPOSE@      Get character map for a language
+@RET@           const FcCharSet *
+@FUNC@          FcLangGetCharSet
+@TYPE1@         const FcChar8 *                 @ARG1@          lang
+@PURPOSE@       Get character map for a language
 @DESC@
 Returns the FcCharMap for a language.
 @@
diff --git a/doc/fclangset.sgml b/doc/fclangset.sgml
deleted file mode 100644 (file)
index a340755..0000000
+++ /dev/null
@@ -1,904 +0,0 @@
-<!--
-   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="FcLangSetCreate">
-       <refmeta>
-           <refentrytitle>FcLangSetCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetCreate</refname>
-           <refpurpose>create a langset object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangSet * <function>FcLangSetCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetCreate</function> creates a new FcLangSet object.
-           </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="FcLangSetDestroy">
-       <refmeta>
-           <refentrytitle>FcLangSetDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetDestroy</refname>
-           <refpurpose>destroy a langset object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcLangSetDestroy</function></funcdef>
-               <paramdef>FcLangSet *<parameter>ls</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetDestroy</function> destroys a FcLangSet object, freeing
-all memory associated with it.
-           </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="FcLangSetCopy">
-       <refmeta>
-           <refentrytitle>FcLangSetCopy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetCopy</refname>
-           <refpurpose>copy a langset object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangSet * <function>FcLangSetCopy</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetCopy</function> creates a new FcLangSet object and
-populates it with the contents of <parameter>ls</parameter>.
-           </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="FcLangSetAdd">
-       <refmeta>
-           <refentrytitle>FcLangSetAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetAdd</refname>
-           <refpurpose>add a language to a langset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcLangSetAdd</function></funcdef>
-               <paramdef>FcLangSet *<parameter>ls</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>lang</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<parameter>lang</parameter> is added to <parameter>ls</parameter>.
-<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.
-           </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="FcLangSetDel">
-       <refmeta>
-           <refentrytitle>FcLangSetDel</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetDel</refname>
-           <refpurpose>delete a language from a langset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcLangSetDel</function></funcdef>
-               <paramdef>FcLangSet *<parameter>ls</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>lang</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<parameter>lang</parameter> is removed from <parameter>ls</parameter>.
-<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.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.9.0</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="FcLangSetUnion">
-       <refmeta>
-           <refentrytitle>FcLangSetUnion</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetUnion</refname>
-           <refpurpose>Add langsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangSet * <function>FcLangSetUnion</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls_a</parameter></paramdef>
-               <paramdef>const FcLangSet *<parameter>ls_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.9.0</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="FcLangSetSubtract">
-       <refmeta>
-           <refentrytitle>FcLangSetSubtract</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetSubtract</refname>
-           <refpurpose>Subtract langsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangSet * <function>FcLangSetSubtract</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls_a</parameter></paramdef>
-               <paramdef>const FcLangSet *<parameter>ls_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.9.0</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="FcLangSetCompare">
-       <refmeta>
-           <refentrytitle>FcLangSetCompare</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetCompare</refname>
-           <refpurpose>compare language sets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangResult <function>FcLangSetCompare</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls_a</parameter></paramdef>
-               <paramdef>const FcLangSet *<parameter>ls_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetCompare</function> compares language coverage for
-<parameter>ls_a</parameter> and <parameter>ls_b</parameter>. 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.
-           </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="FcLangSetContains">
-       <refmeta>
-           <refentrytitle>FcLangSetContains</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetContains</refname>
-           <refpurpose>check langset subset relation</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcLangSetContains</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls_a</parameter></paramdef>
-               <paramdef>const FcLangSet *<parameter>ls_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetContains</function> returns FcTrue if
-<parameter>ls_a</parameter> contains every language in
-<parameter>ls_b</parameter>. <parameter>ls_a</parameter> will 'contain' a
-language from <parameter>ls_b</parameter> if <parameter>ls_a</parameter>
-has exactly the language, or either the language or
-<parameter>ls_a</parameter> has no territory.
-           </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="FcLangSetEqual">
-       <refmeta>
-           <refentrytitle>FcLangSetEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetEqual</refname>
-           <refpurpose>test for matching langsets</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcLangSetEqual</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls_a</parameter></paramdef>
-               <paramdef>const FcLangSet *<parameter>ls_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-    </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="FcLangSetHash">
-       <refmeta>
-           <refentrytitle>FcLangSetHash</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetHash</refname>
-           <refpurpose>return a hash value for a langset</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcLangSetHash</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function returns a value which depends solely on the languages
-supported by <parameter>ls</parameter>. Any language which equals
-<parameter>ls</parameter> will have the same result from
-<function>FcLangSetHash</function>. However, two langsets with the same hash
-value may not be equal.
-           </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="FcLangSetHasLang">
-       <refmeta>
-           <refentrytitle>FcLangSetHasLang</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangSetHasLang</refname>
-           <refpurpose>test langset for language support</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcLangResult <function>FcLangSetHasLang</function></funcdef>
-               <paramdef>const FcLangSet *<parameter>ls</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>lang</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcLangSetHasLang</function> checks whether
-<parameter>ls</parameter> supports <parameter>lang</parameter>. If 
-<parameter>ls</parameter> has a matching language and territory pair,
-this function returns FcLangEqual. If <parameter>ls</parameter> has
-a matching language but differs in which territory that language is for, this
-function returns FcLangDifferentTerritory. If <parameter>ls</parameter> 
-has no matching language, this function returns FcLangDifferentLang.
-           </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="FcGetDefaultLangs">
-       <refmeta>
-           <refentrytitle>FcGetDefaultLangs</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcGetDefaultLangs</refname>
-           <refpurpose>Get the default languages list</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrSet * <function>FcGetDefaultLangs</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </para>
-       </refsect1>
-       <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>
-Returns a string set of all languages in <parameter>langset</parameter>.
-           </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="FcGetLangs">
-       <refmeta>
-           <refentrytitle>FcGetLangs</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcGetLangs</refname>
-           <refpurpose>Get list of languages</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrSet * <function>FcGetLangs</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a string set of all known languages.
-           </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="FcLangNormalize">
-       <refmeta>
-           <refentrytitle>FcLangNormalize</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangNormalize</refname>
-           <refpurpose>Normalize the language string</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcLangNormalize</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>lang</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.10.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="FcLangGetCharSet">
-       <refmeta>
-           <refentrytitle>FcLangGetCharSet</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcLangGetCharSet</refname>
-           <refpurpose>Get character map for a language</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const FcCharSet * <function>FcLangGetCharSet</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>lang</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the FcCharMap for a language.
-           </para>
-       </refsect1>
-    </refentry>
index a53ade9..cda37a2 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-@RET@          void
-@FUNC@         FcMatrixInit
-@PURPOSE@      initialize an FcMatrix structure
-@TYPE1@                FcMatrix *
-@ARG1@         matrix
+@RET@           void
+@FUNC@          FcMatrixInit
+@PURPOSE@       initialize an FcMatrix structure
+@TYPE1@         FcMatrix *
+@ARG1@          matrix
 @DESC@
 <function>FcMatrixInit</function> initializes <parameter>matrix</parameter>
 to the identity matrix.
 @@
 
-@FUNC@         FcMatrixCopy
-@PURPOSE@      Copy a matrix
-@TYPE1@                const FcMatrix *
-@ARG1@         matrix
+@FUNC@          FcMatrixCopy
+@PURPOSE@       Copy a matrix
+@TYPE1@         const FcMatrix *
+@ARG1@          matrix
 @DESC@
 <function>FcMatrixCopy</function> allocates a new FcMatrix
 and copies <parameter>mat</parameter> into it.
 @@
 
-@FUNC@         FcMatrixEqual
-@PURPOSE@      Compare two matrices
-@TYPE1@                const FcMatrix *
-@ARG1@         matrix1
-@TYPE2@                const FcMatrix *
-@ARG2@         matrix2
+@FUNC@          FcMatrixEqual
+@PURPOSE@       Compare two matrices
+@TYPE1@         const FcMatrix *
+@ARG1@          matrix1
+@TYPE2@         const FcMatrix *
+@ARG2@          matrix2
 @DESC@
 <function>FcMatrixEqual</function> compares <parameter>matrix1</parameter>
 and <parameter>matrix2</parameter> returning FcTrue when they are equal and
 FcFalse when they are not.
 @@
 
-@FUNC@         FcMatrixMultiply
-@PURPOSE@      Multiply matrices
-@TYPE1@                FcMatrix *
-@ARG1@         result
-@TYPE2@                const FcMatrix *
-@ARG2@         matrix1
-@TYPE3@                const FcMatrix *
-@ARG3@         matrix2
+@FUNC@          FcMatrixMultiply
+@PURPOSE@       Multiply matrices
+@TYPE1@         FcMatrix *
+@ARG1@          result
+@TYPE2@         const FcMatrix *
+@ARG2@          matrix1
+@TYPE3@         const FcMatrix *
+@ARG3@          matrix2
 @DESC@
 <function>FcMatrixMultiply</function> multiplies
 <parameter>matrix1</parameter> and <parameter>matrix2</parameter> storing
 the result in <parameter>result</parameter>.
 @@
 
-@FUNC@         FcMatrixRotate
-@PURPOSE@      Rotate a matrix
-@TYPE1@                FcMatrix *
-@ARG1@         matrix
-@TYPE2@                double%
-@ARG2@         cos
-@TYPE3@                double%
-@ARG3@         sin
+@FUNC@          FcMatrixRotate
+@PURPOSE@       Rotate a matrix
+@TYPE1@         FcMatrix *
+@ARG1@          matrix
+@TYPE2@         double%
+@ARG2@          cos
+@TYPE3@         double%
+@ARG3@          sin
 @DESC@
 <function>FcMatrixRotate</function> rotates <parameter>matrix</parameter>
 by the angle who's sine is <parameter>sin</parameter> and cosine is
@@ -86,14 +86,14 @@ matrix:
 </programlisting>
 @@
 
-@FUNC@         FcMatrixScale
-@PURPOSE@      Scale a matrix
-@TYPE1@                FcMatrix *
-@ARG1@         matrix
-@TYPE2@                double%
-@ARG2@         sx
-@TYPE3@                double%
-@ARG3@         dy
+@FUNC@          FcMatrixScale
+@PURPOSE@       Scale a matrix
+@TYPE1@         FcMatrix *
+@ARG1@          matrix
+@TYPE2@         double%
+@ARG2@          sx
+@TYPE3@         double%
+@ARG3@          dy
 @DESC@
 <function>FcMatrixScale</function> multiplies <parameter>matrix</parameter>
 x values by <parameter>sx</parameter> and y values by
@@ -105,14 +105,14 @@ the matrix:
 </programlisting>
 @@
 
-@FUNC@         FcMatrixShear
-@PURPOSE@      Shear a matrix
-@TYPE1@                FcMatrix *
-@ARG1@         matrix
-@TYPE2@                double%
-@ARG2@         sh
-@TYPE3@                double%
-@ARG3@         sv
+@FUNC@          FcMatrixShear
+@PURPOSE@       Shear a matrix
+@TYPE1@         FcMatrix *
+@ARG1@          matrix
+@TYPE2@         double%
+@ARG2@          sh
+@TYPE3@         double%
+@ARG3@          sv
 @DESC@
 <function>FcMatrixShare</function> shears <parameter>matrix</parameter>
 horizontally by <parameter>sh</parameter> and vertically by
diff --git a/doc/fcmatrix.sgml b/doc/fcmatrix.sgml
deleted file mode 100644 (file)
index 65ff64a..0000000
+++ /dev/null
@@ -1,386 +0,0 @@
-<!--
-   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="FcMatrixInit">
-       <refmeta>
-           <refentrytitle>FcMatrixInit</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixInit</refname>
-           <refpurpose>initialize an FcMatrix structure</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixInit</function></funcdef>
-               <paramdef>FcMatrix *<parameter>matrix</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixInit</function> initializes <parameter>matrix</parameter>
-to the identity matrix.
-           </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="FcMatrixCopy">
-       <refmeta>
-           <refentrytitle>FcMatrixCopy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixCopy</refname>
-           <refpurpose>Copy a matrix</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixCopy</function></funcdef>
-               <paramdef>const FcMatrix *<parameter>matrix</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixCopy</function> allocates a new FcMatrix
-and copies <parameter>mat</parameter> into it.
-           </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="FcMatrixEqual">
-       <refmeta>
-           <refentrytitle>FcMatrixEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixEqual</refname>
-           <refpurpose>Compare two matrices</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixEqual</function></funcdef>
-               <paramdef>const FcMatrix *<parameter>matrix1</parameter></paramdef>
-               <paramdef>const FcMatrix *<parameter>matrix2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixEqual</function> compares <parameter>matrix1</parameter>
-and <parameter>matrix2</parameter> returning FcTrue when they are equal and
-FcFalse when they are not.
-           </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="FcMatrixMultiply">
-       <refmeta>
-           <refentrytitle>FcMatrixMultiply</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixMultiply</refname>
-           <refpurpose>Multiply matrices</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixMultiply</function></funcdef>
-               <paramdef>FcMatrix *<parameter>result</parameter></paramdef>
-               <paramdef>const FcMatrix *<parameter>matrix1</parameter></paramdef>
-               <paramdef>const FcMatrix *<parameter>matrix2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixMultiply</function> multiplies
-<parameter>matrix1</parameter> and <parameter>matrix2</parameter> storing
-the result in <parameter>result</parameter>.
-           </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="FcMatrixRotate">
-       <refmeta>
-           <refentrytitle>FcMatrixRotate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixRotate</refname>
-           <refpurpose>Rotate a matrix</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixRotate</function></funcdef>
-               <paramdef>FcMatrix *<parameter>matrix</parameter></paramdef>
-               <paramdef>double <parameter>cos</parameter></paramdef>
-               <paramdef>double <parameter>sin</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixRotate</function> rotates <parameter>matrix</parameter>
-by the angle who's sine is <parameter>sin</parameter> and cosine is
-<parameter>cos</parameter>.  This is done by multiplying by the
-matrix:
-<programlisting>
-  cos -sin
-  sin  cos
-</programlisting>
-           </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="FcMatrixScale">
-       <refmeta>
-           <refentrytitle>FcMatrixScale</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixScale</refname>
-           <refpurpose>Scale a matrix</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixScale</function></funcdef>
-               <paramdef>FcMatrix *<parameter>matrix</parameter></paramdef>
-               <paramdef>double <parameter>sx</parameter></paramdef>
-               <paramdef>double <parameter>dy</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixScale</function> multiplies <parameter>matrix</parameter>
-x values by <parameter>sx</parameter> and y values by
-<parameter>dy</parameter>.  This is done by multiplying by
-the matrix:
-<programlisting>
-   sx  0
-   0   dy
-</programlisting>
-           </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="FcMatrixShear">
-       <refmeta>
-           <refentrytitle>FcMatrixShear</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcMatrixShear</refname>
-           <refpurpose>Shear a matrix</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcMatrixShear</function></funcdef>
-               <paramdef>FcMatrix *<parameter>matrix</parameter></paramdef>
-               <paramdef>double <parameter>sh</parameter></paramdef>
-               <paramdef>double <parameter>sv</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcMatrixShare</function> shears <parameter>matrix</parameter>
-horizontally by <parameter>sh</parameter> and vertically by
-<parameter>sv</parameter>.  This is done by multiplying by
-the matrix:
-<programlisting>
-  1  sh
-  sv  1
-</programlisting>
-           </para>
-       </refsect1>
-    </refentry>
index 57e1750..423f707 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcObjectSet *
-@FUNC@         FcObjectSetCreate
-@TYPE1@                void
-@PURPOSE@      Create an object set
+@RET@           FcObjectSet *
+@FUNC@          FcObjectSetCreate
+@TYPE1@         void
+@PURPOSE@       Create an object set
 @DESC@
 Creates an empty set.
 @@
 
-@RET@          FcBool
-@FUNC@         FcObjectSetAdd
-@TYPE1@                FcObjectSet *                   @ARG1@          os
-@TYPE2@                const char *                    @ARG2@          object
-@PURPOSE@      Add to an object set
+@RET@           FcBool
+@FUNC@          FcObjectSetAdd
+@TYPE1@         FcObjectSet *                   @ARG1@          os
+@TYPE2@         const char *                    @ARG2@          object
+@PURPOSE@       Add to an object set
 @DESC@
 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.
 @@
 
-@RET@          void
-@FUNC@         FcObjectSetDestroy
-@TYPE1@                FcObjectSet *                   @ARG1@          os
-@PURPOSE@      Destroy an object set
+@RET@           void
+@FUNC@          FcObjectSetDestroy
+@TYPE1@         FcObjectSet *                   @ARG1@          os
+@PURPOSE@       Destroy an object set
 @DESC@
 Destroys an object set.
 @@
 
-@RET@          FcObjectSet *
-@FUNC@         FcObjectSetBuild
-@TYPE1@                const char *                    @ARG1@          first
-@TYPE2@                ...
+@RET@           FcObjectSet *
+@FUNC@          FcObjectSetBuild
+@TYPE1@         const char *                    @ARG1@          first
+@TYPE2@         ...
 
 @PROTOTYPE+@
-@RET+@         FcObjectSet *
-@FUNC+@                FcObjectSetVaBuild
-@TYPE1+@       const char *                    @ARG1+@         first
-@TYPE2+@       va_list%                        @ARG2+@         va
+@RET+@          FcObjectSet *
+@FUNC+@         FcObjectSetVaBuild
+@TYPE1+@        const char *                    @ARG1+@         first
+@TYPE2+@        va_list%                        @ARG2+@         va
 
 @PROTOTYPE++@
-@RET++@                void
-@FUNC++@       FcObjectSetVapBuild
-@TYPE1++@      FcObjectSet *                   @ARG1++@        result
-@TYPE2++@      const char *                    @ARG2++@        first
-@TYPE3++@      va_list%                        @ARG3++@        va
+@RET++@         void
+@FUNC++@        FcObjectSetVapBuild
+@TYPE1++@       FcObjectSet *                   @ARG1++@        result
+@TYPE2++@       const char *                    @ARG2++@        first
+@TYPE3++@       va_list%                        @ARG3++@        va
 
-@PURPOSE@      Build object set from args
+@PURPOSE@       Build object set from args
 @DESC@
 These build an object set from a null-terminated list of property names.
 FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
diff --git a/doc/fcobjectset.sgml b/doc/fcobjectset.sgml
deleted file mode 100644 (file)
index ccc7077..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-<!--
-   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="FcObjectSetCreate">
-       <refmeta>
-           <refentrytitle>FcObjectSetCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcObjectSetCreate</refname>
-           <refpurpose>Create an object set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcObjectSet * <function>FcObjectSetCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates an empty set.
-           </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="FcObjectSetAdd">
-       <refmeta>
-           <refentrytitle>FcObjectSetAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcObjectSetAdd</refname>
-           <refpurpose>Add to an object set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcObjectSetAdd</function></funcdef>
-               <paramdef>FcObjectSet *<parameter>os</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-    </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="FcObjectSetDestroy">
-       <refmeta>
-           <refentrytitle>FcObjectSetDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcObjectSetDestroy</refname>
-           <refpurpose>Destroy an object set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcObjectSetDestroy</function></funcdef>
-               <paramdef>FcObjectSet *<parameter>os</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Destroys an object set.
-           </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="FcObjectSetBuild">
-       <refmeta>
-           <refentrytitle>FcObjectSetBuild</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcObjectSetBuild</refname>
-           <refname>FcObjectSetVaBuild</refname>
-           <refname>FcObjectSetVapBuild</refname>
-           <refpurpose>Build object set from args</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcObjectSet * <function>FcObjectSetBuild</function></funcdef>
-               <paramdef>const char *<parameter>first</parameter></paramdef>
-               <paramdef>...<parameter></parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcObjectSet * <function>FcObjectSetVaBuild</function></funcdef>
-               <paramdef>const char *<parameter>first</parameter></paramdef>
-               <paramdef>va_list <parameter>va</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>void <function>FcObjectSetVapBuild</function></funcdef>
-               <paramdef>FcObjectSet *<parameter>result</parameter></paramdef>
-               <paramdef>const char *<parameter>first</parameter></paramdef>
-               <paramdef>va_list <parameter>va</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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 <parameter>result</parameter> variable directly.
-           </para>
-       </refsect1>
-    </refentry>
index 3f976e4..1e71e6c 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcBool
-@FUNC@         FcNameRegisterObjectTypes
-@TYPE1@                const FcObjectType *            @ARG1@          types
-@TYPE2@                int%                            @ARG2@          ntype
-@PURPOSE@      Register object types
+@RET@           FcBool
+@FUNC@          FcNameRegisterObjectTypes
+@TYPE1@         const FcObjectType *            @ARG1@          types
+@TYPE2@         int%                            @ARG2@          ntype
+@PURPOSE@       Register object types
 @DESC@
 Deprecated.  Does nothing.  Returns FcFalse.
 @@
 
-@RET@          FcBool
-@FUNC@         FcNameUnregisterObjectTypes
-@TYPE1@                const FcObjectType *            @ARG1@          types
-@TYPE2@                int%                            @ARG2@          ntype
-@PURPOSE@      Unregister object types
+@RET@           FcBool
+@FUNC@          FcNameUnregisterObjectTypes
+@TYPE1@         const FcObjectType *            @ARG1@          types
+@TYPE2@         int%                            @ARG2@          ntype
+@PURPOSE@       Unregister object types
 @DESC@
 Deprecated.  Does nothing.  Returns FcFalse.
 @@
 
-@RET@          const FcObjectType *
-@FUNC@         FcNameGetObjectType 
-@TYPE1@                const char *                    @ARG1@          object
-@PURPOSE@      Lookup an object type
+@RET@           const FcObjectType *
+@FUNC@          FcNameGetObjectType
+@TYPE1@         const char *                    @ARG1@          object
+@PURPOSE@       Lookup an object type
 @DESC@
 Return the object type for the pattern element named <parameter>object</parameter>.
 @@
diff --git a/doc/fcobjecttype.sgml b/doc/fcobjecttype.sgml
deleted file mode 100644 (file)
index a9de506..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-<!--
-   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="FcNameRegisterObjectTypes">
-       <refmeta>
-           <refentrytitle>FcNameRegisterObjectTypes</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameRegisterObjectTypes</refname>
-           <refpurpose>Register object types</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcNameRegisterObjectTypes</function></funcdef>
-               <paramdef>const FcObjectType *<parameter>types</parameter></paramdef>
-               <paramdef>int <parameter>ntype</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deprecated.  Does nothing.  Returns FcFalse.
-           </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="FcNameUnregisterObjectTypes">
-       <refmeta>
-           <refentrytitle>FcNameUnregisterObjectTypes</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameUnregisterObjectTypes</refname>
-           <refpurpose>Unregister object types</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcNameUnregisterObjectTypes</function></funcdef>
-               <paramdef>const FcObjectType *<parameter>types</parameter></paramdef>
-               <paramdef>int <parameter>ntype</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deprecated.  Does nothing.  Returns FcFalse.
-           </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="FcNameGetObjectType">
-       <refmeta>
-           <refentrytitle>FcNameGetObjectType</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameGetObjectType</refname>
-           <refpurpose>Lookup an object type</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const FcObjectType * <function>FcNameGetObjectType</function></funcdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Return the object type for the pattern element named <parameter>object</parameter>.
-           </para>
-       </refsect1>
-    </refentry>
index 3b13c22..0da3568 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          FcPattern *     
-@FUNC@         FcPatternCreate
-@TYPE1@        void
-@PURPOSE@      Create a pattern
+@RET@           FcPattern *
+@FUNC@          FcPatternCreate
+@TYPE1@         void
+@PURPOSE@       Create a pattern
 @DESC@
 Creates a pattern with no properties; used to build patterns from scratch.
 @@
 
-@RET@          FcPattern *     
-@FUNC@         FcPatternDuplicate
-@TYPE1@                const FcPattern *               @ARG1@           p
-@PURPOSE@      Copy a pattern
+@RET@           FcPattern *
+@FUNC@          FcPatternDuplicate
+@TYPE1@         const FcPattern *               @ARG1@           p
+@PURPOSE@       Copy a pattern
 @DESC@
 Copy a pattern, returning a new pattern that matches
 <parameter>p</parameter>. Each pattern may be modified without affecting the
 other.
 @@
 
-@RET@          void
-@FUNC@         FcPatternReference
-@TYPE1@                FcPattern *                     @ARG1@           p
-@PURPOSE@      Increment pattern reference count
+@RET@           void
+@FUNC@          FcPatternReference
+@TYPE1@         FcPattern *                     @ARG1@           p
+@PURPOSE@       Increment pattern reference count
 @DESC@
 Add another reference to <parameter>p</parameter>. Patterns are freed only
 when the reference count reaches zero.
 @@
 
-@RET@          void
-@FUNC@         FcPatternDestroy
-@TYPE1@                FcPattern *                     @ARG1@           p
-@PURPOSE@      Destroy a pattern
+@RET@           void
+@FUNC@          FcPatternDestroy
+@TYPE1@         FcPattern *                     @ARG1@           p
+@PURPOSE@       Destroy a pattern
 @DESC@
 Decrement the pattern reference count. If all references are gone, destroys
 the pattern, in the process destroying all related values.
 @@
 
-@RET@          int
-@FUNC@         FcPatternObjectCount
-@TYPE1@                const FcPattern *               @ARG1@          p
-@PURPOSE@      Returns the number of the object
+@RET@           int
+@FUNC@          FcPatternObjectCount
+@TYPE1@         const FcPattern *               @ARG1@          p
+@PURPOSE@       Returns the number of the object
 @DESC@
 Returns the number of the object <parameter>p</parameter> has.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternEqual
-@TYPE1@        const FcPattern *               @ARG1@          pa
-@TYPE2@                const FcPattern *               @ARG2@          pb 
-@PURPOSE@      Compare patterns
+@RET@           FcBool
+@FUNC@          FcPatternEqual
+@TYPE1@         const FcPattern *               @ARG1@          pa
+@TYPE2@         const FcPattern *               @ARG2@          pb
+@PURPOSE@       Compare patterns
 @DESC@
 Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> are exactly alike.
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternEqualSubset
-@TYPE1@                const FcPattern *               @ARG1@          pa
-@TYPE2@                const FcPattern *               @ARG2@          pb
-@TYPE3@        const FcObjectSet *             @ARG3@          os 
-@PURPOSE@      Compare portions of patterns
+@RET@           FcBool
+@FUNC@          FcPatternEqualSubset
+@TYPE1@         const FcPattern *               @ARG1@          pa
+@TYPE2@         const FcPattern *               @ARG2@          pb
+@TYPE3@         const FcObjectSet *             @ARG3@          os
+@PURPOSE@       Compare portions of patterns
 @DESC@
 Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> have exactly the same values for all of the
 objects in <parameter>os</parameter>.
 @@
 
-@RET@          FcPattern *
-@FUNC@         FcPatternFilter
-@TYPE1@                FcPattern *                     @ARG1@           p
-@TYPE2@                const FcObjectSet *             @ARG1@           os
-@PURPOSE@      Filter the objects of pattern
+@RET@           FcPattern *
+@FUNC@          FcPatternFilter
+@TYPE1@         FcPattern *                     @ARG1@           p
+@TYPE2@         const FcObjectSet *             @ARG2@           os
+@PURPOSE@       Filter the objects of pattern
 @DESC@
 Returns a new pattern that only has those objects from
 <parameter>p</parameter> that are in <parameter>os</parameter>.
@@ -98,22 +98,22 @@ If <parameter>os</parameter> is NULL, a duplicate of
 <parameter>p</parameter> is returned.
 @@
 
-@RET@          FcChar32
-@FUNC@         FcPatternHash
-@TYPE1@                const FcPattern *               @ARG1@          p
-@PURPOSE@      Compute a pattern hash value
+@RET@           FcChar32
+@FUNC@          FcPatternHash
+@TYPE1@         const FcPattern *               @ARG1@          p
+@PURPOSE@       Compute a pattern hash value
 @DESC@
 Returns a 32-bit number which is the same for any two patterns which are
 equal.
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternAdd
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@        const char *                    @ARG2@          object
-@TYPE3@                FcValue%                        @ARG3@          value
-@TYPE4@                FcBool%                         @ARG4@          append 
-@PURPOSE@      Add a value to a pattern
+@RET@           FcBool
+@FUNC@          FcPatternAdd
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         FcValue%                        @ARG3@          value
+@TYPE4@         FcBool%                         @ARG4@          append
+@PURPOSE@       Add a value to a pattern
 @DESC@
 Adds a single value to the list of values associated with the property named
 `object<parameter>.  If `append</parameter> is FcTrue, the value is added at the end of any
@@ -122,82 +122,82 @@ existing list, otherwise it is inserted at the beginning.  `value' is saved
 retains no reference to any application-supplied data structure.
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternAddWeak
-@TYPE1@        FcPattern *                     @ARG1@          p
-@TYPE2@        const char *                    @ARG2@          object
-@TYPE3@        FcValue%                        @ARG3@          value
-@TYPE4@        FcBool%                         @ARG4@          append 
-@PURPOSE@      Add a value to a pattern with weak binding
+@RET@           FcBool
+@FUNC@          FcPatternAddWeak
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         FcValue%                        @ARG3@          value
+@TYPE4@         FcBool%                         @ARG4@          append
+@PURPOSE@       Add a value to a pattern with weak binding
 @DESC@
 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>.
 @@
 
-@TITLE@                FcPatternAdd-Type
-@RET@          FcBool
-@FUNC@         FcPatternAddInteger
-@TYPE1@        FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object
-@TYPE3@                int%                            @ARG3@          i
+@TITLE@         FcPatternAdd-Type
+@RET@           FcBool
+@FUNC@          FcPatternAddInteger
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         int%                            @ARG3@          i
 
 @PROTOTYPE+@
-@RET+@         FcBool
-@FUNC+@                FcPatternAddDouble
-@TYPE1+@       FcPattern *                     @ARG1+@         p
-@TYPE2+@       const char *                    @ARG2+@         object
-@TYPE3+@       double%                         @ARG3+@         d
+@RET+@          FcBool
+@FUNC+@         FcPatternAddDouble
+@TYPE1+@        FcPattern *                     @ARG1+@         p
+@TYPE2+@        const char *                    @ARG2+@         object
+@TYPE3+@        double%                         @ARG3+@         d
 
 @PROTOTYPE++@
-@RET++@                FcBool
-@FUNC++@       FcPatternAddString
-@TYPE1++@      FcPattern *                     @ARG1++@        p
-@TYPE2++@      const char *                    @ARG2++@        object
-@TYPE3++@      const FcChar8 *                 @ARG3++@        s
+@RET++@         FcBool
+@FUNC++@        FcPatternAddString
+@TYPE1++@       FcPattern *                     @ARG1++@        p
+@TYPE2++@       const char *                    @ARG2++@        object
+@TYPE3++@       const FcChar8 *                 @ARG3++@        s
 
 @PROTOTYPE+++@
-@RET+++@       FcBool
-@FUNC+++@      FcPatternAddMatrix
-@TYPE1+++@     FcPattern *                     @ARG1+++@       p
-@TYPE2+++@     const char *                    @ARG2+++@       object
-@TYPE3+++@     const FcMatrix *                @ARG3+++@       m
+@RET+++@        FcBool
+@FUNC+++@       FcPatternAddMatrix
+@TYPE1+++@      FcPattern *                     @ARG1+++@       p
+@TYPE2+++@      const char *                    @ARG2+++@       object
+@TYPE3+++@      const FcMatrix *                @ARG3+++@       m
 
 @PROTOTYPE++++@
-@RET++++@      FcBool
-@FUNC++++@     FcPatternAddCharSet
-@TYPE1++++@    FcPattern *                     @ARG1++++@      p
-@TYPE2++++@    const char *                    @ARG2++++@      object
-@TYPE3++++@    const FcCharSet *               @ARG3++++@      c
+@RET++++@       FcBool
+@FUNC++++@      FcPatternAddCharSet
+@TYPE1++++@     FcPattern *                     @ARG1++++@      p
+@TYPE2++++@     const char *                    @ARG2++++@      object
+@TYPE3++++@     const FcCharSet *               @ARG3++++@      c
 
 @PROTOTYPE+++++@
-@RET+++++@     FcBool
-@FUNC+++++@    FcPatternAddBool
-@TYPE1+++++@   FcPattern *                     @ARG1+++++@     p
-@TYPE2+++++@   const char *                    @ARG2+++++@     object
-@TYPE3+++++@   FcBool%                         @ARG3+++++@     b
+@RET+++++@      FcBool
+@FUNC+++++@     FcPatternAddBool
+@TYPE1+++++@    FcPattern *                     @ARG1+++++@     p
+@TYPE2+++++@    const char *                    @ARG2+++++@     object
+@TYPE3+++++@    FcBool%                         @ARG3+++++@     b
 
 @PROTOTYPE++++++@
-@RET++++++@    FcBool
-@FUNC++++++@   FcPatternAddFTFace
-@TYPE1++++++@  FcPattern *                     @ARG1++++++@    p
-@TYPE2++++++@  const char *                    @ARG2++++++@    object
-@TYPE3++++++@  const FT_Face                   @ARG3++++++@    f
+@RET++++++@     FcBool
+@FUNC++++++@    FcPatternAddFTFace
+@TYPE1++++++@   FcPattern *                     @ARG1++++++@    p
+@TYPE2++++++@   const char *                    @ARG2++++++@    object
+@TYPE3++++++@   const FT_Face                   @ARG3++++++@    f
 
 @PROTOTYPE+++++++@
-@RET+++++++@   FcBool
-@FUNC+++++++@  FcPatternAddLangSet
-@TYPE1+++++++@         FcPattern *                     @ARG1+++++++@   p
-@TYPE2+++++++@ const char *                    @ARG2+++++++@   object
-@TYPE3+++++++@ const FcLangSet *               @ARG3+++++++@   l
+@RET+++++++@    FcBool
+@FUNC+++++++@   FcPatternAddLangSet
+@TYPE1+++++++@  FcPattern *                     @ARG1+++++++@   p
+@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
+@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
+@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
@@ -207,30 +207,30 @@ any existing list of values.
 <function>FcPatternAddRange</function> are available since 2.11.91.
 @@
 
-@RET@          FcResult
-@FUNC@         FcPatternGetWithBinding
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object
-@TYPE3@                int%                            @ARG3@          id
-@TYPE4@                FcValue *                       @ARG4@          v
-@TYPE5@                FcValueBinding *                @ARG5@          b
-@PURPOSE@      Return a value with binding from a pattern
+@RET@           FcResult
+@FUNC@          FcPatternGetWithBinding
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         int%                            @ARG3@          id
+@TYPE4@         FcValue *                       @ARG4@          v
+@TYPE5@         FcValueBinding *                @ARG5@          b
+@PURPOSE@       Return a value with binding from a pattern
 @DESC@
 Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
 and <parameter>b</parameter> binding for that associated with the property
 <parameter>object</parameter>.
 The Value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
-@SINCE@                2.12.5
+@SINCE@         2.12.5
 @@
 
-@RET@          FcResult
-@FUNC@         FcPatternGet
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object
-@TYPE3@                int%                            @ARG3@          id
-@TYPE4@                FcValue *                       @ARG4@          v 
-@PURPOSE@      Return a value from a pattern
+@RET@           FcResult
+@FUNC@          FcPatternGet
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         int%                            @ARG3@          id
+@TYPE4@         FcValue *                       @ARG4@          v
+@PURPOSE@       Return a value from a pattern
 @DESC@
 Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
 associated with the property <parameter>object</parameter>.
@@ -238,80 +238,80 @@ The value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
 @@
 
-@TITLE@                FcPatternGet-Type
+@TITLE@         FcPatternGet-Type
 @PROTOTYPE@
-@RET@          FcResult
-@FUNC@         FcPatternGetInteger
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object
-@TYPE3@                int%                            @ARG3@          n
-@TYPE4@                int *                           @ARG4@          i
+@RET@           FcResult
+@FUNC@          FcPatternGetInteger
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         int%                            @ARG3@          n
+@TYPE4@         int *                           @ARG4@          i
 
 @PROTOTYPE+@
-@RET+@         FcResult
-@FUNC+@        FcPatternGetDouble
-@TYPE1+@       FcPattern *                     @ARG1+@         p
-@TYPE2+@       const char *                    @ARG2+@         object
-@TYPE3+@       int%                            @ARG3+@         n
-@TYPE4+@       double *                        @ARG4+@         d 
+@RET+@          FcResult
+@FUNC+@         FcPatternGetDouble
+@TYPE1+@        FcPattern *                     @ARG1+@         p
+@TYPE2+@        const char *                    @ARG2+@         object
+@TYPE3+@        int%                            @ARG3+@         n
+@TYPE4+@        double *                        @ARG4+@         d
 
 @PROTOTYPE++@
-@RET++@        FcResult
-@FUNC++@       FcPatternGetString
-@TYPE1++@      FcPattern *                     @ARG1++@        p
-@TYPE2++@      const char *                    @ARG2++@        object
-@TYPE3++@      int%                            @ARG3++@        n
-@TYPE4++@      FcChar8 **                      @ARG4++@        s
+@RET++@         FcResult
+@FUNC++@        FcPatternGetString
+@TYPE1++@       FcPattern *                     @ARG1++@        p
+@TYPE2++@       const char *                    @ARG2++@        object
+@TYPE3++@       int%                            @ARG3++@        n
+@TYPE4++@       FcChar8 **                      @ARG4++@        s
 
 @PROTOTYPE+++@
-@RET+++@       FcResult
-@FUNC+++@      FcPatternGetMatrix 
-@TYPE1+++@     FcPattern *                     @ARG1+++@       p 
-@TYPE2+++@     const char *                    @ARG2+++@       object 
-@TYPE3+++@     int%                            @ARG3+++@       n 
-@TYPE4+++@     FcMatrix **                     @ARG4+++@       s 
+@RET+++@        FcResult
+@FUNC+++@       FcPatternGetMatrix
+@TYPE1+++@      FcPattern *                     @ARG1+++@       p
+@TYPE2+++@      const char *                    @ARG2+++@       object
+@TYPE3+++@      int%                            @ARG3+++@       n
+@TYPE4+++@      FcMatrix **                     @ARG4+++@       s
 
 @PROTOTYPE++++@
-@RET++++@      FcResult 
-@FUNC++++@     FcPatternGetCharSet 
-@TYPE1++++@    FcPattern *                     @ARG1++++@      p 
-@TYPE2++++@    const char *                    @ARG2++++@      object 
-@TYPE3++++@    int%                            @ARG3++++@      n 
-@TYPE4++++@    FcCharSet **                    @ARG4++++@      c 
+@RET++++@       FcResult
+@FUNC++++@      FcPatternGetCharSet
+@TYPE1++++@     FcPattern *                     @ARG1++++@      p
+@TYPE2++++@     const char *                    @ARG2++++@      object
+@TYPE3++++@     int%                            @ARG3++++@      n
+@TYPE4++++@     FcCharSet **                    @ARG4++++@      c
 
 @PROTOTYPE+++++@
-@RET+++++@     FcResult 
-@FUNC+++++@    FcPatternGetBool                
-@TYPE1+++++@   FcPattern *                     @ARG1+++++@     p
-@TYPE2+++++@   const char *                    @ARG2+++++@     object 
-@TYPE3+++++@   int%                            @ARG3+++++@     n 
-@TYPE4+++++@   FcBool *                        @ARG4+++++@     b 
+@RET+++++@      FcResult
+@FUNC+++++@     FcPatternGetBool
+@TYPE1+++++@    FcPattern *                     @ARG1+++++@     p
+@TYPE2+++++@    const char *                    @ARG2+++++@     object
+@TYPE3+++++@    int%                            @ARG3+++++@     n
+@TYPE4+++++@    FcBool *                        @ARG4+++++@     b
 
 @PROTOTYPE++++++@
-@RET++++++@    FcResult
-@FUNC++++++@   FcPatternGetFTFace
-@TYPE1++++++@  FcPattern *                     @ARG1++++++@    p
-@TYPE2++++++@  const char *                    @ARG2++++++@    object
-@TYPE3++++++@  int%                            @ARG3++++++@    n
-@TYPE4++++++@  FT_Face *                       @ARG4++++++@    f
+@RET++++++@     FcResult
+@FUNC++++++@    FcPatternGetFTFace
+@TYPE1++++++@   FcPattern *                     @ARG1++++++@    p
+@TYPE2++++++@   const char *                    @ARG2++++++@    object
+@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
-@TYPE4+++++++@ FcLangSet **                    @ARG4+++++++@   l
+@RET+++++++@    FcResult
+@FUNC+++++++@   FcPatternGetLangSet
+@TYPE1+++++++@  FcPattern *                     @ARG1+++++++@   p
+@TYPE2+++++++@  const char *                    @ARG2+++++++@   object
+@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
+@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@
 These are convenience functions that call FcPatternGet and verify that the
 returned data is of the expected type. They return FcResultTypeMismatch if
@@ -322,25 +322,25 @@ in preference to FcPatternGet to provide compile-time typechecking.
 <function>FcPatternGetRange</function> are available since 2.11.91.
 @@
 
-@RET@          FcPattern *
-@FUNC@         FcPatternBuild
-@TYPE1@                FcPattern *                     @ARG1@          pattern
-@TYPE2@        ...
+@RET@           FcPattern *
+@FUNC@          FcPatternBuild
+@TYPE1@         FcPattern *                     @ARG1@          pattern
+@TYPE2@         ...
 
 @PROTOTYPE+@
-@RET+@         FcPattern *
-@FUNC+@                FcPatternVaBuild
-@TYPE1+@       FcPattern *                     @ARG1+@         pattern
-@TYPE2+@       va_list%                        @ARG2+@         va
+@RET+@          FcPattern *
+@FUNC+@         FcPatternVaBuild
+@TYPE1+@        FcPattern *                     @ARG1+@         pattern
+@TYPE2+@        va_list%                        @ARG2+@         va
 
 @PROTOTYPE++@
-@RET++@                void
-@FUNC++@       FcPatternVapBuild
-@TYPE1++@      FcPattern *                     @ARG1++@        result
-@TYPE2++@      FcPattern *                     @ARG2++@        pattern
-@TYPE3++@      va_list%                        @ARG3++@        va
+@RET++@         void
+@FUNC++@        FcPatternVapBuild
+@TYPE1++@       FcPattern *                     @ARG1++@        result
+@TYPE2++@       FcPattern *                     @ARG2++@        pattern
+@TYPE3++@       va_list%                        @ARG3++@        va
 
-@PURPOSE@      Create patterns from arguments
+@PURPOSE@       Create patterns from arguments
 @DESC@
 Builds a pattern using a list of objects, types and values.  Each
 value to be entered in the pattern is specified with three arguments:
@@ -372,141 +372,141 @@ which returns its result directly in the <parameter>result</parameter>
 variable.
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternDel
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object 
-@PURPOSE@      Delete a property from a pattern
+@RET@           FcBool
+@FUNC@          FcPatternDel
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@PURPOSE@       Delete a property from a pattern
 @DESC@
-Deletes all values associated with the property `object', returning 
+Deletes all values associated with the property `object', returning
 whether the property existed or not.
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternRemove
-@TYPE1@                FcPattern *                     @ARG1@          p
-@TYPE2@                const char *                    @ARG2@          object 
-@TYPE3@                int%                            @ARG3@          id
-@PURPOSE@      Remove one object of the specified type from the pattern
+@RET@           FcBool
+@FUNC@          FcPatternRemove
+@TYPE1@         FcPattern *                     @ARG1@          p
+@TYPE2@         const char *                    @ARG2@          object
+@TYPE3@         int%                            @ARG3@          id
+@PURPOSE@       Remove one object of the specified type from the pattern
 @DESC@
-Removes the value associated with the property `object' at position `id', returning 
+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.
 @@
 
-@RET@          void
-@FUNC@         FcPatternIterStart
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@PURPOSE@      Initialize the iterator with the first iterator in the pattern
+@RET@           void
+@FUNC@          FcPatternIterStart
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@PURPOSE@       Initialize the iterator with the first iterator in the pattern
 @DESC@
 Initialize <parameter>iter</parameter> with the first iterator in <parameter>p</parameter>.
 If there are no objects in <parameter>p</parameter>, <parameter>iter</parameter>
 will not have any valid data.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternIterNext
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@PURPUSE@      Set the iterator to point to the next object in the pattern
+@RET@           FcBool
+@FUNC@          FcPatternIterNext
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@PURPUSE@       Set the iterator to point to the next object in the pattern
 @DESC@
 Set <parameter>iter</parameter> to point to the next object in <parameter>p</parameter>
 and returns FcTrue if <parameter>iter</parameter> has been changed to the next object.
 returns FcFalse otherwise.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternIterEqual
-@TYPE1@                const FcPattern *               @ARG1@          p1
-@TYPE2@                FcPatternIter *                 @ARG2@          i1
-@TYPE3@                const FcPattern *               @ARG3@          p2
-@TYPE4@                FcPatternIter *                 @ARG4@          i2
-@PURPOSE@      Compare iterators
+@RET@           FcBool
+@FUNC@          FcPatternIterEqual
+@TYPE1@         const FcPattern *               @ARG1@          p1
+@TYPE2@         FcPatternIter *                 @ARG2@          i1
+@TYPE3@         const FcPattern *               @ARG3@          p2
+@TYPE4@         FcPatternIter *                 @ARG4@          i2
+@PURPOSE@       Compare iterators
 @DESC@
 Return FcTrue if both <parameter>i1</parameter> and <parameter>i2</parameter>
 point to same object and contains same values. return FcFalse otherwise.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternFindIter
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@TYPE3@                const char *                    @ARG3@          object
-@PURPOSE@      Set the iterator to point to the object in the pattern
+@RET@           FcBool
+@FUNC@          FcPatternFindIter
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@TYPE3@         const char *                    @ARG3@          object
+@PURPOSE@       Set the iterator to point to the object in the pattern
 @DESC@
 Set <parameter>iter</parameter> to point to <parameter>object</parameter> in
 <parameter>p</parameter> if any and returns FcTrue. returns FcFalse otherwise.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcBool
-@FUNC@         FcPatternIterIsValid
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter :                 @ARG2@          iter
-@PURPOSE@      Check whether the iterator is valid or not
+@RET@           FcBool
+@FUNC@          FcPatternIterIsValid
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter :                 @ARG2@          iter
+@PURPOSE@       Check whether the iterator is valid or not
 @DESC@
 Returns FcTrue if <parameter>iter</parameter> point to the valid entry
 in <parameter>p</parameter>. returns FcFalse otherwise.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          const char *
-@FUNC@         FcPatternIterGetObject
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@PURPOSE@      Returns an object name which the iterator point to
+@RET@           const char *
+@FUNC@          FcPatternIterGetObject
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@PURPOSE@       Returns an object name which the iterator point to
 @DESC@
 Returns an object name in <parameter>p</parameter> which
 <parameter>iter</parameter> point to. returns NULL if
 <parameter>iter</parameter> isn't valid.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          int
-@FUNC@         FcPatternIterValueCount
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@PURPOSE@      Returns the number of the values which the iterator point to
+@RET@           int
+@FUNC@          FcPatternIterValueCount
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@PURPOSE@       Returns the number of the values which the iterator point to
 @DESC@
 Returns the number of the values in the object which <parameter>iter</parameter>
 point to. if <parameter>iter</parameter> isn't valid, returns 0.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          FcResult
-@FUNC@         FcPatternIterGetValue
-@TYPE1@                const FcPattern *               @ARG1@          p
-@TYPE2@                FcPatternIter *                 @ARG2@          iter
-@TYPE3@                int                             @ARG3@          id
-@TYPE4@                FcValue *                       @ARG4@          v
-@TYPE5@                FcValueBinding *                @ARG5@          b
-@PURPOSE@      Returns a value which the iterator point to
+@RET@           FcResult
+@FUNC@          FcPatternIterGetValue
+@TYPE1@         const FcPattern *               @ARG1@          p
+@TYPE2@         FcPatternIter *                 @ARG2@          iter
+@TYPE3@         int                             @ARG3@          id
+@TYPE4@         FcValue *                       @ARG4@          v
+@TYPE5@         FcValueBinding *                @ARG5@          b
+@PURPOSE@       Returns a value which the iterator point to
 @DESC@
 Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
 which <parameter>iter</parameter> point to. also binding to <parameter>b</parameter>
 if given.
 The value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
-@SINCE@                2.13.1
+@SINCE@         2.13.1
 @@
 
-@RET@          void
-@FUNC@         FcPatternPrint
-@TYPE1@                const FcPattern *               @ARG1@          p 
-@PURPOSE@      Print a pattern for debugging
+@RET@           void
+@FUNC@          FcPatternPrint
+@TYPE1@         const FcPattern *               @ARG1@          p
+@PURPOSE@       Print a pattern for debugging
 @DESC@
 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.
 @@
 
-@RET@          void    
-@FUNC@         FcDefaultSubstitute
-@TYPE1@                FcPattern *                     @ARG1@          pattern 
-@PURPOSE@      Perform default substitutions in a pattern
+@RET@           void
+@FUNC@          FcDefaultSubstitute
+@TYPE1@         FcPattern *                     @ARG1@          pattern
+@PURPOSE@       Perform default substitutions in a pattern
 @DESC@
 Supplies default values for underspecified font patterns:
 <itemizedlist>
@@ -523,18 +523,18 @@ specified point size (default 12), dpi (default 75) and scale (default 1).
 </itemizedlist>
 @@
 
-@RET@          FcPattern *
-@FUNC@         FcNameParse
-@TYPE1@                const FcChar8 *                 @ARG1@          name 
-@PURPOSE@      Parse a pattern string
+@RET@           FcPattern *
+@FUNC@          FcNameParse
+@TYPE1@         const FcChar8 *                 @ARG1@          name
+@PURPOSE@       Parse a pattern string
 @DESC@
 Converts <parameter>name</parameter> from the standard text format described above into a pattern.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcNameUnparse
-@TYPE1@                FcPattern *                     @ARG1@          pat 
-@PURPOSE@      Convert a pattern back into a string that can be parsed
+@RET@           FcChar8 *
+@FUNC@          FcNameUnparse
+@TYPE1@         FcPattern *                     @ARG1@          pat
+@PURPOSE@       Convert a pattern back into a string that can be parsed
 @DESC@
 Converts the given pattern into the standard text format described above.
 The return value is not static, but instead refers to newly allocated memory
diff --git a/doc/fcpattern.sgml b/doc/fcpattern.sgml
deleted file mode 100644 (file)
index 0093645..0000000
+++ /dev/null
@@ -1,1794 +0,0 @@
-<!--
-   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="FcPatternCreate">
-       <refmeta>
-           <refentrytitle>FcPatternCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternCreate</refname>
-           <refpurpose>Create a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcPatternCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates a pattern with no properties; used to build patterns from scratch.
-           </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="FcPatternDuplicate">
-       <refmeta>
-           <refentrytitle>FcPatternDuplicate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternDuplicate</refname>
-           <refpurpose>Copy a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcPatternDuplicate</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Copy a pattern, returning a new pattern that matches
-<parameter>p</parameter>. Each pattern may be modified without affecting the
-other.
-           </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="FcPatternReference">
-       <refmeta>
-           <refentrytitle>FcPatternReference</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternReference</refname>
-           <refpurpose>Increment pattern reference count</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcPatternReference</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Add another reference to <parameter>p</parameter>. Patterns are freed only
-when the reference count reaches zero.
-           </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="FcPatternDestroy">
-       <refmeta>
-           <refentrytitle>FcPatternDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternDestroy</refname>
-           <refpurpose>Destroy a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcPatternDestroy</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Decrement the pattern reference count. If all references are gone, destroys
-the pattern, in the process destroying all related values.
-           </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="FcPatternObjectCount">
-       <refmeta>
-           <refentrytitle>FcPatternObjectCount</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternObjectCount</refname>
-           <refpurpose>Returns the number of the object</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcPatternObjectCount</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the number of the object <parameter>p</parameter> has.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternEqual">
-       <refmeta>
-           <refentrytitle>FcPatternEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternEqual</refname>
-           <refpurpose>Compare patterns</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternEqual</function></funcdef>
-               <paramdef>const FcPattern *<parameter>pa</parameter></paramdef>
-               <paramdef>const FcPattern *<parameter>pb</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> are exactly alike.
-           </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="FcPatternEqualSubset">
-       <refmeta>
-           <refentrytitle>FcPatternEqualSubset</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternEqualSubset</refname>
-           <refpurpose>Compare portions of patterns</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternEqualSubset</function></funcdef>
-               <paramdef>const FcPattern *<parameter>pa</parameter></paramdef>
-               <paramdef>const FcPattern *<parameter>pb</parameter></paramdef>
-               <paramdef>const FcObjectSet *<parameter>os</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> have exactly the same values for all of the
-objects in <parameter>os</parameter>.
-           </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="FcPatternFilter">
-       <refmeta>
-           <refentrytitle>FcPatternFilter</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternFilter</refname>
-           <refpurpose>Filter the objects of pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcPatternFilter</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const FcObjectSet *<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a new pattern that only has those objects from
-<parameter>p</parameter> that are in <parameter>os</parameter>.
-If <parameter>os</parameter> is NULL, a duplicate of
-<parameter>p</parameter> is returned.
-           </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="FcPatternHash">
-       <refmeta>
-           <refentrytitle>FcPatternHash</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternHash</refname>
-           <refpurpose>Compute a pattern hash value</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar32 <function>FcPatternHash</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a 32-bit number which is the same for any two patterns which are
-equal.
-           </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="FcPatternAdd">
-       <refmeta>
-           <refentrytitle>FcPatternAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternAdd</refname>
-           <refpurpose>Add a value to a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAdd</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>FcValue <parameter>value</parameter></paramdef>
-               <paramdef>FcBool <parameter>append</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Adds a single value to the list of values associated with the property named
-`object<parameter>.  If `append</parameter> 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.
-           </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="FcPatternAddWeak">
-       <refmeta>
-           <refentrytitle>FcPatternAddWeak</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternAddWeak</refname>
-           <refpurpose>Add a value to a pattern with weak binding</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddWeak</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>FcValue <parameter>value</parameter></paramdef>
-               <paramdef>FcBool <parameter>append</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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>
-    </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="FcPatternAdd-Type">
-       <refmeta>
-           <refentrytitle>FcPatternAdd-Type</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternAddInteger</refname>
-           <refname>FcPatternAddDouble</refname>
-           <refname>FcPatternAddString</refname>
-           <refname>FcPatternAddMatrix</refname>
-           <refname>FcPatternAddCharSet</refname>
-           <refname>FcPatternAddBool</refname>
-           <refname>FcPatternAddFTFace</refname>
-           <refname>FcPatternAddLangSet</refname>
-           <refname>FcPatternAddRange</refname>
-           <refpurpose>Add a typed value to a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddInteger</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>i</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddDouble</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>double <parameter>d</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddString</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddMatrix</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>const FcMatrix *<parameter>m</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddCharSet</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>const FcCharSet *<parameter>c</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddBool</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>FcBool <parameter>b</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddFTFace</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>const FT_Face<parameter>f</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternAddLangSet</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <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>
-           <para>
-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.
-           </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="FcPatternGetWithBinding">
-       <refmeta>
-           <refentrytitle>FcPatternGetWithBinding</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternGetWithBinding</refname>
-           <refpurpose>Return a value with binding from a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetWithBinding</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-               <paramdef>FcValue *<parameter>v</parameter></paramdef>
-               <paramdef>FcValueBinding *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
-and <parameter>b</parameter> binding for that associated with the property
-<parameter>object</parameter>.
-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>Since</title>
-           <para>version 2.12.5</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="FcPatternGet">
-       <refmeta>
-           <refentrytitle>FcPatternGet</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternGet</refname>
-           <refpurpose>Return a value from a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGet</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-               <paramdef>FcValue *<parameter>v</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
-associated with the property <parameter>object</parameter>.
-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>
-    </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="FcPatternGet-Type">
-       <refmeta>
-           <refentrytitle>FcPatternGet-Type</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternGetInteger</refname>
-           <refname>FcPatternGetDouble</refname>
-           <refname>FcPatternGetString</refname>
-           <refname>FcPatternGetMatrix</refname>
-           <refname>FcPatternGetCharSet</refname>
-           <refname>FcPatternGetBool</refname>
-           <refname>FcPatternGetFTFace</refname>
-           <refname>FcPatternGetLangSet</refname>
-           <refname>FcPatternGetRange</refname>
-           <refpurpose>Return a typed value from a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetInteger</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>int *<parameter>i</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetDouble</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>double *<parameter>d</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetString</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>FcChar8 **<parameter>s</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetMatrix</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>FcMatrix **<parameter>s</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetCharSet</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>FcCharSet **<parameter>c</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetBool</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>n</parameter></paramdef>
-               <paramdef>FcBool *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternGetFTFace</function></funcdef>
-               <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>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>
-       <refsect1><title>Description</title>
-           <para>
-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.
-
-<function>FcPatternGetRange</function> are available since 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="FcPatternBuild">
-       <refmeta>
-           <refentrytitle>FcPatternBuild</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternBuild</refname>
-           <refname>FcPatternVaBuild</refname>
-           <refname>FcPatternVapBuild</refname>
-           <refpurpose>Create patterns from arguments</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcPatternBuild</function></funcdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>...<parameter></parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcPatternVaBuild</function></funcdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>va_list <parameter>va</parameter></paramdef>
-       </funcprototype>
-       <funcprototype>
-           <funcdef>void <function>FcPatternVapBuild</function></funcdef>
-               <paramdef>FcPattern *<parameter>result</parameter></paramdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-               <paramdef>va_list <parameter>va</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Builds a pattern using a list of objects, types and values.  Each
-value to be entered in the pattern is specified with three arguments:
-</para>
-<orderedlist>
-<listitem><para>
-Object name, a string describing the property to be added.
-</para></listitem><listitem><para>
-Object type, one of the FcType enumerated values
-</para></listitem><listitem><para>
-Value, not an FcValue, but the raw type as passed to any of the
-FcPatternAdd&lt;type&gt; functions.  Must match the type of the second
-argument.
-</para></listitem>
-</orderedlist>
-<para>
-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
-</para>
-<programlisting>
-pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);
-</programlisting>
-<para>
-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 <parameter>result</parameter>
-variable.
-           </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="FcPatternDel">
-       <refmeta>
-           <refentrytitle>FcPatternDel</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternDel</refname>
-           <refpurpose>Delete a property from a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternDel</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Deletes all values associated with the property `object', returning 
-whether the property existed or not.
-           </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="FcPatternRemove">
-       <refmeta>
-           <refentrytitle>FcPatternRemove</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternRemove</refname>
-           <refpurpose>Remove one object of the specified type from the pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternRemove</function></funcdef>
-               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>int <parameter>id</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcPatternIterStart">
-       <refmeta>
-           <refentrytitle>FcPatternIterStart</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterStart</refname>
-           <refpurpose>Initialize the iterator with the first iterator in the pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcPatternIterStart</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Initialize <parameter>iter</parameter> with the first iterator in <parameter>p</parameter>.
-If there are no objects in <parameter>p</parameter>, <parameter>iter</parameter>
-will not have any valid data.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterNext">
-       <refmeta>
-           <refentrytitle>FcPatternIterNext</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterNext</refname>
-           <refpurpose></refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternIterNext</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Set <parameter>iter</parameter> to point to the next object in <parameter>p</parameter>
-and returns FcTrue if <parameter>iter</parameter> has been changed to the next object.
-returns FcFalse otherwise.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterEqual">
-       <refmeta>
-           <refentrytitle>FcPatternIterEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterEqual</refname>
-           <refpurpose>Compare iterators</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternIterEqual</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p1</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>i1</parameter></paramdef>
-               <paramdef>const FcPattern *<parameter>p2</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>i2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Return FcTrue if both <parameter>i1</parameter> and <parameter>i2</parameter>
-point to same object and contains same values. return FcFalse otherwise.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternFindIter">
-       <refmeta>
-           <refentrytitle>FcPatternFindIter</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternFindIter</refname>
-           <refpurpose>Set the iterator to point to the object in the pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternFindIter</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-               <paramdef>const char *<parameter>object</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Set <parameter>iter</parameter> to point to <parameter>object</parameter> in
-<parameter>p</parameter> if any and returns FcTrue. returns FcFalse otherwise.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterIsValid">
-       <refmeta>
-           <refentrytitle>FcPatternIterIsValid</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterIsValid</refname>
-           <refpurpose>Check whether the iterator is valid or not</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcPatternIterIsValid</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter :<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns FcTrue if <parameter>iter</parameter> point to the valid entry
-in <parameter>p</parameter>. returns FcFalse otherwise.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterGetObject">
-       <refmeta>
-           <refentrytitle>FcPatternIterGetObject</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterGetObject</refname>
-           <refpurpose>Returns an object name which the iterator point to</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>const char * <function>FcPatternIterGetObject</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns an object name in <parameter>p</parameter> which
-<parameter>iter</parameter> point to. returns NULL if
-<parameter>iter</parameter> isn't valid.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterValueCount">
-       <refmeta>
-           <refentrytitle>FcPatternIterValueCount</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterValueCount</refname>
-           <refpurpose>Returns the number of the values which the iterator point to</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcPatternIterValueCount</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the number of the values in the object which <parameter>iter</parameter>
-point to. if <parameter>iter</parameter> isn't valid, returns 0.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.13.1</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="FcPatternIterGetValue">
-       <refmeta>
-           <refentrytitle>FcPatternIterGetValue</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternIterGetValue</refname>
-           <refpurpose>Returns a value which the iterator point to</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcResult <function>FcPatternIterGetValue</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-               <paramdef>FcPatternIter *<parameter>iter</parameter></paramdef>
-               <paramdef>int<parameter>id</parameter></paramdef>
-               <paramdef>FcValue *<parameter>v</parameter></paramdef>
-               <paramdef>FcValueBinding *<parameter>b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns in <parameter>v</parameter> the <parameter>id</parameter>'th value
-which <parameter>iter</parameter> point to. also binding to <parameter>b</parameter>
-if given.
-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>Since</title>
-           <para>version 2.13.1</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="FcPatternPrint">
-       <refmeta>
-           <refentrytitle>FcPatternPrint</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcPatternPrint</refname>
-           <refpurpose>Print a pattern for debugging</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcPatternPrint</function></funcdef>
-               <paramdef>const FcPattern *<parameter>p</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </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="FcDefaultSubstitute">
-       <refmeta>
-           <refentrytitle>FcDefaultSubstitute</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcDefaultSubstitute</refname>
-           <refpurpose>Perform default substitutions in a pattern</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcDefaultSubstitute</function></funcdef>
-               <paramdef>FcPattern *<parameter>pattern</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Supplies default values for underspecified font patterns:
-<itemizedlist>
-<listitem><para>
-Patterns without a specified style or weight are set to Medium
-</para></listitem>
-<listitem><para>
-Patterns without a specified style or slant are set to Roman
-</para></listitem>
-<listitem><para>
-Patterns without a specified pixel size are given one computed from any
-specified point size (default 12), dpi (default 75) and scale (default 1).
-</para></listitem>
-</itemizedlist>
-           </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="FcNameParse">
-       <refmeta>
-           <refentrytitle>FcNameParse</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameParse</refname>
-           <refpurpose>Parse a pattern string</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcPattern * <function>FcNameParse</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>name</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Converts <parameter>name</parameter> from the standard text format described above into a pattern.
-           </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="FcNameUnparse">
-       <refmeta>
-           <refentrytitle>FcNameUnparse</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcNameUnparse</refname>
-           <refpurpose>Convert a pattern back into a string that can be parsed</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcNameUnparse</function></funcdef>
-               <paramdef>FcPattern *<parameter>pat</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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().
-           </para>
-       </refsect1>
-    </refentry>
index ba76f65..c7232bf 100644 (file)
  * 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
+@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
+@SINCE@         2.11.91
 @@
 
-@RET@          FcRange *
-@FUNC@         FcRangeCreateDouble
-@TYPE1@                double                          @ARG1@          begin
-@TYPE2@                double                          @ARG2@          end
-@PURPOSE@      create a range object for double
+@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
+@SINCE@         2.11.91
 @@
 
-@RET@          FcRange *
-@FUNC@         FcRangeCreateInteger
-@TYPE1@                int                             @ARG1@          begin
-@TYPE2@                int                             @ARG2@          end
-@PURPOSE@      create a range object for integer
+@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
+@SINCE@         2.11.91
 @@
 
-@RET@          void
-@FUNC@         FcRangeDestroy
-@TYPE1@                FcRange *                       @ARG1@          range
-@PURPOSE@      destroy a range object
+@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
+@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
+@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
+@SINCE@         2.11.91
 @@
diff --git a/doc/fcrange.sgml b/doc/fcrange.sgml
deleted file mode 100644 (file)
index 08d6be0..0000000
+++ /dev/null
@@ -1,273 +0,0 @@
-<!--
-   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 0412bbd..7be7697 100644 (file)
  */
     <variablelist>
 
-@RET@          int
-@FUNC@         FcUtf8ToUcs4 
-@TYPE1@                FcChar8 *                       @ARG1@          src
-@TYPE2@                FcChar32 *                      @ARG2@          dst
-@TYPE3@                int%                            @ARG3@          len
-@PURPOSE@      convert UTF-8 to UCS4
+@RET@           int
+@FUNC@          FcUtf8ToUcs4
+@TYPE1@         FcChar8 *                       @ARG1@          src
+@TYPE2@         FcChar32 *                      @ARG2@          dst
+@TYPE3@         int%                            @ARG3@          len
+@PURPOSE@       convert UTF-8 to UCS4
 @DESC@
 Converts the next Unicode char from <parameter>src</parameter> into
 <parameter>dst</parameter> and returns the number of bytes containing the
@@ -36,24 +36,24 @@ char.  <parameter>src</parameter> must be at least
 <parameter>len</parameter> bytes long.
 @@
 
-@RET@          int 
-@FUNC@         FcUcs4ToUtf8
-@TYPE1@                FcChar32%                       @ARG1@          src      
-@TYPE2@                FcChar8%                        @ARG2@          dst[FC_UTF8_MAX_LEN]
-@PURPOSE@      convert UCS4 to UTF-8
+@RET@           int
+@FUNC@          FcUcs4ToUtf8
+@TYPE1@         FcChar32%                       @ARG1@          src
+@TYPE2@         FcChar8%                        @ARG2@          dst[FC_UTF8_MAX_LEN]
+@PURPOSE@       convert UCS4 to UTF-8
 @DESC@
 Converts the Unicode char from <parameter>src</parameter> into
 <parameter>dst</parameter> and returns the number of bytes needed to encode
 the char.
 @@
 
-@RET@          FcBool 
-@FUNC@         FcUtf8Len
-@TYPE1@                FcChar8 *                       @ARG1@          src
-@TYPE2@                int%                            @ARG2@          len
-@TYPE3@                int *                           @ARG3@          nchar
-@TYPE4@                int *                           @ARG4@          wchar
-@PURPOSE@      count UTF-8 encoded chars
+@RET@           FcBool
+@FUNC@          FcUtf8Len
+@TYPE1@         FcChar8 *                       @ARG1@          src
+@TYPE2@         int%                            @ARG2@          len
+@TYPE3@         int *                           @ARG3@          nchar
+@TYPE4@         int *                           @ARG4@          wchar
+@PURPOSE@       count UTF-8 encoded chars
 @DESC@
 Counts the number of Unicode chars in <parameter>len</parameter> bytes of
 <parameter>src</parameter>.  Places that count in
@@ -63,13 +63,13 @@ counted.  The return value indicates whether <parameter>src</parameter> is a
 well-formed UTF8 string.
 @@
 
-@RET@          int 
-@FUNC@         FcUtf16ToUcs4
-@TYPE1@                FcChar8 *                       @ARG1@          src
-@TYPE2@                FcEndian%                       @ARG2@          endian
-@TYPE3@                FcChar32 *                      @ARG3@          dst
-@TYPE4@                int%                            @ARG4@          len
-@PURPOSE@      convert UTF-16 to UCS4
+@RET@           int
+@FUNC@          FcUtf16ToUcs4
+@TYPE1@         FcChar8 *                       @ARG1@          src
+@TYPE2@         FcEndian%                       @ARG2@          endian
+@TYPE3@         FcChar32 *                      @ARG3@          dst
+@TYPE4@         int%                            @ARG4@          len
+@PURPOSE@       convert UTF-16 to UCS4
 @DESC@
 Converts the next Unicode char from <parameter>src</parameter> into
 <parameter>dst</parameter> and returns the number of bytes containing the
@@ -78,14 +78,14 @@ bytes long.  Bytes of <parameter>src</parameter> are combined into 16-bit
 units according to <parameter>endian</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcUtf16Len
-@TYPE1@                FcChar8 *                       @ARG1@          src
-@TYPE2@                FcEndian%                       @ARG2@          endian
-@TYPE3@                int%                            @ARG3@          len
-@TYPE4@                int *                           @ARG4@          nchar
-@TYPE5@                int *                           @ARG5@          wchar
-@PURPOSE@      count UTF-16 encoded chars
+@RET@           FcBool
+@FUNC@          FcUtf16Len
+@TYPE1@         FcChar8 *                       @ARG1@          src
+@TYPE2@         FcEndian%                       @ARG2@          endian
+@TYPE3@         int%                            @ARG3@          len
+@TYPE4@         int *                           @ARG4@          nchar
+@TYPE5@         int *                           @ARG5@          wchar
+@PURPOSE@       count UTF-16 encoded chars
 @DESC@
 Counts the number of Unicode chars in <parameter>len</parameter> bytes of
 <parameter>src</parameter>.  Bytes of <parameter>src</parameter> are
@@ -97,56 +97,56 @@ indicates whether <parameter>string</parameter> is a well-formed UTF16
 string.
 @@
 
-@RET@          FcBool
-@FUNC@         FcIsLower
-@TYPE1@                FcChar8                         @ARG1@          c
-@PURPOSE@      check for lower case ASCII character
+@RET@           FcBool
+@FUNC@          FcIsLower
+@TYPE1@         FcChar8                         @ARG1@          c
+@PURPOSE@       check for lower case ASCII character
 @DESC@
 This macro checks whether <parameter>c</parameter> is an lower case ASCII
 letter.
 @@
 
-@RET@          FcBool
-@FUNC@         FcIsUpper
-@TYPE1@                FcChar8                         @ARG1@          c
-@PURPOSE@      check for upper case ASCII character
+@RET@           FcBool
+@FUNC@          FcIsUpper
+@TYPE1@         FcChar8                         @ARG1@          c
+@PURPOSE@       check for upper case ASCII character
 @DESC@
 This macro checks whether <parameter>c</parameter> is a upper case ASCII
 letter.
 @@
 
-@RET@          FcChar8
-@FUNC@         FcToLower
-@TYPE1@                FcChar8                         @ARG1@          c
-@PURPOSE@      convert upper case ASCII to lower case
+@RET@           FcChar8
+@FUNC@          FcToLower
+@TYPE1@         FcChar8                         @ARG1@          c
+@PURPOSE@       convert upper case ASCII to lower case
 @DESC@
 This macro converts upper case ASCII <parameter>c</parameter> to the
 equivalent lower case letter.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrCopy
-@TYPE1@                const FcChar8 *                 @ARG1@          s
-@PURPOSE@      duplicate a string
+@RET@           FcChar8 *
+@FUNC@          FcStrCopy
+@TYPE1@         const FcChar8 *                 @ARG1@          s
+@PURPOSE@       duplicate a string
 @DESC@
 Allocates memory, copies <parameter>s</parameter> and returns the resulting
 buffer.  Yes, this is <function>strdup</function>, but that function isn't
 available on every platform.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrDowncase
-@TYPE1@                const FcChar8 *                 @ARG1@          s
-@PURPOSE@      create a lower case translation of a string
+@RET@           FcChar8 *
+@FUNC@          FcStrDowncase
+@TYPE1@         const FcChar8 *                 @ARG1@          s
+@PURPOSE@       create a lower case translation of a string
 @DESC@
 Allocates memory, copies <parameter>s</parameter>, converting upper case
 letters to lower case and returns the allocated buffer.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrCopyFilename
-@TYPE1@                const FcChar8 *                 @ARG1@          s
-@PURPOSE@      create a complete path from a filename
+@RET@           FcChar8 *
+@FUNC@          FcStrCopyFilename
+@TYPE1@         const FcChar8 *                 @ARG1@          s
+@PURPOSE@       create a complete path from a filename
 @DESC@
 <function>FcStrCopyFilename</function> constructs an absolute pathname from
 <parameter>s</parameter>. It converts any leading '~' characters in
@@ -158,32 +158,32 @@ Returns NULL if '~' is the leading character and HOME is unset or disabled
 (see <function>FcConfigEnableHome</function>).
 @@
 
-@RET@          int
-@FUNC@         FcStrCmp
-@TYPE1@                const FcChar8 *                 @ARG1@          s1
-@TYPE2@                const FcChar8 *                 @ARG2@          s2
-@PURPOSE@      compare UTF-8 strings
+@RET@           int
+@FUNC@          FcStrCmp
+@TYPE1@         const FcChar8 *                 @ARG1@          s1
+@TYPE2@         const FcChar8 *                 @ARG2@          s2
+@PURPOSE@       compare UTF-8 strings
 @DESC@
 Returns the usual &lt;0, 0, &gt;0 result of comparing
-<parameter>s1</parameter> and <parameter>s2</parameter>. 
+<parameter>s1</parameter> and <parameter>s2</parameter>.
 @@
 
-@RET@          int
-@FUNC@         FcStrCmpIgnoreCase
-@TYPE1@                const FcChar8 *                 @ARG1@          s1
-@TYPE2@                const FcChar8 *                 @ARG2@          s2
-@PURPOSE@      compare UTF-8 strings ignoring case
+@RET@           int
+@FUNC@          FcStrCmpIgnoreCase
+@TYPE1@         const FcChar8 *                 @ARG1@          s1
+@TYPE2@         const FcChar8 *                 @ARG2@          s2
+@PURPOSE@       compare UTF-8 strings ignoring case
 @DESC@
 Returns the usual &lt;0, 0, &gt;0 result of comparing
 <parameter>s1</parameter> and <parameter>s2</parameter>. This test is
 case-insensitive for all proper UTF-8 encoded strings.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrStr
-@TYPE1@                const FcChar8 *                 @ARG1@          s1
-@TYPE2@                const FcChar8 *                 @ARG2@          s2
-@PURPOSE@      locate UTF-8 substring
+@RET@           FcChar8 *
+@FUNC@          FcStrStr
+@TYPE1@         const FcChar8 *                 @ARG1@          s1
+@TYPE2@         const FcChar8 *                 @ARG2@          s2
+@PURPOSE@       locate UTF-8 substring
 @DESC@
 Returns the location of <parameter>s2</parameter> in
 <parameter>s1</parameter>.  Returns NULL if <parameter>s2</parameter>
@@ -191,52 +191,64 @@ is not present in <parameter>s1</parameter>. This test will operate properly
 with UTF8 encoded strings.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrStrIgnoreCase
-@TYPE1@                const FcChar8 *                 @ARG1@          s1
-@TYPE2@                const FcChar8 *                 @ARG2@          s2
-@PURPOSE@      locate UTF-8 substring ignoring ASCII case
+@RET@           FcChar8 *
+@FUNC@          FcStrStrIgnoreCase
+@TYPE1@         const FcChar8 *                 @ARG1@          s1
+@TYPE2@         const FcChar8 *                 @ARG2@          s2
+@PURPOSE@       locate UTF-8 substring ignoring case
 @DESC@
-Returns the location of <parameter>s2</parameter> in 
+Returns the location of <parameter>s2</parameter> in
 <parameter>s1</parameter>, ignoring case.  Returns NULL if
 <parameter>s2</parameter> is not present in <parameter>s1</parameter>.
 This test is case-insensitive for all proper UTF-8 encoded strings.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrPlus
-@TYPE1@                const FcChar8 *                 @ARG1@          s1
-@TYPE2@                const FcChar8 *                 @ARG2@          s2
-@PURPOSE@      concatenate two strings
+@RET@           FcChar8 *
+@FUNC@          FcStrPlus
+@TYPE1@         const FcChar8 *                 @ARG1@          s1
+@TYPE2@         const FcChar8 *                 @ARG2@          s2
+@PURPOSE@       concatenate two strings
 @DESC@
 This function allocates new storage and places the concatenation of
 <parameter>s1</parameter> and <parameter>s2</parameter> there, returning the
 new string.
 @@
 
-@RET@          void
-@FUNC@         FcStrFree
-@TYPE1@                FcChar8 *                       @ARG1@          s
-@PURPOSE@      free a string
+@RET@           void
+@FUNC@          FcStrFree
+@TYPE1@         FcChar8 *                       @ARG1@          s
+@PURPOSE@       free a string
 @DESC@
 This is just a wrapper around free(3) which helps track memory usage of
 strings within the fontconfig library.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrDirname
-@TYPE1@                const FcChar8 *                 @ARG1@          file
-@PURPOSE@      directory part of filename
+@RET@           FcChar8 *
+@FUNC@          FcStrBuildFilename
+@TYPE1@         const FcChar8 *                 @ARG1@          path
+@TYPE2@         ...
+@PURPOSE@       Concatenate strings as a file path
+@DESC@
+Creates a filename from the given elements of strings as file paths
+and concatenate them with the appropriate file separator.
+Arguments must be null-terminated.
+This returns a newly-allocated memory which should be freed when no longer needed.
+@@
+
+@RET@           FcChar8 *
+@FUNC@          FcStrDirname
+@TYPE1@         const FcChar8 *                 @ARG1@          file
+@PURPOSE@       directory part of filename
 @DESC@
 Returns the directory containing <parameter>file</parameter>.  This
 is returned in newly allocated storage which should be freed when no longer
 needed.
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrBasename
-@TYPE1@                const FcChar8 *                 @ARG1@          file
-@PURPOSE@      last component of filename
+@RET@           FcChar8 *
+@FUNC@          FcStrBasename
+@TYPE1@         const FcChar8 *                 @ARG1@          file
+@PURPOSE@       last component of filename
 @DESC@
 Returns the filename of <parameter>file</parameter> stripped of any leading
 directory names.  This is returned in newly allocated storage which should
diff --git a/doc/fcstring.sgml b/doc/fcstring.sgml
deleted file mode 100644 (file)
index 4b511f4..0000000
+++ /dev/null
@@ -1,1018 +0,0 @@
-<!--
-   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="FcUtf8ToUcs4">
-       <refmeta>
-           <refentrytitle>FcUtf8ToUcs4</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcUtf8ToUcs4</refname>
-           <refpurpose>convert UTF-8 to UCS4</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcUtf8ToUcs4</function></funcdef>
-               <paramdef>FcChar8 *<parameter>src</parameter></paramdef>
-               <paramdef>FcChar32 *<parameter>dst</parameter></paramdef>
-               <paramdef>int <parameter>len</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Converts the next Unicode char from <parameter>src</parameter> into
-<parameter>dst</parameter> and returns the number of bytes containing the
-char.  <parameter>src</parameter> must be at least
-<parameter>len</parameter> bytes long.
-           </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="FcUcs4ToUtf8">
-       <refmeta>
-           <refentrytitle>FcUcs4ToUtf8</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcUcs4ToUtf8</refname>
-           <refpurpose>convert UCS4 to UTF-8</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcUcs4ToUtf8</function></funcdef>
-               <paramdef>FcChar32 <parameter>src</parameter></paramdef>
-               <paramdef>FcChar8 <parameter>dst[FC_UTF8_MAX_LEN]</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Converts the Unicode char from <parameter>src</parameter> into
-<parameter>dst</parameter> and returns the number of bytes needed to encode
-the char.
-           </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="FcUtf8Len">
-       <refmeta>
-           <refentrytitle>FcUtf8Len</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcUtf8Len</refname>
-           <refpurpose>count UTF-8 encoded chars</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcUtf8Len</function></funcdef>
-               <paramdef>FcChar8 *<parameter>src</parameter></paramdef>
-               <paramdef>int <parameter>len</parameter></paramdef>
-               <paramdef>int *<parameter>nchar</parameter></paramdef>
-               <paramdef>int *<parameter>wchar</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Counts the number of Unicode chars in <parameter>len</parameter> bytes of
-<parameter>src</parameter>.  Places that count in
-<parameter>nchar</parameter>.  <parameter>wchar</parameter> contains 1, 2 or
-4 depending on the number of bytes needed to hold the largest Unicode char
-counted.  The return value indicates whether <parameter>src</parameter> is a
-well-formed UTF8 string.
-           </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="FcUtf16ToUcs4">
-       <refmeta>
-           <refentrytitle>FcUtf16ToUcs4</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcUtf16ToUcs4</refname>
-           <refpurpose>convert UTF-16 to UCS4</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcUtf16ToUcs4</function></funcdef>
-               <paramdef>FcChar8 *<parameter>src</parameter></paramdef>
-               <paramdef>FcEndian <parameter>endian</parameter></paramdef>
-               <paramdef>FcChar32 *<parameter>dst</parameter></paramdef>
-               <paramdef>int <parameter>len</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Converts the next Unicode char from <parameter>src</parameter> into
-<parameter>dst</parameter> and returns the number of bytes containing the
-char. <parameter>src</parameter> must be at least <parameter>len</parameter>
-bytes long.  Bytes of <parameter>src</parameter> are combined into 16-bit
-units according to <parameter>endian</parameter>.
-           </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="FcUtf16Len">
-       <refmeta>
-           <refentrytitle>FcUtf16Len</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcUtf16Len</refname>
-           <refpurpose>count UTF-16 encoded chars</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcUtf16Len</function></funcdef>
-               <paramdef>FcChar8 *<parameter>src</parameter></paramdef>
-               <paramdef>FcEndian <parameter>endian</parameter></paramdef>
-               <paramdef>int <parameter>len</parameter></paramdef>
-               <paramdef>int *<parameter>nchar</parameter></paramdef>
-               <paramdef>int *<parameter>wchar</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Counts the number of Unicode chars in <parameter>len</parameter> bytes of
-<parameter>src</parameter>.  Bytes of <parameter>src</parameter> are
-combined into 16-bit units according to <parameter>endian</parameter>.
-Places that count in <parameter>nchar</parameter>.
-<parameter>wchar</parameter> contains 1, 2 or 4 depending on the number of
-bytes needed to hold the largest Unicode char counted.  The return value
-indicates whether <parameter>string</parameter> is a well-formed UTF16
-string.
-           </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="FcIsLower">
-       <refmeta>
-           <refentrytitle>FcIsLower</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcIsLower</refname>
-           <refpurpose>check for lower case ASCII character</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcIsLower</function></funcdef>
-               <paramdef>FcChar8<parameter>c</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This macro checks whether <parameter>c</parameter> is an lower case ASCII
-letter.
-           </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="FcIsUpper">
-       <refmeta>
-           <refentrytitle>FcIsUpper</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcIsUpper</refname>
-           <refpurpose>check for upper case ASCII character</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcIsUpper</function></funcdef>
-               <paramdef>FcChar8<parameter>c</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This macro checks whether <parameter>c</parameter> is a upper case ASCII
-letter.
-           </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="FcToLower">
-       <refmeta>
-           <refentrytitle>FcToLower</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcToLower</refname>
-           <refpurpose>convert upper case ASCII to lower case</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 <function>FcToLower</function></funcdef>
-               <paramdef>FcChar8<parameter>c</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This macro converts upper case ASCII <parameter>c</parameter> to the
-equivalent lower case letter.
-           </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="FcStrCopy">
-       <refmeta>
-           <refentrytitle>FcStrCopy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrCopy</refname>
-           <refpurpose>duplicate a string</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrCopy</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Allocates memory, copies <parameter>s</parameter> and returns the resulting
-buffer.  Yes, this is <function>strdup</function>, but that function isn't
-available on every platform.
-           </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="FcStrDowncase">
-       <refmeta>
-           <refentrytitle>FcStrDowncase</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrDowncase</refname>
-           <refpurpose>create a lower case translation of a string</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrDowncase</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Allocates memory, copies <parameter>s</parameter>, converting upper case
-letters to lower case and returns the allocated buffer.
-           </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="FcStrCopyFilename">
-       <refmeta>
-           <refentrytitle>FcStrCopyFilename</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrCopyFilename</refname>
-           <refpurpose>create a complete path from a filename</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrCopyFilename</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcStrCopyFilename</function> constructs an absolute pathname from
-<parameter>s</parameter>. 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 <function>FcConfigEnableHome</function>).
-           </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="FcStrCmp">
-       <refmeta>
-           <refentrytitle>FcStrCmp</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrCmp</refname>
-           <refpurpose>compare UTF-8 strings</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcStrCmp</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s1</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the usual &lt;0, 0, &gt;0 result of comparing
-<parameter>s1</parameter> and <parameter>s2</parameter>.
-           </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="FcStrCmpIgnoreCase">
-       <refmeta>
-           <refentrytitle>FcStrCmpIgnoreCase</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrCmpIgnoreCase</refname>
-           <refpurpose>compare UTF-8 strings ignoring case</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>int <function>FcStrCmpIgnoreCase</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s1</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the usual &lt;0, 0, &gt;0 result of comparing
-<parameter>s1</parameter> and <parameter>s2</parameter>. This test is
-case-insensitive for all proper UTF-8 encoded strings.
-           </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="FcStrStr">
-       <refmeta>
-           <refentrytitle>FcStrStr</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrStr</refname>
-           <refpurpose>locate UTF-8 substring</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrStr</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s1</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the location of <parameter>s2</parameter> in
-<parameter>s1</parameter>.  Returns NULL if <parameter>s2</parameter>
-is not present in <parameter>s1</parameter>. This test will operate properly
-with UTF8 encoded strings.
-           </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="FcStrStrIgnoreCase">
-       <refmeta>
-           <refentrytitle>FcStrStrIgnoreCase</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrStrIgnoreCase</refname>
-           <refpurpose>locate UTF-8 substring ignoring ASCII case</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrStrIgnoreCase</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s1</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the location of <parameter>s2</parameter> in 
-<parameter>s1</parameter>, ignoring case.  Returns NULL if
-<parameter>s2</parameter> is not present in <parameter>s1</parameter>.
-This test is case-insensitive for all proper UTF-8 encoded strings.
-           </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="FcStrPlus">
-       <refmeta>
-           <refentrytitle>FcStrPlus</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrPlus</refname>
-           <refpurpose>concatenate two strings</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrPlus</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>s1</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s2</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This function allocates new storage and places the concatenation of
-<parameter>s1</parameter> and <parameter>s2</parameter> there, returning the
-new string.
-           </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="FcStrFree">
-       <refmeta>
-           <refentrytitle>FcStrFree</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrFree</refname>
-           <refpurpose>free a string</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcStrFree</function></funcdef>
-               <paramdef>FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-This is just a wrapper around free(3) which helps track memory usage of
-strings within the fontconfig library.
-           </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="FcStrDirname">
-       <refmeta>
-           <refentrytitle>FcStrDirname</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrDirname</refname>
-           <refpurpose>directory part of filename</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrDirname</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the directory containing <parameter>file</parameter>.  This
-is returned in newly allocated storage which should be freed when no longer
-needed.
-           </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="FcStrBasename">
-       <refmeta>
-           <refentrytitle>FcStrBasename</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrBasename</refname>
-           <refpurpose>last component of filename</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrBasename</function></funcdef>
-               <paramdef>const FcChar8 *<parameter>file</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the filename of <parameter>file</parameter> stripped of any leading
-directory names.  This is returned in newly allocated storage which should
-be freed when no longer needed.
-           </para>
-       </refsect1>
-    </refentry>
index 67aa61a..66a5136 100644 (file)
  */
     <variablelist>
 
-@RET@          FcStrSet *      
-@FUNC@         FcStrSetCreate 
-@TYPE1@                void
-@PURPOSE@      create a string set
+@RET@           FcStrSet *
+@FUNC@          FcStrSetCreate
+@TYPE1@         void
+@PURPOSE@       create a string set
 @DESC@
 Create an empty set.
 @@
 
-@RET@          FcBool
-@FUNC@         FcStrSetMember
-@TYPE1@                FcStrSet *                      @ARG1@          set
-@TYPE2@                const FcChar8 *                 @ARG2@          s       
-@PURPOSE@      check set for membership
+@RET@           FcBool
+@FUNC@          FcStrSetMember
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@TYPE2@         const FcChar8 *                 @ARG2@          s
+@PURPOSE@       check set for membership
 @DESC@
 Returns whether <parameter>s</parameter> is a member of
 <parameter>set</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcStrSetEqual
-@TYPE1@                FcStrSet *                      @ARG1@          set_a
-@TYPE2@                FcStrSet *                      @ARG2@          set_b
-@PURPOSE@      check sets for equality
+@RET@           FcBool
+@FUNC@          FcStrSetEqual
+@TYPE1@         FcStrSet *                      @ARG1@          set_a
+@TYPE2@         FcStrSet *                      @ARG2@          set_b
+@PURPOSE@       check sets for equality
 @DESC@
 Returns whether <parameter>set_a</parameter> contains precisely the same
 strings as <parameter>set_b</parameter>. Ordering of strings within the two
 sets is not considered.
 @@
 
-@RET@          FcBool
-@FUNC@         FcStrSetAdd
-@TYPE1@                FcStrSet *                      @ARG1@          set
-@TYPE2@                const FcChar8 *                 @ARG2@          s       
-@PURPOSE@      add to a string set
+@RET@           FcBool
+@FUNC@          FcStrSetAdd
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@TYPE2@         const FcChar8 *                 @ARG2@          s
+@PURPOSE@       add to a string set
 @DESC@
 Adds a copy of <parameter>s</parameter> to <parameter>set</parameter>.
 @@
 
-@RET@          FcBool
-@FUNC@         FcStrSetAddFilename
-@TYPE1@                FcStrSet *                      @ARG1@          set
-@TYPE2@                const FcChar8 *                 @ARG2@          s       
-@PURPOSE@      add a filename to a string set
+@RET@           FcBool
+@FUNC@          FcStrSetAddFilename
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@TYPE2@         const FcChar8 *                 @ARG2@          s
+@PURPOSE@       add a filename to a string set
 @DESC@
 Adds a copy <parameter>s</parameter> to <parameter>set</parameter>, The copy
 is created with FcStrCopyFilename so that leading '~' values are replaced
 with the value of the HOME environment variable.
 @@
 
-@RET@          FcBool
-@FUNC@         FcStrSetDel
-@TYPE1@                FcStrSet *                      @ARG1@          set
-@TYPE2@                const FcChar8 *                 @ARG2@          s       
-@PURPOSE@      delete from a string set
+@RET@           FcBool
+@FUNC@          FcStrSetDel
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@TYPE2@         const FcChar8 *                 @ARG2@          s
+@PURPOSE@       delete from a string set
 @DESC@
 Removes <parameter>s</parameter> from <parameter>set</parameter>, returning
 FcTrue if <parameter>s</parameter> was a member else FcFalse.
 @@
 
-@RET@          void
-@FUNC@         FcStrSetDestroy
-@TYPE1@                FcStrSet *                      @ARG1@          set     
-@PURPOSE@      destroy a string set
+@RET@           void
+@FUNC@          FcStrSetDestroy
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@PURPOSE@       destroy a string set
 @DESC@
 Destroys <parameter>set</parameter>.
 @@
 
-@RET@          FcStrList *
-@FUNC@         FcStrListCreate
-@TYPE1@                FcStrSet *                      @ARG1@          set     
-@PURPOSE@      create a string iterator
+@RET@           FcStrList *
+@FUNC@          FcStrListCreate
+@TYPE1@         FcStrSet *                      @ARG1@          set
+@PURPOSE@       create a string iterator
 @DESC@
 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
+@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
+@SINCE@         2.11.0
 @@
 
-@RET@          FcChar8 *
-@FUNC@         FcStrListNext
-@TYPE1@                FcStrList *                     @ARG1@          list    
-@PURPOSE@      get next string in iteration
+@RET@           FcChar8 *
+@FUNC@          FcStrListNext
+@TYPE1@         FcStrList *                     @ARG1@          list
+@PURPOSE@       get next string in iteration
 @DESC@
 Returns the next string in <parameter>list</parameter>.
 @@
 
-@RET@          void
-@FUNC@         FcStrListDone
-@TYPE1@                FcStrList *                     @ARG1@          list    
-@PURPOSE@      destroy a string iterator
+@RET@           void
+@FUNC@          FcStrListDone
+@TYPE1@         FcStrList *                     @ARG1@          list
+@PURPOSE@       destroy a string iterator
 @DESC@
 Destroys the enumerator <parameter>list</parameter>.
 @@
diff --git a/doc/fcstrset.sgml b/doc/fcstrset.sgml
deleted file mode 100644 (file)
index c6aa493..0000000
+++ /dev/null
@@ -1,564 +0,0 @@
-<!--
-   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="FcStrSetCreate">
-       <refmeta>
-           <refentrytitle>FcStrSetCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetCreate</refname>
-           <refpurpose>create a string set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrSet * <function>FcStrSetCreate</function></funcdef>
-               <paramdef>void<parameter></parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Create an empty set.
-           </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="FcStrSetMember">
-       <refmeta>
-           <refentrytitle>FcStrSetMember</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetMember</refname>
-           <refpurpose>check set for membership</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcStrSetMember</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>s</parameter> is a member of
-<parameter>set</parameter>.
-           </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="FcStrSetEqual">
-       <refmeta>
-           <refentrytitle>FcStrSetEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetEqual</refname>
-           <refpurpose>check sets for equality</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcStrSetEqual</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set_a</parameter></paramdef>
-               <paramdef>FcStrSet *<parameter>set_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns whether <parameter>set_a</parameter> contains precisely the same
-strings as <parameter>set_b</parameter>. Ordering of strings within the two
-sets is not considered.
-           </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="FcStrSetAdd">
-       <refmeta>
-           <refentrytitle>FcStrSetAdd</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetAdd</refname>
-           <refpurpose>add to a string set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcStrSetAdd</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Adds a copy of <parameter>s</parameter> to <parameter>set</parameter>.
-           </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="FcStrSetAddFilename">
-       <refmeta>
-           <refentrytitle>FcStrSetAddFilename</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetAddFilename</refname>
-           <refpurpose>add a filename to a string set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcStrSetAddFilename</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Adds a copy <parameter>s</parameter> to <parameter>set</parameter>, The copy
-is created with FcStrCopyFilename so that leading '~' values are replaced
-with the value of the HOME environment variable.
-           </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="FcStrSetDel">
-       <refmeta>
-           <refentrytitle>FcStrSetDel</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetDel</refname>
-           <refpurpose>delete from a string set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcStrSetDel</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-               <paramdef>const FcChar8 *<parameter>s</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Removes <parameter>s</parameter> from <parameter>set</parameter>, returning
-FcTrue if <parameter>s</parameter> was a member else FcFalse.
-           </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="FcStrSetDestroy">
-       <refmeta>
-           <refentrytitle>FcStrSetDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrSetDestroy</refname>
-           <refpurpose>destroy a string set</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcStrSetDestroy</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Destroys <parameter>set</parameter>.
-           </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="FcStrListCreate">
-       <refmeta>
-           <refentrytitle>FcStrListCreate</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrListCreate</refname>
-           <refpurpose>create a string iterator</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcStrList * <function>FcStrListCreate</function></funcdef>
-               <paramdef>FcStrSet *<parameter>set</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Creates an iterator to list the strings in <parameter>set</parameter>.
-           </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="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>
-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
-  
-   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="FcStrListNext">
-       <refmeta>
-           <refentrytitle>FcStrListNext</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrListNext</refname>
-           <refpurpose>get next string in iteration</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcChar8 * <function>FcStrListNext</function></funcdef>
-               <paramdef>FcStrList *<parameter>list</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns the next string in <parameter>list</parameter>.
-           </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="FcStrListDone">
-       <refmeta>
-           <refentrytitle>FcStrListDone</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcStrListDone</refname>
-           <refpurpose>destroy a string iterator</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcStrListDone</function></funcdef>
-               <paramdef>FcStrList *<parameter>list</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Destroys the enumerator <parameter>list</parameter>.
-           </para>
-       </refsect1>
-    </refentry>
index 83a5b3a..a903988 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          void
-@FUNC@         FcValueDestroy
-@TYPE1@                FcValue%                @ARG1@          v
-@PURPOSE@      Free a value
+@RET@           void
+@FUNC@          FcValueDestroy
+@TYPE1@         FcValue%                @ARG1@          v
+@PURPOSE@       Free a value
 @DESC@
 Frees any memory referenced by <parameter>v</parameter>.  Values of type FcTypeString,
 FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
 @@
 
-@RET@          FcValue 
-@FUNC@         FcValueSave
-@TYPE1@                FcValue%                @ARG1@          v
-@PURPOSE@      Copy a value
+@RET@           FcValue
+@FUNC@          FcValueSave
+@TYPE1@         FcValue%                @ARG1@          v
+@PURPOSE@       Copy a value
 @DESC@
 Returns a copy of <parameter>v</parameter> duplicating any object referenced by it so that <parameter>v</parameter>
 may be safely destroyed without harming the new value.
 @@
 
-@RET@          void
-@FUNC@         FcValuePrint
-@TYPE1@                FcValue%                @ARG1@          v
-@PURPOSE@      Print a value to stdout
+@RET@           void
+@FUNC@          FcValuePrint
+@TYPE1@         FcValue%                @ARG1@          v
+@PURPOSE@       Print a value to stdout
 @DESC@
 Prints a human-readable representation of <parameter>v</parameter> to
 stdout. The format should not be considered part of the library
 specification as it may change in the future.
 @@
 
-@RET@          FcBool
-@FUNC@         FcValueEqual
-@TYPE1@                FcValue%                @ARG1@          v_a
-@TYPE2@                FcValue%                @ARG2@          v_b
-@PURPOSE@      Test two values for equality
+@RET@           FcBool
+@FUNC@          FcValueEqual
+@TYPE1@         FcValue%                @ARG1@          v_a
+@TYPE2@         FcValue%                @ARG2@          v_b
+@PURPOSE@       Test two values for equality
 @DESC@
 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
diff --git a/doc/fcvalue.sgml b/doc/fcvalue.sgml
deleted file mode 100644 (file)
index 51dbbe3..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-<!--
-   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="FcValueDestroy">
-       <refmeta>
-           <refentrytitle>FcValueDestroy</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcValueDestroy</refname>
-           <refpurpose>Free a value</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcValueDestroy</function></funcdef>
-               <paramdef>FcValue <parameter>v</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Frees any memory referenced by <parameter>v</parameter>.  Values of type FcTypeString,
-FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
-           </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="FcValueSave">
-       <refmeta>
-           <refentrytitle>FcValueSave</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcValueSave</refname>
-           <refpurpose>Copy a value</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcValue <function>FcValueSave</function></funcdef>
-               <paramdef>FcValue <parameter>v</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Returns a copy of <parameter>v</parameter> duplicating any object referenced by it so that <parameter>v</parameter>
-may be safely destroyed without harming the new value.
-           </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="FcValuePrint">
-       <refmeta>
-           <refentrytitle>FcValuePrint</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcValuePrint</refname>
-           <refpurpose>Print a value to stdout</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>void <function>FcValuePrint</function></funcdef>
-               <paramdef>FcValue <parameter>v</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-Prints a human-readable representation of <parameter>v</parameter> to
-stdout. The format should not be considered part of the library
-specification as it may change in the future.
-           </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="FcValueEqual">
-       <refmeta>
-           <refentrytitle>FcValueEqual</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcValueEqual</refname>
-           <refpurpose>Test two values for equality</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>FcBool <function>FcValueEqual</function></funcdef>
-               <paramdef>FcValue <parameter>v_a</parameter></paramdef>
-               <paramdef>FcValue <parameter>v_b</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-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.
-           </para>
-       </refsect1>
-    </refentry>
index 4884b27..a3668d9 100644 (file)
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-@RET@          double
-@FUNC@         FcWeightFromOpenTypeDouble
-@TYPE1@                double                          @ARG1@          ot_weight
-@PURPOSE@      Convert from OpenType weight values to fontconfig ones
+@RET@           double
+@FUNC@          FcWeightFromOpenTypeDouble
+@TYPE1@         double                          @ARG1@          ot_weight
+@PURPOSE@       Convert from OpenType weight values to fontconfig ones
 @DESC@
 <function>FcWeightFromOpenTypeDouble</function> returns an double value
 to use with FC_WEIGHT, from an double 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 doubleerpolates
+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.12.92
+@SINCE@         2.12.92
 @@
 
-@RET@          double
-@FUNC@         FcWeightToOpenTypeDouble
-@TYPE1@                double                          @ARG1@          ot_weight
-@PURPOSE@      Convert from fontconfig weight values to OpenType ones
+@RET@           double
+@FUNC@          FcWeightToOpenTypeDouble
+@TYPE1@         double                          @ARG1@          ot_weight
+@PURPOSE@       Convert from fontconfig weight values to OpenType ones
 @DESC@
 <function>FcWeightToOpenTypeDouble</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.12.92
+@SINCE@         2.12.92
 @@
 
-@RET@          int
-@FUNC@         FcWeightFromOpenType
-@TYPE1@                int                             @ARG1@          ot_weight
-@PURPOSE@      Convert from OpenType weight values to fontconfig ones
+@RET@           int
+@FUNC@          FcWeightFromOpenType
+@TYPE1@         int                             @ARG1@          ot_weight
+@PURPOSE@       Convert from OpenType weight values to fontconfig ones
 @DESC@
 <function>FcWeightFromOpenType</function> is like
 <function>FcWeightFromOpenTypeDouble</function> but with integer arguments.
 Use the other function instead.
-@SINCE@                2.11.91
+@SINCE@         2.11.91
 @@
 
-@RET@          int
-@FUNC@         FcWeightToOpenType
-@TYPE1@                int                             @ARG1@          ot_weight
-@PURPOSE@      Convert from fontconfig weight values to OpenType ones
+@RET@           int
+@FUNC@          FcWeightToOpenType
+@TYPE1@         int                             @ARG1@          ot_weight
+@PURPOSE@       Convert from fontconfig weight values to OpenType ones
 @DESC@
 <function>FcWeightToOpenType</function> is like
 <function>FcWeightToOpenTypeDouble</function> but with integer arguments.
 Use the other function instead.
-@SINCE@                2.11.91
+@SINCE@         2.11.91
 @@
diff --git a/doc/fcweight.sgml b/doc/fcweight.sgml
deleted file mode 100644 (file)
index ae4bcc3..0000000
+++ /dev/null
@@ -1,225 +0,0 @@
-<!--
-   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="FcWeightFromOpenTypeDouble">
-       <refmeta>
-           <refentrytitle>FcWeightFromOpenTypeDouble</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcWeightFromOpenTypeDouble</refname>
-           <refpurpose>Convert from OpenType weight values to fontconfig ones</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>double <function>FcWeightFromOpenTypeDouble</function></funcdef>
-               <paramdef>double<parameter>ot_weight</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcWeightFromOpenTypeDouble</function> returns an double value
-to use with FC_WEIGHT, from an double 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 doubleerpolates
-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.12.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="FcWeightToOpenTypeDouble">
-       <refmeta>
-           <refentrytitle>FcWeightToOpenTypeDouble</refentrytitle>
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
-           <refname>FcWeightToOpenTypeDouble</refname>
-           <refpurpose>Convert from fontconfig weight values to OpenType ones</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
-#include &lt;fontconfig/fontconfig.h&gt;
-       </funcsynopsisinfo>
-       <funcprototype>
-           <funcdef>double <function>FcWeightToOpenTypeDouble</function></funcdef>
-               <paramdef>double<parameter>ot_weight</parameter></paramdef>
-       </funcprototype>
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
-<function>FcWeightToOpenTypeDouble</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.12.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="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> is like
-<function>FcWeightFromOpenTypeDouble</function> but with integer arguments.
-Use the other function instead.
-           </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 like
-<function>FcWeightToOpenTypeDouble</function> but with integer arguments.
-Use the other function instead.
-           </para>
-       </refsect1>
-       <refsect1><title>Since</title>
-           <para>version 2.11.91</para>
-       </refsect1>
-    </refentry>
index 6bc47c4..1a3f218 100644 (file)
Binary files a/doc/fontconfig-devel.pdf and b/doc/fontconfig-devel.pdf differ
index 6a6caef..a1ec613 100644 (file)
@@ -150,8 +150,8 @@ convenience for the application's rendering mechanism.
     slant          FC_SLANT               Int     Italic, oblique or roman
     weight         FC_WEIGHT              Int     Light, medium, demibold,
                                                   bold or black
-    size           FC_SIZE                Double  Point size
     width          FC_WIDTH               Int     Condensed, normal or expanded
+    size           FC_SIZE                Double  Point size
     aspect         FC_ASPECT              Double  Stretches glyphs horizontally
                                                   before hinting
     pixelsize      FC_PIXEL_SIZE          Double  Pixel size
@@ -160,14 +160,15 @@ convenience for the application's rendering mechanism.
     foundry        FC_FOUNDRY             String  Font foundry name
     antialias      FC_ANTIALIAS           Bool    Whether glyphs can be
                                                   antialiased
+    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
     hinting        FC_HINTING             Bool    Whether the rasterizer should
                                                   use hinting
-    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
     verticallayout FC_VERTICAL_LAYOUT     Bool    Use vertical layout
     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
+                                                  relative to the config's sysroot
     index          FC_INDEX               Int     The index of the font within
                                                   the file
     ftface         FC_FT_FACE             FT_Face Use the specified FreeType
@@ -175,14 +176,11 @@ convenience for the application's rendering mechanism.
     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 (deprecated)
-    symbol         FC_SYMBOL              Bool    Whether font uses MS symbol-font encoding
-    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
-    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
+    scale          FC_SCALE               Double  Scale factor for point->pixel
+                                                  conversions (deprecated)
     minspace       FC_MINSPACE            Bool    Eliminate leading from line
                                                   spacing
     charset        FC_CHARSET             CharSet Unicode chars encoded by
@@ -199,15 +197,22 @@ convenience for the application's rendering mechanism.
                                                   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
+    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
     namelang       FC_NAMELANG            String  Language name to be used for the
                                                   default value of familylang,
                                                   stylelang and fullnamelang
+    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
+                                                  OpenType to be enabled
     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
+    symbol         FC_SYMBOL              Bool    Whether font uses MS symbol-font encoding
+    color          FC_COLOR               Bool    Whether any glyphs have color
+    fontvariations FC_FONT_VARIATIONS     String  comma-separated string of axes in variable font
+    variable       FC_VARIABLE            Bool    Whether font is Variable Font
+    fonthashint    FC_FONT_HAS_HINT       Bool    Whether font has hinting
+    order          FC_ORDER               Int     Order number of the font
     </programlisting>
   </sect2>
 </sect1>
@@ -281,6 +286,7 @@ types.  The 'type' tag indicates which member is valid.
                         const FcCharSet *c;
                        void *f;
                        const FcLangSet *l;
+                       const FcRange   *r;
                 } u;
         } FcValue;
     </programlisting>
@@ -298,16 +304,18 @@ types.  The 'type' tag indicates which member is valid.
         FcTypeCharSet   c               FcCharSet *
        FcTypeFTFace    f               void * (FT_Face)
        FcTypeLangSet   l               FcLangSet *
+       FcTypeRange     r               FcRange *
     </programlisting>
     </para>
   </sect2>
-  <sect2><title>FcPattern</title>
+  <sect2><title>FcPattern, FcPatternIter</title>
     <para>
-holds a set of names with associated value lists; each name refers to a
+An 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.
+interface doesn't demand that.  An FcPatternIter is used during iteration to
+access properties in FcPattern.
     </para>
   </sect2>
   <sect2><title>FcFontSet</title>
index 34cafe4..a6143e0 100644 (file)
-                Fontconfig Developers Reference, Version 2.13.1
+Fontconfig Developers Reference, Version 2.14.2
 
    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
+    width          FC_WIDTH               Int     Condensed, normal or e
+xpanded
     size           FC_SIZE                Double  Point size
-    width          FC_WIDTH               Int     Condensed, normal or expanded
-    aspect         FC_ASPECT              Double  Stretches glyphs horizontally
+    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
+    hintstyle      FC_HINT_STYLE          Int     Automatic hinting styl
+e
+    hinting        FC_HINTING             Bool    Whether the rasterizer
+ should
                                                   use hinting
-    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
     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
+                                                  relative to the config
+'s sysroot
+    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 (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 (deprecated)
-    symbol         FC_SYMBOL              Bool    Whether font uses MS symbol-font encoding
-    color          FC_COLOR               Bool    Whether any glyphs have color
+    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
     dpi            FC_DPI                 Double  Target dots per inch
-    rgba           FC_RGBA                Int     unknown, rgb, bgr, vrgb,
-                                                  vbgr, none - subpixel geometry
-    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
-    minspace       FC_MINSPACE            Bool    Eliminate leading from line
+    rgba           FC_RGBA                Int     unknown, rgb, bgr, vrg
+b,
+                                                  vbgr, none - subpixel
+geometry
+    scale          FC_SCALE               Double  Scale factor for point
+->pixel
+                                                  conversions (deprecate
+d)
+    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 font format
+    fontformat     FC_FONTFORMAT          String  String name of the fon
+t format
     embolden       FC_EMBOLDEN            Bool    Rasterizer should
-                                                  synthetically embolden the font
-    embeddedbitmap FC_EMBEDDED_BITMAP     Bool    Use the embedded bitmap instead
+                                                  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
+    decorative     FC_DECORATIVE          Bool    Whether the style is a
+ decorative
                                                   variant
-    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
+    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
+    namelang       FC_NAMELANG            String  Language name to be us
+ed for the
+                                                  default value of famil
+ylang,
+                                                  stylelang and fullname
+lang
+    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
-
-
-   --------------------------------------------------------------------------
+    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
+    symbol         FC_SYMBOL              Bool    Whether font uses MS s
+ymbol-font encoding
+    color          FC_COLOR               Bool    Whether any glyphs hav
+e color
+    fontvariations FC_FONT_VARIATIONS     String  comma-separated string
+ of axes in variable font
+    variable       FC_VARIABLE            Bool    Whether font is Variab
+le Font
+    fonthashint    FC_FONT_HAS_HINT       Bool    Whether font has hinti
+ng
+    order          FC_ORDER               Int     Order number of the fo
+nt
+     __________________________________________________________
 
 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.
-
-   --------------------------------------------------------------------------
+   Fontconfig uses abstract data types to hide internal
+   implementation details for most data structures. A few
+   structures are exposed where appropriate.
+     __________________________________________________________
 
-  FcMatrix
+FcChar8, FcChar16, FcChar32, FcBool
 
-   An FcMatrix holds an affine transformation, usually used to reshape
-   glyphs. A small set of matrix operations are provided to manipulate these.
+   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.
+     __________________________________________________________
 
-           typedef struct _FcMatrix {
-                   double xx, xy, yx, yy;
-           } FcMatrix;
+FcMatrix
 
+   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;
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
+FcCharSet
 
-  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.
+     __________________________________________________________
 
-   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
 
-   --------------------------------------------------------------------------
+   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.
+     __________________________________________________________
 
-  FcLangSet
+FcLangResult
 
-   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 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.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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.
-
-   --------------------------------------------------------------------------
-
-  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.
-
-   FcBlanks is deprecated and should not be used in newly written code. It is
-   still accepted by some functions for compatibility with older code but
-   will be removed in the future.
-
-   --------------------------------------------------------------------------
-
-  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;
+                        const FcRange   *r;
+                } 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 *
+        FcTypeRange     r               FcRange *
+     __________________________________________________________
+
+FcPattern, FcPatternIter
+
+   An 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. An FcPatternIter is used during
+   iteration to access properties in FcPattern.
+     __________________________________________________________
+
+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.
+
+   FcBlanks is deprecated and should not be used in newly written
+   code. It is still accepted by some functions for compatibility
+   with older code but will be removed in the future.
+     __________________________________________________________
+
+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);
 
@@ -463,74 +494,71 @@ Description
    Loads the default configuration file and returns the resulting
    configuration. Does not load any font information.
 
-                            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.
+   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.
+   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.
 
-                                     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.
 
-                                  FcGetVersion
+FcGetVersion
 
 Name
 
-   FcGetVersion -- library version number
+   FcGetVersion -- library version number
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcGetVersion(void);
 
@@ -538,206 +566,185 @@ Description
 
    Returns the version number of the library.
 
-                               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.
+   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.
-
-   --------------------------------------------------------------------------
+   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
+   FcPatternObjectCount -- Returns the number of the object
+   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
+   FcPatternGetWithBinding -- Return a value with binding from a
+          pattern
 
-   [12]FcPatternCreate -- Create a pattern
-
-   [13]FcPatternDuplicate -- Copy a pattern
-
-   [14]FcPatternReference -- Increment pattern reference count
-
-   [15]FcPatternDestroy -- Destroy a pattern
-
-   [16]FcPatternObjectCount -- Returns the number of the object
+   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
 
-   [17]FcPatternEqual -- Compare patterns
+   FcPatternIterStart -- Initialize the iterator with the first
+          iterator in the pattern
 
-   [18]FcPatternEqualSubset -- Compare portions of patterns
+   FcPatternIterNext --
+   FcPatternIterEqual -- Compare iterators
+   FcPatternFindIter -- Set the iterator to point to the object in
+          the pattern
 
-   [19]FcPatternFilter -- Filter the objects of pattern
+   FcPatternIterIsValid -- Check whether the iterator is valid or
+          not
 
-   [20]FcPatternHash -- Compute a pattern hash value
+   FcPatternIterGetObject -- Returns an object name which the
+          iterator point to
 
-   [21]FcPatternAdd -- Add a value to a pattern
+   FcPatternIterValueCount -- Returns the number of the values
+          which the iterator point to
 
-   [22]FcPatternAddWeak -- Add a value to a pattern with weak binding
+   FcPatternIterGetValue -- Returns a value which the iterator
+          point to
 
-   [23]FcPatternAdd-Type -- Add a typed value to a pattern
+   FcPatternPrint -- Print a pattern for debugging
+   FcDefaultSubstitute -- Perform default substitutions in a
+          pattern
 
-   [24]FcPatternGetWithBinding -- Return a value with binding from a pattern
+   FcNameParse -- Parse a pattern string
+   FcNameUnparse -- Convert a pattern back into a string that can
+          be parsed
 
-   [25]FcPatternGet -- Return a value from a pattern
+   FcPatternFormat -- Format a pattern into a string according to
+          a format specifier
 
-   [26]FcPatternGet-Type -- Return a typed value from a pattern
+   An FcPattern is an opaque type that holds both patterns to
+   match against the available fonts, as well as the information
+   about each font.
 
-   [27]FcPatternBuild -- Create patterns from arguments
-
-   [28]FcPatternDel -- Delete a property from a pattern
-
-   [29]FcPatternRemove -- Remove one object of the specified type from the
-   pattern
-
-   [30]FcPatternIterStart -- Initialize the iterator with the first iterator
-   in the pattern
-
-   [31]FcPatternIterNext -- 
-
-   [32]FcPatternIterEqual -- Compare iterators
-
-   [33]FcPatternFindIter -- Set the iterator to point to the object in the
-   pattern
-
-   [34]FcPatternIterIsValid -- Check whether the iterator is valid or not
-
-   [35]FcPatternIterGetObject -- Returns an object name which the iterator
-   point to
-
-   [36]FcPatternIterValueCount -- Returns the number of the values which the
-   iterator point to
-
-   [37]FcPatternIterGetValue -- Returns a value which the iterator point to
-
-   [38]FcPatternPrint -- Print a pattern for debugging
-
-   [39]FcDefaultSubstitute -- Perform default substitutions in a pattern
-
-   [40]FcNameParse -- Parse a pattern string
-
-   [41]FcNameUnparse -- Convert a pattern back into a string that can be
-   parsed
-
-   [42]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.
 
-                               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.
 
-                               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.
+   Add another reference to p. Patterns are freed only when the
+   reference count reaches zero.
 
-                                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.
+   Decrement the pattern reference count. If all references are
+   gone, destroys the pattern, in the process destroying all
+   related values.
 
-                              FcPatternObjectCount
+FcPatternObjectCount
 
 Name
 
-   FcPatternObjectCount -- Returns the number of the object
+   FcPatternObjectCount -- Returns the number of the object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcPatternObjectCount(const FcPattern *p);
 
@@ -749,553 +756,552 @@ Since
 
    version 2.13.1
 
-                                 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.
 
-                              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.
+   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 *);
+   FcPattern * FcPatternFilter(FcPattern *p, const FcObjectSet
+   *os);
 
 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.
+   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.
 
-                                 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.
 
-                                  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.
 
-                                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.
 
-                               FcPatternAdd-Type
+FcPatternAdd-Type
 
 Name
 
    FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString,
    FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool,
-   FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange -- 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);
+   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. FcPatternAddRange are available since 2.11.91.
+   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.
 
-                            FcPatternGetWithBinding
+FcPatternGetWithBinding
 
 Name
 
-   FcPatternGetWithBinding -- Return a value with binding from a pattern
+   FcPatternGetWithBinding -- Return a value with binding from a
+   pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcResult FcPatternGetWithBinding(FcPattern *p, const char *object, int id,
-   FcValue *v, FcValueBinding *b);
+   FcResult FcPatternGetWithBinding(FcPattern *p, const char
+   *object, int id, FcValue *v, FcValueBinding *b);
 
 Description
 
-   Returns in v the id'th value and b binding for that 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.
+   Returns in v the id'th value and b binding for that 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.
 
 Since
 
    version 2.12.5
 
-                                  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.
+   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, FcPatternGetRange -- 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, FT_Face *f);
 
-   FcResult FcPatternGetLangSet(FcPattern *p, const char *object, int n,
-   FcLangSet **l);
+   FcResult FcPatternGetLangSet(FcPattern *p, const char *object,
+   int n, FcLangSet **l);
 
-   FcResult FcPatternGetRange(FcPattern *p, const char *object, int n,
-   FcRange **r);
+   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.
-   FcPatternGetRange are available since 2.11.91.
+   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.
 
-                                 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:
+   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.
+    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.
 
-    2. Object type, one of the FcType enumerated values
+   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);
 
-    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.
+   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.
 
-   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);
-
-   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.
+   Deletes all values associated with the property `object',
+   returning whether the property existed or not.
 
-                                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.
+   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.
 
-                               FcPatternIterStart
+FcPatternIterStart
 
 Name
 
-   FcPatternIterStart -- Initialize the iterator with the first iterator in
-   the pattern
+   FcPatternIterStart -- Initialize the iterator with the first
+   iterator in the pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcPatternIterStart(const FcPattern *p, FcPatternIter *iter);
+   void FcPatternIterStart(const FcPattern *p, FcPatternIter
+   *iter);
 
 Description
 
-   Initialize iter with the first iterator in p. If there are no objects in
-   p, iter will not have any valid data.
+   Initialize iter with the first iterator in p. If there are no
+   objects in p, iter will not have any valid data.
 
 Since
 
    version 2.13.1
 
-                               FcPatternIterNext
+FcPatternIterNext
 
 Name
 
-   FcPatternIterNext -- 
+   FcPatternIterNext --
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcPatternIterNext(const FcPattern *p, FcPatternIter *iter);
+   FcBool FcPatternIterNext(const FcPattern *p, FcPatternIter
+   *iter);
 
 Description
 
-   Set iter to point to the next object in p and returns FcTrue if iter has
-   been changed to the next object. returns FcFalse otherwise.
+   Set iter to point to the next object in p and returns FcTrue if
+   iter has been changed to the next object. returns FcFalse
+   otherwise.
 
 Since
 
    version 2.13.1
 
-                               FcPatternIterEqual
+FcPatternIterEqual
 
 Name
 
-   FcPatternIterEqual -- Compare iterators
+   FcPatternIterEqual -- Compare iterators
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcPatternIterEqual(const FcPattern *p1, FcPatternIter *i1, const
-   FcPattern *p2, FcPatternIter *i2);
+   FcBool FcPatternIterEqual(const FcPattern *p1, FcPatternIter
+   *i1, const FcPattern *p2, FcPatternIter *i2);
 
 Description
 
-   Return FcTrue if both i1 and i2 point to same object and contains same
-   values. return FcFalse otherwise.
+   Return FcTrue if both i1 and i2 point to same object and
+   contains same values. return FcFalse otherwise.
 
 Since
 
    version 2.13.1
 
-                               FcPatternFindIter
+FcPatternFindIter
 
 Name
 
-   FcPatternFindIter -- Set the iterator to point to the object in the
-   pattern
+   FcPatternFindIter -- Set the iterator to point to the object in
+   the pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcPatternFindIter(const FcPattern *p, FcPatternIter *iter, const
-   char *object);
+   FcBool FcPatternFindIter(const FcPattern *p, FcPatternIter
+   *iter, const char *object);
 
 Description
 
-   Set iter to point to object in p if any and returns FcTrue. returns
-   FcFalse otherwise.
+   Set iter to point to object in p if any and returns FcTrue.
+   returns FcFalse otherwise.
 
 Since
 
    version 2.13.1
 
-                              FcPatternIterIsValid
+FcPatternIterIsValid
 
 Name
 
-   FcPatternIterIsValid -- Check whether the iterator is valid or not
+   FcPatternIterIsValid -- Check whether the iterator is valid or
+   not
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcPatternIterIsValid(const FcPattern *p, FcPatternIter :iter);
+   FcBool FcPatternIterIsValid(const FcPattern *p, FcPatternIter
+   :iter);
 
 Description
 
-   Returns FcTrue if iter point to the valid entry in p. returns FcFalse
-   otherwise.
+   Returns FcTrue if iter point to the valid entry in p. returns
+   FcFalse otherwise.
 
 Since
 
    version 2.13.1
 
-                             FcPatternIterGetObject
+FcPatternIterGetObject
 
 Name
 
-   FcPatternIterGetObject -- Returns an object name which the iterator point
-   to
+   FcPatternIterGetObject -- Returns an object name which the
+   iterator point to
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   const char * FcPatternIterGetObject(const FcPattern *p, FcPatternIter
-   *iter);
+   const char * FcPatternIterGetObject(const FcPattern *p,
+   FcPatternIter *iter);
 
 Description
 
-   Returns an object name in p which iter point to. returns NULL if iter
-   isn't valid.
+   Returns an object name in p which iter point to. returns NULL
+   if iter isn't valid.
 
 Since
 
    version 2.13.1
 
-                            FcPatternIterValueCount
+FcPatternIterValueCount
 
 Name
 
-   FcPatternIterValueCount -- Returns the number of the values which the
-   iterator point to
+   FcPatternIterValueCount -- Returns the number of the values
+   which the iterator point to
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   int FcPatternIterValueCount(const FcPattern *p, FcPatternIter *iter);
+   int FcPatternIterValueCount(const FcPattern *p, FcPatternIter
+   *iter);
 
 Description
 
-   Returns the number of the values in the object which iter point to. if
-   iter isn't valid, returns 0.
+   Returns the number of the values in the object which iter point
+   to. if iter isn't valid, returns 0.
 
 Since
 
    version 2.13.1
 
-                             FcPatternIterGetValue
+FcPatternIterGetValue
 
 Name
 
-   FcPatternIterGetValue -- Returns a value which the iterator point to
+   FcPatternIterGetValue -- Returns a value which the iterator
+   point to
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcResult FcPatternIterGetValue(const FcPattern *p, FcPatternIter *iter,
-   intid, FcValue *v, FcValueBinding *b);
+   FcResult FcPatternIterGetValue(const FcPattern *p,
+   FcPatternIter *iter, intid, FcValue *v, FcValueBinding *b);
 
 Description
 
-   Returns in v the id'th value which iter point to. also binding to b if
-   given. The value returned is not a copy, but rather refers to the data
-   stored within the pattern directly. Applications must not free this value.
+   Returns in v the id'th value which iter point to. also binding
+   to b if given. The value returned is not a copy, but rather
+   refers to the data stored within the pattern directly.
+   Applications must not free this value.
 
 Since
 
    version 2.13.1
 
-                                 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.
+   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);
 
@@ -1303,297 +1309,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).
-
-                                  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.
 
-                                 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().
-
-                                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 2.9.0
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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
 
-   [43]FcFontSetCreate -- Create a font set
-
-   [44]FcFontSetDestroy -- Destroy a font set
-
-   [45]FcFontSetAdd -- Add to a font set
-
-   [46]FcFontSetList -- List fonts from a set of font sets
-
-   [47]FcFontSetMatch -- Return the best font from a set of font sets
-
-   [48]FcFontSetPrint -- Print a set of patterns to stdout
-
-   [49]FcFontSetSort -- Add to a font set
+   An FcFontSet simply holds a list of patterns; these are used to
+   return the results of listing available fonts.
 
-   [50]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);
 
@@ -1601,187 +1610,178 @@ Description
 
    Creates an empty font set.
 
-                                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.
+   Destroys a font set. Note that this destroys any referenced
+   patterns as well.
 
-                                  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.
+   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.
+   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.
+   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.
+   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);
+   FcFontSet * 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.
 
-                              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);
+   void FcFontSetSortDestroy(FcFontSet *set);
 
 Description
 
-   This function is DEPRECATED. FcFontSetSortDestroy destroys set by calling
-   FcFontSetDestroy. Applications should use FcFontSetDestroy directly
-   instead.
-
-   --------------------------------------------------------------------------
+   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
 
-   [51]FcObjectSetCreate -- Create an object set
+   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.
 
-   [52]FcObjectSetAdd -- Add to an object set
-
-   [53]FcObjectSetDestroy -- Destroy an object set
-
-   [54]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.
-
-                               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);
 
@@ -1789,35 +1789,33 @@ Description
 
    Creates an empty set.
 
-                                 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.
+   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.
 
-                               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);
 
@@ -1825,441 +1823,406 @@ Description
 
    Destroys an object set.
 
-                                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.
+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
 
-   [55]FcFreeTypeCharIndex -- map Unicode to glyph id
-
-   [56]FcFreeTypeCharSet -- compute Unicode coverage
+   FcFreeTypeQuery -- compute pattern from font file (and index)
+   FcFreeTypeQueryAll -- compute all patterns from font file (and
+          index)
 
-   [57]FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing
-   type
+   FcFreeTypeQueryFace -- compute pattern from FT_Face
 
-   [58]FcFreeTypeQuery -- compute pattern from font file (and index)
+   While the fontconfig library doesn't insist that FreeType be
+   used as the rasterization mechanism for fonts, it does provide
+   some convenience functions.
 
-   [59]FcFreeTypeQueryAll -- compute all patterns from font file (and index)
-
-   [60]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.
-
-                              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.
+   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.
-   FcBlanks is deprecated, blanks is ignored and accepted only for
-   compatibility with older code.
+   Scans a FreeType face and returns the set of encoded Unicode
+   chars. FcBlanks is deprecated, blanks is ignored and accepted
+   only for compatibility with older code.
 
-                          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.
-   FcBlanks is deprecated, blanks is ignored and accepted only for
-   compatibility with older code. 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.
+   Scans a FreeType face and returns the set of encoded Unicode
+   chars. FcBlanks is deprecated, blanks is ignored and accepted
+   only for compatibility with older code. 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.
 
-                                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 face in 'file'. The number of
-   faces in 'file' is returned in 'count'. FcBlanks is deprecated, blanks is
-   ignored and accepted only for compatibility with older code.
+   Constructs a pattern representing the 'id'th face in 'file'.
+   The number of faces in 'file' is returned in 'count'. FcBlanks
+   is deprecated, blanks is ignored and accepted only for
+   compatibility with older code.
 
-                               FcFreeTypeQueryAll
+FcFreeTypeQueryAll
 
 Name
 
-   FcFreeTypeQueryAll -- compute all patterns from font file (and index)
+   FcFreeTypeQueryAll -- compute all patterns from font file (and
+   index)
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
-   unsigned int FcFreeTypeQueryAll(const FcChar8 *file, int id, FcBlanks
-   *blanks, int *count, FcFontSet *set);
+   unsigned int FcFreeTypeQueryAll(const FcChar8 *file, int id,
+   FcBlanks *blanks, int *count, FcFontSet *set);
 
 Description
 
-   Constructs patterns found in 'file'. If id is -1, then all patterns found
-   in 'file' are added to 'set'. Otherwise, this function works exactly like
-   FcFreeTypeQuery(). The number of faces in 'file' is returned in 'count'.
-   The number of patterns added to 'set' is returned. FcBlanks is deprecated,
-   blanks is ignored and accepted only for compatibility with older code.
+   Constructs patterns found in 'file'. If id is -1, then all
+   patterns found in 'file' are added to 'set'. Otherwise, this
+   function works exactly like FcFreeTypeQuery(). The number of
+   faces in 'file' is returned in 'count'. The number of patterns
+   added to 'set' is returned. FcBlanks is deprecated, blanks is
+   ignored and accepted only for compatibility with older code.
 
 Since
 
    version 2.12.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).
-   FcBlanks is deprecated, blanks is ignored and accepted only for
-   compatibility with older code.
-
-   --------------------------------------------------------------------------
+   Constructs a pattern representing 'face'. 'file' and 'id' are
+   used solely as data for pattern elements (FC_FILE, FC_INDEX and
+   sometimes FC_FAMILY). FcBlanks is deprecated, blanks is ignored
+   and accepted only for compatibility with older code.
+     __________________________________________________________
 
-  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
 
-   [61]FcValueDestroy -- Free a value
-
-   [62]FcValueSave -- Copy a value
-
-   [63]FcValuePrint -- Print a value to stdout
-
-   [64]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.
 
-   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.
 
-                                  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.
 
-                                  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.
+   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.
 
-                                  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.
-
-   --------------------------------------------------------------------------
+   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.
+     __________________________________________________________
 
-  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
 
-   [65]FcCharSetCreate -- Create an empty character set
+   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
 
-   [66]FcCharSetDestroy -- Destroy a character set
+   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.
 
-   [67]FcCharSetAddChar -- Add a character to a charset
-
-   [68]FcCharSetDelChar -- Add a character to a charset
-
-   [69]FcCharSetCopy -- Copy a charset
-
-   [70]FcCharSetEqual -- Compare two charsets
-
-   [71]FcCharSetIntersect -- Intersect charsets
-
-   [72]FcCharSetUnion -- Add charsets
-
-   [73]FcCharSetSubtract -- Subtract charsets
-
-   [74]FcCharSetMerge -- Merge charsets
-
-   [75]FcCharSetHasChar -- Check a charset for a char
-
-   [76]FcCharSetCount -- Count entries in a charset
-
-   [77]FcCharSetIntersectCount -- Intersect and count charsets
-
-   [78]FcCharSetSubtractCount -- Subtract and count charsets
-
-   [79]FcCharSetIsSubset -- Test for charset inclusion
-
-   [80]FcCharSetFirstPage -- Start enumerating charset contents
-
-   [81]FcCharSetNextPage -- Continue enumerating charset contents
-
-   [82]FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
-
-   [83]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.
-
-                                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.
+   FcCharSetCreate allocates and initializes a new empty character
+   set object.
 
-                                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.
 
-                                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.
 
-                                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.
 
 Since
 
    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.
 
-                                 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);
 
@@ -2267,87 +2230,88 @@ Description
 
    Returns whether a and b contain the same set of Unicode chars.
 
-                               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.
 
-                                 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.
 
-                               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.
 
-                                 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.
 
-                                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);
 
@@ -2355,16 +2319,15 @@ Description
 
    Returns whether fcs contains the char ucs4.
 
-                                 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);
 
@@ -2372,203 +2335,185 @@ Description
 
    Returns the total number of Unicode chars in a.
 
-                            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.
 
-                             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.
 
-                               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.
 
-                               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 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
+   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
 
-0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+   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 exercise for the
+   reader ;).
 
-   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 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.
+   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.
 
-                               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.
+   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.
 
-                                  FcCharSetNew
+FcCharSetNew
 
 Name
 
-   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
+   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcCharSet * FcCharSetNew(void);
 
 Description
 
    FcCharSetNew is a DEPRECATED alias for FcCharSetCreate.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcLangSet
+FcLangSet
 
    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
 
-   [84]FcLangSetCreate -- create a langset object
-
-   [85]FcLangSetDestroy -- destroy a langset object
-
-   [86]FcLangSetCopy -- copy a langset object
-
-   [87]FcLangSetAdd -- add a language to a langset
-
-   [88]FcLangSetDel -- delete a language from a langset
-
-   [89]FcLangSetUnion -- Add langsets
-
-   [90]FcLangSetSubtract -- Subtract langsets
-
-   [91]FcLangSetCompare -- compare language sets
-
-   [92]FcLangSetContains -- check langset subset relation
-
-   [93]FcLangSetEqual -- test for matching langsets
-
-   [94]FcLangSetHash -- return a hash value for a langset
-
-   [95]FcLangSetHasLang -- test langset for language support
+   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.
 
-   [96]FcGetDefaultLangs -- Get the default languages list
-
-   [97]FcLangSetGetLangs -- get the list of languages in the langset
-
-   [98]FcGetLangs -- Get list of languages
-
-   [99]FcLangNormalize -- Normalize the language string
-
-   [100]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.
-
-                                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);
 
@@ -2576,261 +2521,258 @@ Description
 
    FcLangSetCreate creates a new FcLangSet object.
 
-                                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.
+   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.
+   FcLangSetCopy creates a new FcLangSet object and populates it
+   with the contents of ls.
 
-                                  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.
+   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.
 
 Since
 
    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.
 
 Since
 
    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.
 
 Since
 
    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.
+   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.
+   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.
+   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
+FcLangSetHasLang
 
 Name
 
-   FcLangSetHasLang -- test langset for language support
+   FcLangSetHasLang -- test langset for language support
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcLangResult FcLangSetHasLang(const FcLangSet *ls, const FcChar8 *lang);
+   FcLangResult FcLangSetHasLang(const FcLangSet *ls, const
+   FcChar8 *lang);
 
 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 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.
 
-                               FcGetDefaultLangs
+FcGetDefaultLangs
 
 Name
 
-   FcGetDefaultLangs -- Get the default languages list
+   FcGetDefaultLangs -- Get the default languages list
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrSet * FcGetDefaultLangs(void);
 
 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 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
 
    version 2.9.91
 
-                               FcLangSetGetLangs
+FcLangSetGetLangs
 
 Name
 
-   FcLangSetGetLangs -- get the list of languages in the langset
+   FcLangSetGetLangs -- get the list of languages in the langset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrSet * FcLangSetGetLangs(const FcLangSet *ls);
 
@@ -2838,16 +2780,15 @@ Description
 
    Returns a string set of all languages in langset.
 
-                                   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);
 
@@ -2855,16 +2796,15 @@ Description
 
    Returns a string set of all known languages.
 
-                                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);
 
@@ -2876,55 +2816,46 @@ Since
 
    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.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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
 
-   [101]FcMatrixInit -- initialize an FcMatrix structure
-
-   [102]FcMatrixCopy -- Copy a matrix
-
-   [103]FcMatrixEqual -- Compare two matrices
-
-   [104]FcMatrixMultiply -- Multiply matrices
-
-   [105]FcMatrixRotate -- Rotate a matrix
+   FcMatrix structures hold an affine transformation in matrix
+   form.
 
-   [106]FcMatrixScale -- Scale a matrix
-
-   [107]FcMatrixShear -- Shear a matrix
-
-   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);
 
@@ -2932,16 +2863,15 @@ Description
 
    FcMatrixInit initializes matrix to the identity matrix.
 
-                                  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);
 
@@ -2949,223 +2879,207 @@ Description
 
    FcMatrixCopy allocates a new FcMatrix and copies mat into it.
 
-                                 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.
 
-                                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.
+   FcMatrixMultiply multiplies matrix1 and matrix2 storing the
+   result in result.
 
-                                 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
 
-     cos -sin
-     sin  cos
-
-                                 FcMatrixScale
+FcMatrixScale
 
 Name
 
-   FcMatrixScale -- Scale a matrix
+   FcMatrixScale -- Scale a matrix
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
 
 Description
 
-   FcMatrixScale multiplies matrix x values by sx and y values by dy. This is
-   done by multiplying by the matrix:
+   FcMatrixScale multiplies matrix x values by sx and y values by
+   dy. This is done by multiplying by the matrix:
+   sx  0
+   0   dy
 
-      sx  0
-      0   dy
-
-                                 FcMatrixShear
+FcMatrixShear
 
 Name
 
-   FcMatrixShear -- Shear a matrix
+   FcMatrixShear -- Shear a matrix
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
 
 Description
 
-   FcMatrixShare shears matrix horizontally by sh and vertically by sv. This
-   is done by multiplying by the matrix:
-
-     1  sh
-     sv  1
+   FcMatrixShare shears matrix horizontally by sh and vertically
+   by sv. This is done by multiplying by the matrix:
+  1  sh
+  sv  1
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcRange
+FcRange
 
    Table of Contents
-
-   [108]FcRangeCopy -- Copy a range object
-
-   [109]FcRangeCreateDouble -- create a range object for double
-
-   [110]FcRangeCreateInteger -- create a range object for integer
-
-   [111]FcRangeDestroy -- destroy a range object
-
-   [112]FcRangeGetDouble -- Get the range in double
+   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
 
    An FcRange holds two variables to indicate a range in between.
 
-                                  FcRangeCopy
+FcRangeCopy
 
 Name
 
-   FcRangeCopy -- Copy a range object
+   FcRangeCopy -- Copy a range object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcRange * FcRangeCopy(const FcRange *range);
 
 Description
 
-   FcRangeCopy creates a new FcRange object and populates it with the
-   contents of range.
+   FcRangeCopy creates a new FcRange object and populates it with
+   the contents of range.
 
 Since
 
    version 2.11.91
 
-                              FcRangeCreateDouble
+FcRangeCreateDouble
 
 Name
 
-   FcRangeCreateDouble -- create a range object for double
+   FcRangeCreateDouble -- create a range object for double
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcRange * FcRangeCreateDouble(doublebegin, doubleend);
 
 Description
 
-   FcRangeCreateDouble creates a new FcRange object with double sized value.
+   FcRangeCreateDouble creates a new FcRange object with double
+   sized value.
 
 Since
 
    version 2.11.91
 
-                              FcRangeCreateInteger
+FcRangeCreateInteger
 
 Name
 
-   FcRangeCreateInteger -- create a range object for integer
+   FcRangeCreateInteger -- create a range object for integer
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcRange * FcRangeCreateInteger(intbegin, intend);
 
 Description
 
-   FcRangeCreateInteger creates a new FcRange object with integer sized
-   value.
+   FcRangeCreateInteger creates a new FcRange object with integer
+   sized value.
 
 Since
 
    version 2.11.91
 
-                                 FcRangeDestroy
+FcRangeDestroy
 
 Name
 
-   FcRangeDestroy -- destroy a range object
+   FcRangeDestroy -- destroy a range object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcRangeDestroy(FcRange *range);
 
 Description
 
-   FcRangeDestroy destroys a FcRange object, freeing all memory associated
-   with it.
+   FcRangeDestroy destroys a FcRange object, freeing all memory
+   associated with it.
 
 Since
 
    version 2.11.91
 
-                                FcRangeGetDouble
+FcRangeGetDouble
 
 Name
 
-   FcRangeGetDouble -- Get the range in double
+   FcRangeGetDouble -- Get the range in double
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcRangeGetDouble(const FcRange *range, double *begin, double *end);
+   FcBool FcRangeGetDouble(const FcRange *range, double *begin,
+   double *end);
 
 Description
 
@@ -3174,99 +3088,73 @@ Description
 Since
 
    version 2.11.91
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcConfig
+FcConfig
 
    Table of Contents
-
-   [113]FcConfigCreate -- Create a configuration
-
-   [114]FcConfigReference -- Increment config reference count
-
-   [115]FcConfigDestroy -- Destroy a configuration
-
-   [116]FcConfigSetCurrent -- Set configuration as default
-
-   [117]FcConfigGetCurrent -- Return current configuration
-
-   [118]FcConfigUptoDate -- Check timestamps on config files
-
-   [119]FcConfigHome -- return the current home directory.
-
-   [120]FcConfigEnableHome -- controls use of the home directory.
-
-   [121]FcConfigBuildFonts -- Build font database
-
-   [122]FcConfigGetConfigDirs -- Get config directories
-
-   [123]FcConfigGetFontDirs -- Get font directories
-
-   [124]FcConfigGetConfigFiles -- Get config files
-
-   [125]FcConfigGetCache -- DEPRECATED used to return per-user cache filename
-
-   [126]FcConfigGetCacheDirs -- return the list of directories searched for
-   cache files
-
-   [127]FcConfigGetFonts -- Get config font set
-
-   [128]FcConfigGetBlanks -- Get config blanks
-
-   [129]FcConfigGetRescanInterval -- Get config rescan interval
-
-   [130]FcConfigSetRescanInterval -- Set config rescan interval
-
-   [131]FcConfigAppFontAddFile -- Add font file to font database
-
-   [132]FcConfigAppFontAddDir -- Add fonts from directory to font database
-
-   [133]FcConfigAppFontClear -- Remove all app fonts from font database
-
-   [134]FcConfigSubstituteWithPat -- Execute substitutions
-
-   [135]FcConfigSubstitute -- Execute substitutions
-
-   [136]FcFontMatch -- Return best font
-
-   [137]FcFontSort -- Return list of matching fonts
-
-   [138]FcFontRenderPrepare -- Prepare pattern for loading font file
-
-   [139]FcFontList -- List fonts
-
-   [140]FcConfigFilename -- Find a config file
-
-   [141]FcConfigParseAndLoad -- load a configuration file
-
-   [142]FcConfigParseAndLoadFromMemory -- load a configuration from memory
-
-   [143]FcConfigGetSysRoot -- Obtain the system root directory
-
-   [144]FcConfigSetSysRoot -- Set the system root directory
-
-   [145]FcConfigFileInfoIterInit -- Initialize the iterator
-
-   [146]FcConfigFileInfoIterNext -- Set the iterator to point to the next
-   list
-
-   [147]FcConfigFileInfoIterGet -- Obtain the configuration file information
-
-   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>
-
+   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
+   FcConfigGetFilename -- Find a config file
+   FcConfigParseAndLoad -- load a configuration file
+   FcConfigParseAndLoadFromMemory -- load a configuration from
+          memory
+
+   FcConfigGetSysRoot -- Obtain the system root directory
+   FcConfigSetSysRoot -- Set the system root directory
+   FcConfigFileInfoIterInit -- Initialize the iterator
+   FcConfigFileInfoIterNext -- Set the iterator to point to the
+          next list
+
+   FcConfigFileInfoIterGet -- Obtain the configuration file
+          information
+
+   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);
 
@@ -3274,77 +3162,76 @@ Description
 
    Creates an empty configuration.
 
-                               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.
+   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.
 
-                                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.
+   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, and FcConfigReference() to inrease the
-   reference count in config since 2.12.0, returning FcFalse if that call
-   fails.
+   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.
 
-                               FcConfigGetCurrent
+FcConfigGetCurrent
 
 Name
 
-   FcConfigGetCurrent -- Return current configuration
+   FcConfigGetCurrent -- Return current configuration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcConfigGetCurrent(void);
 
@@ -3352,208 +3239,209 @@ Description
 
    Returns the current default configuration.
 
-                                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.
+   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.
 
-                                  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).
+   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.
+   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.
 
-                               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.
+   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.
+   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.
+   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.
+   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.
+   With fontconfig no longer using per-user cache files, this
+   function now simply returns NULL to indicate that no per-user
+   file exists.
 
-                              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.
+   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.
+   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.
+
+   This function isn't MT-safe. FcConfigReference must be called
+   before using this and then FcConfigDestroy when the return
+   value is no longer referenced.
 
-                               FcConfigGetBlanks
+FcConfigGetBlanks
 
 Name
 
-   FcConfigGetBlanks -- Get config blanks
+   FcConfigGetBlanks -- Get config blanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBlanks * FcConfigGetBlanks(FcConfig *config);
 
@@ -3561,740 +3449,794 @@ Description
 
    FcBlanks is deprecated. This function always returns NULL.
 
-                           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.
 
-                           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.
+   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.
 
-                             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 or no fonts found).
-   Otherwise returns FcTrue. If config is NULL, the current configuration is
-   used.
+   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.
+   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.
 
-                              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.
+   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.
+   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
+FcFontMatch
 
 Name
 
-   FcFontMatch -- Return best font
+   FcFontMatch -- Return best font
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcPattern * FcFontMatch(FcConfig *config, FcPattern *p, FcResult *result);
+   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.
+   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.
 
-                                   FcFontSort
+FcFontSort
 
 Name
 
-   FcFontSort -- Return list of matching fonts
+   FcFontSort -- Return list of matching fonts
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcFontSet * FcFontSort(FcConfig *config, FcPattern *p, FcBool trim,
-   FcCharSet **csp, FcResult *result);
+   FcFontSet * FcFontSort(FcConfig *config, FcPattern *p, FcBool
+   trim, FcCharSet **csp, FcResult *result);
 
 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.
+   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.
 
-   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.
+   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.
 
    The FcFontSet returned by FcFontSort is destroyed by calling
-   FcFontSetDestroy. If config is NULL, the current configuration is used.
+   FcFontSetDestroy. If config is NULL, the current configuration
+   is used.
 
-                              FcFontRenderPrepare
+FcFontRenderPrepare
 
 Name
 
-   FcFontRenderPrepare -- Prepare pattern for loading font file
+   FcFontRenderPrepare -- Prepare pattern for loading font file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcPattern * FcFontRenderPrepare(FcConfig *config, FcPattern *pat,
-   FcPattern *font);
+   FcPattern * FcFontRenderPrepare(FcConfig *config, FcPattern
+   *pat, FcPattern *font);
 
 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.
+   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.
 
-                                   FcFontList
+FcFontList
 
 Name
 
-   FcFontList -- List fonts
+   FcFontList -- List fonts
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcFontSet * FcFontList(FcConfig *config, FcPattern *p, FcObjectSet *os);
+   FcFontSet * FcFontList(FcConfig *config, FcPattern *p,
+   FcObjectSet *os);
 
 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.
+   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
+FcConfigFilename
 
 Name
 
-   FcConfigFilename -- Find a config file
+   FcConfigFilename -- Find a config file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcConfigFilename(const FcChar8 *name);
 
 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.
+   This function is deprecated and is replaced by
+   FcConfigGetFilename.
+
+FcConfigGetFilename
+
+Name
+
+   FcConfigGetFilename -- Find a config file
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+   FcChar8 * FcConfigGetFilename(FcConfig *config, const FcChar8
+   *name);
+
+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.
 
-   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
+   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.
 
-                              FcConfigParseAndLoad
+   The result of this function is affected by the
+   FONTCONFIG_SYSROOT environment variable or equivalent
+   functionality.
+
+FcConfigParseAndLoad
 
 Name
 
-   FcConfigParseAndLoad -- load a configuration file
+   FcConfigParseAndLoad -- load a configuration file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigParseAndLoad(FcConfig *config, const FcChar8 *file, FcBool
-   complain);
+   FcBool FcConfigParseAndLoad(FcConfig *config, const FcChar8
+   *file, FcBool complain);
 
 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.
+   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.
 
-                         FcConfigParseAndLoadFromMemory
+FcConfigParseAndLoadFromMemory
 
 Name
 
-   FcConfigParseAndLoadFromMemory -- load a configuration from memory
+   FcConfigParseAndLoadFromMemory -- load a configuration from
+   memory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigParseAndLoadFromMemory(FcConfig *config, const FcChar8
-   *buffer, FcBool complain);
+   FcBool FcConfigParseAndLoadFromMemory(FcConfig *config, const
+   FcChar8 *buffer, FcBool complain);
 
 Description
 
    Walks the configuration in 'memory' and constructs the internal
-   representation in 'config'. Any includes files referenced from within
-   'memory' will be loaded and dparsed. 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 fsome error occurred while
-   loading the file, either a parse error, semantic error or allocation
-   failure. Otherwise returns FcTrue.
+   representation in 'config'. Any includes files referenced from
+   within 'memory' will be loaded and dparsed. 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 fsome error occurred while loading the file, either
+   a parse error, semantic error or allocation failure. Otherwise
+   returns FcTrue.
 
 Since
 
    version 2.12.5
 
-                               FcConfigGetSysRoot
+FcConfigGetSysRoot
 
 Name
 
-   FcConfigGetSysRoot -- Obtain the system root directory
+   FcConfigGetSysRoot -- Obtain the system root directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    const FcChar8 * FcConfigGetSysRoot(const FcConfig *config);
 
 Description
 
-   Obtrains the system root directory in 'config' if available.
+   Obtains the system root directory in 'config' if available. All
+   files (including file properties in patterns) obtained from
+   this 'config' are relative to this system root directory.
+
+   This function isn't MT-safe. FcConfigReference must be called
+   before using this and then FcConfigDestroy when the return
+   value is no longer referenced.
 
 Since
 
    version 2.10.92
 
-                               FcConfigSetSysRoot
+FcConfigSetSysRoot
 
 Name
 
-   FcConfigSetSysRoot -- Set the system root directory
+   FcConfigSetSysRoot -- Set the system root directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcConfigSetSysRoot(FcConfig *config, const FcChar8 *sysroot);
+   void FcConfigSetSysRoot(FcConfig *config, const FcChar8
+   *sysroot);
 
 Description
 
-   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.
+   Set 'sysroot' as the system root directory. All file paths used
+   or created with this 'config' (including file properties in
+   patterns) will be considered or made relative to this
+   'sysroot'. This allows a host to generate caches for targets at
+   build time. This also allows a cache to be re-targeted to a
+   different base directory if 'FcConfigGetSysRoot' is used to
+   resolve file paths. When setting this on the current config
+   this causes changing current config (calls
+   FcConfigSetCurrent()).
 
 Since
 
    version 2.10.92
 
-                            FcConfigFileInfoIterInit
+FcConfigFileInfoIterInit
 
 Name
 
-   FcConfigFileInfoIterInit -- Initialize the iterator
+   FcConfigFileInfoIterInit -- Initialize the iterator
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   void FcConfigFileInfoIterInit(FcConfig *config, FcConfigFileInfoIter
-   *iter);
+   void FcConfigFileInfoIterInit(FcConfig *config,
+   FcConfigFileInfoIter *iter);
 
 Description
 
-   Initialize 'iter' with the first iterator in the config file information
-   list.
+   Initialize 'iter' with the first iterator in the config file
+   information list.
+
+   The config file information list is stored in numerical order
+   for filenames i.e. how fontconfig actually read them.
+
+   This function isn't MT-safe. FcConfigReference must be called
+   before using this and then FcConfigDestroy when the relevant
+   values are no longer referenced.
 
 Since
 
    version 2.12.91
 
-                            FcConfigFileInfoIterNext
+FcConfigFileInfoIterNext
 
 Name
 
-   FcConfigFileInfoIterNext -- Set the iterator to point to the next list
+   FcConfigFileInfoIterNext -- Set the iterator to point to the
+   next list
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcConfigFileInfoIterNext(FcConfig *config, FcConfigFileInfoIter
-   *iter);
+   FcBool FcConfigFileInfoIterNext(FcConfig *config,
+   FcConfigFileInfoIter *iter);
 
 Description
 
-   Set 'iter' to point to the next node in the config file information list.
-   If there is no next node, FcFalse is returned.
+   Set 'iter' to point to the next node in the config file
+   information list. If there is no next node, FcFalse is
+   returned.
+
+   This function isn't MT-safe. FcConfigReference must be called
+   before using FcConfigFileInfoIterInit and then FcConfigDestroy
+   when the relevant values are no longer referenced.
 
 Since
 
    version 2.12.91
 
-                            FcConfigFileInfoIterGet
+FcConfigFileInfoIterGet
 
 Name
 
-   FcConfigFileInfoIterGet -- Obtain the configuration file information
+   FcConfigFileInfoIterGet -- Obtain the configuration file
+   information
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigFileInfoIterGet(FcConfig *config, FcConfigFileInfoIter
-   *iter, FcChar8 **name, FcChar8 **description, FcBool *enabled);
+   FcBool FcConfigFileInfoIterGet(FcConfig *config,
+   FcConfigFileInfoIter *iter, FcChar8 **name, FcChar8
+   **description, FcBool *enabled);
 
 Description
 
-   Obtain the filename, the description and the flag whether it is enabled or
-   not for 'iter' where points to current configuration file information. If
-   the iterator is invalid, FcFalse is returned.
+   Obtain the filename, the description and the flag whether it is
+   enabled or not for 'iter' where points to current configuration
+   file information. If the iterator is invalid, FcFalse is
+   returned.
+
+   This function isn't MT-safe. FcConfigReference must be called
+   before using FcConfigFileInfoIterInit and then FcConfigDestroy
+   when the relevant values are no longer referenced.
 
 Since
 
    version 2.12.91
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcObjectType
+FcObjectType
 
    Table of Contents
+   FcNameRegisterObjectTypes -- Register object types
+   FcNameUnregisterObjectTypes -- Unregister object types
+   FcNameGetObjectType -- Lookup an object type
 
-   [148]FcNameRegisterObjectTypes -- Register object types
+   Provides for application-specified font name object types so
+   that new pattern elements can be generated from font names.
 
-   [149]FcNameUnregisterObjectTypes -- Unregister object types
-
-   [150]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
+FcNameRegisterObjectTypes
 
 Name
 
-   FcNameRegisterObjectTypes -- Register object types
+   FcNameRegisterObjectTypes -- Register object types
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int ntype);
+   FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int
+   ntype);
 
 Description
 
    Deprecated. Does nothing. Returns FcFalse.
 
-                          FcNameUnregisterObjectTypes
+FcNameUnregisterObjectTypes
 
 Name
 
-   FcNameUnregisterObjectTypes -- Unregister object types
+   FcNameUnregisterObjectTypes -- Unregister object types
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcNameUnregisterObjectTypes(const FcObjectType *types, int ntype);
+   FcBool FcNameUnregisterObjectTypes(const FcObjectType *types,
+   int ntype);
 
 Description
 
    Deprecated. Does nothing. Returns FcFalse.
 
-                              FcNameGetObjectType
+FcNameGetObjectType
 
 Name
 
-   FcNameGetObjectType -- Lookup an object type
+   FcNameGetObjectType -- Lookup an object type
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    const FcObjectType * FcNameGetObjectType(const char *object);
 
 Description
 
    Return the object type for the pattern element named object.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcConstant
+FcConstant
 
    Table of Contents
+   FcNameRegisterConstants -- Register symbolic constants
+   FcNameUnregisterConstants -- Unregister symbolic constants
+   FcNameGetConstant -- Lookup symbolic constant
+   FcNameGetConstantFor -- Lookup symbolic constant For object
+   FcNameConstant -- Get the value for a symbolic constant
+
+   Provides for application-specified symbolic constants for font
+   names.
+
+FcNameRegisterConstants
+
+Name
+
+   FcNameRegisterConstants -- Register symbolic constants
 
-   [151]FcNameRegisterConstants -- Register symbolic constants
+Synopsis
 
-   [152]FcNameUnregisterConstants -- Unregister symbolic constants
+#include <fontconfig/fontconfig.h>
 
-   [153]FcNameGetConstant -- Lookup symbolic constant
+   FcBool FcNameRegisterConstants(const FcConstant *consts, int
+   nconsts);
 
-   [154]FcNameConstant -- Get the value for a symbolic constant
+Description
 
-   Provides for application-specified symbolic constants for font names.
+   Deprecated. Does nothing. Returns FcFalse.
 
-                            FcNameRegisterConstants
+FcNameUnregisterConstants
 
 Name
 
-   FcNameRegisterConstants -- Register symbolic constants
+   FcNameUnregisterConstants -- Unregister symbolic constants
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcNameRegisterConstants(const FcConstant *consts, int nconsts);
+   FcBool FcNameUnregisterConstants(const FcConstant *consts, int
+   nconsts);
 
 Description
 
    Deprecated. Does nothing. Returns FcFalse.
 
-                           FcNameUnregisterConstants
+FcNameGetConstant
 
 Name
 
-   FcNameUnregisterConstants -- Unregister symbolic constants
+   FcNameGetConstant -- Lookup symbolic constant
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcNameUnregisterConstants(const FcConstant *consts, int nconsts);
+   const FcConstant * FcNameGetConstant(FcChar8 *string);
 
 Description
 
-   Deprecated. Does nothing. Returns FcFalse.
+   Return the FcConstant structure related to symbolic constant
+   string.
 
-                               FcNameGetConstant
+FcNameGetConstantFor
 
 Name
 
-   FcNameGetConstant -- Lookup symbolic constant
+   FcNameGetConstantFor -- Lookup symbolic constant For object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   const FcConstant * FcNameGetConstant(FcChar8 *string);
+   const FcConstant * FcNameGetConstantFor(FcChar8 *string, char
+   *object);
 
 Description
 
-   Return the FcConstant structure related to symbolic constant string.
+   Return the FcConstant structure related to symbolic constant
+   string for object.
 
-                                 FcNameConstant
+FcNameConstant
 
 Name
 
-   FcNameConstant -- Get the value for a symbolic constant
+   FcNameConstant -- Get the value for a symbolic constant
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcNameConstant(FcChar8 *string, int *result);
 
 Description
 
-   Returns whether a symbolic constant with name string is registered,
-   placing the value of the constant in result if present.
+   Returns whether a symbolic constant with name string is
+   registered, placing the value of the constant in result if
+   present.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcWeight
+FcWeight
 
    Table of Contents
+   FcWeightFromOpenTypeDouble -- Convert from OpenType weight
+          values to fontconfig ones
 
-   [155]FcWeightFromOpenTypeDouble -- Convert from OpenType weight values to
-   fontconfig ones
-
-   [156]FcWeightToOpenTypeDouble -- Convert from fontconfig weight values to
-   OpenType ones
+   FcWeightToOpenTypeDouble -- Convert from fontconfig weight
+          values to OpenType ones
 
-   [157]FcWeightFromOpenType -- Convert from OpenType weight values to
-   fontconfig ones
+   FcWeightFromOpenType -- Convert from OpenType weight values to
+          fontconfig ones
 
-   [158]FcWeightToOpenType -- Convert from fontconfig weight values to
-   OpenType ones
+   FcWeightToOpenType -- Convert from fontconfig weight values to
+          OpenType ones
 
    Maps weights to and from OpenType weights.
 
-                           FcWeightFromOpenTypeDouble
+FcWeightFromOpenTypeDouble
 
 Name
 
-   FcWeightFromOpenTypeDouble -- Convert from OpenType weight values to
-   fontconfig ones
+   FcWeightFromOpenTypeDouble -- Convert from OpenType weight
+   values to fontconfig ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    double FcWeightFromOpenTypeDouble(doubleot_weight);
 
 Description
 
-   FcWeightFromOpenTypeDouble returns an double value to use with FC_WEIGHT,
-   from an double 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 doubleerpolates between various
-   FC_WEIGHT_* constants. As such, the returned value does not necessarily
-   match any of the predefined constants.
+   FcWeightFromOpenTypeDouble returns an double value to use with
+   FC_WEIGHT, from an double 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
 
    version 2.12.92
 
-                            FcWeightToOpenTypeDouble
+FcWeightToOpenTypeDouble
 
 Name
 
-   FcWeightToOpenTypeDouble -- Convert from fontconfig weight values to
-   OpenType ones
+   FcWeightToOpenTypeDouble -- Convert from fontconfig weight
+   values to OpenType ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    double FcWeightToOpenTypeDouble(doubleot_weight);
 
 Description
 
-   FcWeightToOpenTypeDouble 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.
+   FcWeightToOpenTypeDouble 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.
 
 Since
 
    version 2.12.92
 
-                              FcWeightFromOpenType
+FcWeightFromOpenType
 
 Name
 
-   FcWeightFromOpenType -- Convert from OpenType weight values to fontconfig
-   ones
+   FcWeightFromOpenType -- Convert from OpenType weight values to
+   fontconfig ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcWeightFromOpenType(intot_weight);
 
 Description
 
-   FcWeightFromOpenType is like FcWeightFromOpenTypeDouble but with integer
-   arguments. Use the other function instead.
+   FcWeightFromOpenType is like FcWeightFromOpenTypeDouble but
+   with integer arguments. Use the other function instead.
 
 Since
 
    version 2.11.91
 
-                               FcWeightToOpenType
+FcWeightToOpenType
 
 Name
 
-   FcWeightToOpenType -- Convert from fontconfig weight values to OpenType
-   ones
+   FcWeightToOpenType -- Convert from fontconfig weight values to
+   OpenType ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcWeightToOpenType(intot_weight);
 
 Description
 
-   FcWeightToOpenType is like FcWeightToOpenTypeDouble but with integer
-   arguments. Use the other function instead.
+   FcWeightToOpenType is like FcWeightToOpenTypeDouble but with
+   integer arguments. Use the other function instead.
 
 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
 
-   [159]FcBlanksCreate -- Create an FcBlanks
-
-   [160]FcBlanksDestroy -- Destroy and FcBlanks
-
-   [161]FcBlanksAdd -- Add a character to an FcBlanks
-
-   [162]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.
 
-   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.
+   FcBlanks is deprecated and should not be used in newly written
+   code. It is still accepted by some functions for compatibility
+   with older code but will be removed in the future.
 
-   FcBlanks is deprecated and should not be used in newly written code. It is
-   still accepted by some functions for compatibility with older code but
-   will be removed in the future.
-
-                                 FcBlanksCreate
+FcBlanksCreate
 
 Name
 
-   FcBlanksCreate -- Create an FcBlanks
+   FcBlanksCreate -- Create an FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBlanks * FcBlanksCreate(void);
 
@@ -4302,16 +4244,15 @@ Description
 
    FcBlanks is deprecated. This function always returns NULL.
 
-                                FcBlanksDestroy
+FcBlanksDestroy
 
 Name
 
-   FcBlanksDestroy -- Destroy and FcBlanks
+   FcBlanksDestroy -- Destroy and FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcBlanksDestroy(FcBlanks *b);
 
@@ -4319,16 +4260,15 @@ Description
 
    FcBlanks is deprecated. This function does nothing.
 
-                                  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);
 
@@ -4336,117 +4276,104 @@ Description
 
    FcBlanks is deprecated. This function always returns FALSE.
 
-                                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
 
    FcBlanks is deprecated. This function always returns FALSE.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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
 
-   [163]FcAtomicCreate -- create an FcAtomic object
-
-   [164]FcAtomicLock -- lock a file
-
-   [165]FcAtomicNewFile -- return new temporary file name
-
-   [166]FcAtomicOrigFile -- return original file name
-
-   [167]FcAtomicReplaceOrig -- replace original with new
-
-   [168]FcAtomicDeleteNew -- delete new file
-
-   [169]FcAtomicUnlock -- unlock a 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.
 
-   [170]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.
 
-                                  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.
+   Attempts to lock the file referenced by atomic. Returns FcFalse
+   if the file is already locked, else returns FcTrue and leaves
+   the file locked.
 
-                                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.
+   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);
 
@@ -4454,52 +4381,50 @@ Description
 
    Returns the file referenced by atomic.
 
-                              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.
 
-                               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.
+   Deletes the new file. Used in error recovery to back out
+   changes.
 
-                                 FcAtomicUnlock
+FcAtomicUnlock
 
 Name
 
-   FcAtomicUnlock -- unlock a file
+   FcAtomicUnlock -- unlock a file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcAtomicUnlock(FcAtomic *atomic);
 
@@ -4507,368 +4432,346 @@ Description
 
    Unlocks the file.
 
-                                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.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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
 
-   [171]FcFileScan -- scan a font file
-
-   [172]FcFileIsDir -- check whether a file is a directory
-
-   [173]FcDirScan -- scan a font directory without caching it
-
-   [174]FcDirSave -- DEPRECATED: formerly used to save a directory cache
-
-   [175]FcDirCacheUnlink -- Remove all caches related to dir
-
-   [176]FcDirCacheValid -- check directory cache
+   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
 
-   [177]FcDirCacheLoad -- load a directory cache
+   These routines work with font files and directories, including
+   font directory cache files.
 
-   [178]FcDirCacheRescan -- Re-scan a directory cache
-
-   [179]FcDirCacheRead -- read or construct a directory cache
-
-   [180]FcDirCacheLoadFile -- load a cache file
-
-   [181]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.
+   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.
+   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.
+   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.
 
-                                   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.
 
-                                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.
+   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.
 
-                                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
+   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.
+   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.
 
-                                FcDirCacheRescan
+FcDirCacheRescan
 
 Name
 
-   FcDirCacheRescan -- Re-scan a directory cache
+   FcDirCacheRescan -- Re-scan a directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCache * FcDirCacheRescan(const FcChar8 *dir, FcConfig *config);
+   FcCache * FcDirCacheRescan(const FcChar8 *dir, FcConfig
+   *config);
 
 Description
 
-   Re-scan directories only at dir and update the cache. returns NULL if
-   failed.
+   Re-scan directories only at dir and update the cache. returns
+   NULL if failed.
 
 Since
 
    version 2.11.1
 
-                                 FcDirCacheRead
+FcDirCacheRead
 
 Name
 
-   FcDirCacheRead -- read or construct a directory cache
+   FcDirCacheRead -- read or construct a directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force, FcConfig
-   *config);
+   FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force,
+   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.
+   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.
 
-                               FcDirCacheLoadFile
+FcDirCacheLoadFile
 
 Name
 
-   FcDirCacheLoadFile -- load a cache file
+   FcDirCacheLoadFile -- load a cache file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct stat
-   *file_stat);
+   FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct
+   stat *file_stat);
 
 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.
+   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.
 
-                                FcDirCacheUnload
+FcDirCacheUnload
 
 Name
 
-   FcDirCacheUnload -- unload a cache file
+   FcDirCacheUnload -- unload a cache file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcDirCacheUnload(FcCache *cache);
 
 Description
 
-   This function dereferences cache. When no other references to it remain,
-   all memory associated with the cache will be freed.
-
-   --------------------------------------------------------------------------
+   This function dereferences cache. When no other references to
+   it remain, all memory associated with the cache will be freed.
+     __________________________________________________________
 
-  FcCache routines
+FcCache routines
 
    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.
 
-   [182]FcCacheDir -- Return directory of cache
-
-   [183]FcCacheCopySet -- Returns a copy of the fontset from cache
-
-   [184]FcCacheSubdir -- Return the i'th subdirectory.
-
-   [185]FcCacheNumSubdir -- Return the number of subdirectories in cache.
-
-   [186]FcCacheNumFont -- Returns the number of fonts in cache.
+   FcCacheNumFont -- Returns the number of fonts in cache.
+   FcDirCacheClean -- Clean up a cache directory
+   FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
+   FcDirCacheCreateUUID -- Create .uuid file at a directory
+   FcDirCacheDeleteUUID -- Delete .uuid file
 
-   [187]FcDirCacheClean -- Clean up a 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.
 
-   [188]FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
-
-   [189]FcDirCacheCreateUUID -- Create .uuid file at a directory
-
-   [190]FcDirCacheDeleteUUID -- Delete .uuid file
-
-   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.
 
-                                 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.
+   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.
 
-                                 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.
+   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);
 
@@ -4876,154 +4779,139 @@ Description
 
    This returns the total number of subdirectories in the cache.
 
-                                 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.
 
-                                FcDirCacheClean
+FcDirCacheClean
 
 Name
 
-   FcDirCacheClean -- Clean up a cache directory
+   FcDirCacheClean -- Clean up a cache directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcDirCacheClean(const FcChar8 *cache_dir, FcBoolverbose);
+   FcBool FcDirCacheClean(const FcChar8 *cache_dir,
+   FcBoolverbose);
 
 Description
 
-   This tries to clean up the cache directory of cache_dir. This returns
-   FcTrue if the operation is successfully complete. otherwise FcFalse.
+   This tries to clean up the cache directory of cache_dir. This
+   returns FcTrue if the operation is successfully complete.
+   otherwise FcFalse.
 
 Since
 
    version 2.9.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.
 
 Since
 
    version 2.9.91
 
-                              FcDirCacheCreateUUID
+FcDirCacheCreateUUID
 
 Name
 
-   FcDirCacheCreateUUID -- Create .uuid file at a directory
+   FcDirCacheCreateUUID -- Create .uuid file at a directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcDirCacheCreateUUID(FcChar8 *dir, FcBoolforce, FcConfig *config);
+   FcBool FcDirCacheCreateUUID(FcChar8 *dir, FcBoolforce, FcConfig
+   *config);
 
 Description
 
-   This is to create .uuid file containing an UUID at a font directory of
-   dir. The UUID will be used to identify the font directory and is used to
-   determine the cache filename if available.
+   This function is deprecated. it doesn't take any effects.
 
 Since
 
    version 2.12.92
 
-                              FcDirCacheDeleteUUID
+FcDirCacheDeleteUUID
 
 Name
 
-   FcDirCacheDeleteUUID -- Delete .uuid file
+   FcDirCacheDeleteUUID -- Delete .uuid file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcDirCacheDeleteUUID(const FcChar8 *dir, FcConfig *config);
+   FcBool FcDirCacheDeleteUUID(const FcChar8 *dir, FcConfig
+   *config);
 
 Description
 
-   This is to delete .uuid file containing an UUID at a font directory of
-   dir.
+   This is to delete .uuid file containing an UUID at a font
+   directory of dir.
 
 Since
 
    version 2.13.1
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  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
 
-   [191]FcStrSetCreate -- create a string set
-
-   [192]FcStrSetMember -- check set for membership
-
-   [193]FcStrSetEqual -- check sets for equality
-
-   [194]FcStrSetAdd -- add to a string set
-
-   [195]FcStrSetAddFilename -- add a filename to a string set
-
-   [196]FcStrSetDel -- delete from a string set
-
-   [197]FcStrSetDestroy -- destroy a string set
-
-   [198]FcStrListCreate -- create a string iterator
-
-   [199]FcStrListFirst -- get first string in iteration
+   A data structure for enumerating strings, used to list
+   directories while scanning the configuration as directories are
+   added while scanning.
 
-   [200]FcStrListNext -- get next string in iteration
-
-   [201]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);
 
@@ -5031,16 +4919,15 @@ Description
 
    Create an empty set.
 
-                                 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);
 
@@ -5048,34 +4935,33 @@ Description
 
    Returns whether s is a member of set.
 
-                                 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.
 
-                                  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);
 
@@ -5083,52 +4969,50 @@ Description
 
    Adds a copy of s to set.
 
-                              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.
+   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.
+   Removes s from set, returning FcTrue if s was a member else
+   FcFalse.
 
-                                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);
 
@@ -5136,16 +5020,15 @@ Description
 
    Destroys set.
 
-                                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);
 
@@ -5153,16 +5036,15 @@ Description
 
    Creates an iterator to list the strings in set.
 
-                                 FcStrListFirst
+FcStrListFirst
 
 Name
 
-   FcStrListFirst -- get first string in iteration
+   FcStrListFirst -- get first string in iteration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcStrListFirst(FcStrList *list);
 
@@ -5174,16 +5056,15 @@ Since
 
    version 2.11.0
 
-                                 FcStrListNext
+FcStrListNext
 
 Name
 
-   FcStrListNext -- get next string in iteration
+   FcStrListNext -- get next string in iteration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrListNext(FcStrList *list);
 
@@ -5191,178 +5072,158 @@ Description
 
    Returns the next string in list.
 
-                                 FcStrListDone
+FcStrListDone
 
 Name
 
-   FcStrListDone -- destroy a string iterator
+   FcStrListDone -- destroy a string iterator
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcStrListDone(FcStrList *list);
 
 Description
 
    Destroys the enumerator list.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  String utilities
+String utilities
 
    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 case
+   FcStrPlus -- concatenate two strings
+   FcStrFree -- free a string
+   FcStrBuildFilename -- Concatenate strings as a file path
+   FcStrDirname -- directory part of filename
+   FcStrBasename -- last component of filename
 
-   [202]FcUtf8ToUcs4 -- convert UTF-8 to UCS4
-
-   [203]FcUcs4ToUtf8 -- convert UCS4 to UTF-8
-
-   [204]FcUtf8Len -- count UTF-8 encoded chars
-
-   [205]FcUtf16ToUcs4 -- convert UTF-16 to UCS4
-
-   [206]FcUtf16Len -- count UTF-16 encoded chars
-
-   [207]FcIsLower -- check for lower case ASCII character
-
-   [208]FcIsUpper -- check for upper case ASCII character
-
-   [209]FcToLower -- convert upper case ASCII to lower case
-
-   [210]FcStrCopy -- duplicate a string
-
-   [211]FcStrDowncase -- create a lower case translation of a string
-
-   [212]FcStrCopyFilename -- create a complete path from a filename
-
-   [213]FcStrCmp -- compare UTF-8 strings
-
-   [214]FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
-
-   [215]FcStrStr -- locate UTF-8 substring
-
-   [216]FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
-
-   [217]FcStrPlus -- concatenate two strings
-
-   [218]FcStrFree -- free a string
-
-   [219]FcStrDirname -- directory part 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.
 
-   [220]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.
-
-                                  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.
 
-                                  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.
+   Converts the Unicode char from src into dst and returns the
+   number of bytes needed to encode the char.
 
-                                   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.
+   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.
 
-                                 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.
+   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.
+   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);
 
@@ -5370,16 +5231,15 @@ Description
 
    This macro checks whether c is an lower case ASCII letter.
 
-                                   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);
 
@@ -5387,93 +5247,91 @@ Description
 
    This macro checks whether c is a upper case ASCII letter.
 
-                                   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.
+   This macro converts upper case ASCII c to the equivalent lower
+   case letter.
 
-                                   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.
+   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.
+   Allocates memory, copies s, converting upper case letters to
+   lower case and returns the allocated buffer.
 
-                               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).
 
-                                    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);
 
@@ -5481,354 +5339,146 @@ Description
 
    Returns the usual <0, 0, >0 result of comparing s1 and s2.
 
-                               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.
+   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.
+   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.
 
-                               FcStrStrIgnoreCase
+FcStrStrIgnoreCase
 
 Name
 
-   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
+   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring 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.
 
-                                   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.
+   This function allocates new storage and places the
+   concatenation of s1 and s2 there, returning the new string.
 
-                                   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.
+   This is just a wrapper around free(3) which helps track memory
+   usage of strings within the fontconfig library.
 
-                                  FcStrDirname
+FcStrBuildFilename
 
 Name
 
-   FcStrDirname -- directory part of filename
+   FcStrBuildFilename -- Concatenate strings as a file path
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
+
+   FcChar8 * FcStrBuildFilename(const FcChar8 *path, ...);
+
+Description
+
+   Creates a filename from the given elements of strings as file
+   paths and concatenate them with the appropriate file separator.
+   Arguments must be null-terminated. This returns a
+   newly-allocated memory which should be freed when no longer
+   needed.
+
+FcStrDirname
+
+Name
+
+   FcStrDirname -- directory part of filename
+
+Synopsis
 
+#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.
+   Returns the directory containing file. This is returned in
+   newly allocated storage which should be freed when no longer
+   needed.
 
-                                 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.
-
-References
-
-   Visible links
-   1. file:///tmp/html-am902r#AEN16
-   2. file:///tmp/html-am902r#AEN19
-   3. file:///tmp/html-am902r#AEN31
-   4. file:///tmp/html-am902r#AEN103
-   5. file:///tmp/html-am902r#FCINITLOADCONFIG
-   6. file:///tmp/html-am902r#FCINITLOADCONFIGANDFONTS
-   7. file:///tmp/html-am902r#FCINIT
-   8. file:///tmp/html-am902r#FCFINI
-   9. file:///tmp/html-am902r#FCGETVERSION
-  10. file:///tmp/html-am902r#FCINITREINITIALIZE
-  11. file:///tmp/html-am902r#FCINITBRINGUPTODATE
-  12. file:///tmp/html-am902r#FCPATTERNCREATE
-  13. file:///tmp/html-am902r#FCPATTERNDUPLICATE
-  14. file:///tmp/html-am902r#FCPATTERNREFERENCE
-  15. file:///tmp/html-am902r#FCPATTERNDESTROY
-  16. file:///tmp/html-am902r#FCPATTERNOBJECTCOUNT
-  17. file:///tmp/html-am902r#FCPATTERNEQUAL
-  18. file:///tmp/html-am902r#FCPATTERNEQUALSUBSET
-  19. file:///tmp/html-am902r#FCPATTERNFILTER
-  20. file:///tmp/html-am902r#FCPATTERNHASH
-  21. file:///tmp/html-am902r#FCPATTERNADD
-  22. file:///tmp/html-am902r#FCPATTERNADDWEAK
-  23. file:///tmp/html-am902r#FCPATTERNADD-TYPE
-  24. file:///tmp/html-am902r#FCPATTERNGETWITHBINDING
-  25. file:///tmp/html-am902r#FCPATTERNGET
-  26. file:///tmp/html-am902r#FCPATTERNGET-TYPE
-  27. file:///tmp/html-am902r#FCPATTERNBUILD
-  28. file:///tmp/html-am902r#FCPATTERNDEL
-  29. file:///tmp/html-am902r#FCPATTERNREMOVE
-  30. file:///tmp/html-am902r#FCPATTERNITERSTART
-  31. file:///tmp/html-am902r#FCPATTERNITERNEXT
-  32. file:///tmp/html-am902r#FCPATTERNITEREQUAL
-  33. file:///tmp/html-am902r#FCPATTERNFINDITER
-  34. file:///tmp/html-am902r#FCPATTERNITERISVALID
-  35. file:///tmp/html-am902r#FCPATTERNITERGETOBJECT
-  36. file:///tmp/html-am902r#FCPATTERNITERVALUECOUNT
-  37. file:///tmp/html-am902r#FCPATTERNITERGETVALUE
-  38. file:///tmp/html-am902r#FCPATTERNPRINT
-  39. file:///tmp/html-am902r#FCDEFAULTSUBSTITUTE
-  40. file:///tmp/html-am902r#FCNAMEPARSE
-  41. file:///tmp/html-am902r#FCNAMEUNPARSE
-  42. file:///tmp/html-am902r#FCPATTERNFORMAT
-  43. file:///tmp/html-am902r#FCFONTSETCREATE
-  44. file:///tmp/html-am902r#FCFONTSETDESTROY
-  45. file:///tmp/html-am902r#FCFONTSETADD
-  46. file:///tmp/html-am902r#FCFONTSETLIST
-  47. file:///tmp/html-am902r#FCFONTSETMATCH
-  48. file:///tmp/html-am902r#FCFONTSETPRINT
-  49. file:///tmp/html-am902r#FCFONTSETSORT
-  50. file:///tmp/html-am902r#FCFONTSETSORTDESTROY
-  51. file:///tmp/html-am902r#FCOBJECTSETCREATE
-  52. file:///tmp/html-am902r#FCOBJECTSETADD
-  53. file:///tmp/html-am902r#FCOBJECTSETDESTROY
-  54. file:///tmp/html-am902r#FCOBJECTSETBUILD
-  55. file:///tmp/html-am902r#FCFREETYPECHARINDEX
-  56. file:///tmp/html-am902r#FCFREETYPECHARSET
-  57. file:///tmp/html-am902r#FCFREETYPECHARSETANDSPACING
-  58. file:///tmp/html-am902r#FCFREETYPEQUERY
-  59. file:///tmp/html-am902r#FCFREETYPEQUERYALL
-  60. file:///tmp/html-am902r#FCFREETYPEQUERYFACE
-  61. file:///tmp/html-am902r#FCVALUEDESTROY
-  62. file:///tmp/html-am902r#FCVALUESAVE
-  63. file:///tmp/html-am902r#FCVALUEPRINT
-  64. file:///tmp/html-am902r#FCVALUEEQUAL
-  65. file:///tmp/html-am902r#FCCHARSETCREATE
-  66. file:///tmp/html-am902r#FCCHARSETDESTROY
-  67. file:///tmp/html-am902r#FCCHARSETADDCHAR
-  68. file:///tmp/html-am902r#FCCHARSETDELCHAR
-  69. file:///tmp/html-am902r#FCCHARSETCOPY
-  70. file:///tmp/html-am902r#FCCHARSETEQUAL
-  71. file:///tmp/html-am902r#FCCHARSETINTERSECT
-  72. file:///tmp/html-am902r#FCCHARSETUNION
-  73. file:///tmp/html-am902r#FCCHARSETSUBTRACT
-  74. file:///tmp/html-am902r#FCCHARSETMERGE
-  75. file:///tmp/html-am902r#FCCHARSETHASCHAR
-  76. file:///tmp/html-am902r#FCCHARSETCOUNT
-  77. file:///tmp/html-am902r#FCCHARSETINTERSECTCOUNT
-  78. file:///tmp/html-am902r#FCCHARSETSUBTRACTCOUNT
-  79. file:///tmp/html-am902r#FCCHARSETISSUBSET
-  80. file:///tmp/html-am902r#FCCHARSETFIRSTPAGE
-  81. file:///tmp/html-am902r#FCCHARSETNEXTPAGE
-  82. file:///tmp/html-am902r#FCCHARSETCOVERAGE
-  83. file:///tmp/html-am902r#FCCHARSETNEW
-  84. file:///tmp/html-am902r#FCLANGSETCREATE
-  85. file:///tmp/html-am902r#FCLANGSETDESTROY
-  86. file:///tmp/html-am902r#FCLANGSETCOPY
-  87. file:///tmp/html-am902r#FCLANGSETADD
-  88. file:///tmp/html-am902r#FCLANGSETDEL
-  89. file:///tmp/html-am902r#FCLANGSETUNION
-  90. file:///tmp/html-am902r#FCLANGSETSUBTRACT
-  91. file:///tmp/html-am902r#FCLANGSETCOMPARE
-  92. file:///tmp/html-am902r#FCLANGSETCONTAINS
-  93. file:///tmp/html-am902r#FCLANGSETEQUAL
-  94. file:///tmp/html-am902r#FCLANGSETHASH
-  95. file:///tmp/html-am902r#FCLANGSETHASLANG
-  96. file:///tmp/html-am902r#FCGETDEFAULTLANGS
-  97. file:///tmp/html-am902r#FCLANGSETGETLANGS
-  98. file:///tmp/html-am902r#FCGETLANGS
-  99. file:///tmp/html-am902r#FCLANGNORMALIZE
- 100. file:///tmp/html-am902r#FCLANGGETCHARSET
- 101. file:///tmp/html-am902r#FCMATRIXINIT
- 102. file:///tmp/html-am902r#FCMATRIXCOPY
- 103. file:///tmp/html-am902r#FCMATRIXEQUAL
- 104. file:///tmp/html-am902r#FCMATRIXMULTIPLY
- 105. file:///tmp/html-am902r#FCMATRIXROTATE
- 106. file:///tmp/html-am902r#FCMATRIXSCALE
- 107. file:///tmp/html-am902r#FCMATRIXSHEAR
- 108. file:///tmp/html-am902r#FCRANGECOPY
- 109. file:///tmp/html-am902r#FCRANGECREATEDOUBLE
- 110. file:///tmp/html-am902r#FCRANGECREATEINTEGER
- 111. file:///tmp/html-am902r#FCRANGEDESTROY
- 112. file:///tmp/html-am902r#FCRANGEGETDOUBLE
- 113. file:///tmp/html-am902r#FCCONFIGCREATE
- 114. file:///tmp/html-am902r#FCCONFIGREFERENCE
- 115. file:///tmp/html-am902r#FCCONFIGDESTROY
- 116. file:///tmp/html-am902r#FCCONFIGSETCURRENT
- 117. file:///tmp/html-am902r#FCCONFIGGETCURRENT
- 118. file:///tmp/html-am902r#FCCONFIGUPTODATE
- 119. file:///tmp/html-am902r#FCCONFIGHOME
- 120. file:///tmp/html-am902r#FCCONFIGENABLEHOME
- 121. file:///tmp/html-am902r#FCCONFIGBUILDFONTS
- 122. file:///tmp/html-am902r#FCCONFIGGETCONFIGDIRS
- 123. file:///tmp/html-am902r#FCCONFIGGETFONTDIRS
- 124. file:///tmp/html-am902r#FCCONFIGGETCONFIGFILES
- 125. file:///tmp/html-am902r#FCCONFIGGETCACHE
- 126. file:///tmp/html-am902r#FCCONFIGGETCACHEDIRS
- 127. file:///tmp/html-am902r#FCCONFIGGETFONTS
- 128. file:///tmp/html-am902r#FCCONFIGGETBLANKS
- 129. file:///tmp/html-am902r#FCCONFIGGETRESCANINTERVAL
- 130. file:///tmp/html-am902r#FCCONFIGSETRESCANINTERVAL
- 131. file:///tmp/html-am902r#FCCONFIGAPPFONTADDFILE
- 132. file:///tmp/html-am902r#FCCONFIGAPPFONTADDDIR
- 133. file:///tmp/html-am902r#FCCONFIGAPPFONTCLEAR
- 134. file:///tmp/html-am902r#FCCONFIGSUBSTITUTEWITHPAT
- 135. file:///tmp/html-am902r#FCCONFIGSUBSTITUTE
- 136. file:///tmp/html-am902r#FCFONTMATCH
- 137. file:///tmp/html-am902r#FCFONTSORT
- 138. file:///tmp/html-am902r#FCFONTRENDERPREPARE
- 139. file:///tmp/html-am902r#FCFONTLIST
- 140. file:///tmp/html-am902r#FCCONFIGFILENAME
- 141. file:///tmp/html-am902r#FCCONFIGPARSEANDLOAD
- 142. file:///tmp/html-am902r#FCCONFIGPARSEANDLOADFROMMEMORY
- 143. file:///tmp/html-am902r#FCCONFIGGETSYSROOT
- 144. file:///tmp/html-am902r#FCCONFIGSETSYSROOT
- 145. file:///tmp/html-am902r#FCCONFIGFILEINFOITERINIT
- 146. file:///tmp/html-am902r#FCCONFIGFILEINFOITERNEXT
- 147. file:///tmp/html-am902r#FCCONFIGFILEINFOITERGET
- 148. file:///tmp/html-am902r#FCNAMEREGISTEROBJECTTYPES
- 149. file:///tmp/html-am902r#FCNAMEUNREGISTEROBJECTTYPES
- 150. file:///tmp/html-am902r#FCNAMEGETOBJECTTYPE
- 151. file:///tmp/html-am902r#FCNAMEREGISTERCONSTANTS
- 152. file:///tmp/html-am902r#FCNAMEUNREGISTERCONSTANTS
- 153. file:///tmp/html-am902r#FCNAMEGETCONSTANT
- 154. file:///tmp/html-am902r#FCNAMECONSTANT
- 155. file:///tmp/html-am902r#FCWEIGHTFROMOPENTYPEDOUBLE
- 156. file:///tmp/html-am902r#FCWEIGHTTOOPENTYPEDOUBLE
- 157. file:///tmp/html-am902r#FCWEIGHTFROMOPENTYPE
- 158. file:///tmp/html-am902r#FCWEIGHTTOOPENTYPE
- 159. file:///tmp/html-am902r#FCBLANKSCREATE
- 160. file:///tmp/html-am902r#FCBLANKSDESTROY
- 161. file:///tmp/html-am902r#FCBLANKSADD
- 162. file:///tmp/html-am902r#FCBLANKSISMEMBER
- 163. file:///tmp/html-am902r#FCATOMICCREATE
- 164. file:///tmp/html-am902r#FCATOMICLOCK
- 165. file:///tmp/html-am902r#FCATOMICNEWFILE
- 166. file:///tmp/html-am902r#FCATOMICORIGFILE
- 167. file:///tmp/html-am902r#FCATOMICREPLACEORIG
- 168. file:///tmp/html-am902r#FCATOMICDELETENEW
- 169. file:///tmp/html-am902r#FCATOMICUNLOCK
- 170. file:///tmp/html-am902r#FCATOMICDESTROY
- 171. file:///tmp/html-am902r#FCFILESCAN
- 172. file:///tmp/html-am902r#FCFILEISDIR
- 173. file:///tmp/html-am902r#FCDIRSCAN
- 174. file:///tmp/html-am902r#FCDIRSAVE
- 175. file:///tmp/html-am902r#FCDIRCACHEUNLINK
- 176. file:///tmp/html-am902r#FCDIRCACHEVALID
- 177. file:///tmp/html-am902r#FCDIRCACHELOAD
- 178. file:///tmp/html-am902r#FCDIRCACHERESCAN
- 179. file:///tmp/html-am902r#FCDIRCACHEREAD
- 180. file:///tmp/html-am902r#FCDIRCACHELOADFILE
- 181. file:///tmp/html-am902r#FCDIRCACHEUNLOAD
- 182. file:///tmp/html-am902r#FCCACHEDIR
- 183. file:///tmp/html-am902r#FCCACHECOPYSET
- 184. file:///tmp/html-am902r#FCCACHESUBDIR
- 185. file:///tmp/html-am902r#FCCACHENUMSUBDIR
- 186. file:///tmp/html-am902r#FCCACHENUMFONT
- 187. file:///tmp/html-am902r#FCDIRCACHECLEAN
- 188. file:///tmp/html-am902r#FCCACHECREATETAGFILE
- 189. file:///tmp/html-am902r#FCDIRCACHECREATEUUID
- 190. file:///tmp/html-am902r#FCDIRCACHEDELETEUUID
- 191. file:///tmp/html-am902r#FCSTRSETCREATE
- 192. file:///tmp/html-am902r#FCSTRSETMEMBER
- 193. file:///tmp/html-am902r#FCSTRSETEQUAL
- 194. file:///tmp/html-am902r#FCSTRSETADD
- 195. file:///tmp/html-am902r#FCSTRSETADDFILENAME
- 196. file:///tmp/html-am902r#FCSTRSETDEL
- 197. file:///tmp/html-am902r#FCSTRSETDESTROY
- 198. file:///tmp/html-am902r#FCSTRLISTCREATE
- 199. file:///tmp/html-am902r#FCSTRLISTFIRST
- 200. file:///tmp/html-am902r#FCSTRLISTNEXT
- 201. file:///tmp/html-am902r#FCSTRLISTDONE
- 202. file:///tmp/html-am902r#FCUTF8TOUCS4
- 203. file:///tmp/html-am902r#FCUCS4TOUTF8
- 204. file:///tmp/html-am902r#FCUTF8LEN
- 205. file:///tmp/html-am902r#FCUTF16TOUCS4
- 206. file:///tmp/html-am902r#FCUTF16LEN
- 207. file:///tmp/html-am902r#FCISLOWER
- 208. file:///tmp/html-am902r#FCISUPPER
- 209. file:///tmp/html-am902r#FCTOLOWER
- 210. file:///tmp/html-am902r#FCSTRCOPY
- 211. file:///tmp/html-am902r#FCSTRDOWNCASE
- 212. file:///tmp/html-am902r#FCSTRCOPYFILENAME
- 213. file:///tmp/html-am902r#FCSTRCMP
- 214. file:///tmp/html-am902r#FCSTRCMPIGNORECASE
- 215. file:///tmp/html-am902r#FCSTRSTR
- 216. file:///tmp/html-am902r#FCSTRSTRIGNORECASE
- 217. file:///tmp/html-am902r#FCSTRPLUS
- 218. file:///tmp/html-am902r#FCSTRFREE
- 219. file:///tmp/html-am902r#FCSTRDIRNAME
- 220. file:///tmp/html-am902r#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 cadefcd..91c15eb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4186"
+NAME="AEN4250"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4186"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4189"
+NAME="AEN4253"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4190"
+NAME="AEN4254"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4197"
+NAME="AEN4261"
 ></A
 ><H2
 >Description</H2
@@ -143,7 +143,7 @@ CLASS="PARAMETER"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -195,7 +195,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1c488ea..04ab6ff 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicReplaceOrig"
 HREF="fcatomicreplaceorig.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICDELETENEW"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4286"
+NAME="AEN4350"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4286"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4289"
+NAME="AEN4353"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4290"
+NAME="AEN4354"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,13 +129,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4297"
+NAME="AEN4361"
 ></A
 ><H2
 >Description</H2
 ><P
 >Deletes the new file.  Used in error recovery to back out changes.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -187,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7d3fcd3..b46cf55 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicUnlock"
 HREF="fcatomicunlock.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCATOMICDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4324"
+NAME="AEN4388"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4324"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4327"
+NAME="AEN4391"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4328"
+NAME="AEN4392"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4335"
+NAME="AEN4399"
 ></A
 ><H2
 >Description</H2
@@ -133,7 +133,7 @@ CLASS="PARAMETER"
 >atomic</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -181,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 62a1698..78098ed 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicCreate"
 HREF="fcatomiccreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICLOCK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4206"
+NAME="AEN4270"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4206"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4209"
+NAME="AEN4273"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4210"
+NAME="AEN4274"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4217"
+NAME="AEN4281"
 ></A
 ><H2
 >Description</H2
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 >.
 Returns FcFalse if the file is already locked, else returns FcTrue and
 leaves the file locked.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -194,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9eddf04..9633e9c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicLock"
 HREF="fcatomiclock.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICNEWFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4226"
+NAME="AEN4290"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4226"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4229"
+NAME="AEN4293"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4230"
+NAME="AEN4294"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4237"
+NAME="AEN4301"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 >atomic</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5130364..bbd53bf 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicNewFile"
 HREF="fcatomicnewfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICORIGFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4246"
+NAME="AEN4310"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4246"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4249"
+NAME="AEN4313"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4250"
+NAME="AEN4314"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4257"
+NAME="AEN4321"
 ></A
 ><H2
 >Description</H2
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >atomic</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fd9cf50..4e0547c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicOrigFile"
 HREF="fcatomicorigfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICREPLACEORIG"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4266"
+NAME="AEN4330"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4266"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4269"
+NAME="AEN4333"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4270"
+NAME="AEN4334"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4277"
+NAME="AEN4341"
 ></A
 ><H2
 >Description</H2
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 > with
 the new file. Returns FcFalse if the file cannot be replaced due to
 permission issues in the filesystem. Otherwise returns FcTrue.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -194,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fdbb713..f8a4b6c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x103.html#AEN4178"><LINK
+HREF="x103.html#AEN4242"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicDeleteNew"
 HREF="fcatomicdeletenew.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICUNLOCK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4305"
+NAME="AEN4369"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4305"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4308"
+NAME="AEN4372"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4309"
+NAME="AEN4373"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,13 +129,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4316"
+NAME="AEN4380"
 ></A
 ><H2
 >Description</H2
 ><P
 >Unlocks the file.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -187,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4178"
+HREF="x103.html#AEN4242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a986b70..640a216 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x103.html#AEN4094"><LINK
+HREF="x103.html#AEN4158"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksDestroy"
 HREF="fcblanksdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4141"
+NAME="AEN4205"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4141"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4144"
+NAME="AEN4208"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4145"
+NAME="AEN4209"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,14 +134,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4154"
+NAME="AEN4218"
 ></A
 ><H2
 >Description</H2
 ><P
 >FcBlanks is deprecated.
 This function always returns FALSE.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4094"
+HREF="x103.html#AEN4158"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a4f705f..b7baa21 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x103.html#AEN4094"><LINK
+HREF="x103.html#AEN4158"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4103"
+NAME="AEN4167"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4103"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4106"
+NAME="AEN4170"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4107"
+NAME="AEN4171"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,14 +129,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4114"
+NAME="AEN4178"
 ></A
 ><H2
 >Description</H2
 ><P
 >FcBlanks is deprecated.
 This function always returns NULL.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -188,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4094"
+HREF="x103.html#AEN4158"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 04bc6b6..0a91de1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x103.html#AEN4094"><LINK
+HREF="x103.html#AEN4158"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksCreate"
 HREF="fcblankscreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4122"
+NAME="AEN4186"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4122"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4125"
+NAME="AEN4189"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4126"
+NAME="AEN4190"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,14 +129,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4133"
+NAME="AEN4197"
 ></A
 ><H2
 >Description</H2
 ><P
 >FcBlanks is deprecated.
 This function does nothing.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -188,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4094"
+HREF="x103.html#AEN4158"
 ACCESSKEY="U"
 >Up</A
 ></TD
index babdc86..0e32c1f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x103.html#AEN4094"><LINK
+HREF="x103.html#AEN4158"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksAdd"
 HREF="fcblanksadd.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCBLANKSISMEMBER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4162"
+NAME="AEN4226"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4162"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4165"
+NAME="AEN4229"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4166"
+NAME="AEN4230"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -127,14 +127,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4175"
+NAME="AEN4239"
 ></A
 ><H2
 >Description</H2
 ><P
 >FcBlanks is deprecated.
 This function always returns FALSE.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -182,7 +182,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4094"
+HREF="x103.html#AEN4158"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 89ba30e..a0de9e6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheDir"
 HREF="fccachedir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHECOPYSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4645"
+NAME="AEN4709"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4649"
+NAME="AEN4713"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4650"
+NAME="AEN4714"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4657"
+NAME="AEN4721"
 ></A
 ><H2
 >Description</H2
@@ -147,7 +147,7 @@ CLASS="PARAMETER"
 ></TT
 >. This fontset may be modified, but the patterns
 from the cache are read-only.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -199,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 461fddc..46c4d56 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheClean"
 HREF="fcdircacheclean.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHECREATETAGFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4756"
+NAME="AEN4820"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4756"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4759"
+NAME="AEN4823"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4760"
+NAME="AEN4824"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4767"
+NAME="AEN4831"
 ></A
 ><H2
 >Description</H2
@@ -141,12 +141,12 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4771"
+NAME="AEN4835"
 ></A
 ><H2
 >Since</H2
@@ -203,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 297f724..d726a60 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHEDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4625"
+NAME="AEN4689"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4629"
+NAME="AEN4693"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4630"
+NAME="AEN4694"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4637"
+NAME="AEN4701"
 ></A
 ><H2
 >Description</H2
 ><P
 >This function returns the directory from which the cache was constructed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 438ecd1..21a3a55 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheNumSubdir"
 HREF="fccachenumsubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMFONT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4711"
+NAME="AEN4775"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4715"
+NAME="AEN4779"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4716"
+NAME="AEN4780"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,14 +134,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4723"
+NAME="AEN4787"
 ></A
 ><H2
 >Description</H2
 ><P
 >This returns the number of fonts which would be included in the return from
 FcCacheCopySet.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a6a2079..486c57c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheSubdir"
 HREF="fccachesubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMSUBDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4691"
+NAME="AEN4755"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4695"
+NAME="AEN4759"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4696"
+NAME="AEN4760"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4703"
+NAME="AEN4767"
 ></A
 ><H2
 >Description</H2
 ><P
 >This returns the total number of subdirectories in the cache.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2baa124..5654062 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheCopySet"
 HREF="fccachecopyset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHESUBDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4666"
+NAME="AEN4730"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4670"
+NAME="AEN4734"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4671"
+NAME="AEN4735"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4680"
+NAME="AEN4744"
 ></A
 ><H2
 >Description</H2
@@ -163,7 +163,7 @@ CLASS="PARAMETER"
 ></TT
 > is the return
 value from FcCacheNumSubdir.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -215,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 139cb12..2c73a88 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -145,7 +145,7 @@ CLASS="FUNCTION"
 > 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index b520bf6..dc6cc02 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -146,7 +146,7 @@ CLASS="PARAMETER"
 >src</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 33e0c74..2ae6272 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >a</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 144e103..033faca 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -168,7 +168,7 @@ CLASS="FUNCTION"
 >FcCharSetCoverage</TT
 > returns the next page in the charset which has any
 coverage.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 3d2fcfc..7877200 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="FUNCTION"
 >FcCharSetCreate</TT
 > allocates and initializes a new empty
 character set object.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 4168ca3..0264182 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -145,7 +145,7 @@ CLASS="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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index c740ae0..2b58d7e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -137,7 +137,7 @@ NAME="AEN1908"
 ><TT
 CLASS="FUNCTION"
 >FcCharSetDestroy</TT
-> decrements the reference count 
+> decrements the reference count
 <TT
 CLASS="PARAMETER"
 ><I
@@ -145,7 +145,7 @@ CLASS="PARAMETER"
 ></TT
 >.  If the reference count becomes zero, all
 memory referenced is freed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 257ebbe..56fbceb 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 ></TT
 >
 contain the same set of Unicode chars.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 3e35bfe..4323f14 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -252,9 +252,9 @@ 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
+> and later are left as an exercise for the
 reader ;).
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index bedca1d..9d22883 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >ucs4</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 65d1543..6683dac 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 62f5178..80ebc84 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 8c5e978..95958a3 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 6552186..ebf166e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -180,7 +180,7 @@ CLASS="PARAMETER"
 ></TT
 > is a constant
 set or from running out of memory.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 567e215..abd60d9 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -131,7 +131,7 @@ NAME="AEN2332"
 CLASS="FUNCTION"
 >FcCharSetNew</TT
 > is a DEPRECATED alias for FcCharSetCreate.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 195d5af..f5e06cc 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -194,7 +194,7 @@ CLASS="PARAMETER"
 >*next</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 9aa0087..bcc389a 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 2f436f8..b172a2d 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index cdea732..366ed6e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index ca897ba..7420d0f 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3437"
+NAME="AEN3440"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3437"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3440"
+NAME="AEN3443"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3441"
+NAME="AEN3444"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3450"
+NAME="AEN3453"
 ></A
 ><H2
 >Description</H2
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ></TT
 > is NULL,
 the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index f684781..d45df7d 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3415"
+NAME="AEN3418"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3415"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3418"
+NAME="AEN3421"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3419"
+NAME="AEN3422"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3428"
+NAME="AEN3431"
 ></A
 ><H2
 >Description</H2
@@ -148,7 +148,7 @@ CLASS="PARAMETER"
 ></TT
 > is NULL,
 the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 1e570a9..8a3c9f2 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTCLEAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3459"
+NAME="AEN3462"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3459"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3462"
+NAME="AEN3465"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3463"
+NAME="AEN3466"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3470"
+NAME="AEN3473"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index afaa22f..5956885 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -143,7 +143,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index dee5ce0..fcd74ae 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN3057"
 >Description</H2
 ><P
 >Creates an empty configuration.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index db6e064..6cf3d3b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -138,7 +138,7 @@ NAME="AEN3097"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 042b2c7..8cd5d9b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 > is
 FcFalse, then all use of the home directory in these contexts will be
 disabled. The previous setting of the value is returned.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 8d032ba..33c0cef 100644 (file)
@@ -68,7 +68,7 @@ NAME="FCCONFIGFILEINFOITERGET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3818"
+NAME="AEN3855"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3818"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3821"
+NAME="AEN3858"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3822"
+NAME="AEN3859"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3837"
+NAME="AEN3874"
 ></A
 ><H2
 >Description</H2
@@ -150,12 +150,26 @@ NAME="AEN3837"
 >Obtain the filename, the description and the flag whether it is enabled or not
 for 'iter' where points to current configuration file information.
 If the iterator is invalid, FcFalse is returned.
-           </P
+    </P
+><P
+>This function isn't MT-safe. <TT
+CLASS="FUNCTION"
+>FcConfigReference</TT
+> must be called
+before using <TT
+CLASS="FUNCTION"
+>FcConfigFileInfoIterInit</TT
+> and then
+<TT
+CLASS="FUNCTION"
+>FcConfigDestroy</TT
+> when the relevant values are no longer referenced.
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3840"
+NAME="AEN3881"
 ></A
 ><H2
 >Since</H2
index 7fc7f05..8eba4dd 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGFILEINFOITERINIT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3770"
+NAME="AEN3799"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3770"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3773"
+NAME="AEN3802"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3774"
+NAME="AEN3803"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,18 +134,33 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3783"
+NAME="AEN3812"
 ></A
 ><H2
 >Description</H2
 ><P
 >Initialize 'iter' with the first iterator in the config file information list.
-           </P
+    </P
+><P
+>The config file information list is stored in numerical order for filenames
+i.e. how fontconfig actually read them.
+    </P
+><P
+>This function isn't MT-safe. <TT
+CLASS="FUNCTION"
+>FcConfigReference</TT
+> must be called
+before using this and then <TT
+CLASS="FUNCTION"
+>FcConfigDestroy</TT
+> when the relevant
+values are no longer referenced.
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3786"
+NAME="AEN3819"
 ></A
 ><H2
 >Since</H2
index f611a62..eb97307 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGFILEINFOITERNEXT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3794"
+NAME="AEN3827"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3794"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3797"
+NAME="AEN3830"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3798"
+NAME="AEN3831"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,19 +134,33 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3807"
+NAME="AEN3840"
 ></A
 ><H2
 >Description</H2
 ><P
 >Set 'iter' to point to the next node in the config file information list.
 If there is no next node, FcFalse is returned.
-           </P
+    </P
+><P
+>This function isn't MT-safe. <TT
+CLASS="FUNCTION"
+>FcConfigReference</TT
+> must be called
+before using <TT
+CLASS="FUNCTION"
+>FcConfigFileInfoIterInit</TT
+> and then
+<TT
+CLASS="FUNCTION"
+>FcConfigDestroy</TT
+> when the relevant values are no longer referenced.
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3810"
+NAME="AEN3847"
 ></A
 ><H2
 >Since</H2
index 09b7c97..884dd63 100644 (file)
@@ -15,8 +15,8 @@ REL="PREVIOUS"
 TITLE="FcFontList"
 HREF="fcfontlist.html"><LINK
 REL="NEXT"
-TITLE="FcConfigParseAndLoad"
-HREF="fcconfigparseandload.html"></HEAD
+TITLE="FcConfigGetFilename"
+HREF="fcconfiggetfilename.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcconfigparseandload.html"
+HREF="fcconfiggetfilename.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCCONFIGFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3653"
+NAME="AEN3656"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3653"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3656"
+NAME="AEN3659"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3657"
+NAME="AEN3660"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,34 +129,16 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3664"
+NAME="AEN3667"
 ></A
 ><H2
 >Description</H2
 ><P
->Given the specified external entity name, return the associated filename.
-This provides applications a way to convert various configuration file
-references into filename form.
-    </P
-><P
->A null or empty <TT
-CLASS="PARAMETER"
-><I
->name</I
-></TT
-> 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 <TT
-CLASS="PARAMETER"
-><I
->~</I
-></TT
->, 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.
-           </P
+>This function is deprecated and is replaced by <TT
+CLASS="FUNCTION"
+>FcConfigGetFilename</TT
+>.
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +174,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcconfigparseandload.html"
+HREF="fcconfiggetfilename.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -216,7 +198,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcConfigParseAndLoad</TD
+>FcConfigGetFilename</TD
 ></TR
 ></TABLE
 ></DIV
index faacc72..c869d77 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETBLANKS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3353"
+NAME="AEN3356"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3353"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3356"
+NAME="AEN3359"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3357"
+NAME="AEN3360"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,14 +129,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3364"
+NAME="AEN3367"
 ></A
 ><H2
 >Description</H2
 ><P
 >FcBlanks is deprecated.
 This function always returns NULL.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 0819c27..597fc94 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN3301"
 ><P
 >With fontconfig no longer using per-user cache files, this function now
 simply returns NULL to indicate that no per-user file exists.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index fa098bd..201d5dc 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -146,7 +146,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index d1555cc..ddbae9d 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -147,7 +147,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index cc9b536..8920c61 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -146,7 +146,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 3f95dca..fbe0232 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN3137"
 >Description</H2
 ><P
 >Returns the current default configuration.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
diff --git a/doc/fontconfig-devel/fcconfiggetfilename.html b/doc/fontconfig-devel/fcconfiggetfilename.html
new file mode 100644 (file)
index 0000000..7f07425
--- /dev/null
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcConfigGetFilename</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConfig"
+HREF="x103.html#AEN3038"><LINK
+REL="PREVIOUS"
+TITLE="FcConfigFilename"
+HREF="fcconfigfilename.html"><LINK
+REL="NEXT"
+TITLE="FcConfigParseAndLoad"
+HREF="fcconfigparseandload.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="fcconfigfilename.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="fcconfigparseandload.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCCONFIGGETFILENAME"
+></A
+>FcConfigGetFilename</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3676"
+></A
+><H2
+>Name</H2
+>FcConfigGetFilename&nbsp;--&nbsp;Find a config file</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3679"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3680"
+></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"
+>FcChar8 * <TT
+CLASS="FUNCTION"
+>FcConfigGetFilename</TT
+></CODE
+>(FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>, const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3689"
+></A
+><H2
+>Description</H2
+><P
+>Given the specified external entity name, return the associated filename.
+This provides applications a way to convert various configuration file
+references into filename form.
+    </P
+><P
+>A null or empty <TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> 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 <TT
+CLASS="PARAMETER"
+><I
+>~</I
+></TT
+>, 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.
+    </P
+><P
+>The result of this function is affected by the FONTCONFIG_SYSROOT environment variable or equivalent functionality.
+            </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="fcconfigfilename.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="fcconfigparseandload.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcConfigFilename</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x103.html#AEN3038"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcConfigParseAndLoad</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index c4edaa9..df63119 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -148,7 +148,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index e87592c..e445794 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -153,7 +153,18 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+    </P
+><P
+>This function isn't MT-safe. <TT
+CLASS="FUNCTION"
+>FcConfigReference</TT
+> must be called
+before using this and then <TT
+CLASS="FUNCTION"
+>FcConfigDestroy</TT
+> when
+the return value is no longer referenced.
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index f0ceb42..1b6481e 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETRESCANINTERVAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3372"
+NAME="AEN3375"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3372"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3375"
+NAME="AEN3378"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3376"
+NAME="AEN3379"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3383"
+NAME="AEN3386"
 ></A
 ><H2
 >Description</H2
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 45e430f..ad2e7c4 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETSYSROOT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3724"
+NAME="AEN3750"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3724"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3727"
+NAME="AEN3753"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3728"
+NAME="AEN3754"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,18 +129,31 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3735"
+NAME="AEN3761"
 ></A
 ><H2
 >Description</H2
 ><P
->Obtrains the system root directory in 'config' if available.
-           </P
+>Obtains the system root directory in 'config' if available. All files
+(including file properties in patterns) obtained from this 'config' are
+relative to this system root directory.
+    </P
+><P
+>This function isn't MT-safe. <TT
+CLASS="FUNCTION"
+>FcConfigReference</TT
+> must be called
+before using this and then <TT
+CLASS="FUNCTION"
+>FcConfigDestroy</TT
+> when
+the return value is no longer referenced.
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3738"
+NAME="AEN3767"
 ></A
 ><H2
 >Since</H2
index b005121..874a0ee 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ See also <TT
 CLASS="FUNCTION"
 >FcConfigEnableHome</TT
 >).
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 1159dd9..cbc948b 100644 (file)
@@ -12,8 +12,8 @@ REL="UP"
 TITLE="FcConfig"
 HREF="x103.html#AEN3038"><LINK
 REL="PREVIOUS"
-TITLE="FcConfigFilename"
-HREF="fcconfigfilename.html"><LINK
+TITLE="FcConfigGetFilename"
+HREF="fcconfiggetfilename.html"><LINK
 REL="NEXT"
 TITLE="FcConfigParseAndLoadFromMemory"
 HREF="fcconfigparseandloadfrommemory.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcconfigfilename.html"
+HREF="fcconfiggetfilename.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCCONFIGPARSEANDLOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3675"
+NAME="AEN3701"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3675"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3678"
+NAME="AEN3704"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3679"
+NAME="AEN3705"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3690"
+NAME="AEN3716"
 ></A
 ><H2
 >Description</H2
@@ -150,7 +150,7 @@ 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -168,7 +168,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcconfigfilename.html"
+HREF="fcconfiggetfilename.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -196,7 +196,7 @@ ACCESSKEY="N"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcConfigFilename</TD
+>FcConfigGetFilename</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
index a91eac4..dbeae73 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGPARSEANDLOADFROMMEMORY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3698"
+NAME="AEN3724"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3698"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3701"
+NAME="AEN3727"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3702"
+NAME="AEN3728"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3713"
+NAME="AEN3739"
 ></A
 ><H2
 >Description</H2
@@ -150,12 +150,12 @@ and dparsed.  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 fsome error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3716"
+NAME="AEN3742"
 ></A
 ><H2
 >Since</H2
index 10e657b..c4d8e97 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 8c4bd42..bec74c5 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -147,7 +147,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > since 2.12.0, returning FcFalse if that call fails.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index eecb75e..e55faec 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETRESCANINTERVAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3393"
+NAME="AEN3396"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3393"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3396"
+NAME="AEN3399"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3397"
+NAME="AEN3400"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3406"
+NAME="AEN3409"
 ></A
 ><H2
 >Description</H2
@@ -148,7 +148,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 7e88e20..4c06720 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETSYSROOT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3746"
+NAME="AEN3775"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3746"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3749"
+NAME="AEN3778"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3750"
+NAME="AEN3779"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,21 +134,24 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3759"
+NAME="AEN3788"
 ></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
+>Set 'sysroot' as the system root directory. All file paths used or created with
+this 'config' (including file properties in patterns) will be considered or
+made relative to this 'sysroot'. This allows a host to generate caches for
+targets at build time. This also allows a cache to be re-targeted to a
+different base directory if 'FcConfigGetSysRoot' is used to resolve file paths.
+When setting this on the current config this causes changing current config
+(calls FcConfigSetCurrent()).
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3762"
+NAME="AEN3791"
 ></A
 ><H2
 >Since</H2
index 4786759..1cb32b3 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3507"
+NAME="AEN3510"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3507"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3510"
+NAME="AEN3513"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3511"
+NAME="AEN3514"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3522"
+NAME="AEN3525"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index cc3f3c9..795904c 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTEWITHPAT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3479"
+NAME="AEN3482"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3479"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3482"
+NAME="AEN3485"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3483"
+NAME="AEN3486"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3496"
+NAME="AEN3499"
 ></A
 ><H2
 >Description</H2
@@ -170,7 +170,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 6ca6889..d09d94b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -147,7 +147,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 69ec368..ee6e284 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -153,7 +153,7 @@ specified point size (default 12), dpi (default 75) and scale (default 1).</P
 ></LI
 ></UL
 >
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 0787232..212ec46 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheNumFont"
 HREF="fccachenumfont.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHECLEAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4731"
+NAME="AEN4795"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4731"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4734"
+NAME="AEN4798"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4735"
+NAME="AEN4799"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4744"
+NAME="AEN4808"
 ></A
 ><H2
 >Description</H2
@@ -146,12 +146,12 @@ CLASS="PARAMETER"
 ></TT
 >.
 This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4748"
+NAME="AEN4812"
 ></A
 ><H2
 >Since</H2
@@ -208,7 +208,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 024ebf3..e72067c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheCreateTagFile"
 HREF="fccachecreatetagfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHECREATEUUID"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4779"
+NAME="AEN4843"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4779"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4782"
+NAME="AEN4846"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4783"
+NAME="AEN4847"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,26 +139,18 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4794"
+NAME="AEN4858"
 ></A
 ><H2
 >Description</H2
 ><P
->This is to create .uuid file containing an UUID at a font directory of
-<TT
-CLASS="PARAMETER"
-><I
->dir</I
-></TT
->.
-The UUID will be used to identify the font directory and is used to determine
-the cache filename if available.
-           </P
+>This function is deprecated. it doesn't take any effects.
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4798"
+NAME="AEN4861"
 ></A
 ><H2
 >Since</H2
@@ -215,7 +207,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 59a1758..54f6e6c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x103.html#AEN4617"><LINK
+HREF="x103.html#AEN4681"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheCreateUUID"
 HREF="fcdircachecreateuuid.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCDIRCACHEDELETEUUID"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4806"
+NAME="AEN4869"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4806"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4809"
+NAME="AEN4872"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4810"
+NAME="AEN4873"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4819"
+NAME="AEN4882"
 ></A
 ><H2
 >Description</H2
@@ -139,12 +139,12 @@ CLASS="PARAMETER"
 >dir</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4823"
+NAME="AEN4886"
 ></A
 ><H2
 >Since</H2
@@ -197,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4617"
+HREF="x103.html#AEN4681"
 ACCESSKEY="U"
 >Up</A
 ></TD
index dae74d7..171a958 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheValid"
 HREF="fcdircachevalid.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4504"
+NAME="AEN4568"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4504"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4507"
+NAME="AEN4571"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4508"
+NAME="AEN4572"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4519"
+NAME="AEN4583"
 ></A
 ><H2
 >Description</H2
@@ -158,7 +158,7 @@ CLASS="PARAMETER"
 ></TT
 >, unless that is NULL. See also
 FcDirCacheRead.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -210,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 041d7c0..7b7a3f6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheRead"
 HREF="fcdircacheread.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOADFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4579"
+NAME="AEN4643"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4579"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4582"
+NAME="AEN4646"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4583"
+NAME="AEN4647"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4592"
+NAME="AEN4656"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 > is
 non-NULL, it will be filled with the results of stat(2) on the cache file.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index eb58576..730b677 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheRescan"
 HREF="fcdircacherescan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEREAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4554"
+NAME="AEN4618"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4554"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4557"
+NAME="AEN4621"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4558"
+NAME="AEN4622"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4569"
+NAME="AEN4633"
 ></A
 ><H2
 >Description</H2
@@ -158,7 +158,7 @@ CLASS="PARAMETER"
 > 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -210,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a43373a..4786723 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheLoad"
 HREF="fcdircacheload.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHERESCAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4529"
+NAME="AEN4593"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4529"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4532"
+NAME="AEN4596"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4533"
+NAME="AEN4597"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4542"
+NAME="AEN4606"
 ></A
 ><H2
 >Description</H2
@@ -146,12 +146,12 @@ CLASS="PARAMETER"
 ></TT
 > and update the cache.
 returns NULL if failed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4546"
+NAME="AEN4610"
 ></A
 ><H2
 >Since</H2
@@ -208,7 +208,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 049a887..bb0911e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirSave"
 HREF="fcdirsave.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEUNLINK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4460"
+NAME="AEN4524"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4464"
+NAME="AEN4528"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4465"
+NAME="AEN4529"
 ></A
 ><TABLE
 BORDER="0"
@@ -108,7 +108,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4474"
+NAME="AEN4538"
 ></A
 ><H2
 >Description</H2
@@ -158,7 +158,7 @@ CLASS="PARAMETER"
 >. Returns FcFalse
 when some internal error occurs (out of memory, etc). Errors actually
 unlinking any files are ignored.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -210,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e0869fa..c49028c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheLoadFile"
 HREF="fcdircacheloadfile.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCDIRCACHEUNLOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4602"
+NAME="AEN4666"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4602"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4605"
+NAME="AEN4669"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4606"
+NAME="AEN4670"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4613"
+NAME="AEN4677"
 ></A
 ><H2
 >Description</H2
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ></TT
 >. When no other
 references to it remain, all memory associated with the cache will be freed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -182,7 +182,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bccd595..833e06d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheUnlink"
 HREF="fcdircacheunlink.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEVALID"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4484"
+NAME="AEN4548"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4484"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4487"
+NAME="AEN4551"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4488"
+NAME="AEN4552"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4495"
+NAME="AEN4559"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 > has an associated valid cache
 file, else returns FcFalse
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8bd923a..af45b7b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcDirScan"
 HREF="fcdirscan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSAVE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4434"
+NAME="AEN4498"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4434"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4437"
+NAME="AEN4501"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4438"
+NAME="AEN4502"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4449"
+NAME="AEN4513"
 ></A
 ><H2
 >Description</H2
@@ -164,7 +164,7 @@ CLASS="PARAMETER"
 ></TT
 >. All of this functionality is now automatically
 managed by FcDirCacheLoad and FcDirCacheRead.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -216,7 +216,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9f10184..eb7ee36 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcFileIsDir"
 HREF="fcfileisdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSCAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4401"
+NAME="AEN4465"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4401"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4404"
+NAME="AEN4468"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4405"
+NAME="AEN4469"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4422"
+NAME="AEN4486"
 ></A
 ><H2
 >Description</H2
@@ -185,7 +185,7 @@ CLASS="PARAMETER"
 >.  Calling
 this function does not create any cache files.  Use FcDirCacheRead() if
 caching is desired.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -237,7 +237,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 93427e8..9f7a6cc 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FcFileScan"
 HREF="fcfilescan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILEISDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4381"
+NAME="AEN4445"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4381"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4384"
+NAME="AEN4448"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4385"
+NAME="AEN4449"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4392"
+NAME="AEN4456"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 > is a directory, otherwise
 returns FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2b3cf05..292df5f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x103.html#AEN4339"><LINK
+HREF="x103.html#AEN4403"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILESCAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4347"
+NAME="AEN4411"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4347"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4350"
+NAME="AEN4414"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4351"
+NAME="AEN4415"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4368"
+NAME="AEN4432"
 ></A
 ><H2
 >Description</H2
@@ -195,7 +195,7 @@ 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -247,7 +247,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4339"
+HREF="x103.html#AEN4403"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9ee6c90..dc70f02 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -138,7 +138,7 @@ NAME="AEN182"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 8385c3b..ffa5964 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCFONTLIST"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3627"
+NAME="AEN3630"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3627"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3630"
+NAME="AEN3633"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3631"
+NAME="AEN3634"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3642"
+NAME="AEN3645"
 ></A
 ><H2
 >Description</H2
@@ -163,7 +163,7 @@ CLASS="PARAMETER"
 ></TT
 > is NULL, the default configuration is checked
 to be up to date, and used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 8357d51..85e5473 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCFONTMATCH"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3531"
+NAME="AEN3534"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3531"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3534"
+NAME="AEN3537"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3535"
+NAME="AEN3538"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3546"
+NAME="AEN3549"
 ></A
 ><H2
 >Description</H2
@@ -181,7 +181,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 4ee74d1..6594e1f 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCFONTRENDERPREPARE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3598"
+NAME="AEN3601"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3598"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3601"
+NAME="AEN3604"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3602"
+NAME="AEN3605"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3613"
+NAME="AEN3616"
 ></A
 ><H2
 >Description</H2
@@ -178,7 +178,7 @@ CLASS="PARAMETER"
 >kind</I
 ></TT
 > FcMatchFont and then returned.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 55e14ef..b8d4d13 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -142,7 +142,7 @@ NAME="AEN1375"
 >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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index c09cb90..357fbc2 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN1335"
 >Description</H2
 ><P
 >Creates an empty font set.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 44b8a6c..692e01c 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN1354"
 ><P
 >Destroys a font set.  Note that this destroys any referenced patterns as
 well.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index d737962..ad080e5 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -180,7 +180,7 @@ CLASS="PARAMETER"
 ></TT
 > is NULL, the default configuration is checked
 to be up to date, and used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 46efd71..6a913ad 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -192,7 +192,7 @@ CLASS="PARAMETER"
 ></TT
 > is NULL, the current configuration is used.
 Returns NULL if an error occurs during this process.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index cef24c8..c0c0f6b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -143,7 +143,7 @@ CLASS="PARAMETER"
 >. The format
 of the output is designed to be of help to users and developers, and may
 change at any time.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 1187c25..5c0e707 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -111,7 +111,7 @@ CLASS="FUNCSYNOPSISINFO"
 ><CODE
 ><CODE
 CLASS="FUNCDEF"
-> <TT
+>FcFontSet * <TT
 CLASS="FUNCTION"
 >FcFontSetSort</TT
 ></CODE
@@ -175,7 +175,7 @@ CLASS="PARAMETER"
 ><I
 >pattern</I
 ></TT
->.  
+>.
 If <TT
 CLASS="PARAMETER"
 ><I
@@ -222,7 +222,7 @@ CLASS="FUNCTION"
     </P
 ><P
 >The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index b3b0284..74215b7 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -104,7 +104,7 @@ CLASS="FUNCSYNOPSISINFO"
 ><CODE
 ><CODE
 CLASS="FUNCDEF"
-> <TT
+>void <TT
 CLASS="FUNCTION"
 >FcFontSetSortDestroy</TT
 ></CODE
@@ -145,7 +145,7 @@ CLASS="FUNCTION"
 CLASS="FUNCTION"
 >FcFontSetDestroy</TT
 > directly instead.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index a8710ba..982b870 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCFONTSORT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3561"
+NAME="AEN3564"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3561"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3564"
+NAME="AEN3567"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3565"
+NAME="AEN3568"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3580"
+NAME="AEN3583"
 ></A
 ><H2
 >Description</H2
@@ -208,7 +208,7 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 > is NULL, the current configuration is used.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 33c39cb..30f93c8 100644 (file)
@@ -104,7 +104,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -145,7 +145,7 @@ 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 53a59da..5805919 100644 (file)
@@ -104,7 +104,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -148,7 +148,7 @@ CLASS="PARAMETER"
 ></TT
 > is ignored and
 accepted only for compatibility with older code.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 643ac84..4a6d27a 100644 (file)
@@ -104,7 +104,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -163,7 +163,7 @@ 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index f4683a9..d2817b4 100644 (file)
@@ -104,7 +104,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -159,7 +159,7 @@ CLASS="PARAMETER"
 ></TT
 > is ignored and
 accepted only for compatibility with older code.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 343dd16..9586b57 100644 (file)
@@ -104,7 +104,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -167,7 +167,7 @@ CLASS="PARAMETER"
 ></TT
 > is ignored and
 accepted only for compatibility with older code.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 874960a..7ab9fcd 100644 (file)
@@ -97,7 +97,7 @@ WIDTH="100%"
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig.h&#62;
 #include &#60;fcfreetype.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 > is ignored and
 accepted only for compatibility with older code.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 580deca..e3ba8eb 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -137,7 +137,7 @@ NAME="AEN2643"
 >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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index beca892..fe078e1 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN2685"
 >Description</H2
 ><P
 >Returns a string set of all known languages.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 4206666..e9b5a96 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN201"
 >Description</H2
 ><P
 >Returns the version number of the library.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index bda984f..05ca520 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -138,7 +138,7 @@ NAME="AEN163"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 78e6298..8395925 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -131,7 +131,7 @@ NAME="AEN239"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 5b0ae09..3efb064 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN125"
 ><P
 >Loads the default configuration file and returns the resulting configuration.
 Does not load any font information.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 4ce6313..312e8fb 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN144"
 ><P
 >Loads the default configuration file and builds information about the
 available fonts.  Returns the resulting configuration.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index dcf82c7..5fe248a 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -138,7 +138,7 @@ NAME="AEN220"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index c912a8a..e9888e4 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf16Len"
 HREF="fcutf16len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISLOWER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5220"
+NAME="AEN5283"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5220"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5223"
+NAME="AEN5286"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5224"
+NAME="AEN5287"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5231"
+NAME="AEN5294"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 > is an lower case ASCII
 letter.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 6cfe49e..fb3b547 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcIsLower"
 HREF="fcislower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISUPPER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5240"
+NAME="AEN5303"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5240"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5243"
+NAME="AEN5306"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5244"
+NAME="AEN5307"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5251"
+NAME="AEN5314"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 > is a upper case ASCII
 letter.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 00dac8d..73cf39c 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -128,7 +128,7 @@ NAME="AEN2727"
 >Description</H2
 ><P
 >Returns the FcCharMap for a language.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index a85dfc6..f029709 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >lang</I
 ></TT
 > suitable on fontconfig.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 7ef62d5..08fe9be 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -158,7 +158,7 @@ CLASS="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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 13b19d9..1f1577c 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -158,7 +158,7 @@ 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 877d85f..ce8399a 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -178,7 +178,7 @@ CLASS="PARAMETER"
 >ls_a</I
 ></TT
 > has no territory.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 28a8d2b..6732819 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 >ls</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index ea53e59..8dd1fe9 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -138,7 +138,7 @@ NAME="AEN2355"
 CLASS="FUNCTION"
 >FcLangSetCreate</TT
 > creates a new FcLangSet object.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 3c6ebe6..27f6582 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -158,7 +158,7 @@ CLASS="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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 94a87cd..9dc32dc 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="FUNCTION"
 >FcLangSetDestroy</TT
 > destroys a FcLangSet object, freeing
 all memory associated with it.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 2e913d8..0eea47f 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >ls_b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index daa66f8..db3488e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >langset</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index d6cc7a4..c81cde4 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -152,7 +152,7 @@ CLASS="FUNCTION"
 >FcLangSetHash</TT
 >. However, two langsets with the same hash
 value may not be equal.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 7deb294..02c5e9b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -153,7 +153,7 @@ CLASS="PARAMETER"
 ><I
 >lang</I
 ></TT
->. If 
+>. If
 <TT
 CLASS="PARAMETER"
 ><I
@@ -172,9 +172,9 @@ CLASS="PARAMETER"
 ><I
 >ls</I
 ></TT
-> 
+>
 has no matching language, this function returns FcLangDifferentLang.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index b6567e2..2a9b0e2 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >ls_b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index d6255c5..da984fa 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >ls_b</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 14324ba..6abeb6e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 >mat</I
 ></TT
 > into it.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 81c76ac..ca90a82 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -155,7 +155,7 @@ CLASS="PARAMETER"
 ></TT
 > returning FcTrue when they are equal and
 FcFalse when they are not.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 59f1d98..385ce86 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ></TT
 >
 to the identity matrix.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 02d8fb5..e3d81ef 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -165,7 +165,7 @@ CLASS="PARAMETER"
 >result</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 39d72d5..08bb2d6 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -180,7 +180,7 @@ CLASS="PROGRAMLISTING"
 ></TR
 ></TABLE
 >
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 217e958..66cd9f6 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -180,7 +180,7 @@ CLASS="PROGRAMLISTING"
 ></TR
 ></TABLE
 >
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 781836d..b59711d 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -173,7 +173,7 @@ CLASS="PROGRAMLISTING"
 ></TR
 ></TABLE
 >
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 0a1cdfd..ea1c087 100644 (file)
@@ -10,10 +10,10 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x103.html#AEN3908"><LINK
+HREF="x103.html#AEN3949"><LINK
 REL="PREVIOUS"
-TITLE="FcNameGetConstant"
-HREF="fcnamegetconstant.html"></HEAD
+TITLE="FcNameGetConstantFor"
+HREF="fcnamegetconstantfor.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -41,7 +41,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcnamegetconstant.html"
+HREF="fcnamegetconstantfor.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -68,7 +68,7 @@ NAME="FCNAMECONSTANT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3978"
+NAME="AEN4042"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3978"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3981"
+NAME="AEN4045"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3982"
+NAME="AEN4046"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3991"
+NAME="AEN4055"
 ></A
 ><H2
 >Description</H2
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 >result</I
 ></TT
 > if present.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -162,7 +162,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcnamegetconstant.html"
+HREF="fcnamegetconstantfor.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -186,13 +186,13 @@ VALIGN="top"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcNameGetConstant</TD
+>FcNameGetConstantFor</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3908"
+HREF="x103.html#AEN3949"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0b5784d..7d49c3b 100644 (file)
@@ -10,13 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x103.html#AEN3908"><LINK
+HREF="x103.html#AEN3949"><LINK
 REL="PREVIOUS"
 TITLE="FcNameUnregisterConstants"
 HREF="fcnameunregisterconstants.html"><LINK
 REL="NEXT"
-TITLE="FcNameConstant"
-HREF="fcnameconstant.html"></HEAD
+TITLE="FcNameGetConstantFor"
+HREF="fcnamegetconstantfor.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcnameconstant.html"
+HREF="fcnamegetconstantfor.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCNAMEGETCONSTANT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3958"
+NAME="AEN3999"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3958"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3961"
+NAME="AEN4002"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3962"
+NAME="AEN4003"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3969"
+NAME="AEN4010"
 ></A
 ><H2
 >Description</H2
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >string</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -176,7 +176,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcnameconstant.html"
+HREF="fcnamegetconstantfor.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3908"
+HREF="x103.html#AEN3949"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -200,7 +200,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcNameConstant</TD
+>FcNameGetConstantFor</TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/fontconfig-devel/fcnamegetconstantfor.html b/doc/fontconfig-devel/fcnamegetconstantfor.html
new file mode 100644 (file)
index 0000000..29520ee
--- /dev/null
@@ -0,0 +1,220 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcNameGetConstantFor</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConstant"
+HREF="x103.html#AEN3949"><LINK
+REL="PREVIOUS"
+TITLE="FcNameGetConstant"
+HREF="fcnamegetconstant.html"><LINK
+REL="NEXT"
+TITLE="FcNameConstant"
+HREF="fcnameconstant.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="fcnamegetconstant.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="fcnameconstant.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCNAMEGETCONSTANTFOR"
+></A
+>FcNameGetConstantFor</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN4019"
+></A
+><H2
+>Name</H2
+>FcNameGetConstantFor&nbsp;--&nbsp;Lookup symbolic constant For object</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN4022"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4023"
+></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 FcConstant * <TT
+CLASS="FUNCTION"
+>FcNameGetConstantFor</TT
+></CODE
+>(FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>string</I
+></TT
+>, char *<TT
+CLASS="PARAMETER"
+><I
+>object</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4032"
+></A
+><H2
+>Description</H2
+><P
+>Return the FcConstant structure related to symbolic constant <TT
+CLASS="PARAMETER"
+><I
+>string</I
+></TT
+>
+for <TT
+CLASS="PARAMETER"
+><I
+>object</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="fcnamegetconstant.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="fcnameconstant.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcNameGetConstant</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x103.html#AEN3949"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcNameConstant</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index e27eb5c..1d00b48 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x103.html#AEN3843"><LINK
+HREF="x103.html#AEN3884"><LINK
 REL="PREVIOUS"
 TITLE="FcNameUnregisterObjectTypes"
 HREF="fcnameunregisterobjecttypes.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCNAMEGETOBJECTTYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3893"
+NAME="AEN3934"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3893"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3896"
+NAME="AEN3937"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3897"
+NAME="AEN3938"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3904"
+NAME="AEN3945"
 ></A
 ><H2
 >Description</H2
@@ -133,7 +133,7 @@ CLASS="PARAMETER"
 >object</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -181,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3843"
+HREF="x103.html#AEN3884"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 354a462..9f20cd9 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >name</I
 ></TT
 > from the standard text format described above into a pattern.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index b74f770..f1bc8ba 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x103.html#AEN3908"><LINK
+HREF="x103.html#AEN3949"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTERCONSTANTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3916"
+NAME="AEN3957"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3916"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3919"
+NAME="AEN3960"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3920"
+NAME="AEN3961"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3929"
+NAME="AEN3970"
 ></A
 ><H2
 >Description</H2
 ><P
 >Deprecated.  Does nothing.  Returns FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3908"
+HREF="x103.html#AEN3949"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c91b03f..94dc05c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x103.html#AEN3843"><LINK
+HREF="x103.html#AEN3884"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTEROBJECTTYPES"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3851"
+NAME="AEN3892"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3851"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3854"
+NAME="AEN3895"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3855"
+NAME="AEN3896"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3864"
+NAME="AEN3905"
 ></A
 ><H2
 >Description</H2
 ><P
 >Deprecated.  Does nothing.  Returns FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3843"
+HREF="x103.html#AEN3884"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 85801a0..da608d3 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -137,7 +137,7 @@ NAME="AEN1182"
 >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().
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 690e59c..324d49d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x103.html#AEN3908"><LINK
+HREF="x103.html#AEN3949"><LINK
 REL="PREVIOUS"
 TITLE="FcNameRegisterConstants"
 HREF="fcnameregisterconstants.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTERCONSTANTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3937"
+NAME="AEN3978"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3937"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3940"
+NAME="AEN3981"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3941"
+NAME="AEN3982"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3950"
+NAME="AEN3991"
 ></A
 ><H2
 >Description</H2
 ><P
 >Deprecated.  Does nothing.  Returns FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3908"
+HREF="x103.html#AEN3949"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1d69b3e..9035fc0 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x103.html#AEN3843"><LINK
+HREF="x103.html#AEN3884"><LINK
 REL="PREVIOUS"
 TITLE="FcNameRegisterObjectTypes"
 HREF="fcnameregisterobjecttypes.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTEROBJECTTYPES"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3872"
+NAME="AEN3913"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3872"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3875"
+NAME="AEN3916"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3876"
+NAME="AEN3917"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,13 +134,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3885"
+NAME="AEN3926"
 ></A
 ><H2
 >Description</H2
 ><P
 >Deprecated.  Does nothing.  Returns FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3843"
+HREF="x103.html#AEN3884"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e317cd1..4987707 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -141,7 +141,7 @@ NAME="AEN1567"
 ><P
 >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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index fa1835f..65519f7 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -185,7 +185,7 @@ CLASS="PARAMETER"
 >result</I
 ></TT
 > variable directly.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 93792b6..9a7ecbe 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN1546"
 >Description</H2
 ><P
 >Creates an empty set.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 9507198..dba86c2 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN1586"
 >Description</H2
 ><P
 >Destroys an object set.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index f243a69..2bfb99e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -353,7 +353,7 @@ any existing list of values.
 CLASS="FUNCTION"
 >FcPatternAddRange</TT
 > are available since 2.11.91.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 969330d..6468005 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -159,7 +159,7 @@ CLASS="PARAMETER"
 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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 0c5fac5..26230cf 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -161,7 +161,7 @@ CLASS="PARAMETER"
 >strong</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 5262f2c..4163f91 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -232,7 +232,7 @@ CLASS="PARAMETER"
 ></TT
 >
 variable.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 697cb23..d4a9a48 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN261"
 >Description</H2
 ><P
 >Creates a pattern with no properties; used to build patterns from scratch.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 1b93344..d01bebb 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,9 +139,9 @@ NAME="AEN848"
 ><H2
 >Description</H2
 ><P
->Deletes all values associated with the property `object', returning 
+>Deletes all values associated with the property `object', returning
 whether the property existed or not.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 90f8c79..6441d76 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN320"
 ><P
 >Decrement the pattern reference count. If all references are gone, destroys
 the pattern, in the process destroying all related values.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 9a6ddc9..1f23659 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 ></TT
 >. Each pattern may be modified without affecting the
 other.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index ab0163a..244194b 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >pb</I
 ></TT
 > are exactly alike.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 4b5fb5d..3fb9964 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -161,7 +161,7 @@ CLASS="PARAMETER"
 >os</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 7a71c60..61d4cbf 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -123,7 +123,7 @@ CLASS="PARAMETER"
 >, const FcObjectSet *<TT
 CLASS="PARAMETER"
 ><I
-></I
+>os</I
 ></TT
 >);</CODE
 ></P
@@ -163,7 +163,7 @@ CLASS="PARAMETER"
 >p</I
 ></TT
 > is returned.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index bf65dde..5e8938e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -161,7 +161,7 @@ CLASS="PARAMETER"
 >p</I
 ></TT
 > if any and returns FcTrue. returns FcFalse otherwise.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 4e397a1..6dcbfdd 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -532,7 +532,7 @@ CLASS="PARAMETER"
 ></TT
 >,
 lower-cased and with spaces removed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 9ffb769..74d5c5d 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -399,7 +399,7 @@ in preference to FcPatternGet to provide compile-time typechecking.
 CLASS="FUNCTION"
 >FcPatternGetRange</TT
 > are available since 2.11.91.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index fb31673..2c1dc8a 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -168,7 +168,7 @@ CLASS="PARAMETER"
 >.
 The value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 3e1da11..049917c 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -179,7 +179,7 @@ CLASS="PARAMETER"
 >.
 The Value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 54e575f..19308d2 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -136,7 +136,7 @@ NAME="AEN436"
 ><P
 >Returns a 32-bit number which is the same for any two patterns which are
 equal.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 2e0afd2..e0c1796 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -161,7 +161,7 @@ CLASS="PARAMETER"
 ></TT
 >
 point to same object and contains same values. return FcFalse otherwise.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 3835083..e0a207c 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -157,7 +157,7 @@ CLASS="PARAMETER"
 >iter</I
 ></TT
 > isn't valid.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 03a85ad..efa9741 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -179,7 +179,7 @@ CLASS="PARAMETER"
 if given.
 The value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index c2d0b6c..8389c61 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >p</I
 ></TT
 >. returns FcFalse otherwise.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 0a73e77..8d019e1 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -157,7 +157,7 @@ CLASS="PARAMETER"
 ></TT
 > has been changed to the next object.
 returns FcFalse otherwise.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 22df744..fd731fb 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -162,7 +162,7 @@ CLASS="PARAMETER"
 ></TT
 >
 will not have any valid data.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index cb9db56..ca3ca02 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >iter</I
 ></TT
 > isn't valid, returns 0.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index d8d9fbf..bb2ee49 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >p</I
 ></TT
 > has.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 6b4a9b5..e4d98ff 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -137,7 +137,7 @@ NAME="AEN1117"
 >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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index c77ddd4..35bc6a2 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 >. Patterns are freed only
 when the reference count reaches zero.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index d7afc7c..7e61968 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,9 +144,9 @@ NAME="AEN871"
 ><H2
 >Description</H2
 ><P
->Removes the value associated with the property `object' at position `id', returning 
+>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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 1252e21..5c5c720 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 >range</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 32acf94..2a8901d 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="FUNCTION"
 >FcRangeCreateDouble</TT
 > creates a new FcRange object with
 double sized value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 1959aae..ab62c48 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="FUNCTION"
 >FcRangeCreateInteger</TT
 > creates a new FcRange object with
 integer sized value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 9e27c32..3c72ebf 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="FUNCTION"
 >FcRangeDestroy</TT
 > destroys a FcRange object, freeing
 all memory associated with it.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index 9de1d5d..fd0a3e7 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -148,7 +148,7 @@ CLASS="PARAMETER"
 >end</I
 ></TT
 > as the range.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
index f1643ad..facbb28 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrDirname"
 HREF="fcstrdirname.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRBASENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5501"
+NAME="AEN5585"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN5501"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5504"
+NAME="AEN5588"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5505"
+NAME="AEN5589"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5512"
+NAME="AEN5596"
 ></A
 ><H2
 >Description</H2
@@ -135,7 +135,7 @@ CLASS="PARAMETER"
 > stripped of any leading
 directory names.  This is returned in newly allocated storage which should
 be freed when no longer needed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -183,7 +183,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcstrbuildfilename.html b/doc/fontconfig-devel/fcstrbuildfilename.html
new file mode 100644 (file)
index 0000000..82002c1
--- /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
+>FcStrBuildFilename</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="String utilities"
+HREF="x103.html#AEN5130"><LINK
+REL="PREVIOUS"
+TITLE="FcStrFree"
+HREF="fcstrfree.html"><LINK
+REL="NEXT"
+TITLE="FcStrDirname"
+HREF="fcstrdirname.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="fcstrfree.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="fcstrdirname.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCSTRBUILDFILENAME"
+></A
+>FcStrBuildFilename</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN5544"
+></A
+><H2
+>Name</H2
+>FcStrBuildFilename&nbsp;--&nbsp;Concatenate strings as a file path</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN5547"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN5548"
+></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"
+>FcChar8 * <TT
+CLASS="FUNCTION"
+>FcStrBuildFilename</TT
+></CODE
+>(const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>path</I
+></TT
+>, ...<TT
+CLASS="PARAMETER"
+><I
+></I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN5557"
+></A
+><H2
+>Description</H2
+><P
+>Creates a filename from the given elements of strings as file paths
+and concatenate them with the appropriate file separator.
+Arguments must be null-terminated.
+This returns a newly-allocated memory which should be freed when no longer needed.
+            </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="fcstrfree.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="fcstrdirname.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcStrFree</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x103.html#AEN5130"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcStrDirname</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index 1517bd3..08d7fb6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCopyFilename"
 HREF="fcstrcopyfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMP"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5343"
+NAME="AEN5406"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5343"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5346"
+NAME="AEN5409"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5347"
+NAME="AEN5410"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5356"
+NAME="AEN5419"
 ></A
 ><H2
 >Description</H2
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >s2</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -203,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2b80cd4..eec02fb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCmp"
 HREF="fcstrcmp.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMPIGNORECASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5366"
+NAME="AEN5429"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5366"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5369"
+NAME="AEN5432"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5370"
+NAME="AEN5433"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5379"
+NAME="AEN5442"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 >. This test is
 case-insensitive for all proper UTF-8 encoded strings.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 02ee3f1..9efd4ff 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcToLower"
 HREF="fctolower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5280"
+NAME="AEN5343"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5280"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5283"
+NAME="AEN5346"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5284"
+NAME="AEN5347"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5291"
+NAME="AEN5354"
 ></A
 ><H2
 >Description</H2
@@ -145,7 +145,7 @@ CLASS="FUNCTION"
 >strdup</TT
 >, but that function isn't
 available on every platform.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -197,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 555d2b2..bd0e6d6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrDowncase"
 HREF="fcstrdowncase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPYFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5321"
+NAME="AEN5384"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5321"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5324"
+NAME="AEN5387"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5325"
+NAME="AEN5388"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5332"
+NAME="AEN5395"
 ></A
 ><H2
 >Description</H2
@@ -153,7 +153,7 @@ Returns NULL if '~' is the leading character and HOME is unset or disabled
 CLASS="FUNCTION"
 >FcConfigEnableHome</TT
 >).
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -205,7 +205,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1533eb4..43fe563 100644 (file)
@@ -10,10 +10,10 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
-TITLE="FcStrFree"
-HREF="fcstrfree.html"><LINK
+TITLE="FcStrBuildFilename"
+HREF="fcstrbuildfilename.html"><LINK
 REL="NEXT"
 TITLE="FcStrBasename"
 HREF="fcstrbasename.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcstrfree.html"
+HREF="fcstrbuildfilename.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCSTRDIRNAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5481"
+NAME="AEN5565"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5481"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5484"
+NAME="AEN5568"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5485"
+NAME="AEN5569"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5492"
+NAME="AEN5576"
 ></A
 ><H2
 >Description</H2
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 >.  This
 is returned in newly allocated storage which should be freed when no longer
 needed.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -160,7 +160,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcstrfree.html"
+HREF="fcstrbuildfilename.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -188,13 +188,13 @@ ACCESSKEY="N"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcStrFree</TD
+>FcStrBuildFilename</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bb382c7..5dac17e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCopy"
 HREF="fcstrcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRDOWNCASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5301"
+NAME="AEN5364"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5301"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5304"
+NAME="AEN5367"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5305"
+NAME="AEN5368"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5312"
+NAME="AEN5375"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 >, converting upper case
 letters to lower case and returns the allocated buffer.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 62816bb..69fdddf 100644 (file)
@@ -10,13 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrPlus"
 HREF="fcstrplus.html"><LINK
 REL="NEXT"
-TITLE="FcStrDirname"
-HREF="fcstrdirname.html"></HEAD
+TITLE="FcStrBuildFilename"
+HREF="fcstrbuildfilename.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcstrdirname.html"
+HREF="fcstrbuildfilename.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCSTRFREE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5462"
+NAME="AEN5525"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5462"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5465"
+NAME="AEN5528"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5466"
+NAME="AEN5529"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,14 +129,14 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5473"
+NAME="AEN5536"
 ></A
 ><H2
 >Description</H2
 ><P
 >This is just a wrapper around free(3) which helps track memory usage of
 strings within the fontconfig library.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -172,7 +172,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcstrdirname.html"
+HREF="fcstrbuildfilename.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -188,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -196,7 +196,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcStrDirname</TD
+>FcStrBuildFilename</TD
 ></TR
 ></TABLE
 ></DIV
index 901c1a0..a1ddce3 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetDestroy"
 HREF="fcstrsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRLISTCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4989"
+NAME="AEN5052"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4989"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4992"
+NAME="AEN5055"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4993"
+NAME="AEN5056"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5000"
+NAME="AEN5063"
 ></A
 ><H2
 >Description</H2
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >set</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 613d86c..e42a48b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrListNext"
 HREF="fcstrlistnext.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRLISTDONE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5052"
+NAME="AEN5115"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN5052"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5055"
+NAME="AEN5118"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5056"
+NAME="AEN5119"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5063"
+NAME="AEN5126"
 ></A
 ><H2
 >Description</H2
@@ -133,7 +133,7 @@ CLASS="PARAMETER"
 >list</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -181,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 16a4814..5c5b351 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrListCreate"
 HREF="fcstrlistcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRLISTFIRST"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5009"
+NAME="AEN5072"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5009"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5012"
+NAME="AEN5075"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5013"
+NAME="AEN5076"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5020"
+NAME="AEN5083"
 ></A
 ><H2
 >Description</H2
@@ -140,12 +140,12 @@ CLASS="PARAMETER"
 >list</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5024"
+NAME="AEN5087"
 ></A
 ><H2
 >Since</H2
@@ -202,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ffc6cec..d59ca30 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrListFirst"
 HREF="fcstrlistfirst.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRLISTNEXT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5032"
+NAME="AEN5095"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5032"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5035"
+NAME="AEN5098"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5036"
+NAME="AEN5099"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5043"
+NAME="AEN5106"
 ></A
 ><H2
 >Description</H2
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >list</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 243eb44..16f12f6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrStrIgnoreCase"
 HREF="fcstrstrignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRPLUS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5439"
+NAME="AEN5502"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5439"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5442"
+NAME="AEN5505"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5443"
+NAME="AEN5506"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5452"
+NAME="AEN5515"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 > there, returning the
 new string.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0879962..82c2da1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetEqual"
 HREF="fcstrsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4899"
+NAME="AEN4962"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4899"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4902"
+NAME="AEN4965"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4903"
+NAME="AEN4966"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4912"
+NAME="AEN4975"
 ></A
 ><H2
 >Description</H2
@@ -150,7 +150,7 @@ CLASS="PARAMETER"
 >set</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -202,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7695df1..53f1b03 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetAdd"
 HREF="fcstrsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADDFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4922"
+NAME="AEN4985"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4922"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4925"
+NAME="AEN4988"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4926"
+NAME="AEN4989"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4935"
+NAME="AEN4998"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 >, The copy
 is created with FcStrCopyFilename so that leading '~' values are replaced
 with the value of the HOME environment variable.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 864e57d..d7b1b2f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4834"
+NAME="AEN4897"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4834"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4837"
+NAME="AEN4900"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4838"
+NAME="AEN4901"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,13 +129,13 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4845"
+NAME="AEN4908"
 ></A
 ><H2
 >Description</H2
 ><P
 >Create an empty set.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -187,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9235499..1c864bd 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetAddFilename"
 HREF="fcstrsetaddfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDEL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4945"
+NAME="AEN5008"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4945"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4948"
+NAME="AEN5011"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4949"
+NAME="AEN5012"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4958"
+NAME="AEN5021"
 ></A
 ><H2
 >Description</H2
@@ -156,7 +156,7 @@ CLASS="PARAMETER"
 >s</I
 ></TT
 > was a member else FcFalse.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -208,7 +208,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fd17807..a104395 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetDel"
 HREF="fcstrsetdel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4969"
+NAME="AEN5032"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4969"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4972"
+NAME="AEN5035"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4973"
+NAME="AEN5036"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4980"
+NAME="AEN5043"
 ></A
 ><H2
 >Description</H2
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 >set</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -192,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a4d62b4..ee93dce 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetMember"
 HREF="fcstrsetmember.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4876"
+NAME="AEN4939"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4876"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4879"
+NAME="AEN4942"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4880"
+NAME="AEN4943"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4889"
+NAME="AEN4952"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 >. Ordering of strings within the two
 sets is not considered.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e67be21..bbf20b4 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x103.html#AEN4826"><LINK
+HREF="x103.html#AEN4889"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetCreate"
 HREF="fcstrsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETMEMBER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4853"
+NAME="AEN4916"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4853"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4856"
+NAME="AEN4919"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4857"
+NAME="AEN4920"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4866"
+NAME="AEN4929"
 ></A
 ><H2
 >Description</H2
@@ -151,7 +151,7 @@ CLASS="PARAMETER"
 >set</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -203,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN4826"
+HREF="x103.html#AEN4889"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c039d7e..2124378 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCmpIgnoreCase"
 HREF="fcstrcmpignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSTR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5389"
+NAME="AEN5452"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5389"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5392"
+NAME="AEN5455"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5393"
+NAME="AEN5456"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5402"
+NAME="AEN5465"
 ></A
 ><H2
 >Description</H2
@@ -163,7 +163,7 @@ CLASS="PARAMETER"
 ></TT
 >. This test will operate properly
 with UTF8 encoded strings.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -215,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 625f9e7..d3d099a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcStrStr"
 HREF="fcstrstr.html"><LINK
@@ -75,15 +75,15 @@ NAME="FCSTRSTRIGNORECASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5414"
+NAME="AEN5477"
 ></A
 ><H2
 >Name</H2
->FcStrStrIgnoreCase&nbsp;--&nbsp;locate UTF-8 substring ignoring ASCII case</DIV
+>FcStrStrIgnoreCase&nbsp;--&nbsp;locate UTF-8 substring ignoring case</DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5417"
+NAME="AEN5480"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5418"
+NAME="AEN5481"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5427"
+NAME="AEN5490"
 ></A
 ><H2
 >Description</H2
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><I
 >s2</I
 ></TT
-> in 
+> in
 <TT
 CLASS="PARAMETER"
 ><I
@@ -163,7 +163,7 @@ CLASS="PARAMETER"
 ></TT
 >.
 This test is case-insensitive for all proper UTF-8 encoded strings.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -215,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8d021cd..7717873 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcIsUpper"
 HREF="fcisupper.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCTOLOWER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5260"
+NAME="AEN5323"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5260"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5263"
+NAME="AEN5326"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5264"
+NAME="AEN5327"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5271"
+NAME="AEN5334"
 ></A
 ><H2
 >Description</H2
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 > to the
 equivalent lower case letter.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -193,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 232a567..8ee4137 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf8ToUcs4"
 HREF="fcutf8toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUCS4TOUTF8"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5102"
+NAME="AEN5165"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5102"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5105"
+NAME="AEN5168"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5106"
+NAME="AEN5169"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5115"
+NAME="AEN5178"
 ></A
 ><H2
 >Description</H2
@@ -152,7 +152,7 @@ CLASS="PARAMETER"
 ></TT
 > and returns the number of bytes needed to encode
 the char.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f899c57..0d4881e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf16ToUcs4"
 HREF="fcutf16toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16LEN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5186"
+NAME="AEN5249"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5186"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5189"
+NAME="AEN5252"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5190"
+NAME="AEN5253"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5205"
+NAME="AEN5268"
 ></A
 ><H2
 >Description</H2
@@ -197,7 +197,7 @@ CLASS="PARAMETER"
 ></TT
 > is a well-formed UTF16
 string.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -249,7 +249,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3f0130b..e1cee35 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf8Len"
 HREF="fcutf8len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16TOUCS4"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5155"
+NAME="AEN5218"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5155"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5158"
+NAME="AEN5221"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5159"
+NAME="AEN5222"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5172"
+NAME="AEN5235"
 ></A
 ><H2
 >Description</H2
@@ -184,7 +184,7 @@ CLASS="PARAMETER"
 >endian</I
 ></TT
 >.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -236,7 +236,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5eb3091..566345a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FcUcs4ToUtf8"
 HREF="fcucs4toutf8.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8LEN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5125"
+NAME="AEN5188"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5125"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5128"
+NAME="AEN5191"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5129"
+NAME="AEN5192"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5142"
+NAME="AEN5205"
 ></A
 ><H2
 >Description</H2
@@ -180,7 +180,7 @@ CLASS="PARAMETER"
 ></TT
 > is a
 well-formed UTF8 string.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -232,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1676afd..a2aae27 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x103.html#AEN5067"><LINK
+HREF="x103.html#AEN5130"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8TOUCS4"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN5075"
+NAME="AEN5138"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN5075"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN5078"
+NAME="AEN5141"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN5079"
+NAME="AEN5142"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5090"
+NAME="AEN5153"
 ></A
 ><H2
 >Description</H2
@@ -168,7 +168,7 @@ CLASS="PARAMETER"
 >len</I
 ></TT
 > bytes long.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -220,7 +220,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN5067"
+HREF="x103.html#AEN5130"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0c642ed..9b384db 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -141,7 +141,7 @@ CLASS="PARAMETER"
 ></TT
 >.  Values of type FcTypeString,
 FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 0bb6a1c..ed26e71 100644 (file)
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -135,7 +135,7 @@ NAME="AEN1866"
 >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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 5b66bbb..4dda97e 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -142,7 +142,7 @@ CLASS="PARAMETER"
 > to
 stdout. The format should not be considered part of the library
 specification as it may change in the future.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index 21e624a..8751133 100644 (file)
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -146,7 +146,7 @@ CLASS="PARAMETER"
 ></TT
 >
 may be safely destroyed without harming the new value.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
index e147b43..9b2b761 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcWeight"
-HREF="x103.html#AEN3996"><LINK
+HREF="x103.html#AEN4060"><LINK
 REL="PREVIOUS"
 TITLE="FcWeightToOpenTypeDouble"
 HREF="fcweighttoopentypedouble.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCWEIGHTFROMOPENTYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4051"
+NAME="AEN4115"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4051"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4054"
+NAME="AEN4118"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4055"
+NAME="AEN4119"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4062"
+NAME="AEN4126"
 ></A
 ><H2
 >Description</H2
@@ -143,12 +143,12 @@ CLASS="FUNCTION"
 >FcWeightFromOpenTypeDouble</TT
 > but with integer arguments.
 Use the other function instead.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4067"
+NAME="AEN4131"
 ></A
 ><H2
 >Since</H2
@@ -205,7 +205,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3996"
+HREF="x103.html#AEN4060"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d2b7778..88cd00f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcWeight"
-HREF="x103.html#AEN3996"><LINK
+HREF="x103.html#AEN4060"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x103.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCWEIGHTFROMOPENTYPEDOUBLE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4004"
+NAME="AEN4068"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4004"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4007"
+NAME="AEN4071"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4008"
+NAME="AEN4072"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4015"
+NAME="AEN4079"
 ></A
 ><H2
 >Description</H2
@@ -141,15 +141,15 @@ CLASS="FUNCTION"
 to use with FC_WEIGHT, from an double 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 doubleerpolates
+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
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4019"
+NAME="AEN4083"
 ></A
 ><H2
 >Since</H2
@@ -206,7 +206,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3996"
+HREF="x103.html#AEN4060"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 67705f3..5a972a1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcWeight"
-HREF="x103.html#AEN3996"><LINK
+HREF="x103.html#AEN4060"><LINK
 REL="PREVIOUS"
 TITLE="FcWeightFromOpenType"
 HREF="fcweightfromopentype.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCWEIGHTTOOPENTYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4075"
+NAME="AEN4139"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4075"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4078"
+NAME="AEN4142"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4079"
+NAME="AEN4143"
 ></A
 ><TABLE
 BORDER="0"
@@ -96,7 +96,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4086"
+NAME="AEN4150"
 ></A
 ><H2
 >Description</H2
@@ -136,12 +136,12 @@ CLASS="FUNCTION"
 >FcWeightToOpenTypeDouble</TT
 > but with integer arguments.
 Use the other function instead.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4091"
+NAME="AEN4155"
 ></A
 ><H2
 >Since</H2
@@ -194,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3996"
+HREF="x103.html#AEN4060"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9056d24..b67aa30 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcWeight"
-HREF="x103.html#AEN3996"><LINK
+HREF="x103.html#AEN4060"><LINK
 REL="PREVIOUS"
 TITLE="FcWeightFromOpenTypeDouble"
 HREF="fcweightfromopentypedouble.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCWEIGHTTOOPENTYPEDOUBLE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4027"
+NAME="AEN4091"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4027"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4030"
+NAME="AEN4094"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4031"
+NAME="AEN4095"
 ></A
 ><TABLE
 BORDER="0"
@@ -103,7 +103,7 @@ WIDTH="100%"
 ><PRE
 CLASS="FUNCSYNOPSISINFO"
 >#include &#60;fontconfig/fontconfig.h&#62;
-       </PRE
+        </PRE
 ></TD
 ></TR
 ></TABLE
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4038"
+NAME="AEN4102"
 ></A
 ><H2
 >Description</H2
@@ -144,12 +144,12 @@ CLASS="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.
-           </P
+            </P
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4043"
+NAME="AEN4107"
 ></A
 ><H2
 >Since</H2
@@ -206,7 +206,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x103.html#AEN3996"
+HREF="x103.html#AEN4060"
 ACCESSKEY="U"
 >Up</A
 ></TD
index eb0448d..2622be0 100644 (file)
@@ -43,9 +43,8 @@ CLASS="LEGALNOTICE"
 NAME="AEN12"
 ></A
 ><P
->              
-Copyright © 2002 Keith Packard
-                       </P
+>Copyright © 2002 Keith Packard
+                        </P
 ><P
 >Permission to use, copy, modify, distribute, and sell this software and its
 documentation for any purpose is hereby granted without fee, provided that
@@ -56,7 +55,7 @@ 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.
-                       </P
+                        </P
 ><P
 >THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
@@ -65,7 +64,7 @@ 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.
-                       </P
+                        </P
 ><P
 ></P
 ></DIV
index 3b580b2..4b9bbcf 100644 (file)
@@ -2,7 +2,7 @@
 <HTML
 ><HEAD
 ><TITLE
->Fontconfig Developers Reference, Version 2.13.1
+>Fontconfig Developers Reference, Version 2.14.2
  </TITLE
 ><META
 NAME="GENERATOR"
@@ -25,7 +25,7 @@ CLASS="TITLEPAGE"
 CLASS="TITLE"
 ><A
 NAME="AEN1"
->Fontconfig Developers Reference, Version 2.13.1</A
+>Fontconfig Developers Reference, Version 2.14.2</A
 ></H1
 ><A
 HREF="ln12.html"
index bf12b80..69edb6e 100644 (file)
@@ -499,7 +499,7 @@ HREF="fcvalueequal.html"
 ></DIV
 ><P
 >FcValue is a structure containing a type tag and a union of all possible
-datatypes.  The tag is an enum of type 
+datatypes.  The tag is an enum of type
 <I
 CLASS="EMPHASIS"
 >FcType</I
@@ -997,6 +997,11 @@ HREF="fcconfigfilename.html"
 >&nbsp;--&nbsp;Find a config file</DT
 ><DT
 ><A
+HREF="fcconfiggetfilename.html"
+>FcConfigGetFilename</A
+>&nbsp;--&nbsp;Find a config file</DT
+><DT
+><A
 HREF="fcconfigparseandload.html"
 >FcConfigParseAndLoad</A
 >&nbsp;--&nbsp;load a configuration file</DT
@@ -1043,7 +1048,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3843"
+NAME="AEN3884"
 >FcObjectType</A
 ></H2
 ><DIV
@@ -1080,7 +1085,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3908"
+NAME="AEN3949"
 >FcConstant</A
 ></H2
 ><DIV
@@ -1107,6 +1112,11 @@ HREF="fcnamegetconstant.html"
 >&nbsp;--&nbsp;Lookup symbolic constant</DT
 ><DT
 ><A
+HREF="fcnamegetconstantfor.html"
+>FcNameGetConstantFor</A
+>&nbsp;--&nbsp;Lookup symbolic constant For object</DT
+><DT
+><A
 HREF="fcnameconstant.html"
 >FcNameConstant</A
 >&nbsp;--&nbsp;Get the value for a symbolic constant</DT
@@ -1121,7 +1131,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3996"
+NAME="AEN4060"
 >FcWeight</A
 ></H2
 ><DIV
@@ -1162,7 +1172,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4094"
+NAME="AEN4158"
 >FcBlanks</A
 ></H2
 ><DIV
@@ -1212,7 +1222,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4178"
+NAME="AEN4242"
 >FcAtomic</A
 ></H2
 ><DIV
@@ -1275,7 +1285,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4339"
+NAME="AEN4403"
 >File and Directory routines</A
 ></H2
 ><DIV
@@ -1357,7 +1367,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4617"
+NAME="AEN4681"
 >FcCache routines</A
 ></H2
 ><DIV
@@ -1450,7 +1460,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4826"
+NAME="AEN4889"
 >FcStrSet and FcStrList</A
 ></H2
 ><DIV
@@ -1527,7 +1537,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN5067"
+NAME="AEN5130"
 >String utilities</A
 ></H2
 ><DIV
@@ -1611,7 +1621,7 @@ HREF="fcstrstr.html"
 ><A
 HREF="fcstrstrignorecase.html"
 >FcStrStrIgnoreCase</A
->&nbsp;--&nbsp;locate UTF-8 substring ignoring ASCII case</DT
+>&nbsp;--&nbsp;locate UTF-8 substring ignoring case</DT
 ><DT
 ><A
 HREF="fcstrplus.html"
@@ -1624,6 +1634,11 @@ HREF="fcstrfree.html"
 >&nbsp;--&nbsp;free a string</DT
 ><DT
 ><A
+HREF="fcstrbuildfilename.html"
+>FcStrBuildFilename</A
+>&nbsp;--&nbsp;Concatenate strings as a file path</DT
+><DT
+><A
 HREF="fcstrdirname.html"
 >FcStrDirname</A
 >&nbsp;--&nbsp;directory part of filename</DT
index e01736c..6f35fd1 100644 (file)
@@ -91,7 +91,7 @@ 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.  
+list of application-provided font files.
     </P
 ><P
 >The intent is to make font configurations relatively static, and shared by
@@ -153,8 +153,8 @@ CLASS="PROGRAMLISTING"
     slant          FC_SLANT               Int     Italic, oblique or roman
     weight         FC_WEIGHT              Int     Light, medium, demibold,
                                                   bold or black
-    size           FC_SIZE                Double  Point size
     width          FC_WIDTH               Int     Condensed, normal or expanded
+    size           FC_SIZE                Double  Point size
     aspect         FC_ASPECT              Double  Stretches glyphs horizontally
                                                   before hinting
     pixelsize      FC_PIXEL_SIZE          Double  Pixel size
@@ -163,14 +163,15 @@ CLASS="PROGRAMLISTING"
     foundry        FC_FOUNDRY             String  Font foundry name
     antialias      FC_ANTIALIAS           Bool    Whether glyphs can be
                                                   antialiased
+    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
     hinting        FC_HINTING             Bool    Whether the rasterizer should
                                                   use hinting
-    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
     verticallayout FC_VERTICAL_LAYOUT     Bool    Use vertical layout
     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
+                                                  relative to the config's sysroot
     index          FC_INDEX               Int     The index of the font within
                                                   the file
     ftface         FC_FT_FACE             FT_Face Use the specified FreeType
@@ -178,14 +179,11 @@ CLASS="PROGRAMLISTING"
     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 (deprecated)
-    symbol         FC_SYMBOL              Bool    Whether font uses MS symbol-font encoding
-    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
-    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
+    scale          FC_SCALE               Double  Scale factor for point-&#62;pixel
+                                                  conversions (deprecated)
     minspace       FC_MINSPACE            Bool    Eliminate leading from line
                                                   spacing
     charset        FC_CHARSET             CharSet Unicode chars encoded by
@@ -202,15 +200,22 @@ CLASS="PROGRAMLISTING"
                                                   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
+    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
     namelang       FC_NAMELANG            String  Language name to be used for the
                                                   default value of familylang,
                                                   stylelang and fullnamelang
+    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
+                                                  OpenType to be enabled
     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
+    symbol         FC_SYMBOL              Bool    Whether font uses MS symbol-font encoding
+    color          FC_COLOR               Bool    Whether any glyphs have color
+    fontvariations FC_FONT_VARIATIONS     String  comma-separated string of axes in variable font
+    variable       FC_VARIABLE            Bool    Whether font is Variable Font
+    fonthashint    FC_FONT_HAS_HINT       Bool    Whether font has hinting
+    order          FC_ORDER               Int     Order number of the font
     </PRE
 ></TD
 ></TR
index 3017e71..aef88d7 100644 (file)
@@ -206,8 +206,9 @@ CLASS="PROGRAMLISTING"
                         double d;
                         const FcMatrix *m;
                         const FcCharSet *c;
-                       void *f;
-                       const FcLangSet *l;
+                        void *f;
+                        const FcLangSet *l;
+                        const FcRange   *r;
                 } u;
         } FcValue;
     </PRE
@@ -234,8 +235,9 @@ CLASS="PROGRAMLISTING"
         FcTypeBool      b               b
         FcTypeMatrix    m               FcMatrix *
         FcTypeCharSet   c               FcCharSet *
-       FcTypeFTFace    f               void * (FT_Face)
-       FcTypeLangSet   l               FcLangSet *
+        FcTypeFTFace    f               void * (FT_Face)
+        FcTypeLangSet   l               FcLangSet *
+        FcTypeRange     r               FcRange *
     </PRE
 ></TD
 ></TR
@@ -249,14 +251,15 @@ CLASS="SECT2"
 CLASS="SECT2"
 ><A
 NAME="AEN58"
->FcPattern</A
+>FcPattern, FcPatternIter</A
 ></H2
 ><P
->holds a set of names with associated value lists; each name refers to a
+>An 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.
+interface doesn't demand that.  An FcPatternIter is used during iteration to
+access properties in FcPattern.
     </P
 ></DIV
 ><DIV
index bbef7de..9a612e4 100644 (file)
@@ -181,6 +181,8 @@ CLASS="PROGRAMLISTING"
                           familylang, stylelang, and fullnamelang
   prgname         String  String  Name of the running program
   postscriptname  String  Font family name in PostScript
+  fonthashint     Bool    Whether the font has hinting
+  order           Int     Order number of the font
     </PRE
 ></TD
 ></TR
@@ -422,7 +424,7 @@ WIDTH="100%"
 ><PRE
 CLASS="PROGRAMLISTING"
 >      &#60;?xml version="1.0"?&#62;
-       &#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+       &#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
        &#60;fontconfig&#62;
        ...
        &#60;/fontconfig&#62;
@@ -470,17 +472,23 @@ NAME="AEN67"
 ><H3
 ><TT
 CLASS="LITERAL"
->&#60;dir prefix="default"&#62;</TT
+>&#60;dir prefix="default" salt=""&#62;</TT
 ></H3
 ><P
 >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.
+to include in the set of available fonts.
+  </P
+><P
+>If 'prefix' is set to "default" or "cwd", the current working directory will be added as the path prefix prior to the value. 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. If 'prefix' is set to "relative", the path of current file will be added prior to the value.
+  </P
+><P
+>'salt' property affects to determine cache filename. this is useful for example when having different fonts sets on same path at container and share fonts from host on different font path.
   </P
 ></DIV
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN71"
+NAME="AEN73"
 ></A
 ><H3
 ><TT
@@ -514,7 +522,7 @@ version number (currently 7).
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN79"
+NAME="AEN81"
 ></A
 ><H3
 ><TT
@@ -535,7 +543,7 @@ the library.  If 'prefix' is set to "xdg", the value in the XDG_CONFIG_HOME envi
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN83"
+NAME="AEN85"
 ></A
 ><H3
 ><TT
@@ -560,7 +568,23 @@ order.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN90"
+NAME="AEN92"
+></A
+><H3
+><TT
+CLASS="LITERAL"
+>&#60;description domain="fontconfig-conf"&#62;</TT
+></H3
+><P
+>This element is supposed to hold strings which describe what a config is used for.
+This string can be translated through gettext. 'domain' needs to be set the proper name to apply then.
+fontconfig will tries to retrieve translations with 'domain' from gettext.
+  </P
+></DIV
+><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN96"
 ></A
 ><H3
 ><TT
@@ -584,7 +608,49 @@ the set of characters supported by the font.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN96"
+NAME="AEN102"
+></A
+><H3
+><TT
+CLASS="LITERAL"
+>&#60;remap-dir prefix="default" as-path="" salt=""&#62;</TT
+></H3
+><P
+>This element contains a directory name where will be mapped
+as the path 'as-path' in cached information.
+This is useful if the directory name is an alias
+(via a bind mount or symlink) to another directory in the system for
+which cached font information is likely to exist.
+  </P
+><P
+>'salt' property affects to determine cache filename as same as <TT
+CLASS="LITERAL"
+>&#60;dir&#62;</TT
+> element.
+  </P
+></DIV
+><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN108"
+></A
+><H3
+><TT
+CLASS="LITERAL"
+>&#60;reset-dirs /&#62;</TT
+></H3
+><P
+>This element removes all of fonts directories where added by <TT
+CLASS="LITERAL"
+>&#60;dir&#62;</TT
+> elements.
+This is useful to override fonts directories from system to own fonts directories only.
+  </P
+></DIV
+><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN113"
 ></A
 ><H3
 ><TT
@@ -607,7 +673,7 @@ automatically rebuild the internal datastructures when this interval passes.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN102"
+NAME="AEN119"
 ></A
 ><H3
 ><TT
@@ -622,7 +688,7 @@ against.  It holds acceptfont and rejectfont elements.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN106"
+NAME="AEN123"
 ></A
 ><H3
 ><TT
@@ -640,7 +706,7 @@ elements which are used to match fonts.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN110"
+NAME="AEN127"
 ></A
 ><H3
 ><TT
@@ -657,7 +723,7 @@ pattern elements which are used to match fonts.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN114"
+NAME="AEN131"
 ></A
 ><H3
 ><TT
@@ -676,7 +742,7 @@ only apply to directories, not to individual fonts.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN118"
+NAME="AEN135"
 ></A
 ><H3
 ><TT
@@ -695,7 +761,7 @@ Pattern elements include patelt elements.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN122"
+NAME="AEN139"
 ></A
 ><H3
 ><TT
@@ -712,7 +778,7 @@ elements.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN126"
+NAME="AEN143"
 ></A
 ><H3
 ><TT
@@ -738,7 +804,7 @@ build the fontconfig database.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN132"
+NAME="AEN149"
 ></A
 ><H3
 ><TT
@@ -762,7 +828,7 @@ outer &#60;match&#62; element has selected.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN136"
+NAME="AEN153"
 ></A
 ><H3
 ><TT
@@ -809,7 +875,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN142"
+NAME="AEN159"
 ></A
 ><H3
 ><TT
@@ -840,7 +906,7 @@ instead of -.5).
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN150"
+NAME="AEN167"
 ></A
 ><H3
 ><TT
@@ -859,7 +925,7 @@ but they can also be more involved expressions.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN155"
+NAME="AEN172"
 ></A
 ><H3
 ><TT
@@ -877,7 +943,7 @@ representation.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN160"
+NAME="AEN177"
 ></A
 ><H3
 ><TT
@@ -895,7 +961,7 @@ an Unicode code point or more.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN165"
+NAME="AEN182"
 ></A
 ><H3
 ><TT
@@ -913,7 +979,7 @@ a RFC-3066-style languages or more.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN170"
+NAME="AEN187"
 ></A
 ><H3
 ><TT
@@ -933,7 +999,7 @@ of 'font' in a match that has target="pattern".
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN174"
+NAME="AEN191"
 ></A
 ><H3
 ><TT
@@ -1009,7 +1075,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN179"
+NAME="AEN196"
 ></A
 ><H3
 ><TT
@@ -1045,7 +1111,7 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN190"
+NAME="AEN207"
 ></A
 ><H3
 ><TT
@@ -1080,7 +1146,7 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN201"
+NAME="AEN218"
 ></A
 ><H3
 ><TT
@@ -1094,7 +1160,7 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN205"
+NAME="AEN222"
 ></A
 ><H3
 ><TT
@@ -1110,7 +1176,7 @@ of the third.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN209"
+NAME="AEN226"
 ></A
 ><H3
 ><TT
@@ -1160,7 +1226,7 @@ families to the end of the family list.
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN223"
+NAME="AEN240"
 ></A
 ><H3
 ><TT
@@ -1174,7 +1240,7 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN227"
+NAME="AEN244"
 ></A
 ><H3
 ><TT
@@ -1201,14 +1267,14 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN235"
+NAME="AEN252"
 ></A
 ><H2
 >EXAMPLE CONFIGURATION FILE</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN237"
+NAME="AEN254"
 ></A
 ><H3
 >System configuration file</H3
@@ -1224,7 +1290,7 @@ WIDTH="100%"
 ><PRE
 CLASS="PROGRAMLISTING"
 >&#60;?xml version="1.0"?&#62;
-&#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+&#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
 &#60;!-- /etc/fonts/fonts.conf file to configure system font access --&#62;
 &#60;fontconfig&#62;
 &#60;!-- 
@@ -1334,7 +1400,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN241"
+NAME="AEN258"
 ></A
 ><H3
 >User configuration file</H3
@@ -1351,7 +1417,7 @@ WIDTH="100%"
 ><PRE
 CLASS="PROGRAMLISTING"
 >&#60;?xml version="1.0"?&#62;
-&#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+&#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
 &#60;!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration --&#62;
 &#60;fontconfig&#62;
 
@@ -1413,7 +1479,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN245"
+NAME="AEN262"
 ></A
 ><H2
 >Files</H2
@@ -1484,7 +1550,7 @@ per-directory caches.  This file is automatically maintained by fontconfig. plea
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN262"
+NAME="AEN279"
 ></A
 ><H2
 >Environment variables</H2
@@ -1560,7 +1626,7 @@ CLASS="LITERAL"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN284"
+NAME="AEN301"
 ></A
 ><H2
 >See Also</H2
@@ -1575,12 +1641,12 @@ TARGET="_top"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN288"
+NAME="AEN305"
 ></A
 ><H2
 >Version</H2
 ><P
->Fontconfig version 2.13.1
+>Fontconfig version 2.14.2
 
            </P
 ></DIV
index 16b70bb..ede3199 100644 (file)
Binary files a/doc/fontconfig-user.pdf and b/doc/fontconfig-user.pdf differ
index 89df86e..d6ba37e 100644 (file)
@@ -140,6 +140,8 @@ convenience for the applications' rendering mechanism.
                           familylang, stylelang, and fullnamelang
   prgname         String  String  Name of the running program
   postscriptname  String  Font family name in PostScript
+  fonthashint     Bool    Whether the font has hinting
+  order           Int     Order number of the font
     </programlisting>
   </refsect2>
   <refsect2>
@@ -300,7 +302,7 @@ directory (&confdir;).  Each configuration file should contain the
 following structure:
     <programlisting>
        &lt;?xml version="1.0"?&gt;
-       &lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+       &lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
        &lt;fontconfig&gt;
        ...
        &lt;/fontconfig&gt;
@@ -310,9 +312,13 @@ following structure:
 This is the top level element for a font configuration and can contain
 <literal>&lt;dir&gt;</literal>, <literal>&lt;cachedir&gt;</literal>, <literal>&lt;include&gt;</literal>, <literal>&lt;match&gt;</literal> and <literal>&lt;alias&gt;</literal> elements in any order.
   </para></refsect2>
-  <refsect2><title><literal>&lt;dir prefix="default"&gt;</literal></title><para>
+  <refsect2><title><literal>&lt;dir prefix="default" salt=""&gt;</literal></title><para>
 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.
+to include in the set of available fonts.
+  </para><para>
+If 'prefix' is set to "default" or "cwd", the current working directory will be added as the path prefix prior to the value. 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. If 'prefix' is set to "relative", the path of current file will be added prior to the value.
+  </para><para>
+'salt' property affects to determine cache filename. this is useful for example when having different fonts sets on same path at container and share fonts from host on different font path.
   </para></refsect2>
   <refsect2><title><literal>&lt;cachedir prefix="default"&gt;</literal></title><para>
 This element contains a directory name that is supposed to be stored or read
@@ -340,6 +346,11 @@ This element provides a place to consolidate additional configuration
 information.  <literal>&lt;config&gt;</literal> can contain <literal>&lt;blank&gt;</literal> and <literal>&lt;rescan&gt;</literal> elements in any
 order.
   </para></refsect2>
+  <refsect2><title><literal>&lt;description domain="fontconfig-conf"&gt;</literal></title><para>
+This element is supposed to hold strings which describe what a config is used for.
+This string can be translated through gettext. 'domain' needs to be set the proper name to apply then.
+fontconfig will tries to retrieve translations with 'domain' from gettext.
+  </para></refsect2>
   <refsect2><title><literal>&lt;blank&gt;</literal></title><para>
 Fonts often include "broken" glyphs which appear in the encoding but are
 drawn as blanks on the screen.  Within the <literal>&lt;blank&gt;</literal> element, place each
@@ -347,6 +358,19 @@ Unicode characters which is supposed to be blank in an <literal>&lt;int&gt;</lit
 Characters outside of this set which are drawn as blank will be elided from
 the set of characters supported by the font.
   </para></refsect2>
+  <refsect2><title><literal>&lt;remap-dir prefix="default" as-path="" salt=""&gt;</literal></title><para>
+This element contains a directory name where will be mapped
+as the path 'as-path' in cached information.
+This is useful if the directory name is an alias
+(via a bind mount or symlink) to another directory in the system for
+which cached font information is likely to exist.
+  </para><para>
+'salt' property affects to determine cache filename as same as <literal>&lt;dir&gt;</literal> element.
+  </para></refsect2>
+  <refsect2><title><literal>&lt;reset-dirs /&gt;</literal></title><para>
+This element removes all of fonts directories where added by <literal>&lt;dir&gt;</literal> elements.
+This is useful to override fonts directories from system to own fonts directories only.
+  </para></refsect2>
   <refsect2><title><literal>&lt;rescan&gt;</literal></title><para>
 The <literal>&lt;rescan&gt;</literal> element holds an <literal>&lt;int&gt;</literal> element which indicates the default
 interval between automatic checks for font configuration changes.
@@ -568,7 +592,7 @@ This is an example of a system-wide configuration file
     </para>
     <programlisting>
 &lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
 &lt;!-- &confdir;/fonts.conf file to configure system font access --&gt;
 &lt;fontconfig&gt;
 &lt;!-- 
@@ -679,7 +703,7 @@ $XDG_CONFIG_HOME/fontconfig/fonts.conf
     </para>
     <programlisting>
 &lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
 &lt;!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration --&gt;
 &lt;fontconfig&gt;
 
index b6aa7a8..6874ab0 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,44 +21,48 @@ 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.
-
+   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
@@ -73,7 +77,8 @@ Functional Overview
   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
+  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
@@ -88,7 +93,8 @@ Functional Overview
   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 (deprecated)
+  scale           Double  Scale factor for point->pixel conversions (dep
+recated)
   dpi             Double  Target dots per inch
   rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
                           none - subpixel geometry
@@ -100,470 +106,530 @@ Functional Overview
   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
+  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 enabled
-  namelang        String  Language name to be used for the default value of
+  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
+  fonthashint     Bool    Whether the font has hinting
+  order           Int     Order number of the font
 
+Font Matching
 
-  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.
 
-   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 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
-     MATCH2        4096    Display font-matching transformation in patterns
-
-
-   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
+  MATCH2        4096    Display font-matching transformation in patterns
+
+   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 "urn:fontconfig: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 fontconfig
-   cache file version number (currently 7).
-
-  <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" salt="">
+
+   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 "default" or "cwd", the current working
+   directory will be added as the path prefix prior to the value.
+   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. If
+   'prefix' is set to "relative", the path of current file will be
+   added prior to the value.
+
+   'salt' property affects to determine cache filename. this is
+   useful for example when having different fonts sets on same
+   path at container and share fonts from host on different font
+   path.
+
+<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 fontconfig cache file version number
+   (currently 7).
+
+<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.
-
-  <rejectfont>
+<config>
+
+   This element provides a place to consolidate additional
+   configuration information. <config> can contain <blank> and
+   <rescan> elements in any order.
+
+<description domain="fontconfig-conf">
+
+   This element is supposed to hold strings which describe what a
+   config is used for. This string can be translated through
+   gettext. 'domain' needs to be set the proper name to apply
+   then. fontconfig will tries to retrieve translations with
+   'domain' from gettext.
+
+<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.
+
+<remap-dir prefix="default" as-path="" salt="">
 
-   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.
+   This element contains a directory name where will be mapped as
+   the path 'as-path' in cached information. This is useful if the
+   directory name is an alias (via a bind mount or symlink) to
+   another directory in the system for which cached font
+   information is likely to exist.
 
-  <glob>
+   'salt' property affects to determine cache filename as same as
+   <dir> element.
 
-   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.
+<reset-dirs />
 
-  <pattern>
+   This element removes all of fonts directories where added by
+   <dir> elements. This is useful to override fonts directories
+   from system to own fonts directories only.
 
-   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.
+<rescan>
 
-  <patelt name="property">
+   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.
+
+<rejectfont>
+
+   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>
+
+   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>
+
+   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 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">
 
-   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
+   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">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <!-- /etc/fonts/fonts.conf file to configure system font access -->
 <fontconfig>
 <!--
@@ -577,24 +643,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" compare="not_eq"><string>sans-serif</string></test>
-        <test qual="all" name="family" compare="not_eq"><string>serif</string></test>
-        <test qual="all" name="family" compare="not_eq"><string>monospace</string></test>
-        <edit name="family" mode="append_last"><string>sans-serif</string></edit>
+        <test qual="all" name="family" compare="not_eq"><string>sans-ser
+if</string></test>
+        <test qual="all" name="family" compare="not_eq"><string>serif</s
+tring></test>
+        <test qual="all" name="family" compare="not_eq"><string>monospac
+e</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
@@ -666,147 +738,149 @@ 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 "urn:fontconfig: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.
 
    FONTCONFIG_SYSROOT is used to set a default sysroot directory.
 
    FC_DEBUG is used to output the detailed debugging messages. see
-   [1]Debugging Applications section for more details.
-
-   FC_DBG_MATCH_FILTER is used to filter out the patterns. this takes a
-   comma-separated list of object names and effects only when FC_DEBUG has
-   MATCH2. see [2]Debugging Applications section for more details.
-
-   FC_LANG is used to specify the default language as the weak binding in the
-   query. if this isn't set, the default language will be determined from
-   current locale.
-
-   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.
-
-   SOURCE_DATE_EPOCH is used to ensure fc-cache(1) generates files in a
-   deterministic manner in order to support reproducible builds. When set to
-   a numeric representation of UNIX timestamp, fontconfig will prefer this
-   value over using the modification timestamps of the input files in order
-   to identify which cache files require regeneration. If SOURCE_DATE_EPOCH
-   is not set (or is newer than the mtime of the directory), the existing
+   Debugging Applications section for more details.
+
+   FC_DBG_MATCH_FILTER is used to filter out the patterns. this
+   takes a comma-separated list of object names and effects only
+   when FC_DEBUG has MATCH2. see Debugging Applications section
+   for more details.
+
+   FC_LANG is used to specify the default language as the weak
+   binding in the query. if this isn't set, the default language
+   will be determined from current locale.
+
+   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.
+
+   SOURCE_DATE_EPOCH is used to ensure fc-cache(1) generates files
+   in a deterministic manner in order to support reproducible
+   builds. When set to a numeric representation of UNIX timestamp,
+   fontconfig will prefer this value over using the modification
+   timestamps of the input files in order to identify which cache
+   files require regeneration. If SOURCE_DATE_EPOCH is not set (or
+   is newer than the mtime of the directory), the existing
    behaviour is unchanged.
 
 See Also
 
    fc-cat(1), fc-cache(1), fc-list(1), fc-match(1), fc-query(1),
-   [3]SOURCE_DATE_EPOCH.
+   SOURCE_DATE_EPOCH.
 
 Version
 
-   Fontconfig version 2.13.1
-
-References
-
-   Visible links
-   1. file:///tmp/html-cm5uzN#DEBUG
-   2. file:///tmp/html-cm5uzN#DEBUG
-   3. https://reproducible-builds.org/specs/source-date-epoch/
+   Fontconfig version 2.14.2
index e6a3cd9..2a2fe68 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FONTS-CONF" "5" "30 8月 2018" "" ""
+.TH "FONTS-CONF" "5" "27 1月 2023" "" ""
 .SH NAME
 fonts.conf \- Font configuration files
 .SH SYNOPSIS
@@ -31,7 +31,7 @@ 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. 
+list of application-provided font files.
 .PP
 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
@@ -56,55 +56,58 @@ properties for font matching and font completion. Others are provided as a
 convenience for the applications' rendering mechanism.
 .sp
 .nf
-  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 (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 (deprecated)
-  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 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
+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 (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
+                        (deprecated)
+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 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
+fonthashint     Bool    Whether the font has hinting
+order           Int     Order number of the font
     
 .sp
 .fi
@@ -172,7 +175,7 @@ list of family names, second a list of point sizes and finally a list of
 additional properties:
 .sp
 .nf
-       <families>-<point sizes>:<name1>=<values1>:<name2>=<values2>\&...
+<families>-<point sizes>:<name1>=<values1>:<name2>=<values2>\&...
     
 .sp
 .fi
@@ -183,13 +186,13 @@ symbolic constants that simultaneously indicate both a name and a value.
 Here are some examples:
 .sp
 .nf
-  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
+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
     
 .sp
 .fi
@@ -208,21 +211,21 @@ interpreted as a number, and each bit within that value controls different
 debugging messages.
 .sp
 .nf
-  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
-  MATCH2        4096    Display font-matching transformation in patterns
+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
+MATCH2        4096    Display font-matching transformation in patterns
   
 .sp
 .fi
@@ -262,11 +265,11 @@ directory (/etc/fonts). Each configuration file should contain the
 following structure:
 .sp
 .nf
-       <?xml version="1.0"?>
-       <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-       <fontconfig>
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
 \&...
-       </fontconfig>
+</fontconfig>
     
 .sp
 .fi
@@ -274,10 +277,14 @@ following structure:
 .PP
 This is the top level element for a font configuration and can contain
 <dir>, <cachedir>, <include>, <match> and <alias> elements in any order.
-.SS "<DIR PREFIX=""DEFAULT"">"
+.SS "<DIR PREFIX=""DEFAULT"" SALT="""">"
 .PP
 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.
+to include in the set of available fonts.
+.PP
+If 'prefix' is set to "default" or "cwd", the current working directory will be added as the path prefix prior to the value. 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. If 'prefix' is set to "relative", the path of current file will be added prior to the value.
+.PP
+\&'salt' property affects to determine cache filename. this is useful for example when having different fonts sets on same path at container and share fonts from host on different font path.
 .SS "<CACHEDIR PREFIX=""DEFAULT"">"
 .PP
 This element contains a directory name that is supposed to be stored or read
@@ -288,7 +295,7 @@ a directory in the users home directory. If 'prefix' is set to "xdg", the value
 The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
 named ``<hash value>-<architecture>\&.cache-<version>\&'',
 where <version> is the fontconfig cache file
-version number (currently 7).
+version number (currently 8).
 .SS "<INCLUDE IGNORE_MISSING=""NO"" PREFIX=""DEFAULT"">"
 .PP
 This element contains the name of an additional configuration file or
@@ -304,6 +311,11 @@ the library. If 'prefix' is set to "xdg", the value in the XDG_CONFIG_HOME envir
 This element provides a place to consolidate additional configuration
 information. <config> can contain <blank> and <rescan> elements in any
 order.
+.SS "<DESCRIPTION DOMAIN=""FONTCONFIG-CONF"">"
+.PP
+This element is supposed to hold strings which describe what a config is used for.
+This string can be translated through gettext. 'domain' needs to be set the proper name to apply then.
+fontconfig will tries to retrieve translations with 'domain' from gettext.
 .SS "<BLANK>"
 .PP
 Fonts often include "broken" glyphs which appear in the encoding but are
@@ -311,6 +323,19 @@ 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.
+.SS "<REMAP-DIR PREFIX=""DEFAULT"" AS-PATH="""" SALT="""">"
+.PP
+This element contains a directory name where will be mapped
+as the path 'as-path' in cached information.
+This is useful if the directory name is an alias
+(via a bind mount or symlink) to another directory in the system for
+which cached font information is likely to exist.
+.PP
+\&'salt' property affects to determine cache filename as same as <dir> element.
+.SS "<RESET-DIRS />"
+.PP
+This element removes all of fonts directories where added by <dir> elements.
+This is useful to override fonts directories from system to own fonts directories only.
 .SS "<RESCAN>"
 .PP
 The <rescan> element holds an <int> element which indicates the default
@@ -337,7 +362,8 @@ pattern elements which are used to match fonts.
 .SS "<GLOB>"
 .PP
 Glob elements hold shell-style filename matching patterns (including ? and
-*) which match fonts based on their complete pathnames. This can be used to
+*) which match fonts based on their complete pathnames. If it starts with '~',
+it refers to a directory in the users home directory. 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
@@ -368,7 +394,7 @@ build the fontconfig database.
 .SS "<TEST QUAL=""ANY"" NAME=""PROPERTY"" TARGET=""DEFAULT"" COMPARE=""EQ"">"
 .PP
 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 
+('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
@@ -390,16 +416,16 @@ with "same" binding using the value from the matched pattern element.
 \&'mode' is one of:
 .sp
 .nf
-  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
+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
     
 .sp
 .fi
@@ -443,54 +469,57 @@ Holds the name of a constant; these are always integers and serve as
 symbolic names for common font values:
 .sp
 .nf
-  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
+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
+ultrabold       weight          205
+black           weight          210
+heavy           weight          210
+extrablack      weight          215
+ultrablack      weight          215
+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
     
 .sp
 .fi
@@ -531,106 +560,138 @@ This is an example of a system-wide configuration file
 .sp
 .nf
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <!-- /etc/fonts/fonts.conf file to configure system font access -->
 <fontconfig>
-<!-- 
-       Find fonts in these directories
--->
-<dir>/usr/share/fonts</dir>
-<dir>/usr/X11R6/lib/X11/fonts</dir>
+  <!--
+    Find fonts in these directories
+  -->
+  <dir>/usr/share/fonts</dir>
+  <dir>/usr/X11R6/lib/X11/fonts</dir>
 
-<!--
-       Accept deprecated 'mono' alias, replacing it with 'monospace'
--->
-<match target="pattern">
-       <test qual="any" name="family"><string>mono</string></test>
-       <edit name="family" mode="assign"><string>monospace</string></edit>
-</match>
+  <!--
+    Accept deprecated 'mono' alias, replacing it with 'monospace'
+  -->
+  <match target="pattern">
+    <test qual="any" name="family">
+      <string>mono</string>
+    </test>
+    <edit name="family" mode="assign">
+      <string>monospace</string>
+    </edit>
+  </match>
 
-<!--
-       Names not including any well known alias are given 'sans-serif'
--->
-<match target="pattern">
-       <test qual="all" name="family" compare="not_eq"><string>sans-serif</string></test>
-       <test qual="all" name="family" compare="not_eq"><string>serif</string></test>
-       <test qual="all" name="family" compare="not_eq"><string>monospace</string></test>
-       <edit name="family" mode="append_last"><string>sans-serif</string></edit>
-</match>
+  <!--
+    Names not including any well known alias are given 'sans-serif'
+  -->
+  <match target="pattern">
+    <test qual="all" name="family" compare="not_eq">
+      <string>sans-serif</string>
+    </test>
+    <test qual="all" name="family" compare="not_eq">
+      <string>serif</string>
+    </test>
+    <test qual="all" name="family" compare="not_eq">
+      <string>monospace</string>
+    </test>
+    <edit name="family" mode="append_last">
+      <string>sans-serif</string>
+    </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>
+  <!--
+    Load per-user customization file, but don't complain
+    if it doesn't exist
+  -->
+  <include ignore_missing="yes" prefix="xdg">
+    fontconfig/fonts.conf
+  </include>
 
-<!--
-       Load local customization files, but don't complain
-       if there aren't any
--->
-<include ignore_missing="yes">conf.d</include>
-<include ignore_missing="yes">local.conf</include>
+  <!--
+    Load local customization files, but don't complain
+    if there aren't any
+  -->
+  <include ignore_missing="yes">conf.d</include>
+  <include ignore_missing="yes">local.conf</include>
 
-<!--
-       Alias well known font names to available TrueType fonts.
-       These substitute TrueType faces for similar Type1
-       faces to improve screen appearance.
--->
-<alias>
-       <family>Times</family>
-       <prefer><family>Times New Roman</family></prefer>
-       <default><family>serif</family></default>
-</alias>
-<alias>
-       <family>Helvetica</family>
-       <prefer><family>Arial</family></prefer>
-       <default><family>sans</family></default>
-</alias>
-<alias>
-       <family>Courier</family>
-       <prefer><family>Courier New</family></prefer>
-       <default><family>monospace</family></default>
-</alias>
+  <!--
+    Alias well known font names to available TrueType fonts.
+    These substitute TrueType faces for similar Type1
+    faces to improve screen appearance.
+  -->
+  <alias>
+    <family>Times</family>
+    <prefer>
+      <family>Times New Roman</family>
+    </prefer>
+    <default>
+      <family>serif</family>
+    </default>
+  </alias>
+  <alias>
+    <family>Helvetica</family>
+    <prefer>
+      <family>Arial</family>
+    </prefer>
+    <default>
+      <family>sans</family>
+    </default>
+  </alias>
+  <alias>
+    <family>Courier</family>
+    <prefer>
+      <family>Courier New</family>
+    </prefer>
+    <default>
+      <family>monospace</family>
+    </default>
+  </alias>
 
-<!--
-       Provide required aliases for standard names
-       Do these after the users configuration file so that
-       any aliases there are used preferentially
--->
-<alias>
-       <family>serif</family>
-       <prefer><family>Times New Roman</family></prefer>
-</alias>
-<alias>
-       <family>sans</family>
-       <prefer><family>Arial</family></prefer>
-</alias>
-<alias>
-       <family>monospace</family>
-       <prefer><family>Andale Mono</family></prefer>
-</alias>
+  <!--
+    Provide required aliases for standard names
+    Do these after the users configuration file so that
+    any aliases there are used preferentially
+  -->
+  <alias>
+    <family>serif</family>
+    <prefer>
+      <family>Times New Roman</family>
+    </prefer>
+  </alias>
+  <alias>
+    <family>sans</family>
+    <prefer>
+      <family>Arial</family>
+    </prefer>
+  </alias>
+  <alias>
+    <family>monospace</family>
+    <prefer>
+      <family>Andale Mono</family>
+    </prefer>
+  </alias>
 
-<--
-       The example of the requirements of OR operator;
-       If the 'family' contains 'Courier New' OR 'Courier'
-       add 'monospace' as the alternative
--->
-<match target="pattern">
-       <test name="family" compare="eq">
-               <string>Courier New</string>
-       </test>
-       <edit name="family" mode="prepend">
-               <string>monospace</string>
-       </edit>
-</match>
-<match target="pattern">
-       <test name="family" compare="eq">
-               <string>Courier</string>
-       </test>
-       <edit name="family" mode="prepend">
-               <string>monospace</string>
-       </edit>
-</match>
+  <--
+    The example of the requirements of OR operator;
+    If the 'family' contains 'Courier New' OR 'Courier'
+    add 'monospace' as the alternative
+  -->
+  <match target="pattern">
+    <test name="family" compare="eq">
+      <string>Courier New</string>
+    </test>
+    <edit name="family" mode="prepend">
+      <string>monospace</string>
+    </edit>
+  </match>
+  <match target="pattern">
+    <test name="family" compare="eq">
+      <string>Courier</string>
+    </test>
+    <edit name="family" mode="prepend">
+      <string>monospace</string>
+    </edit>
+  </match>
 
 </fontconfig>
     
@@ -643,58 +704,62 @@ $XDG_CONFIG_HOME/fontconfig/fonts.conf
 .sp
 .nf
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration -->
-<fontconfig>
-
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <!--
-       Private font directory
+  $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration
 -->
-<dir prefix="xdg">fonts</dir>
+<fontconfig>
 
-<!--
-       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>
+  <!--
+    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>
     
 .sp
@@ -712,7 +777,7 @@ 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 
+format. The master fonts.conf file references this directory in an
 <include> directive.
 .PP
 \fBfonts.dtd\fR
@@ -760,4 +825,4 @@ is used to ensure fc-cache(1) generates files in a deterministic manner in order
 fc-cat(1), fc-cache(1), fc-list(1), fc-match(1), fc-query(1), SOURCE_DATE_EPOCH <URL:https://reproducible-builds.org/specs/source-date-epoch/>\&.
 .SH "VERSION"
 .PP
-Fontconfig version 2.13.1
+Fontconfig version 2.14.2
index f076baf..580348b 100644 (file)
@@ -1,8 +1,8 @@
 <!--
    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
@@ -12,7 +12,7 @@
    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
 @:@
     <refentry id="@FUNC@">
 @;@
-       <refmeta>
+        <refmeta>
 @?TITLE@
-           <refentrytitle>@TITLE@</refentrytitle>
+            <refentrytitle>@TITLE@</refentrytitle>
 @:@
-           <refentrytitle>@FUNC@</refentrytitle>
+            <refentrytitle>@FUNC@</refentrytitle>
 @;@
-           <manvolnum>3</manvolnum>
-           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
-       </refmeta>
-       <refnamediv>
+            <manvolnum>3</manvolnum>
+            <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+        </refmeta>
+        <refnamediv>
 @{PROTOTYPE@
-           <refname>@FUNC@</refname>
+            <refname>@FUNC@</refname>
 @}PROTOTYPE@
-           <refpurpose>@PURPOSE@</refpurpose>
-       </refnamediv>
-       <refsynopsisdiv>
-       <funcsynopsis>
-       <funcsynopsisinfo>
+            <refpurpose>@PURPOSE@</refpurpose>
+        </refnamediv>
+        <refsynopsisdiv>
+        <funcsynopsis>
+        <funcsynopsisinfo>
 @?SYNOPSIS@
 @SYNOPSIS@
 @:@
 #include &lt;fontconfig/fontconfig.h&gt;
 @;@
-       </funcsynopsisinfo>
+        </funcsynopsisinfo>
 @{PROTOTYPE@
-       <funcprototype>
-           <funcdef>@?RET@@RET@@:@void@;@ <function>@FUNC@</function></funcdef>
+        <funcprototype>
+            <funcdef>@?RET@@RET@@:@void@;@ <function>@FUNC@</function></funcdef>
 @?TYPE1@
-               <paramdef>@TYPE1@<parameter>@ARG1@</parameter></paramdef>
+                <paramdef>@TYPE1@<parameter>@ARG1@</parameter></paramdef>
 @;@
 @?TYPE2@
-               <paramdef>@TYPE2@<parameter>@ARG2@</parameter></paramdef>
+                <paramdef>@TYPE2@<parameter>@ARG2@</parameter></paramdef>
 @;@
 @?TYPE3@
-               <paramdef>@TYPE3@<parameter>@ARG3@</parameter></paramdef>
+                <paramdef>@TYPE3@<parameter>@ARG3@</parameter></paramdef>
 @;@
 @?TYPE4@
-               <paramdef>@TYPE4@<parameter>@ARG4@</parameter></paramdef>
+                <paramdef>@TYPE4@<parameter>@ARG4@</parameter></paramdef>
 @;@
 @?TYPE5@
-               <paramdef>@TYPE5@<parameter>@ARG5@</parameter></paramdef>
+                <paramdef>@TYPE5@<parameter>@ARG5@</parameter></paramdef>
 @;@
 @?TYPE6@
-               <paramdef>@TYPE6@<parameter>@ARG6@</parameter></paramdef>
+                <paramdef>@TYPE6@<parameter>@ARG6@</parameter></paramdef>
 @;@
 @?TYPE7@
-               <paramdef>@TYPE7@<parameter>@ARG7@</parameter></paramdef>
+                <paramdef>@TYPE7@<parameter>@ARG7@</parameter></paramdef>
 @;@
-       </funcprototype>
+        </funcprototype>
 @}PROTOTYPE@
-       </funcsynopsis>
-       </refsynopsisdiv>
-       <refsect1><title>Description</title>
-           <para>
+        </funcsynopsis>
+        </refsynopsisdiv>
+        <refsect1><title>Description</title>
+            <para>
 @DESC@
-           </para>
-       </refsect1>
+            </para>
+        </refsect1>
 @?SINCE@
-       <refsect1><title>Since</title>
-           <para>version @SINCE@</para>
-       </refsect1>
+        <refsect1><title>Since</title>
+            <para>version @SINCE@</para>
+        </refsect1>
 @;@
     </refentry>
diff --git a/doc/meson.build b/doc/meson.build
new file mode 100644 (file)
index 0000000..b46d350
--- /dev/null
@@ -0,0 +1,177 @@
+doc_targets = []
+
+docbook2man = find_program('docbook2man', required: get_option('doc-man'))
+docbook2txt = find_program('docbook2txt', required: get_option('doc-txt'))
+docbook2pdf = find_program('docbook2pdf', required: get_option('doc-pdf'))
+docbook2html = find_program('docbook2html', required: get_option('doc-html'))
+
+# docbook is very spammy
+run_quiet = find_program('run-quiet.py')
+
+# .fncs files
+doc_funcs_fncs = [
+  'fcatomic',
+  'fcblanks',
+  'fccache',
+  'fccharset',
+  'fcconfig',
+  'fcconstant',
+  'fcdircache',
+  'fcfile',
+  'fcfontset',
+  'fcformat',
+  'fcfreetype',
+  'fcinit',
+  'fclangset',
+  'fcmatrix',
+  'fcobjectset',
+  'fcobjecttype',
+  'fcpattern',
+  'fcrange',
+  'fcstring',
+  'fcstrset',
+  'fcvalue',
+  'fcweight',
+]
+
+fncs_files = []
+foreach f : doc_funcs_fncs
+  fncs_files += files('@0@.fncs'.format(f))
+endforeach
+
+man_pages = []
+
+extract_man_list = find_program('extract-man-list.py')
+man_list = run_command(extract_man_list, fncs_files, check: true).stdout().split()
+
+foreach m : man_list
+  man_pages += ['@0@.3'.format(m)]
+endforeach
+
+# Generate sgml pages for funcs
+edit_sgml = find_program('edit-sgml.py')
+
+# copy into build directory, it includes generated files from build directory
+fontconfig_devel_sgml = configure_file(output: 'fontconfig-devel.sgml',
+  input: 'fontconfig-devel.sgml',
+  copy: true)
+
+fontconfig_user_sgml = configure_file(output: 'fontconfig-user.sgml',
+  input: 'fontconfig-user.sgml',
+  copy: true)
+
+version_conf = configuration_data()
+version_conf.set('VERSION', meson.project_version())
+
+configure_file(output: 'version.sgml',
+  input: 'version.sgml.in',
+  configuration: version_conf)
+
+confdir_conf = configuration_data()
+confdir_conf.set('BASECONFIGDIR', fc_configdir)
+
+confdir_sgml = configure_file(output: 'confdir.sgml',
+  input: 'confdir.sgml.in',
+  configuration: confdir_conf)
+
+funcs_sgml = []
+
+foreach f : doc_funcs_fncs
+  funcs_sgml += [custom_target('@0@.sgml'.format(f),
+    input: [files('func.sgml'), files('@0@.fncs'.format(f))],
+    output: '@0@.sgml'.format(f),
+    command: [edit_sgml, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
+    install: false)]
+endforeach
+
+if docbook2man.found()
+  doc_targets += ['man']
+
+  custom_target('devel-man',
+    input: [fontconfig_devel_sgml, funcs_sgml],
+    output: man_pages,
+    command: [run_quiet, docbook2man, '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('mandir') / 'man3',
+    install: true)
+
+  # fonts.conf(5)
+  custom_target('fonts-conf-5-man-page',
+    input: [fontconfig_user_sgml],
+    output: 'fonts-conf.5',
+    command: [run_quiet, docbook2man, '@INPUT0@', '--output', '@OUTDIR@'],
+    install_dir: get_option('mandir') / 'man5',
+    build_by_default: true,
+    install: true)
+
+  # Generate man pages for tools
+  foreach t : tools_man_pages
+    # docbook2man doesn't seem to have a --quiet option unfortunately
+    custom_target('@0@-man-page'.format(t),
+      input: '../@0@/@0@.sgml'.format(t),
+      output: '@0@.1'.format(t),
+      command: [run_quiet, docbook2man, '@INPUT@', '--output', '@OUTDIR@'],
+      install_dir: get_option('mandir') / 'man1',
+      install: true)
+  endforeach
+endif
+
+if docbook2pdf.found()
+  doc_targets += ['PDF']
+
+  custom_target('devel-pdf',
+    input: [fontconfig_devel_sgml, funcs_sgml],
+    output: 'fontconfig-devel.pdf',
+    command: [run_quiet, docbook2pdf, '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+
+  custom_target('user-pdf',
+    input: [fontconfig_user_sgml, funcs_sgml],
+    output: 'fontconfig-user.pdf',
+    command: [run_quiet, docbook2pdf, '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+endif
+
+if docbook2txt.found()
+  doc_targets += ['Text']
+
+  custom_target('devel-txt',
+    input: [fontconfig_devel_sgml, funcs_sgml],
+    output: 'fontconfig-devel.txt',
+    command: [run_quiet, docbook2txt, '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+
+  custom_target('user-txt',
+    input: [fontconfig_user_sgml, funcs_sgml],
+    output: 'fontconfig-user.txt',
+    command: [run_quiet, docbook2txt, '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+endif
+
+if docbook2html.found()
+  doc_targets += ['HTML']
+
+  custom_target('devel-html',
+    input: [fontconfig_devel_sgml, funcs_sgml],
+    output: 'fontconfig-devel.html',
+    command: [run_quiet, docbook2html, '--nochunks', '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+
+  custom_target('user-html',
+    input: [fontconfig_user_sgml, funcs_sgml],
+    output: 'fontconfig-user.html',
+    command: [run_quiet, docbook2html, '--nochunks', '@INPUT0@', '--output', '@OUTDIR@'],
+    build_by_default: true,
+    install_dir: get_option('datadir') / 'doc' / 'fontconfig',
+    install: true)
+endif
diff --git a/doc/run-quiet.py b/doc/run-quiet.py
new file mode 100755 (executable)
index 0000000..dff5dae
--- /dev/null
@@ -0,0 +1,36 @@
+#!/usr/bin/env python3
+#
+# fontconfig/doc/run-quiet.py
+#
+# Runs command and discards anything it sends to stdout
+#
+# Copyright © 2020 Tim-Philipp Müller
+#
+# 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.
+import subprocess
+import sys
+import os
+
+if len(sys.argv) < 2:
+  sys.exit('Usage: {} PROGRAM [ARGS..]'.format(sys.argv[0]))
+
+command = sys.argv[1:]
+
+with open(os.devnull, 'w') as out:
+  sys.exit(subprocess.run(command, stdout=out).returncode)
index 75393fa..735db97 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -722,8 +732,8 @@ 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."
-@OS_WIN32_TRUE@uninstall-local:
 @OS_WIN32_TRUE@install-data-local:
+@OS_WIN32_TRUE@uninstall-local:
 clean: clean-am
 
 clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
index 87e3020..a99adba 100644 (file)
 #include <fontconfig/fontconfig.h>
 #include <stdio.h>
 #include <stdlib.h>
+#ifdef HAVE_UNISTD_H
 #include <unistd.h>
+#endif
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <errno.h>
 #include <fcntl.h>
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 #include <string.h>
 #include <locale.h>
 
 #define O_BINARY 0
 #endif
 
+#ifndef S_ISDIR
+#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
+#endif
+
 #ifndef HAVE_GETOPT
 #define HAVE_GETOPT 0
 #endif
@@ -156,7 +164,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
            printf ("%s: ", dir);
            fflush (stdout);
        }
-       
+
        if (FcStrSetMember (processed_dirs, dir))
        {
            if (verbose)
@@ -164,7 +172,16 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
            continue;
        }
 
-       if (stat ((char *) dir, &statb) == -1)
+    FcChar8 *rooted_dir = NULL;
+    if (sysroot)
+    {
+        rooted_dir = FcStrPlus(sysroot, dir);
+    }
+    else {
+        rooted_dir = FcStrCopy(dir);
+    }
+
+       if (stat ((char *) rooted_dir, &statb) == -1)
        {
            switch (errno) {
            case ENOENT:
@@ -178,9 +195,14 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
                ret++;
                break;
            }
+           FcStrFree (rooted_dir);
+           rooted_dir = NULL;
            continue;
        }
 
+    FcStrFree(rooted_dir);
+    rooted_dir = NULL;
+
        if (!S_ISDIR (statb.st_mode))
        {
            fprintf (stderr, _("\"%s\": not a directory, skipping\n"), dir);
@@ -191,7 +213,6 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
        if (really_force)
        {
            FcDirCacheUnlink (dir, config);
-           FcDirCacheCreateUUID ((FcChar8 *) dir, FcTrue, config);
        }
 
        cache = NULL;
@@ -259,6 +280,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
        ret += scanDirs (sublist, config, force, really_force, verbose, error_on_no_fonts, changed);
        FcStrListDone (sublist);
     }
+
     if (error_on_no_fonts && !was_processed)
        ret++;
     return ret;
@@ -392,6 +414,17 @@ main (int argc, char **argv)
        return 1;
     }
 
+    if (verbose)
+    {
+       const FcChar8 *dir;
+
+       printf ("Font directories:\n");
+       while ((dir = FcStrListNext (list)))
+       {
+           printf ("\t%s\n", dir);
+       }
+       FcStrListFirst(list);
+    }
     changed = 0;
     ret = scanDirs (list, config, force, really_force, verbose, error_on_no_fonts, &changed);
     FcStrListDone (list);
index 5ae0107..6313020 100644 (file)
@@ -6,13 +6,13 @@
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
-    
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -68,15 +68,15 @@ manpage.1: manpage.sgml
       <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>
+        <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>
       <arg><option>--help</option></arg>
       <arg rep="repeat"><option><replaceable>dir</replaceable></option></arg>
-      
+
      </cmdsynopsis>
   </refsynopsisdiv>
   <refsect1>
@@ -108,14 +108,14 @@ 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>
+        <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>
@@ -152,13 +152,13 @@ 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>
+        <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>
@@ -190,18 +190,18 @@ manpage.1: manpage.sgml
     <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>%cachedir%</replaceable>/*-<replaceable>%arch%</replaceable>.cache-%version%</filename></term>
-       <listitem>
-         <para>These files are generated by <command>&dhpackage;</command>
+        <listitem>
+          <para>These files are generated by <command>&dhpackage;</command>
             and contain maps from file names to font properties. They are
             read by the fontconfig library at application startup to locate
             appropriate fonts.</para>
-       </listitem>
+        </listitem>
       </varlistentry>
     </variablelist>
   </refsect1>
diff --git a/fc-cache/meson.build b/fc-cache/meson.build
new file mode 100644 (file)
index 0000000..313cfef
--- /dev/null
@@ -0,0 +1,14 @@
+fccache = executable('fc-cache', ['fc-cache.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-cache']
+
+# Do not try to execute target's fc-cache on host when cross compiling
+if get_option('cache-build').enabled() and not meson.is_cross_build()
+  meson.add_install_script(fccache, '-s', '-f', '-v',
+    skip_if_destdir: true)
+endif
index cce350f..932ace2 100644 (file)
@@ -1,6 +1,6 @@
-# CaseFolding-11.0.0.txt
-# Date: 2018-01-31, 08:20:09 GMT
-# © 2018 Unicode®, Inc.
+# CaseFolding-14.0.0.txt
+# Date: 2021-03-08, 19:35:41 GMT
+# © 2021 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 #
 2C2C; C; 2C5C; # GLAGOLITIC CAPITAL LETTER SHTAPIC
 2C2D; C; 2C5D; # GLAGOLITIC CAPITAL LETTER TROKUTASTI A
 2C2E; C; 2C5E; # GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE
+2C2F; C; 2C5F; # GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI
 2C60; C; 2C61; # LATIN CAPITAL LETTER L WITH DOUBLE BAR
 2C62; C; 026B; # LATIN CAPITAL LETTER L WITH MIDDLE TILDE
 2C63; C; 1D7D; # LATIN CAPITAL LETTER P WITH STROKE
@@ -1227,6 +1228,20 @@ A7B3; C; AB53; # LATIN CAPITAL LETTER CHI
 A7B4; C; A7B5; # LATIN CAPITAL LETTER BETA
 A7B6; C; A7B7; # LATIN CAPITAL LETTER OMEGA
 A7B8; C; A7B9; # LATIN CAPITAL LETTER U WITH STROKE
+A7BA; C; A7BB; # LATIN CAPITAL LETTER GLOTTAL A
+A7BC; C; A7BD; # LATIN CAPITAL LETTER GLOTTAL I
+A7BE; C; A7BF; # LATIN CAPITAL LETTER GLOTTAL U
+A7C0; C; A7C1; # LATIN CAPITAL LETTER OLD POLISH O
+A7C2; C; A7C3; # LATIN CAPITAL LETTER ANGLICANA W
+A7C4; C; A794; # LATIN CAPITAL LETTER C WITH PALATAL HOOK
+A7C5; C; 0282; # LATIN CAPITAL LETTER S WITH HOOK
+A7C6; C; 1D8E; # LATIN CAPITAL LETTER Z WITH PALATAL HOOK
+A7C7; C; A7C8; # LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY
+A7C9; C; A7CA; # LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY
+A7D0; C; A7D1; # LATIN CAPITAL LETTER CLOSED INSULAR G
+A7D6; C; A7D7; # LATIN CAPITAL LETTER MIDDLE SCOTS S
+A7D8; C; A7D9; # LATIN CAPITAL LETTER SIGMOID S
+A7F5; C; A7F6; # LATIN CAPITAL LETTER REVERSED HALF H
 AB70; C; 13A0; # CHEROKEE SMALL LETTER A
 AB71; C; 13A1; # CHEROKEE SMALL LETTER E
 AB72; C; 13A2; # CHEROKEE SMALL LETTER I
@@ -1421,6 +1436,41 @@ FF3A; C; FF5A; # FULLWIDTH LATIN CAPITAL LETTER Z
 104D1; C; 104F9; # OSAGE CAPITAL LETTER GHA
 104D2; C; 104FA; # OSAGE CAPITAL LETTER ZA
 104D3; C; 104FB; # OSAGE CAPITAL LETTER ZHA
+10570; C; 10597; # VITHKUQI CAPITAL LETTER A
+10571; C; 10598; # VITHKUQI CAPITAL LETTER BBE
+10572; C; 10599; # VITHKUQI CAPITAL LETTER BE
+10573; C; 1059A; # VITHKUQI CAPITAL LETTER CE
+10574; C; 1059B; # VITHKUQI CAPITAL LETTER CHE
+10575; C; 1059C; # VITHKUQI CAPITAL LETTER DE
+10576; C; 1059D; # VITHKUQI CAPITAL LETTER DHE
+10577; C; 1059E; # VITHKUQI CAPITAL LETTER EI
+10578; C; 1059F; # VITHKUQI CAPITAL LETTER E
+10579; C; 105A0; # VITHKUQI CAPITAL LETTER FE
+1057A; C; 105A1; # VITHKUQI CAPITAL LETTER GA
+1057C; C; 105A3; # VITHKUQI CAPITAL LETTER HA
+1057D; C; 105A4; # VITHKUQI CAPITAL LETTER HHA
+1057E; C; 105A5; # VITHKUQI CAPITAL LETTER I
+1057F; C; 105A6; # VITHKUQI CAPITAL LETTER IJE
+10580; C; 105A7; # VITHKUQI CAPITAL LETTER JE
+10581; C; 105A8; # VITHKUQI CAPITAL LETTER KA
+10582; C; 105A9; # VITHKUQI CAPITAL LETTER LA
+10583; C; 105AA; # VITHKUQI CAPITAL LETTER LLA
+10584; C; 105AB; # VITHKUQI CAPITAL LETTER ME
+10585; C; 105AC; # VITHKUQI CAPITAL LETTER NE
+10586; C; 105AD; # VITHKUQI CAPITAL LETTER NJE
+10587; C; 105AE; # VITHKUQI CAPITAL LETTER O
+10588; C; 105AF; # VITHKUQI CAPITAL LETTER PE
+10589; C; 105B0; # VITHKUQI CAPITAL LETTER QA
+1058A; C; 105B1; # VITHKUQI CAPITAL LETTER RE
+1058C; C; 105B3; # VITHKUQI CAPITAL LETTER SE
+1058D; C; 105B4; # VITHKUQI CAPITAL LETTER SHE
+1058E; C; 105B5; # VITHKUQI CAPITAL LETTER TE
+1058F; C; 105B6; # VITHKUQI CAPITAL LETTER THE
+10590; C; 105B7; # VITHKUQI CAPITAL LETTER U
+10591; C; 105B8; # VITHKUQI CAPITAL LETTER VE
+10592; C; 105B9; # VITHKUQI CAPITAL LETTER XE
+10594; C; 105BB; # VITHKUQI CAPITAL LETTER Y
+10595; C; 105BC; # VITHKUQI CAPITAL LETTER ZE
 10C80; C; 10CC0; # OLD HUNGARIAN CAPITAL LETTER A
 10C81; C; 10CC1; # OLD HUNGARIAN CAPITAL LETTER AA
 10C82; C; 10CC2; # OLD HUNGARIAN CAPITAL LETTER EB
index 6485973..9cf3993 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -64,6 +64,7 @@
 #
 # Google Author(s): Behdad Esfahbod
 
+
 VPATH = @srcdir@
 am__is_gnu_make = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -160,6 +161,7 @@ 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
@@ -197,8 +199,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -218,6 +218,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -229,6 +231,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -239,6 +242,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -309,9 +313,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -320,8 +330,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -373,9 +381,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -392,23 +405,13 @@ DIR = fc-$(TAG)
 OUT = fc$(TAG)
 TMPL = $(OUT).tmpl.h
 TARG = $(OUT).h
-TSRC = $(DIR).c
-TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
-EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-AM_CPPFLAGS = \
-          -I$(builddir) \
-          -I$(srcdir) \
-          -I$(top_builddir)/src \
-          -I$(top_srcdir)/src \
-          -I$(top_builddir) \
-          -I$(top_srcdir) \
-          -DHAVE_CONFIG_H \
-          $(WARN_CFLAGS)
-
+TOOL = $(srcdir)/$(DIR).py
+noinst_SCRIPTS = $(TOOL)
+EXTRA_DIST = $(TARG) $(TMPL) $(DIST)
 noinst_HEADERS = $(TARG)
 ALIAS_FILES = fcalias.h fcaliastail.h
 BUILT_SOURCES = $(ALIAS_FILES)
-CLEANFILES = $(ALIAS_FILES) $(TOOL)
+CLEANFILES = $(ALIAS_FILES)
 MAINTAINERCLEANFILES = $(TARG)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
@@ -502,7 +505,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -539,11 +541,12 @@ distdir-am: $(DISTFILES)
 check-am: all-am
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(HEADERS)
+all-am: Makefile $(SCRIPTS) $(HEADERS)
 installdirs:
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -641,7 +644,7 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: all check install install-am install-strip
+.MAKE: all check install install-am install-exec install-strip
 
 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
        clean-libtool cscopelist-am ctags ctags-am distclean \
@@ -662,13 +665,10 @@ uninstall-am:
 update:
        curl -s -o $(srcdir)/CaseFolding.txt http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
 
-$(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
-
-$(TARG): $(TMPL) $(TSRC) $(DEPS)
-       $(AM_V_GEN) $(MAKE) $(TOOL) && \
+$(TARG): $(TMPL) $(TOOL) $(DEPS)
+       $(AM_V_GEN) \
        $(RM) $(TARG) && \
-       $(TOOL) $(ARGS) < $< > $(TARG).tmp && \
+       $(PYTHON) $(TOOL) $(ARGS) --template $< --output $(TARG).tmp && \
        mv $(TARG).tmp $(TARG) || ( $(RM) $(TARG).tmp && false )
 
 $(ALIAS_FILES):
diff --git a/fc-case/fc-case.c b/fc-case/fc-case.c
deleted file mode 100644 (file)
index 236bff5..0000000
+++ /dev/null
@@ -1,363 +0,0 @@
-/*
- * fontconfig/fc-case/fc-case.c
- *
- * Copyright © 2004 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"
-#include <ctype.h>
-
-#define MAX_OUT            32
-#define MAX_LINE    8192
-
-typedef enum _caseFoldClass { CaseFoldCommon, CaseFoldFull, CaseFoldSimple, CaseFoldTurkic } CaseFoldClass;
-
-typedef struct _caseFoldClassMap {
-    const char     *name;
-    CaseFoldClass   class;
-} CaseFoldClassMap;
-
-static const CaseFoldClassMap  caseFoldClassMap[] = {
-    { "C", CaseFoldCommon },
-    { "F", CaseFoldFull },
-    { "S", CaseFoldSimple },
-    { "T", CaseFoldTurkic },
-    { 0, 0 }
-};
-
-typedef struct _caseFoldRaw {
-    FcChar32       upper;
-    CaseFoldClass   class;
-    int                    nout;
-    FcChar32       lower[MAX_OUT];
-} CaseFoldRaw;
-
-static void
-panic (const char *reason)
-{
-    fprintf (stderr, "fc-case: panic %s\n", reason);
-    exit (1);
-}
-
-int                    maxExpand;
-static FcCaseFold      *folds;
-int                    nfolds;
-
-static FcCaseFold *
-addFold (void)
-{
-    if (folds)
-       folds = realloc (folds, (nfolds + 1) * sizeof (FcCaseFold));
-    else
-       folds = malloc (sizeof (FcCaseFold));
-    if (!folds)
-       panic ("out of memory");
-    return &folds[nfolds++];
-}
-
-static int
-ucs4_to_utf8 (FcChar32 ucs4,
-             FcChar8   dest[FC_UTF8_MAX_LEN])
-{
-    int        bits;
-    FcChar8 *d = dest;
-    
-    if      (ucs4 <       0x80) {  *d++=  ucs4;                         bits= -6; }
-    else if (ucs4 <      0x800) {  *d++= ((ucs4 >>  6) & 0x1F) | 0xC0;  bits=  0; }
-    else if (ucs4 <    0x10000) {  *d++= ((ucs4 >> 12) & 0x0F) | 0xE0;  bits=  6; }
-    else if (ucs4 <   0x200000) {  *d++= ((ucs4 >> 18) & 0x07) | 0xF0;  bits= 12; }
-    else if (ucs4 <  0x4000000) {  *d++= ((ucs4 >> 24) & 0x03) | 0xF8;  bits= 18; }
-    else if (ucs4 < 0x80000000) {  *d++= ((ucs4 >> 30) & 0x01) | 0xFC;  bits= 24; }
-    else return 0;
-
-    for ( ; bits >= 0; bits-= 6) {
-       *d++= ((ucs4 >> bits) & 0x3F) | 0x80;
-    }
-    return d - dest;
-}
-
-static int
-utf8_size (FcChar32 ucs4)
-{
-    FcChar8 utf8[FC_UTF8_MAX_LEN];
-    return ucs4_to_utf8 (ucs4, utf8 );
-}
-
-static FcChar8 *foldChars;
-static int     nfoldChars;
-static int     maxFoldChars;
-static FcChar32        minFoldChar;
-static FcChar32        maxFoldChar;
-
-static void
-addChar (FcChar32 c)
-{
-    FcChar8    utf8[FC_UTF8_MAX_LEN];
-    int                len;
-    int                i;
-
-    len = ucs4_to_utf8 (c, utf8);
-    if (foldChars)
-       foldChars = realloc (foldChars, (nfoldChars + len) * sizeof (FcChar8));
-    else
-       foldChars = malloc (sizeof (FcChar8) * len);
-    if (!foldChars)
-       panic ("out of memory");
-    for (i = 0; i < len; i++)
-       foldChars[nfoldChars + i] = utf8[i];
-    nfoldChars += len;
-}
-
-static int
-foldExtends (FcCaseFold *fold, CaseFoldRaw *raw)
-{
-    switch (fold->method) {
-    case FC_CASE_FOLD_RANGE:
-       if ((short) (raw->lower[0] - raw->upper) != fold->offset)
-           return 0;
-       if (raw->upper != fold->upper + fold->count)
-           return 0;
-       return 1;
-    case FC_CASE_FOLD_EVEN_ODD:
-       if ((short) (raw->lower[0] - raw->upper) != 1)
-           return 0;
-       if (raw->upper != fold->upper + fold->count + 1)
-           return 0;
-       return 1;
-    case FC_CASE_FOLD_FULL:
-       break;
-    }
-    return 0;
-}
-           
-static const char *
-case_fold_method_name (FcChar16 method)
-{
-    switch (method) {
-    case FC_CASE_FOLD_RANGE:   return "FC_CASE_FOLD_RANGE,";
-    case FC_CASE_FOLD_EVEN_ODD: return "FC_CASE_FOLD_EVEN_ODD,";
-    case FC_CASE_FOLD_FULL:    return "FC_CASE_FOLD_FULL,";
-    default:                   return "unknown";
-    }
-}
-
-static void
-dump (void)
-{
-    int            i;
-    
-    printf (   "#define FC_NUM_CASE_FOLD       %d\n", nfolds);
-    printf (   "#define FC_NUM_CASE_FOLD_CHARS %d\n", nfoldChars);
-    printf (   "#define FC_MAX_CASE_FOLD_CHARS %d\n", maxFoldChars);
-    printf (   "#define FC_MAX_CASE_FOLD_EXPAND        %d\n", maxExpand);
-    printf (   "#define FC_MIN_FOLD_CHAR       0x%08x\n", minFoldChar);
-    printf (   "#define FC_MAX_FOLD_CHAR       0x%08x\n", maxFoldChar);
-    printf (   "\n");
-    
-    /*
-     * Dump out ranges
-     */
-    printf ("static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {\n");
-    for (i = 0; i < nfolds; i++)
-    {
-       printf ("    { 0x%08x, %-22s 0x%04x, %6d },\n",
-               folds[i].upper, case_fold_method_name (folds[i].method),
-               folds[i].count, folds[i].offset);
-    }
-    printf ("};\n\n");
-
-    /*
-     * Dump out "other" values
-     */
-
-    printf ("static const FcChar8      fcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = {\n");
-    for (i = 0; i < nfoldChars; i++)
-    {
-       printf ("0x%02x", foldChars[i]);
-       if (i != nfoldChars - 1)
-       {
-           if ((i & 0xf) == 0xf) 
-               printf (",\n");
-           else
-               printf (",");
-       }
-    }
-    printf ("\n};\n");
-}
-
-/*
- * Read the standard Unicode CaseFolding.txt file
- */
-#define SEP "; \t\n"
-
-static int
-parseRaw (char *line, CaseFoldRaw *raw)
-{
-    char    *tok, *end;
-    int            i;
-    
-    if (!isxdigit (line[0]))
-       return 0;
-    /*
-     * Get upper case value
-     */
-    tok = strtok (line, SEP);
-    if (!tok || tok[0] == '#')
-       return 0;
-    raw->upper = strtol (tok, &end, 16);
-    if (end == tok)
-       return 0;
-    /*
-     * Get class
-     */
-    tok = strtok (NULL, SEP);
-    if (!tok || tok[0] == '#')
-       return 0;
-    for (i = 0; caseFoldClassMap[i].name; i++)
-       if (!strcmp (tok, caseFoldClassMap[i].name))
-       {
-           raw->class = caseFoldClassMap[i].class;
-           break;
-       }
-    if (!caseFoldClassMap[i].name)
-       return 0;
-       
-    /*
-     * Get list of result characters
-     */
-    for (i = 0; i < MAX_OUT; i++)
-    {
-       tok = strtok (NULL, SEP);
-       if (!tok || tok[0] == '#')
-           break;
-       raw->lower[i] = strtol (tok, &end, 16);
-       if (end == tok)
-           break;
-    }
-    if (i == 0)
-       return 0;
-    raw->nout = i;
-    return 1;
-}
-
-static int
-caseFoldReadRaw (FILE *in, CaseFoldRaw *raw)
-{
-    char    line[MAX_LINE];
-
-    for (;;)
-    {
-       if (!fgets (line, sizeof (line) - 1, in))
-           return 0;
-       if (parseRaw (line, raw))
-           return 1;
-    }
-}
-
-int
-main (int argc, char **argv)
-{
-    FcCaseFold         *fold = 0;
-    CaseFoldRaw                raw;
-    int                        i;
-    FILE               *caseFile;
-    char               line[MAX_LINE];
-    int                        expand;
-
-    if (argc != 2)
-       panic ("usage: fc-case CaseFolding.txt");
-    caseFile = fopen (argv[1], "r");
-    if (!caseFile)
-       panic ("can't open case folding file");
-    
-    while (caseFoldReadRaw (caseFile, &raw))
-    {
-       if (!minFoldChar)
-           minFoldChar = raw.upper;
-       maxFoldChar = raw.upper;
-       switch (raw.class) {
-       case CaseFoldCommon:
-       case CaseFoldFull:
-           if (raw.nout == 1)
-           {
-               if (fold && foldExtends (fold, &raw))
-                   fold->count = raw.upper - fold->upper + 1;
-               else
-               {
-                   fold = addFold ();
-                   fold->upper = raw.upper;
-                   fold->offset = raw.lower[0] - raw.upper;
-                   if (fold->offset == 1)
-                       fold->method = FC_CASE_FOLD_EVEN_ODD;
-                   else
-                       fold->method = FC_CASE_FOLD_RANGE;
-                   fold->count = 1;
-               }
-               expand = utf8_size (raw.lower[0]) - utf8_size(raw.upper);
-           }
-           else
-           {
-               fold = addFold ();
-               fold->upper = raw.upper;
-               fold->method = FC_CASE_FOLD_FULL;
-               fold->offset = nfoldChars;
-               for (i = 0; i < raw.nout; i++)
-                   addChar (raw.lower[i]);
-               fold->count = nfoldChars - fold->offset;
-               if (fold->count > maxFoldChars)
-                   maxFoldChars = fold->count;
-               expand = fold->count - utf8_size (raw.upper);
-           }
-           if (expand > maxExpand)
-               maxExpand = expand;
-           break;
-       case CaseFoldSimple:
-           break;
-       case CaseFoldTurkic:
-           break;
-       }
-    }
-    /*
-     * Scan the input until the marker is found
-     */
-    
-    while (fgets (line, sizeof (line), stdin))
-    {
-       if (!strncmp (line, "@@@", 3))
-           break;
-       fputs (line, stdout);
-    }
-    
-    /*
-     * Dump these tables
-     */
-    dump ();
-    
-    /*
-     * And flush out the rest of the input file
-     */
-
-    while (fgets (line, sizeof (line), stdin))
-       fputs (line, stdout);
-    
-    fflush (stdout);
-    exit (ferror (stdout));
-}
diff --git a/fc-case/fc-case.py b/fc-case/fc-case.py
new file mode 100755 (executable)
index 0000000..360bd32
--- /dev/null
@@ -0,0 +1,240 @@
+#!/usr/bin/env python3
+#
+# fontconfig/fc-case/fc-case.py
+#
+# Copyright © 2004 Keith Packard
+# Copyright © 2019 Tim-Philipp Müller
+#
+# 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.
+
+from enum import Enum
+import argparse
+import string
+import sys
+
+class CaseFoldClass(Enum):
+    COMMON = 1
+    FULL = 2
+    SIMPLE = 3
+    TURKIC = 4
+
+class CaseFoldMethod(Enum):
+    RANGE = 0
+    EVEN_ODD = 1
+    FULL = 2
+
+caseFoldClassMap = {
+  'C' : CaseFoldClass.COMMON,
+  'F' : CaseFoldClass.FULL,
+  'S' : CaseFoldClass.SIMPLE,
+  'T' : CaseFoldClass.TURKIC
+}
+
+folds = []
+
+def ucs4_to_utf8(ucs4):
+    utf8_rep = []
+    
+    if ucs4 < 0x80:
+        utf8_rep.append(ucs4)
+        bits = -6
+    elif ucs4 < 0x800:
+        utf8_rep.append(((ucs4 >> 6) & 0x1F) | 0xC0)
+        bits = 0
+    elif ucs4 < 0x10000:
+        utf8_rep.append(((ucs4 >> 12) & 0x0F) | 0xE0)
+        bits = 6
+    elif ucs4 < 0x200000:
+        utf8_rep.append(((ucs4 >> 18) & 0x07) | 0xF0)
+        bits = 12
+    elif ucs4 < 0x4000000:
+        utf8_rep.append(((ucs4 >> 24) & 0x03) | 0xF8)
+        bits = 18
+    elif ucs4 < 0x80000000:
+        utf8_rep.append(((ucs4 >> 30) & 0x01) | 0xFC)
+        bits = 24
+    else:
+        return [];
+
+    while bits >= 0:
+        utf8_rep.append(((ucs4 >> bits) & 0x3F) | 0x80)
+        bits-= 6
+
+    return utf8_rep
+
+def utf8_size(ucs4):
+    return len(ucs4_to_utf8(ucs4))
+
+case_fold_method_name_map = {
+    CaseFoldMethod.RANGE: 'FC_CASE_FOLD_RANGE,',
+    CaseFoldMethod.EVEN_ODD: 'FC_CASE_FOLD_EVEN_ODD,',
+    CaseFoldMethod.FULL: 'FC_CASE_FOLD_FULL,',
+}
+
+if __name__=='__main__':
+    parser = argparse.ArgumentParser()
+    parser.add_argument('case_folding_file')
+    parser.add_argument('--template', dest='template_file', default=None)
+    parser.add_argument('--output', dest='output_file', default=None)
+
+    args = parser.parse_args()
+
+    minFoldChar = None
+    maxFoldChar = None
+    fold = None
+
+    foldChars = []
+    maxFoldChars = 0
+
+    maxExpand = 0
+
+    # Read the standard Unicode CaseFolding.txt file
+    with open(args.case_folding_file, 'r', encoding='utf-8') as casefile:
+        for cnt, line in enumerate(casefile):
+            if not line or not line[0] in string.hexdigits:
+                continue
+
+            # print('Line {}: {}'.format(cnt, line.strip()))
+
+            tokens = line.split('; ')
+
+            if len(tokens) < 3:
+                print('Not enough tokens in line {}'.format(cnt), file=sys.stderr)
+                sys.exit(1)
+
+            # Get upper case value
+            upper = int(tokens.pop(0), 16)
+
+            # Get class
+            cfclass = caseFoldClassMap[tokens.pop(0)]
+
+            # Get list of result characters
+            lower = list(map(lambda s: int(s,16), tokens.pop(0).split()))
+
+            # print('\t----> {:04X} {} {}'.format(upper, cfclass, lower))
+
+            if not minFoldChar:
+                minFoldChar = upper
+
+            maxFoldChar = upper;
+
+            if cfclass in [CaseFoldClass.COMMON, CaseFoldClass.FULL]:
+                if len(lower) == 1:
+                    # foldExtends
+                    if fold and fold['method'] == CaseFoldMethod.RANGE:
+                        foldExtends = (lower[0] - upper) == fold['offset'] and upper == fold['upper'] + fold['count']
+                    elif fold and fold['method'] == CaseFoldMethod.EVEN_ODD:
+                        foldExtends = (lower[0] - upper) == 1 and upper == (fold['upper'] + fold['count'] + 1)
+                    else:
+                        foldExtends = False
+
+                    if foldExtends:
+                        # This modifies the last fold item in the array too
+                        fold['count'] = upper - fold['upper'] + 1;
+                    else:
+                        fold = {}
+                        fold['upper'] = upper
+                        fold['offset'] = lower[0] - upper;
+                        if fold['offset'] == 1:
+                            fold['method'] = CaseFoldMethod.EVEN_ODD
+                        else:
+                            fold['method'] = CaseFoldMethod.RANGE
+                        fold['count'] = 1
+                        folds.append(fold)
+                    expand = utf8_size (lower[0]) - utf8_size(upper)
+                else:
+                    fold = {}
+                    fold['upper'] = upper
+                    fold['method'] = CaseFoldMethod.FULL
+                    fold['offset'] = len(foldChars)
+
+                    # add chars
+                    for c in lower:
+                        utf8_rep = ucs4_to_utf8(c)
+                        # print('{} -> {}'.format(c,utf8_rep))
+                        for utf8_char in utf8_rep:
+                            foldChars.append(utf8_char)
+
+                    fold['count'] = len(foldChars) - fold['offset']
+                    folds.append(fold)
+
+                    if fold['count'] > maxFoldChars:
+                        maxFoldChars = fold['count']
+
+                    expand = fold['count'] - utf8_size(upper)
+                    if expand > maxExpand:
+                        maxExpand = expand
+
+    # Open output file
+    if args.output_file:
+        sys.stdout = open(args.output_file, 'w', encoding='utf-8')
+
+    # Read the template file
+    if args.template_file:
+        tmpl_file = open(args.template_file, 'r', encoding='utf-8')
+    else:
+        tmpl_file = sys.stdin
+    
+    # Scan the input until the marker is found
+    # FIXME: this is a bit silly really, might just as well harcode
+    #        the license header in the script and drop the template
+    for line in tmpl_file:
+        if line.strip() == '@@@':
+            break
+        print(line, end='')
+    
+    # Dump these tables
+    print('#define FC_NUM_CASE_FOLD\t{}'.format(len(folds)))
+    print('#define FC_NUM_CASE_FOLD_CHARS\t{}'.format(len(foldChars)))
+    print('#define FC_MAX_CASE_FOLD_CHARS\t{}'.format(maxFoldChars))
+    print('#define FC_MAX_CASE_FOLD_EXPAND\t{}'.format(maxExpand))
+    print('#define FC_MIN_FOLD_CHAR\t0x{:08x}'.format(minFoldChar))
+    print('#define FC_MAX_FOLD_CHAR\t0x{:08x}'.format(maxFoldChar))
+    print('')
+
+    # Dump out ranges
+    print('static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {')
+    for f in folds:
+         short_offset = f['offset']
+         if short_offset < -32367:
+             short_offset += 65536
+         if short_offset > 32368:
+             short_offset -= 65536
+         print('    {} 0x{:08x}, {:22s} 0x{:04x}, {:6d} {},'.format('{',
+               f['upper'], case_fold_method_name_map[f['method']],
+               f['count'], short_offset, '}'))
+    print('};\n')
+
+    # Dump out "other" values
+    print('static const FcChar8\tfcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = {')
+    for n, c in enumerate(foldChars):
+        if n == len(foldChars) - 1:
+            end = ''
+        elif n % 16 == 15:
+            end = ',\n'
+        else:
+            end = ','
+        print('0x{:02x}'.format(c), end=end)
+    print('\n};')
+
+    # And flush out the rest of the input file
+    for line in tmpl_file:
+        print(line, end='')
+    
+    sys.stdout.flush()
index 9cc0b9f..7c844f3 100644 (file)
@@ -22,7 +22,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#define FC_NUM_CASE_FOLD       291
+#define FC_NUM_CASE_FOLD       302
 #define FC_NUM_CASE_FOLD_CHARS 471
 #define FC_MAX_CASE_FOLD_CHARS 6
 #define FC_MAX_CASE_FOLD_EXPAND        4
@@ -264,7 +264,7 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x00002160, FC_CASE_FOLD_RANGE,    0x0010,     16 },
     { 0x00002183, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
     { 0x000024b6, FC_CASE_FOLD_RANGE,    0x001a,     26 },
-    { 0x00002c00, FC_CASE_FOLD_RANGE,    0x002f,     48 },
+    { 0x00002c00, FC_CASE_FOLD_RANGE,    0x0030,     48 },
     { 0x00002c60, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
     { 0x00002c62, FC_CASE_FOLD_RANGE,    0x0001, -10743 },
     { 0x00002c63, FC_CASE_FOLD_RANGE,    0x0001,  -3814 },
@@ -300,7 +300,14 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x0000a7b1, FC_CASE_FOLD_RANGE,    0x0001,  23254 },
     { 0x0000a7b2, FC_CASE_FOLD_RANGE,    0x0001,  23275 },
     { 0x0000a7b3, FC_CASE_FOLD_RANGE,    0x0001,    928 },
-    { 0x0000a7b4, FC_CASE_FOLD_EVEN_ODD, 0x0005,      1 },
+    { 0x0000a7b4, FC_CASE_FOLD_EVEN_ODD, 0x000f,      1 },
+    { 0x0000a7c4, FC_CASE_FOLD_RANGE,    0x0001,    -48 },
+    { 0x0000a7c5, FC_CASE_FOLD_RANGE,    0x0001,  23229 },
+    { 0x0000a7c6, FC_CASE_FOLD_RANGE,    0x0001,  30152 },
+    { 0x0000a7c7, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
+    { 0x0000a7d0, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
+    { 0x0000a7d6, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
+    { 0x0000a7f5, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
     { 0x0000ab70, FC_CASE_FOLD_RANGE,    0x0050,  26672 },
     { 0x0000fb00, FC_CASE_FOLD_FULL,     0x0002,    435 },
     { 0x0000fb01, FC_CASE_FOLD_FULL,     0x0002,    437 },
@@ -317,6 +324,10 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x0000ff21, FC_CASE_FOLD_RANGE,    0x001a,     32 },
     { 0x00010400, FC_CASE_FOLD_RANGE,    0x0028,     40 },
     { 0x000104b0, FC_CASE_FOLD_RANGE,    0x0024,     40 },
+    { 0x00010570, FC_CASE_FOLD_RANGE,    0x000b,     39 },
+    { 0x0001057c, FC_CASE_FOLD_RANGE,    0x000f,     39 },
+    { 0x0001058c, FC_CASE_FOLD_RANGE,    0x0007,     39 },
+    { 0x00010594, FC_CASE_FOLD_RANGE,    0x0002,     39 },
     { 0x00010c80, FC_CASE_FOLD_RANGE,    0x0033,     64 },
     { 0x000118a0, FC_CASE_FOLD_RANGE,    0x0020,     32 },
     { 0x00016e40, FC_CASE_FOLD_RANGE,    0x0020,     32 },
diff --git a/fc-case/meson.build b/fc-case/meson.build
new file mode 100644 (file)
index 0000000..a14b635
--- /dev/null
@@ -0,0 +1,4 @@
+fccase_h = custom_target('fccase.h',
+  output: 'fccase.h',
+  input: ['CaseFolding.txt', 'fccase.tmpl.h'],
+  command: [find_program('fc-case.py'), '@INPUT0@', '--template', '@INPUT1@', '--output', '@OUTPUT@'])
index 75f5953..770cd73 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 69611bc..15a2f09 100644 (file)
@@ -36,7 +36,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef HAVE_UNISTD_H
 #include <unistd.h>
+#endif
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <errno.h>
@@ -79,7 +81,7 @@ extern int optind, opterr, optopt;
  * POSIX has broken stdio so that putc must do thread-safe locking,
  * this is a serious performance problem for applications doing large
  * amounts of IO with putc (as is done here).  If available, use
- * the putc_unlocked varient instead.
+ * the putc_unlocked variant instead.
  */
  
 #if defined(putc_unlocked) || defined(_IO_putc_unlocked)
index a513254..d4817e3 100644 (file)
@@ -1,18 +1,40 @@
 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
 
+<!--
+Copyright © 2008 Patrick Lam
+
+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.
+-->
+
 <!-- Process this file with docbook-to-man to generate an nroff manual
      page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
      the manual page with: `docbook-to-man manpage.sgml | nroff -man |
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
-    
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -73,7 +95,7 @@ manpage.1: manpage.sgml
           <arg><option><replaceable>fonts-cache-%version%-files</replaceable></option></arg>
           <arg><option><replaceable>dirs</replaceable></option></arg>
       </group>
-      
+
      </cmdsynopsis>
   </refsynopsisdiv>
   <refsect1>
diff --git a/fc-cat/meson.build b/fc-cat/meson.build
new file mode 100644 (file)
index 0000000..f26e4b8
--- /dev/null
@@ -0,0 +1,8 @@
+fccat = executable('fc-cat', ['fc-cat.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-cat']
index 212e2e9..bfd917b 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -234,8 +234,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -255,6 +253,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -266,6 +266,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -276,6 +277,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -346,9 +348,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -357,8 +365,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -410,9 +416,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -652,7 +663,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 4657b4a..77cc5b0 100644 (file)
@@ -1,7 +1,7 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FC-CONFLIST" "1" "Apr  1, 2014" "" ""
+.TH "FC-CONFLIST" "1" "Dec 21, 2021" "" ""
 .SH NAME
-fc-conflist \- Show the ruleset files information on the system
+fc-conflist \- list the configuration files processed by Fontconfig
 .SH SYNOPSIS
 .sp
 \fBfc-conflist\fR [ \fB-Vh\fR ] 
@@ -9,8 +9,12 @@ fc-conflist \- Show the ruleset files information on the system
  [ \fB--version\fR ]  [ \fB--help\fR ] 
 .SH "DESCRIPTION"
 .PP
-\fBfc-conflist\fR shows the ruleset files' information
-being installed on the system.
+\fBfc-conflist\fR prints an annotated list of all the configuration files processed by Fontconfig.
+.PP
+The output is a `-' or `+' depending on whether the file is ignored or processed, a space, the file's path, a colon and space, and the description from the file or `No description' if none is present.
+.PP
+The order of files looks like how fontconfig acautlly process them except one contains <include> element.
+In that case, it will be shown after processing all the sub directories where is targeted by <include>\&.
 .SH "OPTIONS"
 .PP
 This program follows the usual GNU command line syntax,
@@ -25,7 +29,7 @@ Show summary of options.
 .SH "RETURN CODES"
 .PP
 \fBfc-conflist\fR returns error code 0 for successful parsing,
-or 1 if any errors occured or if at least one font face could not be opened.
+or 1 if any errors occurred or if at least one font face could not be opened.
 .SH "AUTHOR"
 .PP
 This manual page was updated by Akira TAGOH <akira@tagoh.org>\&.
index 5c40a0f..74d2d9c 100644 (file)
@@ -35,7 +35,9 @@
 
 #include <fontconfig/fontconfig.h>
 #include <stdio.h>
+#ifdef HAVE_UNISTD_H
 #include <unistd.h>
+#endif
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
index a82dd1c..3c92c75 100644 (file)
@@ -1,18 +1,40 @@
 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
 
+<!--
+Copyright © 2014 Red Hat, Inc.
+
+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.
+-->
+
 <!-- Process this file with docbook-to-man to generate an nroff manual
      page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
      the manual page with: `docbook-to-man manpage.sgml | nroff -man |
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
 
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -20,7 +42,7 @@ manpage.1: manpage.sgml
   <!ENTITY dhfirstname "<firstname>Akira</firstname>">
   <!ENTITY dhsurname   "<surname>TAGOH</surname>">
   <!-- Please adjust the date whenever revising the manpage. -->
-  <!ENTITY dhdate      "<date>Apr  1, 2014</date>">
+  <!ENTITY dhdate      "<date>Dec 21, 2021</date>">
   <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
        allowed: see man(7), man(1). -->
   <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
@@ -56,7 +78,7 @@ manpage.1: manpage.sgml
   <refnamediv>
     <refname>&dhpackage;</refname>
 
-    <refpurpose>Show the ruleset files information on the system</refpurpose>
+    <refpurpose>list the configuration files processed by Fontconfig</refpurpose>
   </refnamediv>
   <refsynopsisdiv>
     <cmdsynopsis>
@@ -72,8 +94,10 @@ manpage.1: manpage.sgml
   <refsect1>
     <title>DESCRIPTION</title>
 
-    <para><command>&dhpackage;</command> shows the ruleset files' information
-      being installed on the system.</para>
+    <para><command>&dhpackage;</command> prints an annotated list of all the configuration files processed by Fontconfig.</para>
+    <para>The output is a `-' or `+' depending on whether the file is ignored or processed, a space, the file's path, a colon and space, and the description from the file or `No description' if none is present.</para>
+    <para>The order of files looks like how fontconfig acautlly process them except one contains &lt;include&gt; element.
+      In that case, it will be shown after processing all the sub directories where is targeted by &lt;include&gt;.</para>
 
   </refsect1>
   <refsect1>
@@ -106,7 +130,7 @@ manpage.1: manpage.sgml
   <refsect1>
     <title>RETURN CODES</title>
     <para><command>fc-conflist</command> returns error code 0 for successful parsing,
-    or 1 if any errors occured or if at least one font face could not be opened.</para>
+    or 1 if any errors occurred or if at least one font face could not be opened.</para>
   </refsect1>
 
   <refsect1>
diff --git a/fc-conflist/meson.build b/fc-conflist/meson.build
new file mode 100644 (file)
index 0000000..f543cf9
--- /dev/null
@@ -0,0 +1,8 @@
+fcconflist = executable('fc-conflist', ['fc-conflist.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-conflist']
index 5fdccea..eaa5249 100644 (file)
@@ -25,7 +25,7 @@
 
 TAG = lang
 DEPS = $(ORTH)
-ARGS = -d $(srcdir) $(ORTH)
+ARGS = --directory $(srcdir) $(ORTH)
 DIST = $(ORTH)
 
 include $(top_srcdir)/Tools.mk
@@ -285,4 +285,21 @@ ORTH = \
        und_zmth.orth
 #      ^-------------- Add new orth files here
 
+BUILT_SOURCES += $(top_builddir)/conf.d/35-lang-normalize.conf
+
+DISTCLEANFILES = $(BUILT_SOURCES)
+
+$(top_builddir)/conf.d/35-lang-normalize.conf: $(ORTH) Makefile
+       $(AM_V_GEN) echo "<?xml version=\"1.0\"?>" > $@ && \
+               echo "<!DOCTYPE fontconfig SYSTEM \"urn:fontconfig:fonts.dtd\">" >> $@ && \
+               echo "<fontconfig>" >> $@ && \
+       for i in `echo $(ORTH) | sed -e 's/ /\n/g' | grep -v _ | sed -e 's/\.orth$$//g' | sort`; do \
+               echo "  <!-- $$i* -> $$i -->" >> $@; \
+               echo "  <match>" >> $@; \
+               echo "    <test name=\"lang\" compare=\"contains\"><string>$$i</string></test>" >> $@; \
+               echo "    <edit name=\"lang\" mode=\"assign\" binding=\"same\"><string>$$i</string></edit>" >> $@; \
+               echo "  </match>" >> $@; \
+       done && \
+       echo "</fontconfig>" >> $@
+
 -include $(top_srcdir)/git.mk
index eea0cbb..34ebe38 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -64,6 +64,7 @@
 #
 # Google Author(s): Behdad Esfahbod
 
+
 VPATH = @srcdir@
 am__is_gnu_make = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -160,6 +161,7 @@ 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
@@ -197,8 +199,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk README
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -218,6 +218,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -229,6 +231,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -239,6 +242,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -309,9 +313,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -320,8 +330,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -373,9 +381,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -386,29 +399,21 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 TAG = lang
 DEPS = $(ORTH)
-ARGS = -d $(srcdir) $(ORTH)
+ARGS = --directory $(srcdir) $(ORTH)
 DIST = $(ORTH)
 DIR = fc-$(TAG)
 OUT = fc$(TAG)
 TMPL = $(OUT).tmpl.h
 TARG = $(OUT).h
-TSRC = $(DIR).c
-TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
-EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-AM_CPPFLAGS = \
-          -I$(builddir) \
-          -I$(srcdir) \
-          -I$(top_builddir)/src \
-          -I$(top_srcdir)/src \
-          -I$(top_builddir) \
-          -I$(top_srcdir) \
-          -DHAVE_CONFIG_H \
-          $(WARN_CFLAGS)
-
+TOOL = $(srcdir)/$(DIR).py
+noinst_SCRIPTS = $(TOOL)
+EXTRA_DIST = $(TARG) $(TMPL) $(DIST)
 noinst_HEADERS = $(TARG)
 ALIAS_FILES = fcalias.h fcaliastail.h
-BUILT_SOURCES = $(ALIAS_FILES)
-CLEANFILES = $(ALIAS_FILES) $(TOOL)
+#      ^-------------- Add new orth files here
+BUILT_SOURCES = $(ALIAS_FILES) \
+       $(top_builddir)/conf.d/35-lang-normalize.conf
+CLEANFILES = $(ALIAS_FILES)
 MAINTAINERCLEANFILES = $(TARG)
 
 # NOTE:
@@ -665,6 +670,7 @@ ORTH = \
        und_zsye.orth \
        und_zmth.orth
 
+DISTCLEANFILES = $(BUILT_SOURCES)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -757,7 +763,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -794,11 +799,12 @@ distdir-am: $(DISTFILES)
 check-am: all-am
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(HEADERS)
+all-am: Makefile $(SCRIPTS) $(HEADERS)
 installdirs:
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -824,6 +830,7 @@ 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"
@@ -896,7 +903,7 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: all check install install-am install-strip
+.MAKE: all check install install-am install-exec install-strip
 
 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
        clean-libtool cscopelist-am ctags ctags-am distclean \
@@ -914,18 +921,27 @@ uninstall-am:
 .PRECIOUS: Makefile
 
 
-$(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
-
-$(TARG): $(TMPL) $(TSRC) $(DEPS)
-       $(AM_V_GEN) $(MAKE) $(TOOL) && \
+$(TARG): $(TMPL) $(TOOL) $(DEPS)
+       $(AM_V_GEN) \
        $(RM) $(TARG) && \
-       $(TOOL) $(ARGS) < $< > $(TARG).tmp && \
+       $(PYTHON) $(TOOL) $(ARGS) --template $< --output $(TARG).tmp && \
        mv $(TARG).tmp $(TARG) || ( $(RM) $(TARG).tmp && false )
 
 $(ALIAS_FILES):
        $(AM_V_GEN) touch $@
-#      ^-------------- Add new orth files here
+
+$(top_builddir)/conf.d/35-lang-normalize.conf: $(ORTH) Makefile
+       $(AM_V_GEN) echo "<?xml version=\"1.0\"?>" > $@ && \
+               echo "<!DOCTYPE fontconfig SYSTEM \"urn:fontconfig:fonts.dtd\">" >> $@ && \
+               echo "<fontconfig>" >> $@ && \
+       for i in `echo $(ORTH) | sed -e 's/ /\n/g' | grep -v _ | sed -e 's/\.orth$$//g' | sort`; do \
+               echo "  <!-- $$i* -> $$i -->" >> $@; \
+               echo "  <match>" >> $@; \
+               echo "    <test name=\"lang\" compare=\"contains\"><string>$$i</string></test>" >> $@; \
+               echo "    <edit name=\"lang\" mode=\"assign\" binding=\"same\"><string>$$i</string></edit>" >> $@; \
+               echo "  </match>" >> $@; \
+       done && \
+       echo "</fontconfig>" >> $@
 
 -include $(top_srcdir)/git.mk
 
index 4aef7d1..96fd40a 100644 (file)
@@ -19,7 +19,7 @@ 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
+* Please add any reference URL in GitLab or any
   explanation why it needs to be added/removed and also why
   current orth file doesn't work.
 
index eab2046..111ddb4 100644 (file)
@@ -42,5 +42,5 @@
 0960-0963       # Additional vowels
 0964-0965       # Punctuations
 0966-096F       # Digits
-0970            # Abbrevation sign
+0970            # Abbreviation sign
 
index 089c47e..d860d29 100644 (file)
@@ -30,7 +30,7 @@
 # * http://www.panafril10n.org/wikidoc/pmwiki.php/PanAfrLoc/Gbe
 #
 # We amend the main alphabet with tone marks over each vowel, but some
-# combinations lack precomposed forms in Unicode, so we also add indiviual
+# combinations lack precomposed forms in Unicode, so we also add individual
 # combining marks.
 #
 # Sources also differ on the notation used for the fourth tone: circumflex
diff --git a/fc-lang/fc-lang.c b/fc-lang/fc-lang.c
deleted file mode 100644 (file)
index 503d712..0000000
+++ /dev/null
@@ -1,595 +0,0 @@
-/*
- * fontconfig/fc-lang/fc-lang.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 "fccharset.c"
-#include "fcstr.c"
-#include "fcserialize.c"
-
-/*
- * fc-lang
- *
- * Read a set of language orthographies and build C declarations for
- * charsets which can then be used to identify which languages are
- * supported by a given font.  Note that this uses some utilities
- * from the fontconfig library, so the necessary file is simply
- * included in this compilation.  A couple of extra utility
- * functions are also needed in slightly modified form
- */
-
-FcPrivate void
-FcCacheObjectReference (void *object FC_UNUSED)
-{
-}
-
-FcPrivate void
-FcCacheObjectDereference (void *object FC_UNUSED)
-{
-}
-
-FcPrivate FcChar8 *
-FcLangNormalize (const FcChar8 *lang FC_UNUSED)
-{
-    return NULL;
-}
-
-int FcDebugVal;
-
-FcChar8 *
-FcConfigHome (void)
-{
-    return (FcChar8 *) getenv ("HOME");
-}
-
-static void 
-fatal (const char *file, int lineno, const char *msg)
-{
-    if (lineno)
-       fprintf (stderr, "%s:%d: %s\n", file, lineno, msg);
-    else
-       fprintf (stderr, "%s: %s\n", file, msg);
-    exit (1);
-}
-
-static char *
-get_line (FILE *f, char *buf, int *lineno)
-{
-    char    *hash;
-    char    *line;
-    int            end;
-
-next:
-    line = buf;
-    if (!fgets (line, 1024, f))
-       return 0;
-    ++(*lineno);
-    hash = strchr (line, '#');
-    if (hash)
-       *hash = '\0';
-
-    while (line[0] && isspace (line[0]))
-      line++;
-    end = strlen (line);
-    while (end > 0 && isspace (line[end-1]))
-      line[--end] = '\0';
-
-    if (line[0] == '\0' || line[0] == '\n' || line[0] == '\r')
-      goto next;
-
-    return line;
-}
-
-static char    *dir = 0;
-
-static FILE *
-scanopen (char *file)
-{
-    FILE    *f;
-
-    f = fopen (file, "r");
-    if (!f && dir)
-    {
-       char    path[1024];
-       
-       strcpy (path, dir);
-       strcat (path, "/");
-       strcat (path, file);
-       f = fopen (path, "r");
-    }
-    return f;
-}
-
-/*
- * build a single charset from a source file
- *
- * The file format is quite simple, either
- * a single hex value or a pair separated with a dash
- *
- * Comments begin with '#'
- */
-
-static FcCharSet *
-scan (FILE *f, char *file, FcCharSetFreezer *freezer)
-{
-    FcCharSet      *c = 0;
-    FcCharSet      *n;
-    FcBool         del;
-    int                    start, end, ucs4;
-    char           buf[1024];
-    char           *line;
-    int                    lineno = 0;
-
-    while ((line = get_line (f, buf, &lineno)))
-    {
-       if (!strncmp (line, "include", 7))
-       {
-           FILE *included_f;
-           char *included_file;
-           included_file = strchr (line, ' ');
-            if (!included_file)
-                fatal (file, lineno,
-                       "invalid syntax, expected: include filename");
-           while (isspace(*included_file))
-               included_file++;
-           included_f = scanopen (included_file);
-           if (!included_f)
-               fatal (included_file, 0, "can't open");
-           n = scan (included_f, included_file, freezer);
-           fclose (included_f);
-           if (!c)
-               c = FcCharSetCreate ();
-           if (!FcCharSetMerge (c, n, NULL))
-               fatal (file, lineno, "out of memory");
-           FcCharSetDestroy (n);
-           continue;
-       }
-       del = FcFalse;
-       if (line[0] == '-')
-       {
-         del = FcTrue;
-         line++;
-       }
-       if (strchr (line, '-'))
-       {
-           if (sscanf (line, "%x-%x", &start, &end) != 2)
-               fatal (file, lineno, "parse error");
-       }
-       else if (strstr (line, ".."))
-       {
-           if (sscanf (line, "%x..%x", &start, &end) != 2)
-               fatal (file, lineno, "parse error");
-       }
-       else
-       {
-           if (sscanf (line, "%x", &start) != 1)
-               fatal (file, lineno, "parse error");
-           end = start;
-       }
-       if (!c)
-           c = FcCharSetCreate ();
-       for (ucs4 = start; ucs4 <= end; ucs4++)
-       {
-           if (!((del ? FcCharSetDelChar : FcCharSetAddChar) (c, ucs4)))
-               fatal (file, lineno, "out of memory");
-       }
-    }
-    n = (FcCharSet *) FcCharSetFreeze (freezer, c);
-    FcCharSetDestroy (c);
-    return n;
-}
-
-/*
- * Convert a file name into a name suitable for C declarations
- */
-static char *
-get_name (char *file)
-{
-    char    *name;
-    char    *dot;
-
-    dot = strchr (file, '.');
-    if (!dot)
-       dot = file + strlen(file);
-    name = malloc (dot - file + 1);
-    strncpy (name, file, dot - file);
-    name[dot-file] = '\0';
-    return name;
-}
-
-/*
- * Convert a C name into a language name
- */
-static char *
-get_lang (char *name)
-{
-    char    *lang = malloc (strlen (name) + 1);
-    char    *l = lang;
-    char    c;
-
-    while ((c = *name++))
-    {
-       if (isupper ((int) (unsigned char) c))
-           c = tolower ((int) (unsigned char) c);
-       if (c == '_')
-           c = '-';
-       if (c == ' ')
-           continue;
-       *l++ = c;
-    }
-    *l++ = '\0';
-    return lang;
-}
-
-typedef struct _Entry {
-    int id;
-    char *file;
-} Entry;
-
-static int compare (const void *a, const void *b)
-{
-    const Entry *as = a, *bs = b;
-    return FcStrCmpIgnoreCase ((const FcChar8 *) as->file, (const FcChar8 *) bs->file);
-}
-
-#define MAX_LANG           1024
-#define MAX_LANG_SET_MAP    ((MAX_LANG + 31) / 32)
-
-#define BitSet(map, i)   ((map)[(entries[i].id)>>5] |= ((FcChar32) 1U << ((entries[i].id) & 0x1f)))
-
-int
-main (int argc FC_UNUSED, char **argv)
-{
-    static Entry       entries[MAX_LANG + 1];
-    static FcCharSet   *sets[MAX_LANG];
-    static int         duplicate[MAX_LANG];
-    static int         country[MAX_LANG];
-    static char                *names[MAX_LANG];
-    static char                *langs[MAX_LANG];
-    static int         off[MAX_LANG];
-    FILE       *f;
-    int                ncountry = 0;
-    int                i = 0;
-    int                nsets = 0;
-    int                argi;
-    FcCharLeaf **leaves;
-    int                total_leaves = 0;
-    int                l, sl, tl, tn;
-    static char                line[1024];
-    static FcChar32    map[MAX_LANG_SET_MAP];
-    int                num_lang_set_map;
-    int                setRangeStart[26];
-    int                setRangeEnd[26];
-    FcChar8    setRangeChar;
-    FcCharSetFreezer   *freezer;
-    
-    freezer = FcCharSetFreezerCreate ();
-    if (!freezer)
-       fatal (argv[0], 0, "out of memory");
-    argi = 1;
-    while (argv[argi])
-    {
-       if (!strcmp (argv[argi], "-d"))
-       {
-           argi++;
-           dir = argv[argi++];
-           continue;
-       }
-       if (i == MAX_LANG)
-           fatal (argv[0], 0, "Too many languages");
-       entries[i].id = i;
-       entries[i].file = argv[argi++];
-       i++;
-    }
-    entries[i].file = 0;
-    qsort (entries, i, sizeof (Entry), compare);
-    i = 0;
-    while (entries[i].file)
-    {
-       f = scanopen (entries[i].file);
-       if (!f)
-           fatal (entries[i].file, 0, strerror (errno));
-       sets[i] = scan (f, entries[i].file, freezer);
-       names[i] = get_name (entries[i].file);
-       langs[i] = get_lang(names[i]);
-       if (strchr (langs[i], '-'))
-           country[ncountry++] = i;
-
-       total_leaves += sets[i]->num;
-       i++;
-       fclose (f);
-    }
-    nsets = i;
-    sets[i] = 0;
-    leaves = malloc (total_leaves * sizeof (FcCharLeaf *));
-    tl = 0;
-    /*
-     * Find unique leaves
-     */
-    for (i = 0; sets[i]; i++)
-    {
-       for (sl = 0; sl < sets[i]->num; sl++)
-       {
-           for (l = 0; l < tl; l++)
-               if (leaves[l] == FcCharSetLeaf(sets[i], sl))
-                   break;
-           if (l == tl)
-               leaves[tl++] = FcCharSetLeaf(sets[i], sl);
-       }
-    }
-
-    /*
-     * Scan the input until the marker is found
-     */
-    
-    while (fgets (line, sizeof (line), stdin))
-    {
-       if (!strncmp (line, "@@@", 3))
-           break;
-       fputs (line, stdout);
-    }
-    
-    printf ("/* total size: %d unique leaves: %d */\n\n",
-           total_leaves, tl);
-
-    /*
-     * Find duplicate charsets
-     */
-    duplicate[0] = -1;
-    for (i = 1; sets[i]; i++)
-    {
-       int j;
-
-       duplicate[i] = -1;
-       for (j = 0; j < i; j++)
-           if (sets[j] == sets[i])
-           {
-               duplicate[i] = j;
-               break;
-           }
-    }
-
-    tn = 0;
-    for (i = 0; sets[i]; i++) {
-       if (duplicate[i] >= 0)
-           continue;
-       off[i] = tn;
-       tn += sets[i]->num;
-    }
-
-    printf ("#define LEAF0       (%d * sizeof (FcLangCharSet))\n", nsets);
-    printf ("#define OFF0        (LEAF0 + %d * sizeof (FcCharLeaf))\n", tl);
-    printf ("#define NUM0        (OFF0 + %d * sizeof (uintptr_t))\n", tn);
-    printf ("#define SET(n)      (n * sizeof (FcLangCharSet) + offsetof (FcLangCharSet, charset))\n");
-    printf ("#define OFF(s,o)    (OFF0 + o * sizeof (uintptr_t) - SET(s))\n");
-    printf ("#define NUM(s,n)    (NUM0 + n * sizeof (FcChar16) - SET(s))\n");
-    printf ("#define LEAF(o,l)   (LEAF0 + l * sizeof (FcCharLeaf) - (OFF0 + o * sizeof (intptr_t)))\n");
-    printf ("#define fcLangCharSets (fcLangData.langCharSets)\n");
-    printf ("#define fcLangCharSetIndices (fcLangData.langIndices)\n");
-    printf ("#define fcLangCharSetIndicesInv (fcLangData.langIndicesInv)\n");
-    printf ("\n");
-    
-    printf ("static const struct {\n"
-           "    FcLangCharSet  langCharSets[%d];\n"
-           "    FcCharLeaf     leaves[%d];\n"
-           "    uintptr_t      leaf_offsets[%d];\n"
-           "    FcChar16       numbers[%d];\n"
-           "    FcChar%s       langIndices[%d];\n"
-           "    FcChar%s       langIndicesInv[%d];\n"
-           "} fcLangData = {\n",
-           nsets, tl, tn, tn,
-           nsets < 256 ? "8 " : "16", nsets, nsets < 256 ? "8 " : "16", nsets);
-       
-    /*
-     * Dump sets
-     */
-
-    printf ("{\n");
-    for (i = 0; sets[i]; i++)
-    {
-       int     j = duplicate[i];
-
-       if (j < 0)
-           j = i;
-
-       printf ("    { \"%s\", "
-               " { FC_REF_CONSTANT, %d, OFF(%d,%d), NUM(%d,%d) } }, /* %d */\n",
-               langs[i],
-               sets[j]->num, i, off[j], i, off[j], i);
-    }
-    printf ("},\n");
-    
-    /*
-     * Dump leaves
-     */
-    printf ("{\n");
-    for (l = 0; l < tl; l++)
-    {
-       printf ("    { { /* %d */", l);
-       for (i = 0; i < 256/32; i++)
-       {
-           if (i % 4 == 0)
-               printf ("\n   ");
-           printf (" 0x%08x,", leaves[l]->map[i]);
-       }
-       printf ("\n    } },\n");
-    }
-    printf ("},\n");
-
-    /*
-     * Dump leaves
-     */
-    printf ("{\n");
-    for (i = 0; sets[i]; i++)
-    {
-       int n;
-       
-       if (duplicate[i] >= 0)
-           continue;
-       printf ("    /* %s */\n", names[i]);
-       for (n = 0; n < sets[i]->num; n++)
-       {
-           if (n % 4 == 0)
-               printf ("   ");
-           for (l = 0; l < tl; l++)
-               if (leaves[l] == FcCharSetLeaf(sets[i], n))
-                   break;
-           if (l == tl)
-               fatal (names[i], 0, "can't find leaf");
-           printf (" LEAF(%3d,%3d),", off[i], l);
-           if (n % 4 == 3)
-               printf ("\n");
-       }
-       if (n % 4 != 0)
-           printf ("\n");
-    }
-    printf ("},\n");
-       
-
-    printf ("{\n");
-    for (i = 0; sets[i]; i++)
-    {
-       int n;
-       
-       if (duplicate[i] >= 0)
-           continue;
-       printf ("    /* %s */\n", names[i]);
-       for (n = 0; n < sets[i]->num; n++)
-       {
-           if (n % 8 == 0)
-               printf ("   ");
-           printf (" 0x%04x,", FcCharSetNumbers (sets[i])[n]);
-           if (n % 8 == 7)
-               printf ("\n");
-       }
-       if (n % 8 != 0)
-           printf ("\n");
-    }
-    printf ("},\n");
-
-    /* langIndices */
-    printf ("{\n");
-    for (i = 0; sets[i]; i++)
-    {
-       printf ("    %d, /* %s */\n", entries[i].id, names[i]);
-    }
-    printf ("},\n");
-
-    /* langIndicesInv */
-    printf ("{\n");
-    {
-       static int              entries_inv[MAX_LANG];
-       for (i = 0; sets[i]; i++)
-         entries_inv[entries[i].id] = i;
-       for (i = 0; sets[i]; i++)
-           printf ("    %d, /* %s */\n", entries_inv[i], names[entries_inv[i]]);
-    }
-    printf ("}\n");
-
-    printf ("};\n\n");
-
-    printf ("#define NUM_LANG_CHAR_SET %d\n", i);
-    num_lang_set_map = (i + 31) / 32;
-    printf ("#define NUM_LANG_SET_MAP  %d\n", num_lang_set_map);
-    /*
-     * Dump indices with country codes
-     */
-    if (ncountry)
-    {
-       int     c;
-       int     ncountry_ent = 0;
-       printf ("\n");
-       printf ("static const FcChar32 fcLangCountrySets[][NUM_LANG_SET_MAP] = {\n");
-       for (c = 0; c < ncountry; c++)
-       {
-           i = country[c];
-           if (i >= 0)
-           {
-               int lang = strchr (langs[i], '-') - langs[i];
-               int d, k;
-
-               for (k = 0; k < num_lang_set_map; k++)
-                   map[k] = 0;
-
-               BitSet (map, i);
-               for (d = c + 1; d < ncountry; d++)
-               {
-                   int j = country[d];
-                   if (j >= 0 && !strncmp (langs[j], langs[i], lang + 1))
-                   {
-                       BitSet(map, j);
-                       country[d] = -1;
-                   }
-               }
-               printf ("    {");
-               for (k = 0; k < num_lang_set_map; k++)
-                   printf (" 0x%08x,", map[k]);
-               printf (" }, /* %*.*s */\n",
-                       lang, lang, langs[i]);
-               ++ncountry_ent;
-           }
-       }
-       printf ("};\n\n");
-       printf ("#define NUM_COUNTRY_SET %d\n", ncountry_ent);
-    }
-    
-
-    /*
-     * Find ranges for each letter for faster searching
-     */
-    setRangeChar = 'a';
-    memset(setRangeStart, '\0', sizeof (setRangeStart));
-    memset(setRangeEnd, '\0', sizeof (setRangeEnd));
-    for (i = 0; sets[i]; i++)
-    {
-       char    c = names[i][0];
-       
-       while (setRangeChar <= c && c <= 'z')
-           setRangeStart[setRangeChar++ - 'a'] = i;
-    }
-    while (setRangeChar <= 'z') /* no language code starts with these letters */
-       setRangeStart[setRangeChar++ - 'a'] = i;
-
-    for (setRangeChar = 'a'; setRangeChar < 'z'; setRangeChar++)
-       setRangeEnd[setRangeChar - 'a'] = setRangeStart[setRangeChar+1-'a'] - 1;
-    setRangeEnd[setRangeChar - 'a'] = i - 1;
-    
-    /*
-     * Dump sets start/finish for the fastpath
-     */
-    printf ("\n");
-    printf ("static const FcLangCharSetRange  fcLangCharSetRanges[] = {\n");
-       printf ("\n");
-    for (setRangeChar = 'a'; setRangeChar <= 'z' ; setRangeChar++)
-    {
-       printf ("    { %d, %d }, /* %c */\n",
-               setRangeStart[setRangeChar - 'a'],
-               setRangeEnd[setRangeChar - 'a'], setRangeChar);
-    }
-    printf ("};\n\n");
-    while (fgets (line, sizeof (line), stdin))
-       fputs (line, stdout);
-    
-    fflush (stdout);
-    exit (ferror (stdout));
-}
diff --git a/fc-lang/fc-lang.py b/fc-lang/fc-lang.py
new file mode 100755 (executable)
index 0000000..cc1dea8
--- /dev/null
@@ -0,0 +1,387 @@
+#!/usr/bin/env python3
+#
+# fontconfig/fc-lang/fc-lang.py
+#
+# Copyright © 2001-2002 Keith Packard
+# Copyright © 2019 Tim-Philipp Müller
+#
+# 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.
+
+# fc-lang
+#
+# Read a set of language orthographies and build C declarations for
+# charsets which can then be used to identify which languages are
+# supported by a given font.
+#
+# TODO: this code is not very pythonic, a lot of it is a 1:1 translation
+# of the C code and we could probably simplify it a bit
+import argparse
+import string
+import sys
+import os
+
+# we just store the leaves in a dict, we can order the leaves later if needed
+class CharSet:
+    def __init__(self):
+        self.leaves = {} # leaf_number -> leaf data (= 16 uint32)
+
+    def add_char(self, ucs4):
+        assert ucs4 < 0x01000000
+        leaf_num = ucs4 >> 8
+        if leaf_num in self.leaves:
+            leaf = self.leaves[leaf_num]
+        else:
+            leaf = [0, 0, 0, 0, 0, 0, 0, 0] # 256/32 = 8
+            self.leaves[leaf_num] = leaf
+        leaf[(ucs4 & 0xff) >> 5] |= (1 << (ucs4 & 0x1f))
+        #print('{:08x} [{:04x}] --> {}'.format(ucs4, ucs4>>8, leaf))
+
+    def del_char(self, ucs4):
+        assert ucs4 < 0x01000000
+        leaf_num = ucs4 >> 8
+        if leaf_num in self.leaves:
+            leaf = self.leaves[leaf_num]
+            leaf[(ucs4 & 0xff) >> 5] &= ~(1 << (ucs4 & 0x1f))
+            # We don't bother removing the leaf if it's empty */
+            #print('{:08x} [{:04x}] --> {}'.format(ucs4, ucs4>>8, leaf))
+
+    def equals(self, other_cs):
+        keys = sorted(self.leaves.keys())
+        other_keys = sorted(other_cs.leaves.keys())
+        if len(keys) != len(other_keys):
+            return False
+        for k1, k2 in zip(keys, other_keys):
+            if k1 != k2:
+                return False
+            if not leaves_equal(self.leaves[k1], other_cs.leaves[k2]):
+                return False
+        return True
+
+# Convert a file name into a name suitable for C declarations
+def get_name(file_name):
+    return file_name.split('.')[0]
+
+# Convert a C name into a language name
+def get_lang(c_name):
+    return c_name.replace('_', '-').replace(' ', '').lower()
+
+def read_orth_file(file_name):
+    lines = []
+    with open(file_name, 'r', encoding='utf-8') as orth_file:
+        for num, line in enumerate(orth_file):
+            if line.startswith('include '):
+                include_fn = line[8:].strip()
+                lines += read_orth_file(include_fn)
+            else:
+                # remove comments and strip whitespaces
+                line = line.split('#')[0].strip()
+                line = line.split('\t')[0].strip()
+                # skip empty lines
+                if line:
+                    lines += [(file_name, num, line)]
+
+    return lines
+
+def leaves_equal(leaf1, leaf2):
+    for v1, v2 in zip(leaf1, leaf2):
+        if v1 != v2:
+            return False
+    return True
+
+# Build a single charset from a source file
+#
+# The file format is quite simple, either
+# a single hex value or a pair separated with a dash
+def parse_orth_file(file_name, lines):
+    charset = CharSet()
+    for fn, num, line in lines:
+        delete_char = line.startswith('-')
+        if delete_char:
+            line = line[1:]
+        if line.find('-') != -1:
+            parts = line.split('-')
+        elif line.find('..') != -1:
+            parts = line.split('..')
+        else:
+            parts = [line]
+
+        start = int(parts.pop(0), 16)
+        end = start
+        if parts:
+            end = int(parts.pop(0), 16)
+        if parts:
+            print('ERROR: {} line {}: parse error (too many parts)'.format(fn, num))
+
+        for ucs4 in range(start, end+1):
+            if delete_char:
+                charset.del_char(ucs4)
+            else:
+                charset.add_char(ucs4)
+
+    assert charset.equals(charset) # sanity check for the equals function
+
+    return charset
+
+if __name__=='__main__':
+    parser = argparse.ArgumentParser()
+    parser.add_argument('orth_files', nargs='+', help='List of .orth files')
+    parser.add_argument('--directory', dest='directory', default=None)
+    parser.add_argument('--template', dest='template_file', default=None)
+    parser.add_argument('--output', dest='output_file', default=None)
+
+    args = parser.parse_args()
+
+    sets = []
+    names = []
+    langs = []
+    country = []
+
+    total_leaves = 0
+
+    LangCountrySets = {}
+
+    # Open output file
+    if args.output_file:
+        sys.stdout = open(args.output_file, 'w', encoding='utf-8')
+
+    # Read the template file
+    if args.template_file:
+        tmpl_file = open(args.template_file, 'r', encoding='utf-8')
+    else:
+        tmpl_file = sys.stdin
+
+    # Change into source dir if specified (after opening other files)
+    if args.directory:
+        os.chdir(args.directory)
+
+    orth_entries = {}
+    for i, fn in enumerate(args.orth_files):
+        orth_entries[fn] = i
+
+    for fn in sorted(orth_entries.keys()):
+        lines = read_orth_file(fn)
+        charset = parse_orth_file(fn, lines)
+
+        sets.append(charset)
+
+        name = get_name(fn)
+        names.append(name)
+
+        lang = get_lang(name)
+        langs.append(lang)
+        if lang.find('-') != -1:
+            country.append(orth_entries[fn]) # maps to original index
+            language_family = lang.split('-')[0]
+            if not language_family in LangCountrySets:
+              LangCountrySets[language_family] = []
+            LangCountrySets[language_family] += [orth_entries[fn]]
+
+        total_leaves += len(charset.leaves)
+
+    # Find unique leaves
+    leaves = []
+    for s in sets:
+       for leaf_num in sorted(s.leaves.keys()):
+           leaf = s.leaves[leaf_num]
+           is_unique = True
+           for existing_leaf in leaves:
+               if leaves_equal(leaf, existing_leaf):
+                  is_unique = False
+                  break
+           #print('unique: ', is_unique)
+           if is_unique:
+               leaves.append(leaf)
+
+    # Find duplicate charsets
+    duplicate = []
+    for i, s in enumerate(sets):
+        dup_num = None
+        if i >= 1:
+            for j, s_cmp in enumerate(sets):
+                if j >= i:
+                    break
+                if s_cmp.equals(s):
+                    dup_num = j
+                    break
+
+        duplicate.append(dup_num)
+
+    tn = 0
+    off = {}
+    for i, s in enumerate(sets):
+        if duplicate[i]:
+            continue
+        off[i] = tn
+        tn += len(s.leaves)
+
+    # Scan the input until the marker is found
+    # FIXME: this is a bit silly really, might just as well hardcode
+    #        the license header in the script and drop the template
+    for line in tmpl_file:
+        if line.strip() == '@@@':
+            break
+        print(line, end='')
+
+    print('/* total size: {} unique leaves: {} */\n'.format(total_leaves, len(leaves)))
+
+    print('#define LEAF0       ({} * sizeof (FcLangCharSet))'.format(len(sets)))
+    print('#define OFF0        (LEAF0 + {} * sizeof (FcCharLeaf))'.format(len(leaves)))
+    print('#define NUM0        (OFF0 + {} * sizeof (uintptr_t))'.format(tn))
+    print('#define SET(n)      (n * sizeof (FcLangCharSet) + offsetof (FcLangCharSet, charset))')
+    print('#define OFF(s,o)    (OFF0 + o * sizeof (uintptr_t) - SET(s))')
+    print('#define NUM(s,n)    (NUM0 + n * sizeof (FcChar16) - SET(s))')
+    print('#define LEAF(o,l)   (LEAF0 + l * sizeof (FcCharLeaf) - (OFF0 + o * sizeof (intptr_t)))')
+    print('#define fcLangCharSets (fcLangData.langCharSets)')
+    print('#define fcLangCharSetIndices (fcLangData.langIndices)')
+    print('#define fcLangCharSetIndicesInv (fcLangData.langIndicesInv)')
+
+    assert len(sets) < 256 # FIXME: need to change index type to 16-bit below then
+
+    print('''
+static const struct {{
+    FcLangCharSet  langCharSets[{}];
+    FcCharLeaf     leaves[{}];
+    uintptr_t      leaf_offsets[{}];
+    FcChar16       numbers[{}];
+    {}       langIndices[{}];
+    {}       langIndicesInv[{}];
+}} fcLangData = {{'''.format(len(sets), len(leaves), tn, tn,
+                             'FcChar8 ', len(sets), 'FcChar8 ', len(sets)))
+
+    # Dump sets
+    print('{')
+    for i, s in enumerate(sets):
+        if duplicate[i]:
+            j = duplicate[i]
+        else:
+            j = i
+        print('    {{ "{}",  {{ FC_REF_CONSTANT, {}, OFF({},{}), NUM({},{}) }} }}, /* {} */'.format(
+               langs[i], len(sets[j].leaves), i, off[j], i, off[j], i))
+
+    print('},')
+
+    # Dump leaves
+    print('{')
+    for l, leaf in enumerate(leaves):
+        print('    {{ {{ /* {} */'.format(l), end='')
+        for i in range(0, 8): # 256/32 = 8
+            if i % 4 == 0:
+                print('\n   ', end='')
+            print(' 0x{:08x},'.format(leaf[i]), end='')
+        print('\n    } },')
+    print('},')
+
+    # Dump leaves
+    print('{')
+    for i, s in enumerate(sets):
+        if duplicate[i]:
+            continue
+
+        print('    /* {} */'.format(names[i]))
+
+        for n, leaf_num in enumerate(sorted(s.leaves.keys())):
+            leaf = s.leaves[leaf_num]
+            if n % 4 == 0:
+                print('   ', end='')
+            found = [k for k, unique_leaf in enumerate(leaves) if leaves_equal(unique_leaf,leaf)] 
+            assert found, "Couldn't find leaf in unique leaves list!"
+            assert len(found) == 1
+            print(' LEAF({:3},{:3}),'.format(off[i], found[0]), end='')
+            if n % 4 == 3:
+                print('')
+        if len(s.leaves) % 4 != 0:
+            print('')
+
+    print('},')
+       
+    print('{')
+    for i, s in enumerate(sets):
+        if duplicate[i]:
+            continue
+
+        print('    /* {} */'.format(names[i]))
+
+        for n, leaf_num in enumerate(sorted(s.leaves.keys())):
+            leaf = s.leaves[leaf_num]
+            if n % 8 == 0:
+                print('   ', end='')
+            print(' 0x{:04x},'.format(leaf_num), end='')
+            if n % 8 == 7:
+                print('')
+        if len(s.leaves) % 8 != 0:
+            print('')
+
+    print('},')
+
+    # langIndices
+    print('{')
+    for i, s in enumerate(sets):
+        fn = '{}.orth'.format(names[i])
+        print('    {}, /* {} */'.format(orth_entries[fn], names[i]))
+    print('},')
+
+    # langIndicesInv
+    print('{')
+    for i, k in enumerate(orth_entries.keys()):
+        name = get_name(k)
+        idx = names.index(name)
+        print('    {}, /* {} */'.format(idx, name))
+    print('}')
+
+    print('};\n')
+
+    print('#define NUM_LANG_CHAR_SET   {}'.format(len(sets)))
+    num_lang_set_map = (len(sets) + 31) // 32;
+    print('#define NUM_LANG_SET_MAP    {}'.format(num_lang_set_map))
+
+    # Dump indices with country codes
+    assert len(country) > 0
+    assert len(LangCountrySets) > 0
+    print('')
+    print('static const FcChar32 fcLangCountrySets[][NUM_LANG_SET_MAP] = {')
+    for k in sorted(LangCountrySets.keys()):
+        langset_map = [0] * num_lang_set_map # initialise all zeros
+        for entries_id in LangCountrySets[k]:
+            langset_map[entries_id >> 5] |= (1 << (entries_id & 0x1f))
+        print('    {', end='')
+        for v in langset_map:
+            print(' 0x{:08x},'.format(v), end='')
+        print(' }}, /* {} */'.format(k))
+
+    print('};\n')
+    print('#define NUM_COUNTRY_SET {}\n'.format(len(LangCountrySets)))
+
+    # Find ranges for each letter for faster searching
+    # Dump sets start/finish for the fastpath
+    print('static const FcLangCharSetRange  fcLangCharSetRanges[] = {\n')
+    for c in string.ascii_lowercase: # a-z
+        start = 9999
+        stop = -1
+        for i, s in enumerate(sets):
+            if names[i].startswith(c):
+                start = min(start,i)
+                stop = max(stop,i)
+        print('    {{ {}, {} }}, /* {} */'.format(start, stop, c))
+    print('};\n')
+
+    # And flush out the rest of the input file
+    for line in tmpl_file:
+        print(line, end='')
+    
+    sys.stdout.flush()
index 7b080ab..7061520 100644 (file)
@@ -26,7 +26,7 @@
 
 #define LEAF0       (246 * sizeof (FcLangCharSet))
 #define OFF0        (LEAF0 + 725 * sizeof (FcCharLeaf))
-#define NUM0        (OFF0 + 779 * sizeof (uintptr_t))
+#define NUM0        (OFF0 + 780 * 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))
@@ -38,8 +38,8 @@
 static const struct {
     FcLangCharSet  langCharSets[246];
     FcCharLeaf     leaves[725];
-    uintptr_t      leaf_offsets[779];
-    FcChar16       numbers[779];
+    uintptr_t      leaf_offsets[780];
+    FcChar16       numbers[780];
     FcChar8        langIndices[246];
     FcChar8        langIndicesInv[246];
 } fcLangData = {
@@ -129,166 +129,166 @@ static const struct {
     { "hz",  { FC_REF_CONSTANT, 3, OFF(82,115), NUM(82,115) } }, /* 82 */
     { "ia",  { FC_REF_CONSTANT, 1, OFF(83,87), NUM(83,87) } }, /* 83 */
     { "id",  { FC_REF_CONSTANT, 1, OFF(84,118), NUM(84,118) } }, /* 84 */
-    { "ie",  { FC_REF_CONSTANT, 1, OFF(85,87), NUM(85,87) } }, /* 85 */
-    { "ig",  { FC_REF_CONSTANT, 2, OFF(86,119), NUM(86,119) } }, /* 86 */
-    { "ii",  { FC_REF_CONSTANT, 5, OFF(87,121), NUM(87,121) } }, /* 87 */
-    { "ik",  { FC_REF_CONSTANT, 1, OFF(88,126), NUM(88,126) } }, /* 88 */
+    { "ie",  { FC_REF_CONSTANT, 1, OFF(85,119), NUM(85,119) } }, /* 85 */
+    { "ig",  { FC_REF_CONSTANT, 2, OFF(86,120), NUM(86,120) } }, /* 86 */
+    { "ii",  { FC_REF_CONSTANT, 5, OFF(87,122), NUM(87,122) } }, /* 87 */
+    { "ik",  { FC_REF_CONSTANT, 1, OFF(88,127), NUM(88,127) } }, /* 88 */
     { "io",  { FC_REF_CONSTANT, 1, OFF(89,87), NUM(89,87) } }, /* 89 */
-    { "is",  { FC_REF_CONSTANT, 1, OFF(90,127), NUM(90,127) } }, /* 90 */
-    { "it",  { FC_REF_CONSTANT, 1, OFF(91,128), NUM(91,128) } }, /* 91 */
-    { "iu",  { FC_REF_CONSTANT, 3, OFF(92,129), NUM(92,129) } }, /* 92 */
-    { "ja",  { FC_REF_CONSTANT, 83, OFF(93,132), NUM(93,132) } }, /* 93 */
-    { "jv",  { FC_REF_CONSTANT, 1, OFF(94,215), NUM(94,215) } }, /* 94 */
-    { "ka",  { FC_REF_CONSTANT, 1, OFF(95,216), NUM(95,216) } }, /* 95 */
-    { "kaa",  { FC_REF_CONSTANT, 1, OFF(96,217), NUM(96,217) } }, /* 96 */
+    { "is",  { FC_REF_CONSTANT, 1, OFF(90,128), NUM(90,128) } }, /* 90 */
+    { "it",  { FC_REF_CONSTANT, 1, OFF(91,129), NUM(91,129) } }, /* 91 */
+    { "iu",  { FC_REF_CONSTANT, 3, OFF(92,130), NUM(92,130) } }, /* 92 */
+    { "ja",  { FC_REF_CONSTANT, 83, OFF(93,133), NUM(93,133) } }, /* 93 */
+    { "jv",  { FC_REF_CONSTANT, 1, OFF(94,216), NUM(94,216) } }, /* 94 */
+    { "ka",  { FC_REF_CONSTANT, 1, OFF(95,217), NUM(95,217) } }, /* 95 */
+    { "kaa",  { FC_REF_CONSTANT, 1, OFF(96,218), NUM(96,218) } }, /* 96 */
     { "kab",  { FC_REF_CONSTANT, 4, OFF(97,24), NUM(97,24) } }, /* 97 */
-    { "ki",  { FC_REF_CONSTANT, 2, OFF(98,218), NUM(98,218) } }, /* 98 */
+    { "ki",  { FC_REF_CONSTANT, 2, OFF(98,219), NUM(98,219) } }, /* 98 */
     { "kj",  { FC_REF_CONSTANT, 1, OFF(99,87), NUM(99,87) } }, /* 99 */
-    { "kk",  { FC_REF_CONSTANT, 1, OFF(100,220), NUM(100,220) } }, /* 100 */
-    { "kl",  { FC_REF_CONSTANT, 2, OFF(101,221), NUM(101,221) } }, /* 101 */
-    { "km",  { FC_REF_CONSTANT, 1, OFF(102,223), NUM(102,223) } }, /* 102 */
-    { "kn",  { FC_REF_CONSTANT, 1, OFF(103,224), NUM(103,224) } }, /* 103 */
-    { "ko",  { FC_REF_CONSTANT, 45, OFF(104,225), NUM(104,225) } }, /* 104 */
+    { "kk",  { FC_REF_CONSTANT, 1, OFF(100,221), NUM(100,221) } }, /* 100 */
+    { "kl",  { FC_REF_CONSTANT, 2, OFF(101,222), NUM(101,222) } }, /* 101 */
+    { "km",  { FC_REF_CONSTANT, 1, OFF(102,224), NUM(102,224) } }, /* 102 */
+    { "kn",  { FC_REF_CONSTANT, 1, OFF(103,225), NUM(103,225) } }, /* 103 */
+    { "ko",  { FC_REF_CONSTANT, 45, OFF(104,226), NUM(104,226) } }, /* 104 */
     { "kok",  { FC_REF_CONSTANT, 1, OFF(105,30), NUM(105,30) } }, /* 105 */
-    { "kr",  { FC_REF_CONSTANT, 3, OFF(106,270), NUM(106,270) } }, /* 106 */
-    { "ks",  { FC_REF_CONSTANT, 1, OFF(107,273), NUM(107,273) } }, /* 107 */
-    { "ku-am",  { FC_REF_CONSTANT, 2, OFF(108,274), NUM(108,274) } }, /* 108 */
-    { "ku-iq",  { FC_REF_CONSTANT, 1, OFF(109,276), NUM(109,276) } }, /* 109 */
-    { "ku-ir",  { FC_REF_CONSTANT, 1, OFF(110,276), NUM(110,276) } }, /* 110 */
-    { "ku-tr",  { FC_REF_CONSTANT, 2, OFF(111,277), NUM(111,277) } }, /* 111 */
-    { "kum",  { FC_REF_CONSTANT, 1, OFF(112,279), NUM(112,279) } }, /* 112 */
-    { "kv",  { FC_REF_CONSTANT, 1, OFF(113,280), NUM(113,280) } }, /* 113 */
-    { "kw",  { FC_REF_CONSTANT, 3, OFF(114,281), NUM(114,281) } }, /* 114 */
+    { "kr",  { FC_REF_CONSTANT, 3, OFF(106,271), NUM(106,271) } }, /* 106 */
+    { "ks",  { FC_REF_CONSTANT, 1, OFF(107,274), NUM(107,274) } }, /* 107 */
+    { "ku-am",  { FC_REF_CONSTANT, 2, OFF(108,275), NUM(108,275) } }, /* 108 */
+    { "ku-iq",  { FC_REF_CONSTANT, 1, OFF(109,277), NUM(109,277) } }, /* 109 */
+    { "ku-ir",  { FC_REF_CONSTANT, 1, OFF(110,277), NUM(110,277) } }, /* 110 */
+    { "ku-tr",  { FC_REF_CONSTANT, 2, OFF(111,278), NUM(111,278) } }, /* 111 */
+    { "kum",  { FC_REF_CONSTANT, 1, OFF(112,280), NUM(112,280) } }, /* 112 */
+    { "kv",  { FC_REF_CONSTANT, 1, OFF(113,281), NUM(113,281) } }, /* 113 */
+    { "kw",  { FC_REF_CONSTANT, 3, OFF(114,282), NUM(114,282) } }, /* 114 */
     { "kwm",  { FC_REF_CONSTANT, 1, OFF(115,87), NUM(115,87) } }, /* 115 */
-    { "ky",  { FC_REF_CONSTANT, 1, OFF(116,284), NUM(116,284) } }, /* 116 */
-    { "la",  { FC_REF_CONSTANT, 2, OFF(117,285), NUM(117,285) } }, /* 117 */
-    { "lah",  { FC_REF_CONSTANT, 1, OFF(118,287), NUM(118,287) } }, /* 118 */
-    { "lb",  { FC_REF_CONSTANT, 1, OFF(119,288), NUM(119,288) } }, /* 119 */
+    { "ky",  { FC_REF_CONSTANT, 1, OFF(116,285), NUM(116,285) } }, /* 116 */
+    { "la",  { FC_REF_CONSTANT, 2, OFF(117,286), NUM(117,286) } }, /* 117 */
+    { "lah",  { FC_REF_CONSTANT, 1, OFF(118,288), NUM(118,288) } }, /* 118 */
+    { "lb",  { FC_REF_CONSTANT, 1, OFF(119,289), NUM(119,289) } }, /* 119 */
     { "lez",  { FC_REF_CONSTANT, 1, OFF(120,16), NUM(120,16) } }, /* 120 */
-    { "lg",  { FC_REF_CONSTANT, 2, OFF(121,289), NUM(121,289) } }, /* 121 */
-    { "li",  { FC_REF_CONSTANT, 1, OFF(122,291), NUM(122,291) } }, /* 122 */
-    { "ln",  { FC_REF_CONSTANT, 4, OFF(123,292), NUM(123,292) } }, /* 123 */
-    { "lo",  { FC_REF_CONSTANT, 1, OFF(124,296), NUM(124,296) } }, /* 124 */
-    { "lt",  { FC_REF_CONSTANT, 2, OFF(125,297), NUM(125,297) } }, /* 125 */
-    { "lv",  { FC_REF_CONSTANT, 2, OFF(126,299), NUM(126,299) } }, /* 126 */
+    { "lg",  { FC_REF_CONSTANT, 2, OFF(121,290), NUM(121,290) } }, /* 121 */
+    { "li",  { FC_REF_CONSTANT, 1, OFF(122,292), NUM(122,292) } }, /* 122 */
+    { "ln",  { FC_REF_CONSTANT, 4, OFF(123,293), NUM(123,293) } }, /* 123 */
+    { "lo",  { FC_REF_CONSTANT, 1, OFF(124,297), NUM(124,297) } }, /* 124 */
+    { "lt",  { FC_REF_CONSTANT, 2, OFF(125,298), NUM(125,298) } }, /* 125 */
+    { "lv",  { FC_REF_CONSTANT, 2, OFF(126,300), NUM(126,300) } }, /* 126 */
     { "mai",  { FC_REF_CONSTANT, 1, OFF(127,30), NUM(127,30) } }, /* 127 */
-    { "mg",  { FC_REF_CONSTANT, 1, OFF(128,301), NUM(128,301) } }, /* 128 */
-    { "mh",  { FC_REF_CONSTANT, 2, OFF(129,302), NUM(129,302) } }, /* 129 */
-    { "mi",  { FC_REF_CONSTANT, 3, OFF(130,304), NUM(130,304) } }, /* 130 */
-    { "mk",  { FC_REF_CONSTANT, 1, OFF(131,307), NUM(131,307) } }, /* 131 */
-    { "ml",  { FC_REF_CONSTANT, 1, OFF(132,308), NUM(132,308) } }, /* 132 */
-    { "mn-cn",  { FC_REF_CONSTANT, 1, OFF(133,309), NUM(133,309) } }, /* 133 */
-    { "mn-mn",  { FC_REF_CONSTANT, 1, OFF(134,310), NUM(134,310) } }, /* 134 */
-    { "mni",  { FC_REF_CONSTANT, 1, OFF(135,311), NUM(135,311) } }, /* 135 */
-    { "mo",  { FC_REF_CONSTANT, 4, OFF(136,312), NUM(136,312) } }, /* 136 */
+    { "mg",  { FC_REF_CONSTANT, 1, OFF(128,302), NUM(128,302) } }, /* 128 */
+    { "mh",  { FC_REF_CONSTANT, 2, OFF(129,303), NUM(129,303) } }, /* 129 */
+    { "mi",  { FC_REF_CONSTANT, 3, OFF(130,305), NUM(130,305) } }, /* 130 */
+    { "mk",  { FC_REF_CONSTANT, 1, OFF(131,308), NUM(131,308) } }, /* 131 */
+    { "ml",  { FC_REF_CONSTANT, 1, OFF(132,309), NUM(132,309) } }, /* 132 */
+    { "mn-cn",  { FC_REF_CONSTANT, 1, OFF(133,310), NUM(133,310) } }, /* 133 */
+    { "mn-mn",  { FC_REF_CONSTANT, 1, OFF(134,311), NUM(134,311) } }, /* 134 */
+    { "mni",  { FC_REF_CONSTANT, 1, OFF(135,312), NUM(135,312) } }, /* 135 */
+    { "mo",  { FC_REF_CONSTANT, 4, OFF(136,313), NUM(136,313) } }, /* 136 */
     { "mr",  { FC_REF_CONSTANT, 1, OFF(137,30), NUM(137,30) } }, /* 137 */
     { "ms",  { FC_REF_CONSTANT, 1, OFF(138,87), NUM(138,87) } }, /* 138 */
-    { "mt",  { FC_REF_CONSTANT, 2, OFF(139,316), NUM(139,316) } }, /* 139 */
-    { "my",  { FC_REF_CONSTANT, 1, OFF(140,318), NUM(140,318) } }, /* 140 */
-    { "na",  { FC_REF_CONSTANT, 2, OFF(141,319), NUM(141,319) } }, /* 141 */
-    { "nb",  { FC_REF_CONSTANT, 1, OFF(142,321), NUM(142,321) } }, /* 142 */
+    { "mt",  { FC_REF_CONSTANT, 2, OFF(139,317), NUM(139,317) } }, /* 139 */
+    { "my",  { FC_REF_CONSTANT, 1, OFF(140,319), NUM(140,319) } }, /* 140 */
+    { "na",  { FC_REF_CONSTANT, 2, OFF(141,320), NUM(141,320) } }, /* 141 */
+    { "nb",  { FC_REF_CONSTANT, 1, OFF(142,322), NUM(142,322) } }, /* 142 */
     { "nds",  { FC_REF_CONSTANT, 1, OFF(143,67), NUM(143,67) } }, /* 143 */
-    { "ne",  { FC_REF_CONSTANT, 1, OFF(144,322), NUM(144,322) } }, /* 144 */
+    { "ne",  { FC_REF_CONSTANT, 1, OFF(144,323), NUM(144,323) } }, /* 144 */
     { "ng",  { FC_REF_CONSTANT, 1, OFF(145,87), NUM(145,87) } }, /* 145 */
-    { "nl",  { FC_REF_CONSTANT, 1, OFF(146,323), NUM(146,323) } }, /* 146 */
-    { "nn",  { FC_REF_CONSTANT, 1, OFF(147,324), NUM(147,324) } }, /* 147 */
-    { "no",  { FC_REF_CONSTANT, 1, OFF(148,321), NUM(148,321) } }, /* 148 */
-    { "nqo",  { FC_REF_CONSTANT, 1, OFF(149,325), NUM(149,325) } }, /* 149 */
+    { "nl",  { FC_REF_CONSTANT, 1, OFF(146,324), NUM(146,324) } }, /* 146 */
+    { "nn",  { FC_REF_CONSTANT, 1, OFF(147,325), NUM(147,325) } }, /* 147 */
+    { "no",  { FC_REF_CONSTANT, 1, OFF(148,322), NUM(148,322) } }, /* 148 */
+    { "nqo",  { FC_REF_CONSTANT, 1, OFF(149,326), NUM(149,326) } }, /* 149 */
     { "nr",  { FC_REF_CONSTANT, 1, OFF(150,87), NUM(150,87) } }, /* 150 */
-    { "nso",  { FC_REF_CONSTANT, 2, OFF(151,326), NUM(151,326) } }, /* 151 */
-    { "nv",  { FC_REF_CONSTANT, 4, OFF(152,328), NUM(152,328) } }, /* 152 */
-    { "ny",  { FC_REF_CONSTANT, 2, OFF(153,332), NUM(153,332) } }, /* 153 */
-    { "oc",  { FC_REF_CONSTANT, 1, OFF(154,334), NUM(154,334) } }, /* 154 */
+    { "nso",  { FC_REF_CONSTANT, 2, OFF(151,327), NUM(151,327) } }, /* 151 */
+    { "nv",  { FC_REF_CONSTANT, 4, OFF(152,329), NUM(152,329) } }, /* 152 */
+    { "ny",  { FC_REF_CONSTANT, 2, OFF(153,333), NUM(153,333) } }, /* 153 */
+    { "oc",  { FC_REF_CONSTANT, 1, OFF(154,335), NUM(154,335) } }, /* 154 */
     { "om",  { FC_REF_CONSTANT, 1, OFF(155,87), NUM(155,87) } }, /* 155 */
-    { "or",  { FC_REF_CONSTANT, 1, OFF(156,335), NUM(156,335) } }, /* 156 */
-    { "os",  { FC_REF_CONSTANT, 1, OFF(157,279), NUM(157,279) } }, /* 157 */
-    { "ota",  { FC_REF_CONSTANT, 1, OFF(158,336), NUM(158,336) } }, /* 158 */
-    { "pa",  { FC_REF_CONSTANT, 1, OFF(159,337), NUM(159,337) } }, /* 159 */
-    { "pa-pk",  { FC_REF_CONSTANT, 1, OFF(160,287), NUM(160,287) } }, /* 160 */
-    { "pap-an",  { FC_REF_CONSTANT, 1, OFF(161,338), NUM(161,338) } }, /* 161 */
-    { "pap-aw",  { FC_REF_CONSTANT, 1, OFF(162,339), NUM(162,339) } }, /* 162 */
-    { "pl",  { FC_REF_CONSTANT, 2, OFF(163,340), NUM(163,340) } }, /* 163 */
-    { "ps-af",  { FC_REF_CONSTANT, 1, OFF(164,342), NUM(164,342) } }, /* 164 */
-    { "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 */
-    { "quz",  { FC_REF_CONSTANT, 2, OFF(168,345), NUM(168,345) } }, /* 168 */
-    { "rm",  { FC_REF_CONSTANT, 1, OFF(169,347), NUM(169,347) } }, /* 169 */
+    { "or",  { FC_REF_CONSTANT, 1, OFF(156,336), NUM(156,336) } }, /* 156 */
+    { "os",  { FC_REF_CONSTANT, 1, OFF(157,280), NUM(157,280) } }, /* 157 */
+    { "ota",  { FC_REF_CONSTANT, 1, OFF(158,337), NUM(158,337) } }, /* 158 */
+    { "pa",  { FC_REF_CONSTANT, 1, OFF(159,338), NUM(159,338) } }, /* 159 */
+    { "pa-pk",  { FC_REF_CONSTANT, 1, OFF(160,288), NUM(160,288) } }, /* 160 */
+    { "pap-an",  { FC_REF_CONSTANT, 1, OFF(161,339), NUM(161,339) } }, /* 161 */
+    { "pap-aw",  { FC_REF_CONSTANT, 1, OFF(162,340), NUM(162,340) } }, /* 162 */
+    { "pl",  { FC_REF_CONSTANT, 2, OFF(163,341), NUM(163,341) } }, /* 163 */
+    { "ps-af",  { FC_REF_CONSTANT, 1, OFF(164,343), NUM(164,343) } }, /* 164 */
+    { "ps-pk",  { FC_REF_CONSTANT, 1, OFF(165,344), NUM(165,344) } }, /* 165 */
+    { "pt",  { FC_REF_CONSTANT, 1, OFF(166,345), NUM(166,345) } }, /* 166 */
+    { "qu",  { FC_REF_CONSTANT, 2, OFF(167,346), NUM(167,346) } }, /* 167 */
+    { "quz",  { FC_REF_CONSTANT, 2, OFF(168,346), NUM(168,346) } }, /* 168 */
+    { "rm",  { FC_REF_CONSTANT, 1, OFF(169,348), NUM(169,348) } }, /* 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 */
+    { "ro",  { FC_REF_CONSTANT, 3, OFF(171,349), NUM(171,349) } }, /* 171 */
+    { "ru",  { FC_REF_CONSTANT, 1, OFF(172,280), NUM(172,280) } }, /* 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 */
+    { "sah",  { FC_REF_CONSTANT, 1, OFF(175,352), NUM(175,352) } }, /* 175 */
+    { "sat",  { FC_REF_CONSTANT, 1, OFF(176,353), NUM(176,353) } }, /* 176 */
+    { "sc",  { FC_REF_CONSTANT, 1, OFF(177,354), NUM(177,354) } }, /* 177 */
+    { "sco",  { FC_REF_CONSTANT, 3, OFF(178,355), NUM(178,355) } }, /* 178 */
+    { "sd",  { FC_REF_CONSTANT, 1, OFF(179,358), NUM(179,358) } }, /* 179 */
+    { "se",  { FC_REF_CONSTANT, 2, OFF(180,359), NUM(180,359) } }, /* 180 */
+    { "sel",  { FC_REF_CONSTANT, 1, OFF(181,280), NUM(181,280) } }, /* 181 */
+    { "sg",  { FC_REF_CONSTANT, 1, OFF(182,361), NUM(182,361) } }, /* 182 */
+    { "sh",  { FC_REF_CONSTANT, 3, OFF(183,362), NUM(183,362) } }, /* 183 */
+    { "shs",  { FC_REF_CONSTANT, 2, OFF(184,365), NUM(184,365) } }, /* 184 */
+    { "si",  { FC_REF_CONSTANT, 1, OFF(185,367), NUM(185,367) } }, /* 185 */
+    { "sid",  { FC_REF_CONSTANT, 2, OFF(186,368), NUM(186,368) } }, /* 186 */
+    { "sk",  { FC_REF_CONSTANT, 2, OFF(187,370), NUM(187,370) } }, /* 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 */
+    { "sm",  { FC_REF_CONSTANT, 2, OFF(189,372), NUM(189,372) } }, /* 189 */
+    { "sma",  { FC_REF_CONSTANT, 1, OFF(190,374), NUM(190,374) } }, /* 190 */
+    { "smj",  { FC_REF_CONSTANT, 1, OFF(191,375), NUM(191,375) } }, /* 191 */
+    { "smn",  { FC_REF_CONSTANT, 2, OFF(192,376), NUM(192,376) } }, /* 192 */
+    { "sms",  { FC_REF_CONSTANT, 3, OFF(193,378), NUM(193,378) } }, /* 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 */
+    { "sq",  { FC_REF_CONSTANT, 1, OFF(196,381), NUM(196,381) } }, /* 196 */
+    { "sr",  { FC_REF_CONSTANT, 1, OFF(197,382), NUM(197,382) } }, /* 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 */
+    { "sv",  { FC_REF_CONSTANT, 1, OFF(201,383), NUM(201,383) } }, /* 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 */
+    { "syr",  { FC_REF_CONSTANT, 1, OFF(203,384), NUM(203,384) } }, /* 203 */
+    { "ta",  { FC_REF_CONSTANT, 1, OFF(204,385), NUM(204,385) } }, /* 204 */
+    { "te",  { FC_REF_CONSTANT, 1, OFF(205,386), NUM(205,386) } }, /* 205 */
+    { "tg",  { FC_REF_CONSTANT, 1, OFF(206,387), NUM(206,387) } }, /* 206 */
+    { "th",  { FC_REF_CONSTANT, 1, OFF(207,388), NUM(207,388) } }, /* 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 */
+    { "ti-et",  { FC_REF_CONSTANT, 2, OFF(209,368), NUM(209,368) } }, /* 209 */
+    { "tig",  { FC_REF_CONSTANT, 2, OFF(210,389), NUM(210,389) } }, /* 210 */
+    { "tk",  { FC_REF_CONSTANT, 2, OFF(211,391), NUM(211,391) } }, /* 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 */
+    { "tn",  { FC_REF_CONSTANT, 2, OFF(213,327), NUM(213,327) } }, /* 213 */
+    { "to",  { FC_REF_CONSTANT, 2, OFF(214,372), NUM(214,372) } }, /* 214 */
+    { "tr",  { FC_REF_CONSTANT, 2, OFF(215,393), NUM(215,393) } }, /* 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 */
+    { "tt",  { FC_REF_CONSTANT, 1, OFF(217,395), NUM(217,395) } }, /* 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 */
-    { "und-zmth",  { FC_REF_CONSTANT, 12, OFF(223,400), NUM(223,400) } }, /* 223 */
-    { "und-zsye",  { FC_REF_CONSTANT, 12, OFF(224,412), NUM(224,412) } }, /* 224 */
-    { "ur",  { FC_REF_CONSTANT, 1, OFF(225,287), NUM(225,287) } }, /* 225 */
+    { "ty",  { FC_REF_CONSTANT, 3, OFF(219,396), NUM(219,396) } }, /* 219 */
+    { "tyv",  { FC_REF_CONSTANT, 1, OFF(220,285), NUM(220,285) } }, /* 220 */
+    { "ug",  { FC_REF_CONSTANT, 1, OFF(221,399), NUM(221,399) } }, /* 221 */
+    { "uk",  { FC_REF_CONSTANT, 1, OFF(222,400), NUM(222,400) } }, /* 222 */
+    { "und-zmth",  { FC_REF_CONSTANT, 12, OFF(223,401), NUM(223,401) } }, /* 223 */
+    { "und-zsye",  { FC_REF_CONSTANT, 12, OFF(224,413), NUM(224,413) } }, /* 224 */
+    { "ur",  { FC_REF_CONSTANT, 1, OFF(225,288), NUM(225,288) } }, /* 225 */
     { "uz",  { FC_REF_CONSTANT, 1, OFF(226,87), NUM(226,87) } }, /* 226 */
-    { "ve",  { FC_REF_CONSTANT, 2, OFF(227,424), NUM(227,424) } }, /* 227 */
-    { "vi",  { FC_REF_CONSTANT, 4, OFF(228,426), NUM(228,426) } }, /* 228 */
-    { "vo",  { FC_REF_CONSTANT, 1, OFF(229,430), NUM(229,430) } }, /* 229 */
-    { "vot",  { FC_REF_CONSTANT, 2, OFF(230,431), NUM(230,431) } }, /* 230 */
-    { "wa",  { FC_REF_CONSTANT, 1, OFF(231,433), NUM(231,433) } }, /* 231 */
-    { "wal",  { FC_REF_CONSTANT, 2, OFF(232,367), NUM(232,367) } }, /* 232 */
-    { "wen",  { FC_REF_CONSTANT, 2, OFF(233,434), NUM(233,434) } }, /* 233 */
-    { "wo",  { FC_REF_CONSTANT, 2, OFF(234,436), NUM(234,436) } }, /* 234 */
+    { "ve",  { FC_REF_CONSTANT, 2, OFF(227,425), NUM(227,425) } }, /* 227 */
+    { "vi",  { FC_REF_CONSTANT, 4, OFF(228,427), NUM(228,427) } }, /* 228 */
+    { "vo",  { FC_REF_CONSTANT, 1, OFF(229,431), NUM(229,431) } }, /* 229 */
+    { "vot",  { FC_REF_CONSTANT, 2, OFF(230,432), NUM(230,432) } }, /* 230 */
+    { "wa",  { FC_REF_CONSTANT, 1, OFF(231,434), NUM(231,434) } }, /* 231 */
+    { "wal",  { FC_REF_CONSTANT, 2, OFF(232,368), NUM(232,368) } }, /* 232 */
+    { "wen",  { FC_REF_CONSTANT, 2, OFF(233,435), NUM(233,435) } }, /* 233 */
+    { "wo",  { FC_REF_CONSTANT, 2, OFF(234,437), NUM(234,437) } }, /* 234 */
     { "xh",  { FC_REF_CONSTANT, 1, OFF(235,87), NUM(235,87) } }, /* 235 */
-    { "yap",  { FC_REF_CONSTANT, 1, OFF(236,438), NUM(236,438) } }, /* 236 */
+    { "yap",  { FC_REF_CONSTANT, 1, OFF(236,439), NUM(236,439) } }, /* 236 */
     { "yi",  { FC_REF_CONSTANT, 1, OFF(237,108), NUM(237,108) } }, /* 237 */
-    { "yo",  { FC_REF_CONSTANT, 4, OFF(238,439), NUM(238,439) } }, /* 238 */
+    { "yo",  { FC_REF_CONSTANT, 4, OFF(238,440), NUM(238,440) } }, /* 238 */
     { "za",  { FC_REF_CONSTANT, 1, OFF(239,87), NUM(239,87) } }, /* 239 */
-    { "zh-cn",  { FC_REF_CONSTANT, 82, OFF(240,443), NUM(240,443) } }, /* 240 */
-    { "zh-hk",  { FC_REF_CONSTANT, 171, OFF(241,525), NUM(241,525) } }, /* 241 */
-    { "zh-mo",  { FC_REF_CONSTANT, 171, OFF(242,525), NUM(242,525) } }, /* 242 */
-    { "zh-sg",  { FC_REF_CONSTANT, 82, OFF(243,443), NUM(243,443) } }, /* 243 */
-    { "zh-tw",  { FC_REF_CONSTANT, 83, OFF(244,696), NUM(244,696) } }, /* 244 */
+    { "zh-cn",  { FC_REF_CONSTANT, 82, OFF(240,444), NUM(240,444) } }, /* 240 */
+    { "zh-hk",  { FC_REF_CONSTANT, 171, OFF(241,526), NUM(241,526) } }, /* 241 */
+    { "zh-mo",  { FC_REF_CONSTANT, 171, OFF(242,526), NUM(242,526) } }, /* 242 */
+    { "zh-sg",  { FC_REF_CONSTANT, 82, OFF(243,444), NUM(243,444) } }, /* 243 */
+    { "zh-tw",  { FC_REF_CONSTANT, 83, OFF(244,697), NUM(244,697) } }, /* 244 */
     { "zu",  { FC_REF_CONSTANT, 1, OFF(245,87), NUM(245,87) } }, /* 245 */
 },
 {
@@ -3339,350 +3339,352 @@ static const struct {
     LEAF(115, 23), LEAF(115,105), LEAF(115,106),
     /* id */
     LEAF(118,107),
+    /* ie */
+    LEAF(119, 53),
     /* ig */
-    LEAF(119, 23), LEAF(119,108),
+    LEAF(120, 23), LEAF(120,108),
     /* ii */
-    LEAF(121,109), LEAF(121,109), LEAF(121,109), LEAF(121,109),
-    LEAF(121,110),
+    LEAF(122,109), LEAF(122,109), LEAF(122,109), LEAF(122,109),
+    LEAF(122,110),
     /* ik */
-    LEAF(126,111),
+    LEAF(127,111),
     /* is */
-    LEAF(127,112),
+    LEAF(128,112),
     /* it */
-    LEAF(128,113),
+    LEAF(129,113),
     /* iu */
-    LEAF(129,114), LEAF(129,115), LEAF(129,116),
+    LEAF(130,114), LEAF(130,115), LEAF(130,116),
     /* ja */
-    LEAF(132,117), LEAF(132,118), LEAF(132,119), LEAF(132,120),
-    LEAF(132,121), LEAF(132,122), LEAF(132,123), LEAF(132,124),
-    LEAF(132,125), LEAF(132,126), LEAF(132,127), LEAF(132,128),
-    LEAF(132,129), LEAF(132,130), LEAF(132,131), LEAF(132,132),
-    LEAF(132,133), LEAF(132,134), LEAF(132,135), LEAF(132,136),
-    LEAF(132,137), LEAF(132,138), LEAF(132,139), LEAF(132,140),
-    LEAF(132,141), LEAF(132,142), LEAF(132,143), LEAF(132,144),
-    LEAF(132,145), LEAF(132,146), LEAF(132,147), LEAF(132,148),
-    LEAF(132,149), LEAF(132,150), LEAF(132,151), LEAF(132,152),
-    LEAF(132,153), LEAF(132,154), LEAF(132,155), LEAF(132,156),
-    LEAF(132,157), LEAF(132,158), LEAF(132,159), LEAF(132,160),
-    LEAF(132,161), LEAF(132,162), LEAF(132,163), LEAF(132,164),
-    LEAF(132,165), LEAF(132,166), LEAF(132,167), LEAF(132,168),
-    LEAF(132,169), LEAF(132,170), LEAF(132,171), LEAF(132,172),
-    LEAF(132,173), LEAF(132,174), LEAF(132,175), LEAF(132,176),
-    LEAF(132,177), LEAF(132,178), LEAF(132,179), LEAF(132,180),
-    LEAF(132,181), LEAF(132,182), LEAF(132,183), LEAF(132,184),
-    LEAF(132,185), LEAF(132,186), LEAF(132,187), LEAF(132,188),
-    LEAF(132,189), LEAF(132,190), LEAF(132,191), LEAF(132,192),
-    LEAF(132,193), LEAF(132,194), LEAF(132,195), LEAF(132,196),
-    LEAF(132,197), LEAF(132,198), LEAF(132,199),
+    LEAF(133,117), LEAF(133,118), LEAF(133,119), LEAF(133,120),
+    LEAF(133,121), LEAF(133,122), LEAF(133,123), LEAF(133,124),
+    LEAF(133,125), LEAF(133,126), LEAF(133,127), LEAF(133,128),
+    LEAF(133,129), LEAF(133,130), LEAF(133,131), LEAF(133,132),
+    LEAF(133,133), LEAF(133,134), LEAF(133,135), LEAF(133,136),
+    LEAF(133,137), LEAF(133,138), LEAF(133,139), LEAF(133,140),
+    LEAF(133,141), LEAF(133,142), LEAF(133,143), LEAF(133,144),
+    LEAF(133,145), LEAF(133,146), LEAF(133,147), LEAF(133,148),
+    LEAF(133,149), LEAF(133,150), LEAF(133,151), LEAF(133,152),
+    LEAF(133,153), LEAF(133,154), LEAF(133,155), LEAF(133,156),
+    LEAF(133,157), LEAF(133,158), LEAF(133,159), LEAF(133,160),
+    LEAF(133,161), LEAF(133,162), LEAF(133,163), LEAF(133,164),
+    LEAF(133,165), LEAF(133,166), LEAF(133,167), LEAF(133,168),
+    LEAF(133,169), LEAF(133,170), LEAF(133,171), LEAF(133,172),
+    LEAF(133,173), LEAF(133,174), LEAF(133,175), LEAF(133,176),
+    LEAF(133,177), LEAF(133,178), LEAF(133,179), LEAF(133,180),
+    LEAF(133,181), LEAF(133,182), LEAF(133,183), LEAF(133,184),
+    LEAF(133,185), LEAF(133,186), LEAF(133,187), LEAF(133,188),
+    LEAF(133,189), LEAF(133,190), LEAF(133,191), LEAF(133,192),
+    LEAF(133,193), LEAF(133,194), LEAF(133,195), LEAF(133,196),
+    LEAF(133,197), LEAF(133,198), LEAF(133,199),
     /* jv */
-    LEAF(215,200),
+    LEAF(216,200),
     /* ka */
-    LEAF(216,201),
+    LEAF(217,201),
     /* kaa */
-    LEAF(217,202),
+    LEAF(218,202),
     /* ki */
-    LEAF(218, 23), LEAF(218,203),
+    LEAF(219, 23), LEAF(219,203),
     /* kk */
-    LEAF(220,204),
+    LEAF(221,204),
     /* kl */
-    LEAF(221,205), LEAF(221,206),
+    LEAF(222,205), LEAF(222,206),
     /* km */
-    LEAF(223,207),
+    LEAF(224,207),
     /* kn */
-    LEAF(224,208),
+    LEAF(225,208),
     /* ko */
-    LEAF(225,209), LEAF(225,210), LEAF(225,211), LEAF(225,212),
-    LEAF(225,213), LEAF(225,214), LEAF(225,215), LEAF(225,216),
-    LEAF(225,217), LEAF(225,218), LEAF(225,219), LEAF(225,220),
-    LEAF(225,221), LEAF(225,222), LEAF(225,223), LEAF(225,224),
-    LEAF(225,225), LEAF(225,226), LEAF(225,227), LEAF(225,228),
-    LEAF(225,229), LEAF(225,230), LEAF(225,231), LEAF(225,232),
-    LEAF(225,233), LEAF(225,234), LEAF(225,235), LEAF(225,236),
-    LEAF(225,237), LEAF(225,238), LEAF(225,239), LEAF(225,240),
-    LEAF(225,241), LEAF(225,242), LEAF(225,243), LEAF(225,244),
-    LEAF(225,245), LEAF(225,246), LEAF(225,247), LEAF(225,248),
-    LEAF(225,249), LEAF(225,250), LEAF(225,251), LEAF(225,252),
-    LEAF(225,253),
+    LEAF(226,209), LEAF(226,210), LEAF(226,211), LEAF(226,212),
+    LEAF(226,213), LEAF(226,214), LEAF(226,215), LEAF(226,216),
+    LEAF(226,217), LEAF(226,218), LEAF(226,219), LEAF(226,220),
+    LEAF(226,221), LEAF(226,222), LEAF(226,223), LEAF(226,224),
+    LEAF(226,225), LEAF(226,226), LEAF(226,227), LEAF(226,228),
+    LEAF(226,229), LEAF(226,230), LEAF(226,231), LEAF(226,232),
+    LEAF(226,233), LEAF(226,234), LEAF(226,235), LEAF(226,236),
+    LEAF(226,237), LEAF(226,238), LEAF(226,239), LEAF(226,240),
+    LEAF(226,241), LEAF(226,242), LEAF(226,243), LEAF(226,244),
+    LEAF(226,245), LEAF(226,246), LEAF(226,247), LEAF(226,248),
+    LEAF(226,249), LEAF(226,250), LEAF(226,251), LEAF(226,252),
+    LEAF(226,253),
     /* kr */
-    LEAF(270, 23), LEAF(270,254), LEAF(270,255),
+    LEAF(271, 23), LEAF(271,254), LEAF(271,255),
     /* ks */
-    LEAF(273,256),
+    LEAF(274,256),
     /* ku_am */
-    LEAF(274,257), LEAF(274,258),
+    LEAF(275,257), LEAF(275,258),
     /* ku_iq */
-    LEAF(276,259),
+    LEAF(277,259),
     /* ku_tr */
-    LEAF(277,260), LEAF(277,261),
+    LEAF(278,260), LEAF(278,261),
     /* kum */
-    LEAF(279,262),
+    LEAF(280,262),
     /* kv */
-    LEAF(280,263),
+    LEAF(281,263),
     /* kw */
-    LEAF(281, 23), LEAF(281, 96), LEAF(281,264),
+    LEAF(282, 23), LEAF(282, 96), LEAF(282,264),
     /* ky */
-    LEAF(284,265),
+    LEAF(285,265),
     /* la */
-    LEAF(285, 23), LEAF(285,266),
+    LEAF(286, 23), LEAF(286,266),
     /* lah */
-    LEAF(287,267),
+    LEAF(288,267),
     /* lb */
-    LEAF(288,268),
+    LEAF(289,268),
     /* lg */
-    LEAF(289, 23), LEAF(289,269),
+    LEAF(290, 23), LEAF(290,269),
     /* li */
-    LEAF(291,270),
+    LEAF(292,270),
     /* ln */
-    LEAF(292,271), LEAF(292,272), LEAF(292,  6), LEAF(292,273),
+    LEAF(293,271), LEAF(293,272), LEAF(293,  6), LEAF(293,273),
     /* lo */
-    LEAF(296,274),
+    LEAF(297,274),
     /* lt */
-    LEAF(297, 23), LEAF(297,275),
+    LEAF(298, 23), LEAF(298,275),
     /* lv */
-    LEAF(299, 23), LEAF(299,276),
+    LEAF(300, 23), LEAF(300,276),
     /* mg */
-    LEAF(301,277),
+    LEAF(302,277),
     /* mh */
-    LEAF(302, 23), LEAF(302,278),
+    LEAF(303, 23), LEAF(303,278),
     /* mi */
-    LEAF(304, 23), LEAF(304, 96), LEAF(304,279),
+    LEAF(305, 23), LEAF(305, 96), LEAF(305,279),
     /* mk */
-    LEAF(307,280),
+    LEAF(308,280),
     /* ml */
-    LEAF(308,281),
+    LEAF(309,281),
     /* mn_cn */
-    LEAF(309,282),
+    LEAF(310,282),
     /* mn_mn */
-    LEAF(310,283),
+    LEAF(311,283),
     /* mni */
-    LEAF(311,284),
+    LEAF(312,284),
     /* mo */
-    LEAF(312,285), LEAF(312, 58), LEAF(312,286), LEAF(312,262),
+    LEAF(313,285), LEAF(313, 58), LEAF(313,286), LEAF(313,262),
     /* mt */
-    LEAF(316,287), LEAF(316,288),
+    LEAF(317,287), LEAF(317,288),
     /* my */
-    LEAF(318,289),
+    LEAF(319,289),
     /* na */
-    LEAF(319,  4), LEAF(319,290),
+    LEAF(320,  4), LEAF(320,290),
     /* nb */
-    LEAF(321,291),
+    LEAF(322,291),
     /* ne */
-    LEAF(322,292),
+    LEAF(323,292),
     /* nl */
-    LEAF(323,293),
+    LEAF(324,293),
     /* nn */
-    LEAF(324,294),
+    LEAF(325,294),
     /* nqo */
-    LEAF(325,295),
+    LEAF(326,295),
     /* nso */
-    LEAF(326,296), LEAF(326,297),
+    LEAF(327,296), LEAF(327,297),
     /* nv */
-    LEAF(328,298), LEAF(328,299), LEAF(328,300), LEAF(328,301),
+    LEAF(329,298), LEAF(329,299), LEAF(329,300), LEAF(329,301),
     /* ny */
-    LEAF(332, 23), LEAF(332,302),
+    LEAF(333, 23), LEAF(333,302),
     /* oc */
-    LEAF(334,303),
+    LEAF(335,303),
     /* or */
-    LEAF(335,304),
+    LEAF(336,304),
     /* ota */
-    LEAF(336,305),
+    LEAF(337,305),
     /* pa */
-    LEAF(337,306),
+    LEAF(338,306),
     /* pap_an */
-    LEAF(338,307),
+    LEAF(339,307),
     /* pap_aw */
-    LEAF(339,308),
+    LEAF(340,308),
     /* pl */
-    LEAF(340, 99), LEAF(340,309),
+    LEAF(341, 99), LEAF(341,309),
     /* ps_af */
-    LEAF(342,310),
+    LEAF(343,310),
     /* ps_pk */
-    LEAF(343,311),
+    LEAF(344,311),
     /* pt */
-    LEAF(344,312),
+    LEAF(345,312),
     /* qu */
-    LEAF(345,308), LEAF(345,313),
+    LEAF(346,308), LEAF(346,313),
     /* rm */
-    LEAF(347,314),
+    LEAF(348,314),
     /* ro */
-    LEAF(348,285), LEAF(348, 58), LEAF(348,286),
+    LEAF(349,285), LEAF(349, 58), LEAF(349,286),
     /* sah */
-    LEAF(351,315),
+    LEAF(352,315),
     /* sat */
-    LEAF(352,316),
+    LEAF(353,316),
     /* sc */
-    LEAF(353,317),
+    LEAF(354,317),
     /* sco */
-    LEAF(354, 23), LEAF(354,318), LEAF(354,319),
+    LEAF(355, 23), LEAF(355,318), LEAF(355,319),
     /* sd */
-    LEAF(357,320),
+    LEAF(358,320),
     /* se */
-    LEAF(358,321), LEAF(358,322),
+    LEAF(359,321), LEAF(359,322),
     /* sg */
-    LEAF(360,323),
+    LEAF(361,323),
     /* sh */
-    LEAF(361, 23), LEAF(361, 40), LEAF(361,324),
+    LEAF(362, 23), LEAF(362, 40), LEAF(362,324),
     /* shs */
-    LEAF(364,325), LEAF(364,326),
+    LEAF(365,325), LEAF(365,326),
     /* si */
-    LEAF(366,327),
+    LEAF(367,327),
     /* sid */
-    LEAF(367,328), LEAF(367, 10),
+    LEAF(368,328), LEAF(368, 10),
     /* sk */
-    LEAF(369,329), LEAF(369,330),
+    LEAF(370,329), LEAF(370,330),
     /* sm */
-    LEAF(371, 23), LEAF(371, 97),
+    LEAF(372, 23), LEAF(372, 97),
     /* sma */
-    LEAF(373,331),
+    LEAF(374,331),
     /* smj */
-    LEAF(374,332),
+    LEAF(375,332),
     /* smn */
-    LEAF(375,333), LEAF(375,334),
+    LEAF(376,333), LEAF(376,334),
     /* sms */
-    LEAF(377,335), LEAF(377,336), LEAF(377,337),
+    LEAF(378,335), LEAF(378,336), LEAF(378,337),
     /* sq */
-    LEAF(380,338),
+    LEAF(381,338),
     /* sr */
-    LEAF(381,339),
+    LEAF(382,339),
     /* sv */
-    LEAF(382,340),
+    LEAF(383,340),
     /* syr */
-    LEAF(383,341),
+    LEAF(384,341),
     /* ta */
-    LEAF(384,342),
+    LEAF(385,342),
     /* te */
-    LEAF(385,343),
+    LEAF(386,343),
     /* tg */
-    LEAF(386,344),
+    LEAF(387,344),
     /* th */
-    LEAF(387,345),
+    LEAF(388,345),
     /* tig */
-    LEAF(388,346), LEAF(388, 43),
+    LEAF(389,346), LEAF(389, 43),
     /* tk */
-    LEAF(390,347), LEAF(390,348),
+    LEAF(391,347), LEAF(391,348),
     /* tr */
-    LEAF(392,349), LEAF(392, 52),
+    LEAF(393,349), LEAF(393, 52),
     /* tt */
-    LEAF(394,350),
+    LEAF(395,350),
     /* ty */
-    LEAF(395,351), LEAF(395, 96), LEAF(395,300),
+    LEAF(396,351), LEAF(396, 96), LEAF(396,300),
     /* ug */
-    LEAF(398,352),
+    LEAF(399,352),
     /* uk */
-    LEAF(399,353),
+    LEAF(400,353),
     /* und_zmth */
-    LEAF(400,354), LEAF(400,355), LEAF(400,356), LEAF(400,357),
-    LEAF(400,358), LEAF(400,359), LEAF(400,360), LEAF(400,361),
-    LEAF(400,362), LEAF(400,363), LEAF(400,364), LEAF(400,365),
+    LEAF(401,354), LEAF(401,355), LEAF(401,356), LEAF(401,357),
+    LEAF(401,358), LEAF(401,359), LEAF(401,360), LEAF(401,361),
+    LEAF(401,362), LEAF(401,363), LEAF(401,364), LEAF(401,365),
     /* und_zsye */
-    LEAF(412,366), LEAF(412,367), LEAF(412,368), LEAF(412,369),
-    LEAF(412,370), LEAF(412,371), LEAF(412,372), LEAF(412,373),
-    LEAF(412,374), LEAF(412,375), LEAF(412,376), LEAF(412,377),
+    LEAF(413,366), LEAF(413,367), LEAF(413,368), LEAF(413,369),
+    LEAF(413,370), LEAF(413,371), LEAF(413,372), LEAF(413,373),
+    LEAF(413,374), LEAF(413,375), LEAF(413,376), LEAF(413,377),
     /* ve */
-    LEAF(424, 23), LEAF(424,378),
+    LEAF(425, 23), LEAF(425,378),
     /* vi */
-    LEAF(426,379), LEAF(426,380), LEAF(426,381), LEAF(426,382),
+    LEAF(427,379), LEAF(427,380), LEAF(427,381), LEAF(427,382),
     /* vo */
-    LEAF(430,383),
+    LEAF(431,383),
     /* vot */
-    LEAF(431,384), LEAF(431, 74),
+    LEAF(432,384), LEAF(432, 74),
     /* wa */
-    LEAF(433,385),
+    LEAF(434,385),
     /* wen */
-    LEAF(434, 99), LEAF(434,386),
+    LEAF(435, 99), LEAF(435,386),
     /* wo */
-    LEAF(436,387), LEAF(436,269),
+    LEAF(437,387), LEAF(437,269),
     /* yap */
-    LEAF(438,388),
+    LEAF(439,388),
     /* yo */
-    LEAF(439,389), LEAF(439,390), LEAF(439,391), LEAF(439,392),
+    LEAF(440,389), LEAF(440,390), LEAF(440,391), LEAF(440,392),
     /* zh_cn */
-    LEAF(443,393), LEAF(443,394), LEAF(443,395), LEAF(443,396),
-    LEAF(443,397), LEAF(443,398), LEAF(443,399), LEAF(443,400),
-    LEAF(443,401), LEAF(443,402), LEAF(443,403), LEAF(443,404),
-    LEAF(443,405), LEAF(443,406), LEAF(443,407), LEAF(443,408),
-    LEAF(443,409), LEAF(443,410), LEAF(443,411), LEAF(443,412),
-    LEAF(443,413), LEAF(443,414), LEAF(443,415), LEAF(443,416),
-    LEAF(443,417), LEAF(443,418), LEAF(443,419), LEAF(443,420),
-    LEAF(443,421), LEAF(443,422), LEAF(443,423), LEAF(443,424),
-    LEAF(443,425), LEAF(443,426), LEAF(443,427), LEAF(443,428),
-    LEAF(443,429), LEAF(443,430), LEAF(443,431), LEAF(443,432),
-    LEAF(443,433), LEAF(443,434), LEAF(443,435), LEAF(443,436),
-    LEAF(443,437), LEAF(443,438), LEAF(443,439), LEAF(443,440),
-    LEAF(443,441), LEAF(443,442), LEAF(443,443), LEAF(443,444),
-    LEAF(443,445), LEAF(443,446), LEAF(443,447), LEAF(443,448),
-    LEAF(443,449), LEAF(443,450), LEAF(443,451), LEAF(443,452),
-    LEAF(443,453), LEAF(443,454), LEAF(443,455), LEAF(443,456),
-    LEAF(443,457), LEAF(443,458), LEAF(443,459), LEAF(443,460),
-    LEAF(443,461), LEAF(443,462), LEAF(443,463), LEAF(443,464),
-    LEAF(443,465), LEAF(443,466), LEAF(443,467), LEAF(443,468),
-    LEAF(443,469), LEAF(443,470), LEAF(443,471), LEAF(443,472),
-    LEAF(443,473), LEAF(443,474),
+    LEAF(444,393), LEAF(444,394), LEAF(444,395), LEAF(444,396),
+    LEAF(444,397), LEAF(444,398), LEAF(444,399), LEAF(444,400),
+    LEAF(444,401), LEAF(444,402), LEAF(444,403), LEAF(444,404),
+    LEAF(444,405), LEAF(444,406), LEAF(444,407), LEAF(444,408),
+    LEAF(444,409), LEAF(444,410), LEAF(444,411), LEAF(444,412),
+    LEAF(444,413), LEAF(444,414), LEAF(444,415), LEAF(444,416),
+    LEAF(444,417), LEAF(444,418), LEAF(444,419), LEAF(444,420),
+    LEAF(444,421), LEAF(444,422), LEAF(444,423), LEAF(444,424),
+    LEAF(444,425), LEAF(444,426), LEAF(444,427), LEAF(444,428),
+    LEAF(444,429), LEAF(444,430), LEAF(444,431), LEAF(444,432),
+    LEAF(444,433), LEAF(444,434), LEAF(444,435), LEAF(444,436),
+    LEAF(444,437), LEAF(444,438), LEAF(444,439), LEAF(444,440),
+    LEAF(444,441), LEAF(444,442), LEAF(444,443), LEAF(444,444),
+    LEAF(444,445), LEAF(444,446), LEAF(444,447), LEAF(444,448),
+    LEAF(444,449), LEAF(444,450), LEAF(444,451), LEAF(444,452),
+    LEAF(444,453), LEAF(444,454), LEAF(444,455), LEAF(444,456),
+    LEAF(444,457), LEAF(444,458), LEAF(444,459), LEAF(444,460),
+    LEAF(444,461), LEAF(444,462), LEAF(444,463), LEAF(444,464),
+    LEAF(444,465), LEAF(444,466), LEAF(444,467), LEAF(444,468),
+    LEAF(444,469), LEAF(444,470), LEAF(444,471), LEAF(444,472),
+    LEAF(444,473), LEAF(444,474),
     /* zh_hk */
-    LEAF(525,475), LEAF(525,476), LEAF(525,477), LEAF(525,478),
-    LEAF(525,479), LEAF(525,480), LEAF(525,481), LEAF(525,482),
-    LEAF(525,483), LEAF(525,484), LEAF(525,485), LEAF(525,486),
-    LEAF(525,487), LEAF(525,488), LEAF(525,489), LEAF(525,490),
-    LEAF(525,491), LEAF(525,492), LEAF(525,493), LEAF(525,494),
-    LEAF(525,495), LEAF(525,496), LEAF(525,497), LEAF(525,498),
-    LEAF(525,499), LEAF(525,500), LEAF(525,501), LEAF(525,502),
-    LEAF(525,503), LEAF(525,504), LEAF(525,505), LEAF(525,506),
-    LEAF(525,507), LEAF(525,508), LEAF(525,509), LEAF(525,510),
-    LEAF(525,511), LEAF(525,512), LEAF(525,513), LEAF(525,514),
-    LEAF(525,515), LEAF(525,516), LEAF(525,517), LEAF(525,518),
-    LEAF(525,519), LEAF(525,520), LEAF(525,521), LEAF(525,522),
-    LEAF(525,523), LEAF(525,524), LEAF(525,525), LEAF(525,526),
-    LEAF(525,527), LEAF(525,528), LEAF(525,529), LEAF(525,530),
-    LEAF(525,531), LEAF(525,532), LEAF(525,533), LEAF(525,534),
-    LEAF(525,535), LEAF(525,536), LEAF(525,537), LEAF(525,538),
-    LEAF(525,539), LEAF(525,540), LEAF(525,541), LEAF(525,542),
-    LEAF(525,543), LEAF(525,544), LEAF(525,545), LEAF(525,546),
-    LEAF(525,547), LEAF(525,548), LEAF(525,549), LEAF(525,550),
-    LEAF(525,551), LEAF(525,552), LEAF(525,553), LEAF(525,554),
-    LEAF(525,555), LEAF(525,556), LEAF(525,557), LEAF(525,558),
-    LEAF(525,559), LEAF(525,560), LEAF(525,561), LEAF(525,562),
-    LEAF(525,563), LEAF(525,564), LEAF(525,565), LEAF(525,566),
-    LEAF(525,567), LEAF(525,568), LEAF(525,569), LEAF(525,570),
-    LEAF(525,571), LEAF(525,572), LEAF(525,573), LEAF(525,574),
-    LEAF(525,575), LEAF(525,576), LEAF(525,577), LEAF(525,578),
-    LEAF(525,579), LEAF(525,580), LEAF(525,581), LEAF(525,582),
-    LEAF(525,583), LEAF(525,584), LEAF(525,585), LEAF(525,586),
-    LEAF(525,587), LEAF(525,588), LEAF(525,589), LEAF(525,590),
-    LEAF(525,591), LEAF(525,592), LEAF(525,593), LEAF(525,594),
-    LEAF(525,595), LEAF(525,596), LEAF(525,597), LEAF(525,598),
-    LEAF(525,599), LEAF(525,600), LEAF(525,601), LEAF(525,602),
-    LEAF(525,603), LEAF(525,604), LEAF(525,355), LEAF(525,605),
-    LEAF(525,606), LEAF(525,318), LEAF(525,607), LEAF(525,608),
-    LEAF(525,609), LEAF(525,610), LEAF(525,611), LEAF(525,612),
-    LEAF(525,613), LEAF(525,  3), LEAF(525,614), LEAF(525,615),
-    LEAF(525,616), LEAF(525,617), LEAF(525,618), LEAF(525,619),
-    LEAF(525,604), LEAF(525,620), LEAF(525,621), LEAF(525,622),
-    LEAF(525,623), LEAF(525,624), LEAF(525,625), LEAF(525,626),
-    LEAF(525,627), LEAF(525,628), LEAF(525,629), LEAF(525,630),
-    LEAF(525,631), LEAF(525,632), LEAF(525,633), LEAF(525,634),
-    LEAF(525,635), LEAF(525,636), LEAF(525,637), LEAF(525,638),
-    LEAF(525,639), LEAF(525,640), LEAF(525,641),
+    LEAF(526,475), LEAF(526,476), LEAF(526,477), LEAF(526,478),
+    LEAF(526,479), LEAF(526,480), LEAF(526,481), LEAF(526,482),
+    LEAF(526,483), LEAF(526,484), LEAF(526,485), LEAF(526,486),
+    LEAF(526,487), LEAF(526,488), LEAF(526,489), LEAF(526,490),
+    LEAF(526,491), LEAF(526,492), LEAF(526,493), LEAF(526,494),
+    LEAF(526,495), LEAF(526,496), LEAF(526,497), LEAF(526,498),
+    LEAF(526,499), LEAF(526,500), LEAF(526,501), LEAF(526,502),
+    LEAF(526,503), LEAF(526,504), LEAF(526,505), LEAF(526,506),
+    LEAF(526,507), LEAF(526,508), LEAF(526,509), LEAF(526,510),
+    LEAF(526,511), LEAF(526,512), LEAF(526,513), LEAF(526,514),
+    LEAF(526,515), LEAF(526,516), LEAF(526,517), LEAF(526,518),
+    LEAF(526,519), LEAF(526,520), LEAF(526,521), LEAF(526,522),
+    LEAF(526,523), LEAF(526,524), LEAF(526,525), LEAF(526,526),
+    LEAF(526,527), LEAF(526,528), LEAF(526,529), LEAF(526,530),
+    LEAF(526,531), LEAF(526,532), LEAF(526,533), LEAF(526,534),
+    LEAF(526,535), LEAF(526,536), LEAF(526,537), LEAF(526,538),
+    LEAF(526,539), LEAF(526,540), LEAF(526,541), LEAF(526,542),
+    LEAF(526,543), LEAF(526,544), LEAF(526,545), LEAF(526,546),
+    LEAF(526,547), LEAF(526,548), LEAF(526,549), LEAF(526,550),
+    LEAF(526,551), LEAF(526,552), LEAF(526,553), LEAF(526,554),
+    LEAF(526,555), LEAF(526,556), LEAF(526,557), LEAF(526,558),
+    LEAF(526,559), LEAF(526,560), LEAF(526,561), LEAF(526,562),
+    LEAF(526,563), LEAF(526,564), LEAF(526,565), LEAF(526,566),
+    LEAF(526,567), LEAF(526,568), LEAF(526,569), LEAF(526,570),
+    LEAF(526,571), LEAF(526,572), LEAF(526,573), LEAF(526,574),
+    LEAF(526,575), LEAF(526,576), LEAF(526,577), LEAF(526,578),
+    LEAF(526,579), LEAF(526,580), LEAF(526,581), LEAF(526,582),
+    LEAF(526,583), LEAF(526,584), LEAF(526,585), LEAF(526,586),
+    LEAF(526,587), LEAF(526,588), LEAF(526,589), LEAF(526,590),
+    LEAF(526,591), LEAF(526,592), LEAF(526,593), LEAF(526,594),
+    LEAF(526,595), LEAF(526,596), LEAF(526,597), LEAF(526,598),
+    LEAF(526,599), LEAF(526,600), LEAF(526,601), LEAF(526,602),
+    LEAF(526,603), LEAF(526,604), LEAF(526,355), LEAF(526,605),
+    LEAF(526,606), LEAF(526,318), LEAF(526,607), LEAF(526,608),
+    LEAF(526,609), LEAF(526,610), LEAF(526,611), LEAF(526,612),
+    LEAF(526,613), LEAF(526,  3), LEAF(526,614), LEAF(526,615),
+    LEAF(526,616), LEAF(526,617), LEAF(526,618), LEAF(526,619),
+    LEAF(526,604), LEAF(526,620), LEAF(526,621), LEAF(526,622),
+    LEAF(526,623), LEAF(526,624), LEAF(526,625), LEAF(526,626),
+    LEAF(526,627), LEAF(526,628), LEAF(526,629), LEAF(526,630),
+    LEAF(526,631), LEAF(526,632), LEAF(526,633), LEAF(526,634),
+    LEAF(526,635), LEAF(526,636), LEAF(526,637), LEAF(526,638),
+    LEAF(526,639), LEAF(526,640), LEAF(526,641),
     /* zh_tw */
-    LEAF(696,642), LEAF(696,643), LEAF(696,644), LEAF(696,645),
-    LEAF(696,646), LEAF(696,647), LEAF(696,648), LEAF(696,649),
-    LEAF(696,650), LEAF(696,651), LEAF(696,652), LEAF(696,653),
-    LEAF(696,654), LEAF(696,655), LEAF(696,656), LEAF(696,657),
-    LEAF(696,658), LEAF(696,659), LEAF(696,660), LEAF(696,661),
-    LEAF(696,662), LEAF(696,663), LEAF(696,664), LEAF(696,665),
-    LEAF(696,666), LEAF(696,667), LEAF(696,668), LEAF(696,669),
-    LEAF(696,670), LEAF(696,671), LEAF(696,672), LEAF(696,673),
-    LEAF(696,674), LEAF(696,675), LEAF(696,676), LEAF(696,677),
-    LEAF(696,678), LEAF(696,679), LEAF(696,680), LEAF(696,681),
-    LEAF(696,682), LEAF(696,683), LEAF(696,684), LEAF(696,685),
-    LEAF(696,686), LEAF(696,687), LEAF(696,688), LEAF(696,689),
-    LEAF(696,690), LEAF(696,691), LEAF(696,692), LEAF(696,693),
-    LEAF(696,694), LEAF(696,695), LEAF(696,696), LEAF(696,697),
-    LEAF(696,698), LEAF(696,699), LEAF(696,700), LEAF(696,701),
-    LEAF(696,702), LEAF(696,703), LEAF(696,704), LEAF(696,705),
-    LEAF(696,706), LEAF(696,707), LEAF(696,708), LEAF(696,709),
-    LEAF(696,710), LEAF(696,711), LEAF(696,712), LEAF(696,713),
-    LEAF(696,714), LEAF(696,715), LEAF(696,716), LEAF(696,717),
-    LEAF(696,718), LEAF(696,719), LEAF(696,720), LEAF(696,721),
-    LEAF(696,722), LEAF(696,723), LEAF(696,724),
+    LEAF(697,642), LEAF(697,643), LEAF(697,644), LEAF(697,645),
+    LEAF(697,646), LEAF(697,647), LEAF(697,648), LEAF(697,649),
+    LEAF(697,650), LEAF(697,651), LEAF(697,652), LEAF(697,653),
+    LEAF(697,654), LEAF(697,655), LEAF(697,656), LEAF(697,657),
+    LEAF(697,658), LEAF(697,659), LEAF(697,660), LEAF(697,661),
+    LEAF(697,662), LEAF(697,663), LEAF(697,664), LEAF(697,665),
+    LEAF(697,666), LEAF(697,667), LEAF(697,668), LEAF(697,669),
+    LEAF(697,670), LEAF(697,671), LEAF(697,672), LEAF(697,673),
+    LEAF(697,674), LEAF(697,675), LEAF(697,676), LEAF(697,677),
+    LEAF(697,678), LEAF(697,679), LEAF(697,680), LEAF(697,681),
+    LEAF(697,682), LEAF(697,683), LEAF(697,684), LEAF(697,685),
+    LEAF(697,686), LEAF(697,687), LEAF(697,688), LEAF(697,689),
+    LEAF(697,690), LEAF(697,691), LEAF(697,692), LEAF(697,693),
+    LEAF(697,694), LEAF(697,695), LEAF(697,696), LEAF(697,697),
+    LEAF(697,698), LEAF(697,699), LEAF(697,700), LEAF(697,701),
+    LEAF(697,702), LEAF(697,703), LEAF(697,704), LEAF(697,705),
+    LEAF(697,706), LEAF(697,707), LEAF(697,708), LEAF(697,709),
+    LEAF(697,710), LEAF(697,711), LEAF(697,712), LEAF(697,713),
+    LEAF(697,714), LEAF(697,715), LEAF(697,716), LEAF(697,717),
+    LEAF(697,718), LEAF(697,719), LEAF(697,720), LEAF(697,721),
+    LEAF(697,722), LEAF(697,723), LEAF(697,724),
 },
 {
     /* aa */
@@ -3829,6 +3831,8 @@ static const struct {
     0x0000, 0x0003, 0x001e,
     /* id */
     0x0000,
+    /* ie */
+    0x0000,
     /* ig */
     0x0000, 0x001e,
     /* ii */
index 19b35a2..a1e2022 100644 (file)
 #
 # Interlingue (IE)
 #
-# Orthography taken from http://www.kolumbus.fi/allkiv/itgr/itgrix.htm
+# Source: http://interlingue.narod.ru/Haas.htm
 #
 0041-005a
 0061-007a
+00c1
+00c9
+00cd
+00d3
+00da
+00dd
+00e1
+00e9
+00ed
+00f3
+00fa
+00fd
diff --git a/fc-lang/meson.build b/fc-lang/meson.build
new file mode 100644 (file)
index 0000000..2c5a1c5
--- /dev/null
@@ -0,0 +1,256 @@
+# Do not reorder, magic
+orth_files = [
+  'aa.orth',
+  'ab.orth',
+  'af.orth',
+  'am.orth',
+  'ar.orth',
+  'as.orth',
+  'ast.orth',
+  'av.orth',
+  'ay.orth',
+  'az_az.orth',
+  'az_ir.orth',
+  'ba.orth',
+  'bm.orth',
+  'be.orth',
+  'bg.orth',
+  'bh.orth',
+  'bho.orth',
+  'bi.orth',
+  'bin.orth',
+  'bn.orth',
+  'bo.orth',
+  'br.orth',
+  'bs.orth',
+  'bua.orth',
+  'ca.orth',
+  'ce.orth',
+  'ch.orth',
+  'chm.orth',
+  'chr.orth',
+  'co.orth',
+  'cs.orth',
+  'cu.orth',
+  'cv.orth',
+  'cy.orth',
+  'da.orth',
+  'de.orth',
+  'dz.orth',
+  'el.orth',
+  'en.orth',
+  'eo.orth',
+  'es.orth',
+  'et.orth',
+  'eu.orth',
+  'fa.orth',
+  'fi.orth',
+  'fj.orth',
+  'fo.orth',
+  'fr.orth',
+  'ff.orth',
+  'fur.orth',
+  'fy.orth',
+  'ga.orth',
+  'gd.orth',
+  'gez.orth',
+  'gl.orth',
+  'gn.orth',
+  'gu.orth',
+  'gv.orth',
+  'ha.orth',
+  'haw.orth',
+  'he.orth',
+  'hi.orth',
+  'ho.orth',
+  'hr.orth',
+  'hu.orth',
+  'hy.orth',
+  'ia.orth',
+  'ig.orth',
+  'id.orth',
+  'ie.orth',
+  'ik.orth',
+  'io.orth',
+  'is.orth',
+  'it.orth',
+  'iu.orth',
+  'ja.orth',
+  'ka.orth',
+  'kaa.orth',
+  'ki.orth',
+  'kk.orth',
+  'kl.orth',
+  'km.orth',
+  'kn.orth',
+  'ko.orth',
+  'kok.orth',
+  'ks.orth',
+  'ku_am.orth',
+  'ku_ir.orth',
+  'kum.orth',
+  'kv.orth',
+  'kw.orth',
+  'ky.orth',
+  'la.orth',
+  'lb.orth',
+  'lez.orth',
+  'ln.orth',
+  'lo.orth',
+  'lt.orth',
+  'lv.orth',
+  'mg.orth',
+  'mh.orth',
+  'mi.orth',
+  'mk.orth',
+  'ml.orth',
+  'mn_cn.orth',
+  'mo.orth',
+  'mr.orth',
+  'mt.orth',
+  'my.orth',
+  'nb.orth',
+  'nds.orth',
+  'ne.orth',
+  'nl.orth',
+  'nn.orth',
+  'no.orth',
+  'nr.orth',
+  'nso.orth',
+  'ny.orth',
+  'oc.orth',
+  'om.orth',
+  'or.orth',
+  'os.orth',
+  'pa.orth',
+  'pl.orth',
+  'ps_af.orth',
+  'ps_pk.orth',
+  'pt.orth',
+  'rm.orth',
+  'ro.orth',
+  'ru.orth',
+  'sa.orth',
+  'sah.orth',
+  'sco.orth',
+  'se.orth',
+  'sel.orth',
+  'sh.orth',
+  'shs.orth',
+  'si.orth',
+  'sk.orth',
+  'sl.orth',
+  'sm.orth',
+  'sma.orth',
+  'smj.orth',
+  'smn.orth',
+  'sms.orth',
+  'so.orth',
+  'sq.orth',
+  'sr.orth',
+  'ss.orth',
+  'st.orth',
+  'sv.orth',
+  'sw.orth',
+  'syr.orth',
+  'ta.orth',
+  'te.orth',
+  'tg.orth',
+  'th.orth',
+  'ti_er.orth',
+  'ti_et.orth',
+  'tig.orth',
+  'tk.orth',
+  'tl.orth',
+  'tn.orth',
+  'to.orth',
+  'tr.orth',
+  'ts.orth',
+  'tt.orth',
+  'tw.orth',
+  'tyv.orth',
+  'ug.orth',
+  'uk.orth',
+  'ur.orth',
+  'uz.orth',
+  've.orth',
+  'vi.orth',
+  'vo.orth',
+  'vot.orth',
+  'wa.orth',
+  'wen.orth',
+  'wo.orth',
+  'xh.orth',
+  'yap.orth',
+  'yi.orth',
+  'yo.orth',
+  'zh_cn.orth',
+  'zh_hk.orth',
+  'zh_mo.orth',
+  'zh_sg.orth',
+  'zh_tw.orth',
+  'zu.orth',
+  'ak.orth',
+  'an.orth',
+  'ber_dz.orth',
+  'ber_ma.orth',
+  'byn.orth',
+  'crh.orth',
+  'csb.orth',
+  'dv.orth',
+  'ee.orth',
+  'fat.orth',
+  'fil.orth',
+  'hne.orth',
+  'hsb.orth',
+  'ht.orth',
+  'hz.orth',
+  'ii.orth',
+  'jv.orth',
+  'kab.orth',
+  'kj.orth',
+  'kr.orth',
+  'ku_iq.orth',
+  'ku_tr.orth',
+  'kwm.orth',
+  'lg.orth',
+  'li.orth',
+  'mai.orth',
+  'mn_mn.orth',
+  'ms.orth',
+  'na.orth',
+  'ng.orth',
+  'nv.orth',
+  'ota.orth',
+  'pa_pk.orth',
+  'pap_an.orth',
+  'pap_aw.orth',
+  'qu.orth',
+  'quz.orth',
+  'rn.orth',
+  'rw.orth',
+  'sc.orth',
+  'sd.orth',
+  'sg.orth',
+  'sid.orth',
+  'sn.orth',
+  'su.orth',
+  'ty.orth',
+  'wal.orth',
+  'za.orth',
+  'lah.orth',
+  'nqo.orth',
+  'brx.orth',
+  'sat.orth',
+  'doi.orth',
+  'mni.orth',
+  'und_zsye.orth',
+  'und_zmth.orth',
+]
+
+fclang_h = custom_target('fclang.h',
+  output: ['fclang.h'],
+  input: orth_files,
+  command: [find_program('fc-lang.py'), orth_files, '--template', files('fclang.tmpl.h')[0], '--output', '@OUTPUT@', '--directory', meson.current_source_dir()],
+  build_by_default: true,
+)
index ca1f285..b980697 100644 (file)
@@ -40,4 +40,4 @@
 0950           # Sign and vedic tone marks
 0964-0965      # Punctuations
 0966-096F      # Digits
-0970           # Abbrevation sign
+0970           # Abbreviation sign
index 0532cc1..490b964 100644 (file)
@@ -13,7 +13,7 @@
 # representations about the suitability of this software for any purpose.  It
 # is provided "as is" without express or implied warranty.
 #
-# DWAYNE BAILEY AND TRANSLATE.ORG.ZA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 # EVENT SHALL DWAYNE BAILEY OR TRANSLATE.ORG.ZA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
index 046fc8a..fbc2000 100644 (file)
@@ -13,7 +13,7 @@
 # representations about the suitability of this software for any purpose.  It
 # is provided "as is" without express or implied warranty.
 #
-# DWAYNE BAILEY AND TRANSLATE.ORG.ZA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 # EVENT SHALL DWAYNE BAILEY OR TRANSLATE.ORG.ZA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
index fba09e3..8548dd2 100644 (file)
@@ -23,7 +23,7 @@
 #
 # Panjabi/Punjabi in Pakistan (pa-PK)
 #
-# This file is kept for compatiblity for glibc: According to ISO 639-3, the
+# This file is kept for compatibility for glibc: According to ISO 639-3, the
 # proper code for Pakistani Panjabi is 'lah'. See the file 'lah.orth' for
 # more information.
 include lah.orth
index d5d91d0..bc80e75 100644 (file)
@@ -41,4 +41,4 @@
 0950            # Sign
 0964-0965       # Punctuations
 0966-096F       # Digits
-0970            # Abbrevation sign
+0970            # Abbreviation sign
index 98d79e5..99b61e8 100644 (file)
@@ -13,7 +13,7 @@
 # representations about the suitability of this software for any purpose.  It
 # is provided "as is" without express or implied warranty.
 #
-# DWAYNE BAILEY AND TRANSLATE.ORG.ZA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 # EVENT SHALL DWAYNE BAILEY OR TRANSLATE.ORG.ZA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
index 7db6bff..6d97811 100644 (file)
@@ -13,7 +13,7 @@
 # representations about the suitability of this software for any purpose.  It
 # is provided "as is" without express or implied warranty.
 #
-# DWAYNE BAILEY AND TRANSLATE.ORG.ZA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 # EVENT SHALL DWAYNE BAILEY OR TRANSLATE.ORG.ZA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
index e8ac374..7739790 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 2039acd..54796c8 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include <fontconfig/fontconfig.h>
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-#include <locale.h>
 #ifdef HAVE_CONFIG_H
 #include <config.h>
 #else
 #endif
 #define HAVE_GETOPT 1
 #endif
+#include <fontconfig/fontconfig.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <locale.h>
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
 
 #ifdef ENABLE_NLS
 #include <libintl.h>
index 0eb704d..ceeae90 100644 (file)
@@ -6,13 +6,13 @@
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
-    
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -70,14 +70,14 @@ manpage.1: manpage.sgml
         <arg><option>--format</option> <option><replaceable>format</replaceable></option></arg>
       </group>
       <group>
-       <arg><option>-q</option></arg>
-       <arg><option>--quiet</option></arg>
+        <arg><option>-q</option></arg>
+        <arg><option>--quiet</option></arg>
       </group>
       <arg><option>--version</option></arg>
       <arg><option>--help</option></arg>
       <sbr>
       <arg><option><replaceable>pattern</replaceable></option> <arg rep="repeat"><option><replaceable>element</replaceable></option></arg> </arg>
-      
+
      </cmdsynopsis>
   </refsynopsisdiv>
   <refsect1>
@@ -103,27 +103,27 @@ manpage.1: manpage.sgml
         </term>
         <listitem>
           <para>Print verbose output of the whole font pattern for each match,
-               or <replaceable>element</replaceable>s if any is
-               provided.</para>
+                or <replaceable>element</replaceable>s if any is
+                provided.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term><option>-f</option>
           <option>--format</option>
-         <option><replaceable>format</replaceable></option>
+          <option><replaceable>format</replaceable></option>
         </term>
         <listitem>
           <para>Format output according to the format specifier
-         <replaceable>format</replaceable>.</para>
+          <replaceable>format</replaceable>.</para>
         </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>
+        <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>
diff --git a/fc-list/meson.build b/fc-list/meson.build
new file mode 100644 (file)
index 0000000..2f679d5
--- /dev/null
@@ -0,0 +1,8 @@
+fclist = executable('fc-list', ['fc-list.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-list']
index c87053a..151f0af 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 50393ac..8751a83 100644 (file)
@@ -55,6 +55,18 @@ Displays fonts matching
 \fB\fIelement\fB\fR
 If set, the \fIelement\fR property
 is displayed for matching fonts.
+.SH "EXAMPLES"
+.TP
+\fBfc-match sans\fR
+Display the best matching font categorized into sans-serif generic family, filtered by current locale
+.PP
+.TP
+\fBfc-match sans:lang=en\fR
+Display the best matching font categorized into sans-serif generic family, filtered by English language
+.PP
+.TP
+\fBfc-match sans:lang=en:weight=bold\fR
+Display the best matching font categorized into sans-serif generic family, filtered by English language and weight is bold.
 .SH "SEE ALSO"
 .PP
 \fBfc-list\fR(1)
index dee6147..f31047e 100644 (file)
 
 #include <fontconfig/fontconfig.h>
 #include <stdio.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef ENABLE_NLS
 #include <libintl.h>
 #define _(x)           (dgettext(GETTEXT_PACKAGE, x))
@@ -114,6 +117,7 @@ main (int argc, char **argv)
     int                        brief = 0;
     int                        sort = 0, all = 0;
     const FcChar8      *format = NULL;
+    const FcChar8      *format_optarg = NULL;
     int                        i;
     FcObjectSet                *os = 0;
     FcFontSet          *fs;
@@ -143,7 +147,7 @@ main (int argc, char **argv)
            brief = 1;
            break;
        case 'f':
-           format = (FcChar8 *) strdup (optarg);
+           format = format_optarg = (FcChar8 *) strdup (optarg);
            break;
        case 'V':
            fprintf (stderr, "fontconfig version %d.%d.%d\n", 
@@ -266,5 +270,10 @@ main (int argc, char **argv)
 
     FcFini ();
 
+    if (format_optarg) {
+       free ((void*)format_optarg);
+       format_optarg = NULL;
+    }
+
     return 0;
 }
index f66a021..d64642b 100644 (file)
@@ -1,18 +1,40 @@
 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
 
+<!--
+Copyright © 2008 Patrick Lam
+
+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.
+-->
+
 <!-- Process this file with docbook-to-man to generate an nroff manual
      page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
      the manual page with: `docbook-to-man manpage.sgml | nroff -man |
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
-    
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -75,7 +97,7 @@ manpage.1: manpage.sgml
       <arg><option>--help</option></arg>
       <sbr>
       <arg><option><replaceable>pattern</replaceable></option> <arg rep="repeat"><option><replaceable>element</replaceable></option></arg> </arg>
-      
+
      </cmdsynopsis>
   </refsynopsisdiv>
   <refsect1>
@@ -106,7 +128,7 @@ output is requested.</para>
         </term>
         <listitem>
           <para>Displays sorted list of best matching fonts, but do not do any
-               pruning on the list.</para>
+                pruning on the list.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
@@ -123,18 +145,18 @@ output is requested.</para>
         </term>
         <listitem>
           <para>Print verbose output of the whole font pattern for each match,
-               or <replaceable>element</replaceable>s if any is
-               provided.</para>
+                or <replaceable>element</replaceable>s if any is
+                provided.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term><option>-f</option>
           <option>--format</option>
-         <option><replaceable>format</replaceable></option>
+          <option><replaceable>format</replaceable></option>
         </term>
         <listitem>
           <para>Format output according to the format specifier
-         <replaceable>format</replaceable>.</para>
+          <replaceable>format</replaceable>.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
@@ -173,6 +195,32 @@ output is requested.</para>
   </refsect1>
 
   <refsect1>
+    <title>EXAMPLES</title>
+
+    <variablelist>
+      <varlistentry>
+        <term>fc-match sans</term>
+        <listitem><para>Display the best matching font categorized into sans-serif generic family, filtered by current locale</para></listitem>
+      </varlistentry>
+    </variablelist>
+
+    <variablelist>
+      <varlistentry>
+        <term>fc-match sans:lang=en</term>
+        <listitem><para>Display the best matching font categorized into sans-serif generic family, filtered by English language</para></listitem>
+      </varlistentry>
+    </variablelist>
+
+    <variablelist>
+      <varlistentry>
+        <term>fc-match sans:lang=en:weight=bold</term>
+        <listitem><para>Display the best matching font categorized into sans-serif generic family, filtered by English language and weight is bold.</para></listitem>
+      </varlistentry>
+    </variablelist>
+
+  </refsect1>
+
+  <refsect1>
     <title>SEE ALSO</title>
 
     <para>
diff --git a/fc-match/meson.build b/fc-match/meson.build
new file mode 100644 (file)
index 0000000..aca8bc8
--- /dev/null
@@ -0,0 +1,8 @@
+fcmatch = executable('fc-match', ['fc-match.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-match']
index 7eb31b9..b5c9274 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 7989b81..1e9b1ba 100644 (file)
 
 #include <fontconfig/fontconfig.h>
 #include <stdio.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef ENABLE_NLS
 #include <libintl.h>
 #define _(x)           (dgettext(GETTEXT_PACKAGE, x))
index 928afd8..d616dda 100644 (file)
@@ -6,13 +6,13 @@
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
-    
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -74,7 +74,7 @@ manpage.1: manpage.sgml
       <arg><option>--help</option></arg>
       <sbr>
       <arg><option><replaceable>pattern</replaceable></option> <arg rep="repeat"><option><replaceable>element</replaceable></option></arg> </arg>
-      
+
      </cmdsynopsis>
   </refsynopsisdiv>
   <refsect1>
@@ -116,11 +116,11 @@ pattern before being displayed.</para>
       <varlistentry>
         <term><option>-f</option>
           <option>--format</option>
-         <option><replaceable>format</replaceable></option>
+          <option><replaceable>format</replaceable></option>
         </term>
         <listitem>
           <para>Format output according to the format specifier
-         <replaceable>format</replaceable>.</para>
+          <replaceable>format</replaceable>.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
diff --git a/fc-pattern/meson.build b/fc-pattern/meson.build
new file mode 100644 (file)
index 0000000..07de245
--- /dev/null
@@ -0,0 +1,8 @@
+fcpattern = executable('fc-pattern', ['fc-pattern.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-pattern']
index c7e231e..160dc74 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 106cfc0..6fe91ff 100644 (file)
@@ -42,7 +42,7 @@ Query \fIfont-file\fR for font faces.
 .SH "RETURN CODES"
 .PP
 \fBfc-query\fR returns error code 0 for successful parsing,
-or 1 if any errors occured or if at least one font face could not be opened.
+or 1 if any errors occurred or if at least one font face could not be opened.
 .SH "SEE ALSO"
 .PP
 \fBfc-scan\fR(1)
index fbffb84..74841b0 100644 (file)
 #include <fontconfig/fontconfig.h>
 #include <fontconfig/fcfreetype.h>
 #include <stdio.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef ENABLE_NLS
 #include <libintl.h>
 #define _(x)           (dgettext(GETTEXT_PACKAGE, x))
index fd51d21..40fb821 100644 (file)
@@ -6,13 +6,13 @@
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
 
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -65,8 +65,8 @@ manpage.1: manpage.sgml
       <arg><option>-Vh</option></arg>
       <sbr>
       <group>
-       <arg><option>-b</option></arg>
-       <arg><option>--ignore-blanks</option></arg>
+        <arg><option>-b</option></arg>
+        <arg><option>--ignore-blanks</option></arg>
       </group>
       <group>
         <arg><option>-i</option> <option><replaceable>index</replaceable></option></arg>
@@ -101,31 +101,31 @@ manpage.1: manpage.sgml
 
     <variablelist>
       <varlistentry>
-       <term><option>-b</option>
-         <option>--ignore-blanks</option>
-       </term>
-       <listitem>
-         <para>Ignore blanks to compute languages</para>
-       </listitem>
+        <term><option>-b</option>
+          <option>--ignore-blanks</option>
+        </term>
+        <listitem>
+          <para>Ignore blanks to compute languages</para>
+        </listitem>
       </varlistentry>
       <varlistentry>
         <term><option>-i</option>
           <option>--index</option>
-         <option><replaceable>index</replaceable></option>
+          <option><replaceable>index</replaceable></option>
         </term>
         <listitem>
           <para>Only query face indexed <replaceable>index</replaceable> of
-         each file.</para>
+          each file.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term><option>-f</option>
           <option>--format</option>
-         <option><replaceable>format</replaceable></option>
+          <option><replaceable>format</replaceable></option>
         </term>
         <listitem>
           <para>Format output according to the format specifier
-         <replaceable>format</replaceable>.</para>
+          <replaceable>format</replaceable>.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
@@ -157,7 +157,7 @@ manpage.1: manpage.sgml
   <refsect1>
     <title>RETURN CODES</title>
     <para><command>fc-query</command> returns error code 0 for successful parsing,
-    or 1 if any errors occured or if at least one font face could not be opened.</para>
+    or 1 if any errors occurred or if at least one font face could not be opened.</para>
   </refsect1>
 
   <refsect1>
diff --git a/fc-query/meson.build b/fc-query/meson.build
new file mode 100644 (file)
index 0000000..d0f2dd4
--- /dev/null
@@ -0,0 +1,9 @@
+fcquery = executable('fc-query', ['fc-query.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  dependencies: [freetype_dep],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-query']
index 153c33f..508caea 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -232,8 +232,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -253,6 +251,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -274,6 +275,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -344,9 +346,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -355,8 +363,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -408,9 +414,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -650,7 +661,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 9302ac5..dca1cd5 100644 (file)
 #include <fontconfig/fontconfig.h>
 #include <fontconfig/fcfreetype.h>
 #include <stdio.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef ENABLE_NLS
 #include <libintl.h>
 #define _(x)           (dgettext(GETTEXT_PACKAGE, x))
@@ -63,6 +66,7 @@
 static const struct option longopts[] = {
     {"brief", 0, 0, 'b'},
     {"format", 1, 0, 'f'},
+    {"sysroot", required_argument, 0, 'y'},
     {"version", 0, 0, 'V'},
     {"help", 0, 0, 'h'},
     {NULL,0,0,0},
@@ -79,22 +83,24 @@ usage (char *program, int error)
 {
     FILE *file = error ? stderr : stdout;
 #if HAVE_GETOPT_LONG
-    fprintf (file, _("usage: %s [-bVh] [-f FORMAT] [--brief] [--format FORMAT] [--version] [--help] font-file...\n"),
+    fprintf (file, _("usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] [--brief] [--format FORMAT] [--version] [--help] font-file...\n"),
             program);
 #else
-    fprintf (file, _("usage: %s [-bVh] [-f FORMAT] font-file...\n"),
+    fprintf (file, _("usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] font-file...\n"),
             program);
 #endif
     fprintf (file, _("Scan font files and directories, and print resulting pattern(s)\n"));
     fprintf (file, "\n");
 #if HAVE_GETOPT_LONG
-    fprintf (file, _("  -b, --brief          display font pattern briefly\n"));
-    fprintf (file, _("  -f, --format=FORMAT  use the given output format\n"));
-    fprintf (file, _("  -V, --version        display font config version and exit\n"));
-    fprintf (file, _("  -h, --help           display this help and exit\n"));
+    fprintf (file, _("  -b, --brief            display font pattern briefly\n"));
+    fprintf (file, _("  -f, --format=FORMAT    use the given output format\n"));
+    fprintf (file, _("  -y, --sysroot=SYSROOT  prepend SYSROOT to all paths for scanning\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, _("  -b         (brief)         display font pattern briefly\n"));
     fprintf (file, _("  -f FORMAT  (format)        use the given output format\n"));
+    fprintf (file, _("  -y SYSROOT (sysroot)       prepend SYSROOT to all paths for scanning\n"));
     fprintf (file, _("  -V         (version)       display font config version and exit\n"));
     fprintf (file, _("  -h         (help)          display this help and exit\n"));
 #endif
@@ -105,7 +111,7 @@ int
 main (int argc, char **argv)
 {
     int         brief = 0;
-    FcChar8     *format = NULL;
+    FcChar8     *format = NULL, *sysroot = NULL;
     int                i;
     FcFontSet   *fs;
 #if HAVE_GETOPT_LONG || HAVE_GETOPT
@@ -113,9 +119,9 @@ main (int argc, char **argv)
 
     setlocale (LC_ALL, "");
 #if HAVE_GETOPT_LONG
-    while ((c = getopt_long (argc, argv, "bf:Vh", longopts, NULL)) != -1)
+    while ((c = getopt_long (argc, argv, "bf:y:Vh", longopts, NULL)) != -1)
 #else
-    while ((c = getopt (argc, argv, "bf:Vh")) != -1)
+    while ((c = getopt (argc, argv, "bf:y:Vh")) != -1)
 #endif
     {
        switch (c) {
@@ -125,6 +131,9 @@ main (int argc, char **argv)
        case 'f':
            format = (FcChar8 *) strdup (optarg);
            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);
@@ -143,6 +152,11 @@ main (int argc, char **argv)
     if (i == argc)
        usage (argv[0], 1);
 
+    if (sysroot)
+    {
+       FcConfigSetSysRoot (NULL, sysroot);
+       FcStrFree (sysroot);
+    }
     fs = FcFontSetCreate ();
 
     for (; i < argc; i++)
index 9af403c..97bd31c 100644 (file)
@@ -6,13 +6,13 @@
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
 
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -93,11 +93,11 @@ manpage.1: manpage.sgml
       <varlistentry>
         <term><option>-f</option>
           <option>--format</option>
-         <option><replaceable>format</replaceable></option>
+          <option><replaceable>format</replaceable></option>
         </term>
         <listitem>
           <para>Format output according to the format specifier
-         <replaceable>format</replaceable>.</para>
+          <replaceable>format</replaceable>.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
diff --git a/fc-scan/meson.build b/fc-scan/meson.build
new file mode 100644 (file)
index 0000000..4de2134
--- /dev/null
@@ -0,0 +1,9 @@
+fcscan = executable('fc-scan', ['fc-scan.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  dependencies: [freetype_dep],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-scan']
index dffa1a6..5c36e80 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -234,8 +234,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -255,6 +253,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -266,6 +266,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -276,6 +277,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -346,9 +348,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -357,8 +365,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -410,9 +416,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -652,7 +663,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 9030141..75a91c7 100644 (file)
@@ -41,7 +41,7 @@ Query \fIfont-file\fR for font faces.
 .SH "RETURN CODES"
 .PP
 \fBfc-validate\fR returns error code 0 for successful parsing,
-or 1 if any errors occured or if at least one font face could not be opened.
+or 1 if any errors occurred or if at least one font face could not be opened.
 .SH "AUTHOR"
 .PP
 This manual page was updated by Akira TAGOH <akira@tagoh.org>\&.
index 2ceee20..e8119c6 100644 (file)
 #include <fontconfig/fontconfig.h>
 #include <fontconfig/fcfreetype.h>
 #include <stdio.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 #include <locale.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef ENABLE_NLS
 #include <libintl.h>
 #define _(x)           (dgettext(GETTEXT_PACKAGE, x))
@@ -164,7 +167,7 @@ main (int argc, char **argv)
 
     if (FT_Init_FreeType (&ftlib))
     {
-       fprintf (stderr, _("Can't initalize FreeType library\n"));
+       fprintf (stderr, _("Can't initialize FreeType library\n"));
        return 1;
     }
 
@@ -197,6 +200,7 @@ main (int argc, char **argv)
                {
                    FcChar32 ucs4, pos, map[FC_CHARSET_MAP_SIZE];
 
+                   err = 1;
                    printf (_("%s:%d Missing %d glyph(s) to satisfy the coverage for %s language\n"),
                            argv[i], index, count, lang);
 
index c677ef2..8ad7878 100644 (file)
@@ -1,18 +1,40 @@
 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
 
+<!--
+Copyright © 2012 Red Hat, Inc.
+
+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.
+-->
+
 <!-- Process this file with docbook-to-man to generate an nroff manual
      page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
      the manual page with: `docbook-to-man manpage.sgml | nroff -man |
      less'.  A typical entry in a Makefile or Makefile.am is:
 
 manpage.1: manpage.sgml
-       docbook-to-man $< > $@
+        docbook-to-man $< > $@
 
 
-       The docbook-to-man binary is found in the docbook-to-man package.
-       Please remember that if you create the nroff version in one of the
-       debian/rules file targets (such as build), you will need to include
-       docbook-to-man in your Build-Depends control field.
+        The docbook-to-man binary is found in the docbook-to-man package.
+        Please remember that if you create the nroff version in one of the
+        debian/rules file targets (such as build), you will need to include
+        docbook-to-man in your Build-Depends control field.
 
   -->
 
@@ -69,8 +91,8 @@ manpage.1: manpage.sgml
         <arg><option>--index</option> <option><replaceable>index</replaceable></option></arg>
       </group>
       <group>
-       <arg><option>-l</option> <option><replaceable>lang</replaceable></option></arg>
-       <arg><option>--lang</option> <option><replaceable>lang</replaceable></option></arg>
+        <arg><option>-l</option> <option><replaceable>lang</replaceable></option></arg>
+        <arg><option>--lang</option> <option><replaceable>lang</replaceable></option></arg>
       </group>
       <arg><option>--verbose</option></arg>
       <arg><option>--version</option></arg>
@@ -100,29 +122,29 @@ manpage.1: manpage.sgml
       <varlistentry>
         <term><option>-i</option>
           <option>--index</option>
-         <option><replaceable>index</replaceable></option>
+          <option><replaceable>index</replaceable></option>
         </term>
         <listitem>
           <para>Only query face indexed <replaceable>index</replaceable> of
-         each file.</para>
+          each file.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
-       <term><option>-l</option>
-         <option>--lang</option>
-         <option><replaceable>lang</replaceable></option>
-       </term>
-       <listitem>
-         <para>Set <replaceable>lang</replaceable> as a language instead of current locale. this is used for <option>-m</option>.</para>
-       </listitem>
+        <term><option>-l</option>
+          <option>--lang</option>
+          <option><replaceable>lang</replaceable></option>
+        </term>
+        <listitem>
+          <para>Set <replaceable>lang</replaceable> as a language instead of current locale. this is used for <option>-m</option>.</para>
+        </listitem>
       </varlistentry>
       <varlistentry>
-       <term><option>-v</option>
-         <option>--verbose</option>
-       </term>
-       <listitem>
-         <para>Show more detailed information.</para>
-       </listitem>
+        <term><option>-v</option>
+          <option>--verbose</option>
+        </term>
+        <listitem>
+          <para>Show more detailed information.</para>
+        </listitem>
       </varlistentry>
       <varlistentry>
         <term><option>-V</option>
@@ -153,7 +175,7 @@ manpage.1: manpage.sgml
   <refsect1>
     <title>RETURN CODES</title>
     <para><command>fc-validate</command> returns error code 0 for successful parsing,
-    or 1 if any errors occured or if at least one font face could not be opened.</para>
+    or 1 if any errors occurred or if at least one font face could not be opened.</para>
   </refsect1>
 
   <refsect1>
diff --git a/fc-validate/meson.build b/fc-validate/meson.build
new file mode 100644 (file)
index 0000000..e2b956e
--- /dev/null
@@ -0,0 +1,9 @@
+fcvalidate = executable('fc-validate', ['fc-validate.c', fcstdint_h, alias_headers, ft_alias_headers],
+  include_directories: [incbase, incsrc],
+  link_with: [libfontconfig],
+  dependencies: [freetype_dep],
+  c_args: c_args,
+  install: true,
+)
+
+tools_man_pages += ['fc-validate']
diff --git a/fontconfig.spec b/fontconfig.spec
deleted file mode 100644 (file)
index c3f020f..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-# Some distributions name their Freetype 2 package "freetype", while others
-# name it "freetype2".  You can define the name your distribution uses here.
-%define freetype2 freetype
-
-Summary:       Font configuration and customization library
-Name:          fontconfig
-Version:       2.13.1
-Release:       1
-License:       MIT
-Group:         System Environment/Libraries
-Source:                http://fontconfig.org/release/fontconfig-%{version}.tar.gz
-URL:            http://fontconfig.org
-BuildRoot:     %{_tmppath}/%{name}-%{version}-root
-
-BuildRequires: %{_bindir}/docbook2html
-BuildRequires: %{_bindir}/docbook2txt
-BuildRequires: %{freetype2}-devel
-BuildRequires: expat-devel
-BuildRequires: perl
-
-PreReq: %{freetype2}
-
-%description
-Fontconfig is designed to locate fonts within the
-system and select them according to requirements specified by 
-applications.
-
-%package devel
-Summary:       Font configuration and customization library
-Group:         Development/Libraries
-Requires:      %{name} = %{version}
-Requires:      %{freetype2}-devel
-
-%description devel
-The fontconfig-devel package includes the static libraries, 
-header files, and developer docs for the fontconfig package.
-
-Install fontconfig-devel if you want to develop programs which 
-will use fontconfig.
-
-# Some rpm specific directories. Prefix 'my' hopefully does not collide with anything.
-%define my_docdir         %{_datadir}/doc/%{name}-%{version}
-%define my_develdocdir    %{_datadir}/doc/%{name}-devel-%{version}
-%define my_tmpdocdir      $RPM_BUILD_ROOT%{my_docdir}
-%define my_tmpdeveldocdir $RPM_BUILD_ROOT%{my_develdocdir}
-
-%prep
-%setup -q
-
-%build
-%configure --with-x-fonts=/usr/X11R6/lib/X11/fonts --disable-gtk-doc \
-       --with-docdir=%{my_docdir}
-make %{_smp_mflags}
-
-%install
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-{
-  %makeinstall docdir=%{my_tmpdocdir} 
-
-  # The make does not distinguish the base and devel packages
-  mkdir -p %{my_tmpdeveldocdir}
-  mv -f %{my_tmpdocdir}/*devel* %{my_tmpdeveldocdir}
-
-  # Use a more informative directory name:
-  mv -f %{my_tmpdeveldocdir}/fontconfig-devel %{my_tmpdeveldocdir}/html
-}
-
-%clean
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-
-%post
-{
-  /sbin/ldconfig
-  # Force regeneration of all fontconfig cache files.
-  %{_bindir}/fc-cache -f --system-only
-}
-
-%postun -p /sbin/ldconfig
-
-%files
-%defattr(-, root, root)
-%doc README AUTHORS COPYING ChangeLog doc/fontconfig-user.{html,txt}
-%{my_docdir}/*
-%dir %{_sysconfdir}/fonts
-%{_sysconfdir}/fonts/fonts.conf
-%{_sysconfdir}/fonts/fonts.dtd
-%config %{_sysconfdir}/fonts/local.conf
-%{_bindir}/fc-*
-%{_libdir}/libfontconfig*.so.*
-%{_mandir}/man1/*
-%{_mandir}/man5/*
-
-%files devel
-%defattr(-, root, root)
-#%doc doc/fontconfig-devel.txt doc/fontconfig-devel/*
-%{my_develdocdir}
-%dir %{_includedir}/fontconfig
-%{_includedir}/fontconfig/*
-%{_libdir}/*.a
-%{_libdir}/*.la
-%{_libdir}/libfontconfig.so
-%{_libdir}/pkgconfig
-%{_mandir}/man3/*
-
-%changelog
-* Wed Mar 20 2004 Enrique Perez-Terron <enrio@online.no>
-- Added mandir /man1/* to main file list
-- Added missing '/*' after includedir/fontconfig to avoid "listed twice" error.
-- Removed configure option --disable-docs since its problem is solved, see below.
-- Added option to makeinstall to have it install docs in the proper directory.
-  Notice though that the %doc macro deletes and recreates the docs directory.
-- Cleaner separation of devel docs.
-- Renamed doc/fontconfig-devel-*/fontconfig-devel subdirectory to 'html'.
-- Removed %doc macro from devel filelist, since it deletes installed files.
-
-* Fri Mar  7 2003 Mike A. Harris <mharris@redhat.com> 2.1.92-1
-- Removed man1/* and added man5/* to main package and man3/* to devel package
-- Added missing defattr(-, root, root) to main package
-- Added HTML and text development documentation to -devel subpackage
-
-* Wed Mar  5 2003 Mike A. Harris <mharris@redhat.com>
-- Added back the configure macro options --disable-docs because otherwise
-  fontconfig installs docs into /usr/share/doc/fontconfig (with no version
-  number) unconditionally, causing RPM to fail the build due to unpackaged
-  files terminate build
-
-* Wed Mar  5 2003 Mike A. Harris <mharris@redhat.com>
-- Removed commented out rpm macro define at top of spec file, replacing it with
-  a simple explanation, since rpm macros are expanded by rpm even in comments
-- Changed /usr/bin to _bindir in BuildRequires lines
-- Cleaned up rpm postinstall script, and made fc-cache use _bindir
-- Reorganized file manifest lists
-
-* Sun Mar  2 2003 Owen Taylor <otaylor@redhat.com>
-- Various improvements from Red Hat spec file
-
-* Sun Mar  2 2003 Mike A. Harris <mharris@redhat.com>
-- Initial changelog entry
diff --git a/fontconfig.spec.in b/fontconfig.spec.in
deleted file mode 100644 (file)
index 9037352..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-# Some distributions name their Freetype 2 package "freetype", while others
-# name it "freetype2".  You can define the name your distribution uses here.
-%define freetype2 freetype
-
-Summary:       Font configuration and customization library
-Name:          fontconfig
-Version:       @VERSION@
-Release:       1
-License:       MIT
-Group:         System Environment/Libraries
-Source:                http://fontconfig.org/release/fontconfig-%{version}.tar.gz
-URL:            http://fontconfig.org
-BuildRoot:     %{_tmppath}/%{name}-%{version}-root
-
-BuildRequires: %{_bindir}/docbook2html
-BuildRequires: %{_bindir}/docbook2txt
-BuildRequires: %{freetype2}-devel
-BuildRequires: expat-devel
-BuildRequires: perl
-
-PreReq: %{freetype2}
-
-%description
-Fontconfig is designed to locate fonts within the
-system and select them according to requirements specified by 
-applications.
-
-%package devel
-Summary:       Font configuration and customization library
-Group:         Development/Libraries
-Requires:      %{name} = %{version}
-Requires:      %{freetype2}-devel
-
-%description devel
-The fontconfig-devel package includes the static libraries, 
-header files, and developer docs for the fontconfig package.
-
-Install fontconfig-devel if you want to develop programs which 
-will use fontconfig.
-
-# Some rpm specific directories. Prefix 'my' hopefully does not collide with anything.
-%define my_docdir         %{_datadir}/doc/%{name}-%{version}
-%define my_develdocdir    %{_datadir}/doc/%{name}-devel-%{version}
-%define my_tmpdocdir      $RPM_BUILD_ROOT%{my_docdir}
-%define my_tmpdeveldocdir $RPM_BUILD_ROOT%{my_develdocdir}
-
-%prep
-%setup -q
-
-%build
-%configure --with-x-fonts=/usr/X11R6/lib/X11/fonts --disable-gtk-doc \
-       --with-docdir=%{my_docdir}
-make %{_smp_mflags}
-
-%install
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-{
-  %makeinstall docdir=%{my_tmpdocdir} 
-
-  # The make does not distinguish the base and devel packages
-  mkdir -p %{my_tmpdeveldocdir}
-  mv -f %{my_tmpdocdir}/*devel* %{my_tmpdeveldocdir}
-
-  # Use a more informative directory name:
-  mv -f %{my_tmpdeveldocdir}/fontconfig-devel %{my_tmpdeveldocdir}/html
-}
-
-%clean
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-
-%post
-{
-  /sbin/ldconfig
-  # Force regeneration of all fontconfig cache files.
-  %{_bindir}/fc-cache -f --system-only
-}
-
-%postun -p /sbin/ldconfig
-
-%files
-%defattr(-, root, root)
-%doc README AUTHORS COPYING ChangeLog doc/fontconfig-user.{html,txt}
-%{my_docdir}/*
-%dir %{_sysconfdir}/fonts
-%{_sysconfdir}/fonts/fonts.conf
-%{_sysconfdir}/fonts/fonts.dtd
-%config %{_sysconfdir}/fonts/local.conf
-%{_bindir}/fc-*
-%{_libdir}/libfontconfig*.so.*
-%{_mandir}/man1/*
-%{_mandir}/man5/*
-
-%files devel
-%defattr(-, root, root)
-#%doc doc/fontconfig-devel.txt doc/fontconfig-devel/*
-%{my_develdocdir}
-%dir %{_includedir}/fontconfig
-%{_includedir}/fontconfig/*
-%{_libdir}/*.a
-%{_libdir}/*.la
-%{_libdir}/libfontconfig.so
-%{_libdir}/pkgconfig
-%{_mandir}/man3/*
-
-%changelog
-* Wed Mar 20 2004 Enrique Perez-Terron <enrio@online.no>
-- Added mandir /man1/* to main file list
-- Added missing '/*' after includedir/fontconfig to avoid "listed twice" error.
-- Removed configure option --disable-docs since its problem is solved, see below.
-- Added option to makeinstall to have it install docs in the proper directory.
-  Notice though that the %doc macro deletes and recreates the docs directory.
-- Cleaner separation of devel docs.
-- Renamed doc/fontconfig-devel-*/fontconfig-devel subdirectory to 'html'.
-- Removed %doc macro from devel filelist, since it deletes installed files.
-
-* Fri Mar  7 2003 Mike A. Harris <mharris@redhat.com> 2.1.92-1
-- Removed man1/* and added man5/* to main package and man3/* to devel package
-- Added missing defattr(-, root, root) to main package
-- Added HTML and text development documentation to -devel subpackage
-
-* Wed Mar  5 2003 Mike A. Harris <mharris@redhat.com>
-- Added back the configure macro options --disable-docs because otherwise
-  fontconfig installs docs into /usr/share/doc/fontconfig (with no version
-  number) unconditionally, causing RPM to fail the build due to unpackaged
-  files terminate build
-
-* Wed Mar  5 2003 Mike A. Harris <mharris@redhat.com>
-- Removed commented out rpm macro define at top of spec file, replacing it with
-  a simple explanation, since rpm macros are expanded by rpm even in comments
-- Changed /usr/bin to _bindir in BuildRequires lines
-- Cleaned up rpm postinstall script, and made fc-cache use _bindir
-- Reorganized file manifest lists
-
-* Sun Mar  2 2003 Owen Taylor <otaylor@redhat.com>
-- Various improvements from Red Hat spec file
-
-* Sun Mar  2 2003 Mike A. Harris <mharris@redhat.com>
-- Initial changelog entry
index 99bb4c3..233a273 100644 (file)
@@ -1,3 +1,26 @@
+# 
+#  fontconfig/Makefile.am
+# 
+#  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.
+
 fontconfigincludedir=$(includedir)/fontconfig
 
 fontconfig_headers=            \
index 6f3c47d..8776316 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 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@
 
+# 
+#  fontconfig/Makefile.am
+# 
+#  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 = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -175,8 +198,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -196,6 +217,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -207,6 +230,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -217,6 +241,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -287,9 +312,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -298,8 +329,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -351,9 +380,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -480,7 +514,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index bac1dda..3148637 100644 (file)
@@ -52,8 +52,8 @@ typedef int           FcBool;
  */
 
 #define FC_MAJOR       2
-#define FC_MINOR       13
-#define FC_REVISION    1
+#define FC_MINOR       14
+#define FC_REVISION    2
 
 #define FC_VERSION     ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
 
@@ -67,7 +67,7 @@ typedef int           FcBool;
  * it means multiple copies of the font information.
  */
 
-#define FC_CACHE_VERSION_NUMBER        7
+#define FC_CACHE_VERSION_NUMBER        8
 #define _FC_STRINGIFY_(s)      #s
 #define _FC_STRINGIFY(s)       _FC_STRINGIFY_(s)
 #define FC_CACHE_VERSION       _FC_STRINGIFY(FC_CACHE_VERSION_NUMBER)
@@ -108,7 +108,7 @@ typedef int         FcBool;
 #define FC_MINSPACE        "minspace"          /* Bool use minimum line spacing */
 #define FC_SOURCE          "source"            /* String (deprecated) */
 #define FC_CHARSET         "charset"           /* CharSet */
-#define FC_LANG                    "lang"              /* String RFC 3066 langs */
+#define FC_LANG                    "lang"              /* LangSet Set of RFC 3066 langs */
 #define FC_FONTVERSION     "fontversion"       /* Int from 'head' table */
 #define FC_FULLNAME        "fullname"          /* String */
 #define FC_FAMILYLANG      "familylang"        /* String RFC 3066 langs */
@@ -126,6 +126,9 @@ typedef int         FcBool;
 #define FC_PRGNAME         "prgname"           /* String */
 #define FC_HASH                    "hash"              /* String (deprecated) */
 #define FC_POSTSCRIPT_NAME  "postscriptname"   /* String */
+#define FC_FONT_HAS_HINT    "fonthashint"      /* Bool - true if font has hinting */
+#define FC_ORDER           "order"             /* Integer */
+#define FC_DESKTOP_NAME     "desktop"          /* String */
 
 #define FC_CACHE_SUFFIX                    ".cache-" FC_CACHE_VERSION
 #define FC_DIR_CACHE_FILE          "fonts.cache-" FC_CACHE_VERSION
@@ -283,7 +286,7 @@ typedef struct _FcObjectSet {
     int                sobject;
     const char **objects;
 } FcObjectSet;
-    
+
 typedef enum _FcMatchKind {
     FcMatchPattern, FcMatchFont, FcMatchScan,
     FcMatchKindEnd,
@@ -374,7 +377,7 @@ FcPublic FcBool
 FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose);
 
 FcPublic void
-FcCacheCreateTagFile (const FcConfig *config);
+FcCacheCreateTagFile (FcConfig *config);
 
 FcPublic FcBool
 FcDirCacheCreateUUID (FcChar8  *dir,
@@ -393,8 +396,12 @@ FcPublic FcBool
 FcConfigEnableHome (FcBool enable);
 
 FcPublic FcChar8 *
+FcConfigGetFilename (FcConfig      *config,
+                    const FcChar8 *url);
+
+FcPublic FcChar8 *
 FcConfigFilename (const FcChar8 *url);
-    
+
 FcPublic FcConfig *
 FcConfigCreate (void);
 
@@ -412,7 +419,7 @@ FcConfigGetCurrent (void);
 
 FcPublic FcBool
 FcConfigUptoDate (FcConfig *config);
-    
+
 FcPublic FcBool
 FcConfigBuildFonts (FcConfig *config);
 
@@ -432,7 +439,7 @@ FcPublic FcBlanks *
 FcConfigGetBlanks (FcConfig *config);
 
 FcPublic FcStrList *
-FcConfigGetCacheDirs (const FcConfig   *config);
+FcConfigGetCacheDirs (FcConfig *config);
 
 FcPublic int
 FcConfigGetRescanInterval (FcConfig *config);
@@ -542,12 +549,12 @@ FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b);
 #define FC_CHARSET_DONE        ((FcChar32) -1)
 
 FcPublic FcChar32
-FcCharSetFirstPage (const FcCharSet *a, 
+FcCharSetFirstPage (const FcCharSet *a,
                    FcChar32        map[FC_CHARSET_MAP_SIZE],
                    FcChar32        *next);
 
 FcPublic FcChar32
-FcCharSetNextPage (const FcCharSet  *a, 
+FcCharSetNextPage (const FcCharSet  *a,
                   FcChar32         map[FC_CHARSET_MAP_SIZE],
                   FcChar32         *next);
 
@@ -603,7 +610,7 @@ 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);
 
@@ -766,7 +773,7 @@ FcFontSetMatch (FcConfig    *config,
 
 FcPublic FcPattern *
 FcFontMatch (FcConfig  *config,
-            FcPattern  *p, 
+            FcPattern  *p,
             FcResult   *result);
 
 FcPublic FcPattern *
@@ -836,6 +843,9 @@ FcNameUnregisterConstants (const FcConstant *consts, int nconsts);
 FcPublic const FcConstant *
 FcNameGetConstant (const FcChar8 *string);
 
+FcPublic const FcConstant *
+FcNameGetConstantFor (const FcChar8 *string, const char *object);
+
 FcPublic FcBool
 FcNameConstant (const FcChar8 *string, int *result);
 
@@ -884,10 +894,10 @@ FcPatternHash (const FcPattern *p);
 
 FcPublic FcBool
 FcPatternAdd (FcPattern *p, const char *object, FcValue value, FcBool append);
-    
+
 FcPublic FcBool
 FcPatternAddWeak (FcPattern *p, const char *object, FcValue value, FcBool append);
-    
+
 FcPublic FcResult
 FcPatternGet (const FcPattern *p, const char *object, int id, FcValue *v);
 
@@ -950,7 +960,7 @@ FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r);
 
 FcPublic FcPattern *
 FcPatternVaBuild (FcPattern *p, va_list va);
-    
+
 FcPublic FcPattern *
 FcPatternBuild (FcPattern *p, ...) FC_ATTRIBUTE_SENTINEL(0);
 
@@ -1019,10 +1029,10 @@ FcStrCopy (const FcChar8 *s);
 
 FcPublic FcChar8 *
 FcStrCopyFilename (const FcChar8 *s);
-    
+
 FcPublic FcChar8 *
 FcStrPlus (const FcChar8 *s1, const FcChar8 *s2);
-    
+
 FcPublic void
 FcStrFree (FcChar8 *s);
 
@@ -1077,6 +1087,10 @@ FcUtf16Len (const FcChar8   *string,
            int             *wchar);
 
 FcPublic FcChar8 *
+FcStrBuildFilename (const FcChar8 *path,
+                   ...);
+
+FcPublic FcChar8 *
 FcStrDirname (const FcChar8 *file);
 
 FcPublic FcChar8 *
@@ -1135,7 +1149,7 @@ _FCFUNCPROTOEND
  * Deprecated functions are placed here to help users fix their code without
  * digging through documentation
  */
+
 #define FcConfigGetRescanInverval   FcConfigGetRescanInverval_REPLACE_BY_FcConfigGetRescanInterval
 #define FcConfigSetRescanInverval   FcConfigSetRescanInverval_REPLACE_BY_FcConfigSetRescanInterval
 
index 7991405..01e2f0d 100644 (file)
@@ -1,11 +1,7 @@
 <?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
 <!-- /etc/fonts/fonts.conf file to configure system font access -->
 <fontconfig>
-       <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
-               <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
-       </its:rules>
-
        <description>Default configuration file</description>
 
 <!--
@@ -16,8 +12,8 @@
        The intent of this standard configuration file is to be adequate for
        most environments.  If you have a reasonably normal environment and
        have found problems with this configuration, they are probably
-       things that others will also want fixed.  Please submit any
-       problems to the fontconfig bugzilla system located at fontconfig.org
+       things that others will also want fixed.  Please submit any problems
+       to the fontconfig issue tracking system located at fontconfig.org
 
        Note that the normal 'make install' procedure for fontconfig is to
        replace any existing fonts.conf file with the new version.  Place
@@ -28,7 +24,7 @@
 
 <!-- Font directory list -->
 
-       <dir>@FC_DEFAULT_FONTS@</dir>
+@FC_DEFAULT_FONTS@
        @FC_FONTPATH@
        <dir prefix="xdg">fonts</dir>
        <!-- the following element will be removed in the future -->
                        <string>sans-serif</string>
                </edit>
        </match>
+<!--
+  Accept alternate 'system ui' spelling, replacing it with 'system-ui'
+-->
+       <match target="pattern">
+               <test qual="any" name="family">
+                       <string>system ui</string>
+               </test>
+               <edit name="family" mode="assign" binding="same">
+                       <string>system-ui</string>
+               </edit>
+       </match>
 
 <!--
   Load local system customization file
index 479f2c0..3b37974 100644 (file)
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -1,26 +1,33 @@
 <!-- This is the Document Type Definition for font configuration files -->
-<!ELEMENT fontconfig (dir | 
+<!ELEMENT fontconfig (alias |
                      cache | 
                      cachedir |
-                     include | 
                      config |
-                     selectfont |
-                     match | 
-                     alias)* >
+                     description |
+                     dir |
+                     include |
+                     match |
+                     remap-dir |
+                     reset-dirs |
+                     selectfont)* >
 
 <!-- 
     Add a directory that provides fonts
 -->
 <!ELEMENT dir (#PCDATA)>
 <!ATTLIST dir
-         prefix    CDATA       "default"
-         xml:space (default|preserve) 'preserve'>
+         prefix    (default|xdg|relative|cwd)    "default"
+         xml:space (default|preserve)            'preserve'>
 
 <!--
     Define the per-user file that holds cache font information.
 
     If the filename begins with '~', it is replaced with the users
     home directory path.
+
+    If 'prefix' is 'default' or 'cwd', then the current working directory will be added prior to the value.
+    If 'prefix' is 'xdg', then the value in the $XDG_DATA_HOME will be added prior to the value.
+    If 'prefix' is 'relative', then the path of current file will be added prior to the value.
 -->
 <!ELEMENT cache (#PCDATA)>
 <!ATTLIST cache xml:space (default|preserve) 'preserve'>
          xml:space (default|preserve) 'preserve'>
 
 <!--
+    Set a string as a description for the targeted config file
+
+    Set 'domain' to change where to pull translations from.
+    This will be done through gettext.
+-->
+<!ELEMENT description (#PCDATA)>
+<!ATTLIST description
+         domain        CDATA   "fontconfig-conf">
+
+<!--
     Reference another configuration file; note that this
     is another complete font configuration file and not
     just a file included by the XML parser.
        </edit>
     </match>
 -->
+
+<!--
+    Map a font path as the path "as-path"
+-->
+<!ELEMENT remap-dir (#PCDATA)>
+<!ATTLIST remap-dir
+          as-path   CDATA                       #REQUIRED
+          prefix    (default|xdg|relative|cwd)  "default"
+         xml:space (default|preserve)          "preserve">
+
+<!--
+    Reset the list of fonts directories
+-->
+<!ELEMENT reset-dirs EMPTY>
+
 <!--
     Periodically rescan the font configuration and
     directories to synch internal state with filesystem
index 1774fe7..18beacd 100644 (file)
@@ -1,3 +1,26 @@
+# 
+#  fontconfig/Makefile.am
+# 
+#  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 =
 EXTRA_DIST =                   \
        $(gettextits_DATA)      \
index 8492db4..ef525d6 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 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@
 
+# 
+#  fontconfig/Makefile.am
+# 
+#  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 = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -177,6 +200,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -188,6 +213,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -198,6 +224,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -268,9 +295,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -279,8 +312,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -332,9 +363,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -418,7 +454,6 @@ ctags CTAGS:
 
 cscope cscopelist:
 
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
index 9f35922..fe36155 100644 (file)
@@ -1,4 +1,25 @@
 <?xml version="1.0"?>
+<!--
+Copyright © 2018 Red Hat, Inc.
+
+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.
+-->
 <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
        <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
 </its:rules>
index 5bc4f6c..1388902 100644 (file)
@@ -1,4 +1,25 @@
 <?xml version="1.0"?>
+<!--
+Copyright © 2018 Red Hat, Inc.
+
+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.
+-->
 <locatingRules>
        <locatingRule name="Fontconfig" pattern="*.conf">
                <documentRule localName="fontconfig" target="fontconfig.its"/>
diff --git a/its/meson.build b/its/meson.build
new file mode 100644 (file)
index 0000000..4153b1a
--- /dev/null
@@ -0,0 +1,6 @@
+gettext_files = [
+  'fontconfig.its',
+  'fontconfig.loc',
+]
+
+install_data(gettext_files, install_dir: join_paths(get_option('datadir'), 'gettext/its'))
index 0f0a2da..49fcad1 100644 (file)
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -1,12 +1,12 @@
-#! /bin/sh
+#! /usr/bin/env sh
 ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in
-##               by inline-source v2014-01-03.01
+##               by inline-source v2019-02-19.15
 
-# libtool (GNU libtool) 2.4.6
+# libtool (GNU libtool) 2.4.7
 # Provide generalized library-building support services.
 # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 
-# Copyright (C) 1996-2015 Free Software Foundation, Inc.
+# Copyright (C) 1996-2019, 2021-2022 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.
 
@@ -31,8 +31,8 @@
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION=2.4.6
-package_revision=2.4.6
+VERSION=2.4.7
+package_revision=2.4.7
 
 
 ## ------ ##
@@ -64,34 +64,25 @@ package_revision=2.4.6
 # libraries, which are installed to $pkgauxdir.
 
 # Set a version string for this script.
-scriptversion=2015-01-20.17; # UTC
+scriptversion=2019-02-19.15; # UTC
 
 # General shell script boiler plate, and helper functions.
 # Written by Gary V. Vaughan, 2004
 
-# Copyright (C) 2004-2015 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.
-
-# 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 3 of the License, or
-# (at your option) any later version.
-
-# As a special exception to the GNU General Public License, if you distribute
-# this file as part of a program or library that is built using GNU Libtool,
-# you may include this file under the same distribution terms that you use
-# for the rest of that program.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNES 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/>.
+# This is free software.  There is NO warranty; not even for
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#
+# Copyright (C) 2004-2019, 2021 Bootstrap Authors
+#
+# This file is dual licensed under the terms of the MIT license
+# <https://opensource.org/license/MIT>, and GPL version 2 or later
+# <http://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of
+# these licenses when using or redistributing this software or any of
+# the files within it.  See the URLs above, or the file `LICENSE`
+# included in the Bootstrap distribution for the full license texts.
 
-# Please report bugs or propose patches to gary@gnu.org.
+# Please report bugs or propose patches to:
+# <https://github.com/gnulib-modules/bootstrap/issues>
 
 
 ## ------ ##
@@ -139,9 +130,12 @@ do
          _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\"
        fi"
 done
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+# These NLS vars are set unconditionally (bootstrap issue #24).  Unset those
+# in case the environment reset is needed later and the $save_* variant is not
+# defined (see the code above).
+LC_ALL=C
+LANGUAGE=C
+export LANGUAGE LC_ALL
 
 # Make sure IFS has a sensible default
 sp=' '
@@ -159,6 +153,26 @@ if test "${PATH_SEPARATOR+set}" != set; then
 fi
 
 
+# func_unset VAR
+# --------------
+# Portably unset VAR.
+# In some shells, an 'unset VAR' statement leaves a non-zero return
+# status if VAR is already unset, which might be problematic if the
+# statement is used at the end of a function (thus poisoning its return
+# value) or when 'set -e' is active (causing even a spurious abort of
+# the script in this case).
+func_unset ()
+{
+    { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; }
+}
+
+
+# Make sure CDPATH doesn't cause `cd` commands to output the target dir.
+func_unset CDPATH
+
+# Make sure ${,E,F}GREP behave sanely.
+func_unset GREP_OPTIONS
+
 
 ## ------------------------- ##
 ## Locate command utilities. ##
@@ -259,7 +273,7 @@ test -z "$SED" && {
     rm -f conftest.in conftest.tmp conftest.nl conftest.out
   }
 
-  func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin
+  func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin"
   rm -f conftest.sed
   SED=$func_path_progs_result
 }
@@ -295,7 +309,7 @@ test -z "$GREP" && {
     rm -f conftest.in conftest.tmp conftest.nl conftest.out
   }
 
-  func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin
+  func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin"
   GREP=$func_path_progs_result
 }
 
@@ -360,6 +374,35 @@ sed_double_backslash="\
   s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g
   s/\n//g"
 
+# require_check_ifs_backslash
+# ---------------------------
+# Check if we can use backslash as IFS='\' separator, and set
+# $check_ifs_backshlash_broken to ':' or 'false'.
+require_check_ifs_backslash=func_require_check_ifs_backslash
+func_require_check_ifs_backslash ()
+{
+  _G_save_IFS=$IFS
+  IFS='\'
+  _G_check_ifs_backshlash='a\\b'
+  for _G_i in $_G_check_ifs_backshlash
+  do
+  case $_G_i in
+  a)
+    check_ifs_backshlash_broken=false
+    ;;
+  '')
+    break
+    ;;
+  *)
+    check_ifs_backshlash_broken=:
+    break
+    ;;
+  esac
+  done
+  IFS=$_G_save_IFS
+  require_check_ifs_backslash=:
+}
+
 
 ## ----------------- ##
 ## Global variables. ##
@@ -580,16 +623,16 @@ if test yes = "$_G_HAVE_PLUSEQ_OP"; then
   {
     $debug_cmd
 
-    func_quote_for_eval "$2"
-    eval "$1+=\\ \$func_quote_for_eval_result"
+    func_quote_arg pretty "$2"
+    eval "$1+=\\ \$func_quote_arg_result"
   }'
 else
   func_append_quoted ()
   {
     $debug_cmd
 
-    func_quote_for_eval "$2"
-    eval "$1=\$$1\\ \$func_quote_for_eval_result"
+    func_quote_arg pretty "$2"
+    eval "$1=\$$1\\ \$func_quote_arg_result"
   }
 fi
 
@@ -1091,85 +1134,203 @@ func_relative_path ()
 }
 
 
-# func_quote_for_eval ARG...
-# --------------------------
-# Aesthetically quote ARGs to be evaled later.
-# This function returns two values:
-#   i) func_quote_for_eval_result
-#      double-quoted, suitable for a subsequent eval
-#  ii) func_quote_for_eval_unquoted_result
-#      has all characters that are still active within double
-#      quotes backslashified.
-func_quote_for_eval ()
+# func_quote_portable EVAL ARG
+# ----------------------------
+# Internal function to portably implement func_quote_arg.  Note that we still
+# keep attention to performance here so we as much as possible try to avoid
+# calling sed binary (so far O(N) complexity as long as func_append is O(1)).
+func_quote_portable ()
 {
     $debug_cmd
 
-    func_quote_for_eval_unquoted_result=
-    func_quote_for_eval_result=
-    while test 0 -lt $#; do
-      case $1 in
-        *[\\\`\"\$]*)
-         _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
-        *)
-          _G_unquoted_arg=$1 ;;
-      esac
-      if test -n "$func_quote_for_eval_unquoted_result"; then
-       func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
-      else
-        func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg"
+    $require_check_ifs_backslash
+
+    func_quote_portable_result=$2
+
+    # one-time-loop (easy break)
+    while true
+    do
+      if $1; then
+        func_quote_portable_result=`$ECHO "$2" | $SED \
+          -e "$sed_double_quote_subst" -e "$sed_double_backslash"`
+        break
       fi
 
-      case $_G_unquoted_arg in
-        # Double-quote args containing shell metacharacters to delay
-        # word splitting, command substitution and variable expansion
-        # for a subsequent eval.
-        # Many Bourne shells cannot handle close brackets correctly
-        # in scan sets, so we specify it separately.
-        *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \  ]*|*]*|"")
-          _G_quoted_arg=\"$_G_unquoted_arg\"
+      # Quote for eval.
+      case $func_quote_portable_result in
+        *[\\\`\"\$]*)
+          # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string
+          # contains the shell wildcard characters.
+          case $check_ifs_backshlash_broken$func_quote_portable_result in
+            :*|*[\[\*\?]*)
+              func_quote_portable_result=`$ECHO "$func_quote_portable_result" \
+                  | $SED "$sed_quote_subst"`
+              break
+              ;;
+          esac
+
+          func_quote_portable_old_IFS=$IFS
+          for _G_char in '\' '`' '"' '$'
+          do
+            # STATE($1) PREV($2) SEPARATOR($3)
+            set start "" ""
+            func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy
+            IFS=$_G_char
+            for _G_part in $func_quote_portable_result
+            do
+              case $1 in
+              quote)
+                func_append func_quote_portable_result "$3$2"
+                set quote "$_G_part" "\\$_G_char"
+                ;;
+              start)
+                set first "" ""
+                func_quote_portable_result=
+                ;;
+              first)
+                set quote "$_G_part" ""
+                ;;
+              esac
+            done
+          done
+          IFS=$func_quote_portable_old_IFS
           ;;
-        *)
-          _G_quoted_arg=$_G_unquoted_arg
-         ;;
+        *) ;;
       esac
-
-      if test -n "$func_quote_for_eval_result"; then
-       func_append func_quote_for_eval_result " $_G_quoted_arg"
-      else
-        func_append func_quote_for_eval_result "$_G_quoted_arg"
-      fi
-      shift
+      break
     done
+
+    func_quote_portable_unquoted_result=$func_quote_portable_result
+    case $func_quote_portable_result in
+      # double-quote args containing shell metacharacters to delay
+      # word splitting, command substitution and variable expansion
+      # for a subsequent eval.
+      # many bourne shells cannot handle close brackets correctly
+      # in scan sets, so we specify it separately.
+      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
+        func_quote_portable_result=\"$func_quote_portable_result\"
+        ;;
+    esac
 }
 
 
-# func_quote_for_expand ARG
-# -------------------------
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
-{
-    $debug_cmd
+# func_quotefast_eval ARG
+# -----------------------
+# Quote one ARG (internal).  This is equivalent to 'func_quote_arg eval ARG',
+# but optimized for speed.  Result is stored in $func_quotefast_eval.
+if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then
+  printf -v _GL_test_printf_tilde %q '~'
+  if test '\~' = "$_GL_test_printf_tilde"; then
+    func_quotefast_eval ()
+    {
+      printf -v func_quotefast_eval_result %q "$1"
+    }
+  else
+    # Broken older Bash implementations.  Make those faster too if possible.
+    func_quotefast_eval ()
+    {
+      case $1 in
+        '~'*)
+          func_quote_portable false "$1"
+          func_quotefast_eval_result=$func_quote_portable_result
+          ;;
+        *)
+          printf -v func_quotefast_eval_result %q "$1"
+          ;;
+      esac
+    }
+  fi
+else
+  func_quotefast_eval ()
+  {
+    func_quote_portable false "$1"
+    func_quotefast_eval_result=$func_quote_portable_result
+  }
+fi
 
-    case $1 in
-      *[\\\`\"]*)
-       _G_arg=`$ECHO "$1" | $SED \
-           -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;;
-      *)
-        _G_arg=$1 ;;
+
+# func_quote_arg MODEs ARG
+# ------------------------
+# Quote one ARG to be evaled later.  MODEs argument may contain zero or more
+# specifiers listed below separated by ',' character.  This function returns two
+# values:
+#   i) func_quote_arg_result
+#      double-quoted (when needed), suitable for a subsequent eval
+#  ii) func_quote_arg_unquoted_result
+#      has all characters that are still active within double
+#      quotes backslashified.  Available only if 'unquoted' is specified.
+#
+# Available modes:
+# ----------------
+# 'eval' (default)
+#       - escape shell special characters
+# 'expand'
+#       - the same as 'eval';  but do not quote variable references
+# 'pretty'
+#       - request aesthetic output, i.e. '"a b"' instead of 'a\ b'.  This might
+#         be used later in func_quote to get output like: 'echo "a b"' instead
+#         of 'echo a\ b'.  This is slower than default on some shells.
+# 'unquoted'
+#       - produce also $func_quote_arg_unquoted_result which does not contain
+#         wrapping double-quotes.
+#
+# Examples for 'func_quote_arg pretty,unquoted string':
+#
+#   string      | *_result              | *_unquoted_result
+#   ------------+-----------------------+-------------------
+#   "           | \"                    | \"
+#   a b         | "a b"                 | a b
+#   "a b"       | "\"a b\""             | \"a b\"
+#   *           | "*"                   | *
+#   z="${x-$y}" | "z=\"\${x-\$y}\""     | z=\"\${x-\$y}\"
+#
+# Examples for 'func_quote_arg pretty,unquoted,expand string':
+#
+#   string        |   *_result          |  *_unquoted_result
+#   --------------+---------------------+--------------------
+#   z="${x-$y}"   | "z=\"${x-$y}\""     | z=\"${x-$y}\"
+func_quote_arg ()
+{
+    _G_quote_expand=false
+    case ,$1, in
+      *,expand,*)
+        _G_quote_expand=:
+        ;;
     esac
 
-    case $_G_arg in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting and command substitution for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
-        _G_arg=\"$_G_arg\"
+    case ,$1, in
+      *,pretty,*|*,expand,*|*,unquoted,*)
+        func_quote_portable $_G_quote_expand "$2"
+        func_quote_arg_result=$func_quote_portable_result
+        func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result
+        ;;
+      *)
+        # Faster quote-for-eval for some shells.
+        func_quotefast_eval "$2"
+        func_quote_arg_result=$func_quotefast_eval_result
         ;;
     esac
+}
 
-    func_quote_for_expand_result=$_G_arg
+
+# func_quote MODEs ARGs...
+# ------------------------
+# Quote all ARGs to be evaled later and join them into single command.  See
+# func_quote_arg's description for more info.
+func_quote ()
+{
+    $debug_cmd
+    _G_func_quote_mode=$1 ; shift
+    func_quote_result=
+    while test 0 -lt $#; do
+      func_quote_arg "$_G_func_quote_mode" "$1"
+      if test -n "$func_quote_result"; then
+        func_append func_quote_result " $func_quote_arg_result"
+      else
+        func_append func_quote_result "$func_quote_arg_result"
+      fi
+      shift
+    done
 }
 
 
@@ -1215,8 +1376,8 @@ func_show_eval ()
     _G_cmd=$1
     _G_fail_exp=${2-':'}
 
-    func_quote_for_expand "$_G_cmd"
-    eval "func_notquiet $func_quote_for_expand_result"
+    func_quote_arg pretty,expand "$_G_cmd"
+    eval "func_notquiet $func_quote_arg_result"
 
     $opt_dry_run || {
       eval "$_G_cmd"
@@ -1241,8 +1402,8 @@ func_show_eval_locale ()
     _G_fail_exp=${2-':'}
 
     $opt_quiet || {
-      func_quote_for_expand "$_G_cmd"
-      eval "func_echo $func_quote_for_expand_result"
+      func_quote_arg expand,pretty "$_G_cmd"
+      eval "func_echo $func_quote_arg_result"
     }
 
     $opt_dry_run || {
@@ -1369,30 +1530,26 @@ func_lt_ver ()
 # End:
 #! /bin/sh
 
-# Set a version string for this script.
-scriptversion=2014-01-07.03; # UTC
-
 # A portable, pluggable option parser for Bourne shell.
 # Written by Gary V. Vaughan, 2010
 
-# Copyright (C) 2010-2015 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.
-
-# 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 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 is free software.  There is NO warranty; not even for
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#
+# Copyright (C) 2010-2019, 2021 Bootstrap Authors
+#
+# This file is dual licensed under the terms of the MIT license
+# <https://opensource.org/license/MIT>, and GPL version 2 or later
+# <http://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of
+# these licenses when using or redistributing this software or any of
+# the files within it.  See the URLs above, or the file `LICENSE`
+# included in the Bootstrap distribution for the full license texts.
 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# Please report bugs or propose patches to:
+# <https://github.com/gnulib-modules/bootstrap/issues>
 
-# Please report bugs or propose patches to gary@gnu.org.
+# Set a version string for this script.
+scriptversion=2019-02-19.15; # UTC
 
 
 ## ------ ##
@@ -1415,7 +1572,7 @@ scriptversion=2014-01-07.03; # UTC
 #
 # In order for the '--version' option to work, you will need to have a
 # suitably formatted comment like the one at the top of this file
-# starting with '# Written by ' and ending with '# warranty; '.
+# starting with '# Written by ' and ending with '# Copyright'.
 #
 # For '-h' and '--help' to work, you will also need a one line
 # description of your script's purpose in a comment directly above the
@@ -1427,7 +1584,7 @@ scriptversion=2014-01-07.03; # UTC
 # to display verbose messages only when your user has specified
 # '--verbose'.
 #
-# After sourcing this file, you can plug processing for additional
+# After sourcing this file, you can plug in processing for additional
 # options by amending the variables from the 'Configuration' section
 # below, and following the instructions in the 'Option parsing'
 # section further down.
@@ -1476,8 +1633,8 @@ fatal_help="Try '\$progname --help' for more information."
 ## ------------------------- ##
 
 # This section contains functions for adding, removing, and running hooks
-# to the main code.  A hook is just a named list of of function, that can
-# be run in order later on.
+# in the main code.  A hook is just a list of function names that can be
+# run in order later on.
 
 # func_hookable FUNC_NAME
 # -----------------------
@@ -1510,7 +1667,8 @@ func_add_hook ()
 
 # func_remove_hook FUNC_NAME HOOK_FUNC
 # ------------------------------------
-# Remove HOOK_FUNC from the list of functions called by FUNC_NAME.
+# Remove HOOK_FUNC from the list of hook functions to be called by
+# FUNC_NAME.
 func_remove_hook ()
 {
     $debug_cmd
@@ -1519,10 +1677,28 @@ func_remove_hook ()
 }
 
 
+# func_propagate_result FUNC_NAME_A FUNC_NAME_B
+# ---------------------------------------------
+# If the *_result variable of FUNC_NAME_A _is set_, assign its value to
+# *_result variable of FUNC_NAME_B.
+func_propagate_result ()
+{
+    $debug_cmd
+
+    func_propagate_result_result=:
+    if eval "test \"\${${1}_result+set}\" = set"
+    then
+      eval "${2}_result=\$${1}_result"
+    else
+      func_propagate_result_result=false
+    fi
+}
+
+
 # func_run_hooks FUNC_NAME [ARG]...
 # ---------------------------------
 # Run all hook functions registered to FUNC_NAME.
-# It is assumed that the list of hook functions contains nothing more
+# It's assumed that the list of hook functions contains nothing more
 # than a whitespace-delimited list of legal shell function names, and
 # no effort is wasted trying to catch shell meta-characters or preserve
 # whitespace.
@@ -1532,22 +1708,19 @@ func_run_hooks ()
 
     case " $hookable_fns " in
       *" $1 "*) ;;
-      *) func_fatal_error "'$1' does not support hook funcions.n" ;;
+      *) func_fatal_error "'$1' does not support hook functions." ;;
     esac
 
     eval _G_hook_fns=\$$1_hooks; shift
 
     for _G_hook in $_G_hook_fns; do
-      eval $_G_hook '"$@"'
-
-      # store returned options list back into positional
-      # parameters for next 'cmd' execution.
-      eval _G_hook_result=\$${_G_hook}_result
-      eval set dummy "$_G_hook_result"; shift
+      func_unset "${_G_hook}_result"
+      eval $_G_hook '${1+"$@"}'
+      func_propagate_result $_G_hook func_run_hooks
+      if $func_propagate_result_result; then
+        eval set dummy "$func_run_hooks_result"; shift
+      fi
     done
-
-    func_quote_for_eval ${1+"$@"}
-    func_run_hooks_result=$func_quote_for_eval_result
 }
 
 
@@ -1557,10 +1730,18 @@ func_run_hooks ()
 ## --------------- ##
 
 # In order to add your own option parsing hooks, you must accept the
-# full positional parameter list in your hook function, remove any
-# options that you action, and then pass back the remaining unprocessed
-# options in '<hooked_function_name>_result', escaped suitably for
-# 'eval'.  Like this:
+# full positional parameter list from your hook function.  You may remove
+# or edit any options that you action, and then pass back the remaining
+# unprocessed options in '<hooked_function_name>_result', escaped
+# suitably for 'eval'.
+#
+# The '<hooked_function_name>_result' variable is automatically unset
+# before your hook gets called; for best performance, only set the
+# *_result variable when necessary (i.e. don't call the 'func_quote'
+# function unnecessarily because it can be an expensive operation on some
+# machines).
+#
+# Like this:
 #
 #    my_options_prep ()
 #    {
@@ -1570,9 +1751,8 @@ func_run_hooks ()
 #        usage_message=$usage_message'
 #      -s, --silent       don'\''t print informational messages
 #    '
-#
-#        func_quote_for_eval ${1+"$@"}
-#        my_options_prep_result=$func_quote_for_eval_result
+#        # No change in '$@' (ignored completely by this hook).  Leave
+#        # my_options_prep_result variable intact.
 #    }
 #    func_add_hook func_options_prep my_options_prep
 #
@@ -1581,25 +1761,36 @@ func_run_hooks ()
 #    {
 #        $debug_cmd
 #
-#        # Note that for efficiency, we parse as many options as we can
+#        args_changed=false
+#
+#        # Note that, for efficiency, we parse as many options as we can
 #        # recognise in a loop before passing the remainder back to the
 #        # caller on the first unrecognised argument we encounter.
 #        while test $# -gt 0; do
 #          opt=$1; shift
 #          case $opt in
-#            --silent|-s) opt_silent=: ;;
+#            --silent|-s) opt_silent=:
+#                         args_changed=:
+#                         ;;
 #            # Separate non-argument short options:
 #            -s*)         func_split_short_opt "$_G_opt"
 #                         set dummy "$func_split_short_opt_name" \
 #                             "-$func_split_short_opt_arg" ${1+"$@"}
 #                         shift
+#                         args_changed=:
 #                         ;;
-#            *)            set dummy "$_G_opt" "$*"; shift; break ;;
+#            *)           # Make sure the first unrecognised option "$_G_opt"
+#                         # is added back to "$@" in case we need it later,
+#                         # if $args_changed was set to 'true'.
+#                         set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
 #          esac
 #        done
 #
-#        func_quote_for_eval ${1+"$@"}
-#        my_silent_option_result=$func_quote_for_eval_result
+#        # Only call 'func_quote' here if we processed at least one argument.
+#        if $args_changed; then
+#          func_quote eval ${1+"$@"}
+#          my_silent_option_result=$func_quote_result
+#        fi
 #    }
 #    func_add_hook func_parse_options my_silent_option
 #
@@ -1610,17 +1801,26 @@ func_run_hooks ()
 #
 #        $opt_silent && $opt_verbose && func_fatal_help "\
 #    '--silent' and '--verbose' options are mutually exclusive."
-#
-#        func_quote_for_eval ${1+"$@"}
-#        my_option_validation_result=$func_quote_for_eval_result
 #    }
 #    func_add_hook func_validate_options my_option_validation
 #
-# You'll alse need to manually amend $usage_message to reflect the extra
+# You'll also need to manually amend $usage_message to reflect the extra
 # options you parse.  It's preferable to append if you can, so that
 # multiple option parsing hooks can be added safely.
 
 
+# func_options_finish [ARG]...
+# ----------------------------
+# Finishing the option parse loop (call 'func_options' hooks ATM).
+func_options_finish ()
+{
+    $debug_cmd
+
+    func_run_hooks func_options ${1+"$@"}
+    func_propagate_result func_run_hooks func_options_finish
+}
+
+
 # func_options [ARG]...
 # ---------------------
 # All the functions called inside func_options are hookable. See the
@@ -1630,17 +1830,27 @@ func_options ()
 {
     $debug_cmd
 
-    func_options_prep ${1+"$@"}
-    eval func_parse_options \
-        ${func_options_prep_result+"$func_options_prep_result"}
-    eval func_validate_options \
-        ${func_parse_options_result+"$func_parse_options_result"}
+    _G_options_quoted=false
 
-    eval func_run_hooks func_options \
-        ${func_validate_options_result+"$func_validate_options_result"}
+    for my_func in options_prep parse_options validate_options options_finish
+    do
+      func_unset func_${my_func}_result
+      func_unset func_run_hooks_result
+      eval func_$my_func '${1+"$@"}'
+      func_propagate_result func_$my_func func_options
+      if $func_propagate_result_result; then
+        eval set dummy "$func_options_result"; shift
+        _G_options_quoted=:
+      fi
+    done
 
-    # save modified positional parameters for caller
-    func_options_result=$func_run_hooks_result
+    $_G_options_quoted || {
+      # As we (func_options) are top-level options-parser function and
+      # nobody quoted "$@" for us yet, we need to do it explicitly for
+      # caller.
+      func_quote eval ${1+"$@"}
+      func_options_result=$func_quote_result
+    }
 }
 
 
@@ -1649,9 +1859,8 @@ func_options ()
 # All initialisations required before starting the option parse loop.
 # Note that when calling hook functions, we pass through the list of
 # positional parameters.  If a hook function modifies that list, and
-# needs to propogate that back to rest of this script, then the complete
-# modified list must be put in 'func_run_hooks_result' before
-# returning.
+# needs to propagate that back to rest of this script, then the complete
+# modified list must be put in 'func_run_hooks_result' before returning.
 func_hookable func_options_prep
 func_options_prep ()
 {
@@ -1662,9 +1871,7 @@ func_options_prep ()
     opt_warning_types=
 
     func_run_hooks func_options_prep ${1+"$@"}
-
-    # save modified positional parameters for caller
-    func_options_prep_result=$func_run_hooks_result
+    func_propagate_result func_run_hooks func_options_prep
 }
 
 
@@ -1676,25 +1883,32 @@ func_parse_options ()
 {
     $debug_cmd
 
-    func_parse_options_result=
-
+    _G_parse_options_requote=false
     # this just eases exit handling
     while test $# -gt 0; do
       # Defer to hook functions for initial option parsing, so they
       # get priority in the event of reusing an option name.
       func_run_hooks func_parse_options ${1+"$@"}
-
-      # Adjust func_parse_options positional parameters to match
-      eval set dummy "$func_run_hooks_result"; shift
+      func_propagate_result func_run_hooks func_parse_options
+      if $func_propagate_result_result; then
+        eval set dummy "$func_parse_options_result"; shift
+        # Even though we may have changed "$@", we passed the "$@" array
+        # down into the hook and it quoted it for us (because we are in
+        # this if-branch).  No need to quote it again.
+        _G_parse_options_requote=false
+      fi
 
       # Break out of the loop if we already parsed every option.
       test $# -gt 0 || break
 
+      # We expect that one of the options parsed in this function matches
+      # and thus we remove _G_opt from "$@" and need to re-quote.
+      _G_match_parse_options=:
       _G_opt=$1
       shift
       case $_G_opt in
         --debug|-x)   debug_cmd='set -x'
-                      func_echo "enabling shell trace mode"
+                      func_echo "enabling shell trace mode" >&2
                       $debug_cmd
                       ;;
 
@@ -1704,7 +1918,10 @@ func_parse_options ()
                      ;;
 
         --warnings|--warning|-W)
-                      test $# = 0 && func_missing_arg $_G_opt && break
+                      if test $# = 0 && func_missing_arg $_G_opt; then
+                        _G_parse_options_requote=:
+                        break
+                      fi
                       case " $warning_categories $1" in
                         *" $1 "*)
                           # trailing space prevents matching last $1 above
@@ -1757,15 +1974,24 @@ func_parse_options ()
                       shift
                       ;;
 
-        --)           break ;;
+        --)           _G_parse_options_requote=: ; break ;;
         -*)           func_fatal_help "unrecognised option: '$_G_opt'" ;;
-        *)            set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
+        *)            set dummy "$_G_opt" ${1+"$@"}; shift
+                      _G_match_parse_options=false
+                      break
+                      ;;
       esac
+
+      if $_G_match_parse_options; then
+        _G_parse_options_requote=:
+      fi
     done
 
-    # save modified positional parameters for caller
-    func_quote_for_eval ${1+"$@"}
-    func_parse_options_result=$func_quote_for_eval_result
+    if $_G_parse_options_requote; then
+      # save modified positional parameters for caller
+      func_quote eval ${1+"$@"}
+      func_parse_options_result=$func_quote_result
+    fi
 }
 
 
@@ -1782,12 +2008,10 @@ func_validate_options ()
     test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
 
     func_run_hooks func_validate_options ${1+"$@"}
+    func_propagate_result func_run_hooks func_validate_options
 
     # Bail if the options were screwed!
     $exit_cmd $EXIT_FAILURE
-
-    # save modified positional parameters for caller
-    func_validate_options_result=$func_run_hooks_result
 }
 
 
@@ -1843,8 +2067,8 @@ func_missing_arg ()
 
 # func_split_equals STRING
 # ------------------------
-# Set func_split_equals_lhs and func_split_equals_rhs shell variables after
-# splitting STRING at the '=' sign.
+# Set func_split_equals_lhs and func_split_equals_rhs shell variables
+# after splitting STRING at the '=' sign.
 test -z "$_G_HAVE_XSI_OPS" \
     && (eval 'x=a/b/c;
       test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
@@ -1859,8 +2083,9 @@ then
 
       func_split_equals_lhs=${1%%=*}
       func_split_equals_rhs=${1#*=}
-      test "x$func_split_equals_lhs" = "x$1" \
-        && func_split_equals_rhs=
+      if test "x$func_split_equals_lhs" = "x$1"; then
+        func_split_equals_rhs=
+      fi
   }'
 else
   # ...otherwise fall back to using expr, which is often a shell builtin.
@@ -1870,7 +2095,7 @@ else
 
       func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'`
       func_split_equals_rhs=
-      test "x$func_split_equals_lhs" = "x$1" \
+      test "x$func_split_equals_lhs=" = "x$1" \
         || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'`
   }
 fi #func_split_equals
@@ -1896,7 +2121,7 @@ else
   {
       $debug_cmd
 
-      func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'`
+      func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'`
       func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'`
   }
 fi #func_split_short_opt
@@ -1938,31 +2163,44 @@ func_usage_message ()
 # func_version
 # ------------
 # Echo version message to standard output and exit.
+# The version message is extracted from the calling file's header
+# comments, with leading '# ' stripped:
+#   1. First display the progname and version
+#   2. Followed by the header comment line matching  /^# Written by /
+#   3. Then a blank line followed by the first following line matching
+#      /^# Copyright /
+#   4. Immediately followed by any lines between the previous matches,
+#      except lines preceding the intervening completely blank line.
+# For example, see the header comments of this file.
 func_version ()
 {
     $debug_cmd
 
     printf '%s\n' "$progname $scriptversion"
     $SED -n '
-        /(C)/!b go
-        :more
-        /\./!{
-          N
-          s|\n# | |
-          b more
-        }
-        :go
-        /^# Written by /,/# warranty; / {
-          s|^# ||
-          s|^# *$||
-          s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
-          p
+        /^# Written by /!b
+        s|^# ||; p; n
+
+        :fwd2blnk
+        /./ {
+          n
+          b fwd2blnk
         }
-        /^# Written by / {
-          s|^# ||
-          p
+        p; n
+
+        :holdwrnt
+        s|^# ||
+        s|^# *$||
+        /^Copyright /!{
+          /./H
+          n
+          b holdwrnt
         }
-        /^warranty; /q' < "$progpath"
+
+        s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
+        G
+        s|\(\n\)\n*|\1|g
+        p; q' < "$progpath"
 
     exit $?
 }
@@ -1972,12 +2210,12 @@ func_version ()
 # mode: shell-script
 # sh-indentation: 2
 # eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
+# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC"
 # time-stamp-time-zone: "UTC"
 # End:
 
 # Set a version string.
-scriptversion='(GNU libtool) 2.4.6'
+scriptversion='(GNU libtool) 2.4.7'
 
 
 # func_echo ARG...
@@ -2068,7 +2306,7 @@ include the following information:
        compiler:       $LTCC
        compiler flags: $LTCFLAGS
        linker:         $LD (gnu? $with_gnu_ld)
-       version:        $progname (GNU libtool) 2.4.6
+       version:        $progname (GNU libtool) 2.4.7
        automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
        autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
 
@@ -2124,7 +2362,7 @@ fi
 # a configuration failure hint, and exit.
 func_fatal_configuration ()
 {
-    func__fatal_error ${1+"$@"} \
+    func_fatal_error ${1+"$@"} \
       "See the $PACKAGE documentation for more information." \
       "Fatal configuration error."
 }
@@ -2270,6 +2508,8 @@ libtool_options_prep ()
     nonopt=
     preserve_args=
 
+    _G_rc_lt_options_prep=:
+
     # Shorthand for --mode=foo, only valid as the first argument
     case $1 in
     clean|clea|cle|cl)
@@ -2293,11 +2533,16 @@ libtool_options_prep ()
     uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
       shift; set dummy --mode uninstall ${1+"$@"}; shift
       ;;
+    *)
+      _G_rc_lt_options_prep=false
+      ;;
     esac
 
-    # Pass back the list of options.
-    func_quote_for_eval ${1+"$@"}
-    libtool_options_prep_result=$func_quote_for_eval_result
+    if $_G_rc_lt_options_prep; then
+      # Pass back the list of options.
+      func_quote eval ${1+"$@"}
+      libtool_options_prep_result=$func_quote_result
+    fi
 }
 func_add_hook func_options_prep libtool_options_prep
 
@@ -2309,9 +2554,12 @@ libtool_parse_options ()
 {
     $debug_cmd
 
+    _G_rc_lt_parse_options=false
+
     # Perform our own loop to consume as many options as possible in
     # each iteration.
     while test $# -gt 0; do
+      _G_match_lt_parse_options=:
       _G_opt=$1
       shift
       case $_G_opt in
@@ -2386,15 +2634,20 @@ libtool_parse_options ()
                         func_append preserve_args " $_G_opt"
                         ;;
 
-       # An option not handled by this hook function:
-        *)             set dummy "$_G_opt" ${1+"$@"};  shift; break  ;;
+        # An option not handled by this hook function:
+        *)              set dummy "$_G_opt" ${1+"$@"} ; shift
+                        _G_match_lt_parse_options=false
+                        break
+                        ;;
       esac
+      $_G_match_lt_parse_options && _G_rc_lt_parse_options=:
     done
 
-
-    # save modified positional parameters for caller
-    func_quote_for_eval ${1+"$@"}
-    libtool_parse_options_result=$func_quote_for_eval_result
+    if $_G_rc_lt_parse_options; then
+      # save modified positional parameters for caller
+      func_quote eval ${1+"$@"}
+      libtool_parse_options_result=$func_quote_result
+    fi
 }
 func_add_hook func_parse_options libtool_parse_options
 
@@ -2415,17 +2668,10 @@ libtool_validate_options ()
     # preserve --debug
     test : = "$debug_cmd" || func_append preserve_args " --debug"
 
-    case $host in
-      # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
-      # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
-      *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
-        # don't eliminate duplications in $postdeps and $predeps
-        opt_duplicate_compiler_generated_deps=:
-        ;;
-      *)
-        opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
-        ;;
-    esac
+    # Keeping compiler generated duplicates in $postdeps and $predeps is not
+    # harmful, and is necessary in a majority of systems that use it to satisfy
+    # symbol dependencies.
+    opt_duplicate_compiler_generated_deps=:
 
     $opt_help || {
       # Sanity checks first:
@@ -2451,8 +2697,8 @@ libtool_validate_options ()
     }
 
     # Pass back the unparsed argument list
-    func_quote_for_eval ${1+"$@"}
-    libtool_validate_options_result=$func_quote_for_eval_result
+    func_quote eval ${1+"$@"}
+    libtool_validate_options_result=$func_quote_result
 }
 func_add_hook func_validate_options libtool_validate_options
 
@@ -3418,8 +3664,8 @@ func_mode_compile ()
       esac
     done
 
-    func_quote_for_eval "$libobj"
-    test "X$libobj" != "X$func_quote_for_eval_result" \
+    func_quote_arg pretty "$libobj"
+    test "X$libobj" != "X$func_quote_arg_result" \
       && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'   &()|`$[]' \
       && func_warning "libobj name '$libobj' may not contain shell special characters."
     func_dirname_and_basename "$obj" "/" ""
@@ -3492,8 +3738,8 @@ compiler."
 
     func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
     srcfile=$func_to_tool_file_result
-    func_quote_for_eval "$srcfile"
-    qsrcfile=$func_quote_for_eval_result
+    func_quote_arg pretty "$srcfile"
+    qsrcfile=$func_quote_arg_result
 
     # Only build a PIC object if we are building libtool libraries.
     if test yes = "$build_libtool_libs"; then
@@ -3648,7 +3894,8 @@ This mode accepts the following additional options:
   -prefer-non-pic   try to build non-PIC objects only
   -shared           do not build a '.o' file suitable for static linking
   -static           only build a '.o' file suitable for static linking
-  -Wc,FLAG          pass FLAG directly to the compiler
+  -Wc,FLAG
+  -Xcompiler FLAG   pass FLAG directly to the compiler
 
 COMPILE-COMMAND is a command to be used in creating a 'standard' object file
 from the given SOURCEFILE.
@@ -3754,6 +4001,8 @@ The following components of LINK-COMMAND are treated specially:
   -weak LIBNAME     declare that the target provides the LIBNAME interface
   -Wc,FLAG
   -Xcompiler FLAG   pass linker-specific FLAG directly to the compiler
+  -Wa,FLAG
+  -Xassembler FLAG  pass linker-specific FLAG directly to the assembler
   -Wl,FLAG
   -Xlinker FLAG     pass linker-specific FLAG directly to the linker
   -XCClinker FLAG   pass link-specific FLAG to the compiler driver (CC)
@@ -4096,8 +4345,8 @@ func_mode_install ()
        case $nonopt in *shtool*) :;; *) false;; esac
     then
       # Aesthetically quote it.
-      func_quote_for_eval "$nonopt"
-      install_prog="$func_quote_for_eval_result "
+      func_quote_arg pretty "$nonopt"
+      install_prog="$func_quote_arg_result "
       arg=$1
       shift
     else
@@ -4107,8 +4356,8 @@ func_mode_install ()
 
     # The real first argument should be the name of the installation program.
     # Aesthetically quote it.
-    func_quote_for_eval "$arg"
-    func_append install_prog "$func_quote_for_eval_result"
+    func_quote_arg pretty "$arg"
+    func_append install_prog "$func_quote_arg_result"
     install_shared_prog=$install_prog
     case " $install_prog " in
       *[\\\ /]cp\ *) install_cp=: ;;
@@ -4165,12 +4414,12 @@ func_mode_install ()
       esac
 
       # Aesthetically quote the argument.
-      func_quote_for_eval "$arg"
-      func_append install_prog " $func_quote_for_eval_result"
+      func_quote_arg pretty "$arg"
+      func_append install_prog " $func_quote_arg_result"
       if test -n "$arg2"; then
-       func_quote_for_eval "$arg2"
+       func_quote_arg pretty "$arg2"
       fi
-      func_append install_shared_prog " $func_quote_for_eval_result"
+      func_append install_shared_prog " $func_quote_arg_result"
     done
 
     test -z "$install_prog" && \
@@ -4181,8 +4430,8 @@ func_mode_install ()
 
     if test -n "$install_override_mode" && $no_mode; then
       if $install_cp; then :; else
-       func_quote_for_eval "$install_override_mode"
-       func_append install_shared_prog " -m $func_quote_for_eval_result"
+       func_quote_arg pretty "$install_override_mode"
+       func_append install_shared_prog " -m $func_quote_arg_result"
       fi
     fi
 
@@ -4478,8 +4727,8 @@ func_mode_install ()
                relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
 
                $opt_quiet || {
-                 func_quote_for_expand "$relink_command"
-                 eval "func_echo $func_quote_for_expand_result"
+                 func_quote_arg expand,pretty "$relink_command"
+                 eval "func_echo $func_quote_arg_result"
                }
                if eval "$relink_command"; then :
                  else
@@ -5258,7 +5507,8 @@ else
   if test \"\$libtool_execute_magic\" != \"$magic\"; then
     file=\"\$0\""
 
-    qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
+    func_quote_arg pretty "$ECHO"
+    qECHO=$func_quote_arg_result
     $ECHO "\
 
 # A function that is used when there is no print builtin or printf.
@@ -5268,7 +5518,7 @@ func_fallback_echo ()
 \$1
 _LTECHO_EOF'
 }
-    ECHO=\"$qECHO\"
+    ECHO=$qECHO
   fi
 
 # Very basic option parsing. These options are (a) specific to
@@ -6611,9 +6861,9 @@ func_mode_link ()
     while test "$#" -gt 0; do
       arg=$1
       shift
-      func_quote_for_eval "$arg"
-      qarg=$func_quote_for_eval_unquoted_result
-      func_append libtool_args " $func_quote_for_eval_result"
+      func_quote_arg pretty,unquoted "$arg"
+      qarg=$func_quote_arg_unquoted_result
+      func_append libtool_args " $func_quote_arg_result"
 
       # If the previous option needs an argument, assign it.
       if test -n "$prev"; then
@@ -6849,6 +7099,13 @@ func_mode_link ()
          prev=
          continue
          ;;
+       xassembler)
+         func_append compiler_flags " -Xassembler $qarg"
+         prev=
+         func_append compile_command " -Xassembler $qarg"
+         func_append finalize_command " -Xassembler $qarg"
+         continue
+         ;;
        xcclinker)
          func_append linker_flags " $qarg"
          func_append compiler_flags " $qarg"
@@ -7019,7 +7276,7 @@ func_mode_link ()
            # These systems don't actually have a C library (as such)
            test X-lc = "X$arg" && continue
            ;;
-         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
+         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*)
            # Do not include libc due to us having libc/libc_r.
            test X-lc = "X$arg" && continue
            ;;
@@ -7039,7 +7296,7 @@ func_mode_link ()
          esac
        elif test X-lc_r = "X$arg"; then
         case $host in
-        *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
+        *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*)
           # Do not include libc_r directly, use -pthread flag.
           continue
           ;;
@@ -7069,8 +7326,20 @@ func_mode_link ()
        prev=xcompiler
        continue
        ;;
-
-      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
+     # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199.
+     -pthread)
+       case $host in
+         *solaris2*) ;;
+         *)
+           case "$new_inherited_linker_flags " in
+               *" $arg "*) ;;
+               * ) func_append new_inherited_linker_flags " $arg" ;;
+           esac
+         ;;
+       esac
+       continue
+       ;;
+      -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \
       |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
        func_append compiler_flags " $arg"
        func_append compile_command " $arg"
@@ -7211,9 +7480,9 @@ func_mode_link ()
        save_ifs=$IFS; IFS=,
        for flag in $args; do
          IFS=$save_ifs
-          func_quote_for_eval "$flag"
-         func_append arg " $func_quote_for_eval_result"
-         func_append compiler_flags " $func_quote_for_eval_result"
+          func_quote_arg pretty "$flag"
+         func_append arg " $func_quote_arg_result"
+         func_append compiler_flags " $func_quote_arg_result"
        done
        IFS=$save_ifs
        func_stripname ' ' '' "$arg"
@@ -7227,16 +7496,21 @@ func_mode_link ()
        save_ifs=$IFS; IFS=,
        for flag in $args; do
          IFS=$save_ifs
-          func_quote_for_eval "$flag"
-         func_append arg " $wl$func_quote_for_eval_result"
-         func_append compiler_flags " $wl$func_quote_for_eval_result"
-         func_append linker_flags " $func_quote_for_eval_result"
+          func_quote_arg pretty "$flag"
+         func_append arg " $wl$func_quote_arg_result"
+         func_append compiler_flags " $wl$func_quote_arg_result"
+         func_append linker_flags " $func_quote_arg_result"
        done
        IFS=$save_ifs
        func_stripname ' ' '' "$arg"
        arg=$func_stripname_result
        ;;
 
+      -Xassembler)
+        prev=xassembler
+        continue
+        ;;
+
       -Xcompiler)
        prev=xcompiler
        continue
@@ -7254,8 +7528,8 @@ func_mode_link ()
 
       # -msg_* for osf cc
       -msg_*)
-       func_quote_for_eval "$arg"
-       arg=$func_quote_for_eval_result
+       func_quote_arg pretty "$arg"
+       arg=$func_quote_arg_result
        ;;
 
       # Flags to be passed through unchanged, with rationale:
@@ -7272,12 +7546,17 @@ func_mode_link ()
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -specs=*             GCC specs files
       # -stdlib=*            select c++ std lib with clang
+      # -fsanitize=*         Clang/GCC memory and address sanitizer
+      # -fuse-ld=*           Linker select flags for GCC
+      # -Wa,*                Pass flags directly to the assembler
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
-        func_quote_for_eval "$arg"
-       arg=$func_quote_for_eval_result
+      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+      -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*)
+        func_quote_arg pretty "$arg"
+       arg=$func_quote_arg_result
         func_append compile_command " $arg"
         func_append finalize_command " $arg"
         func_append compiler_flags " $arg"
@@ -7298,15 +7577,15 @@ func_mode_link ()
          continue
         else
          # Otherwise treat like 'Some other compiler flag' below
-         func_quote_for_eval "$arg"
-         arg=$func_quote_for_eval_result
+         func_quote_arg pretty "$arg"
+         arg=$func_quote_arg_result
         fi
        ;;
 
       # Some other compiler flag.
       -* | +*)
-        func_quote_for_eval "$arg"
-       arg=$func_quote_for_eval_result
+        func_quote_arg pretty "$arg"
+       arg=$func_quote_arg_result
        ;;
 
       *.$objext)
@@ -7426,8 +7705,8 @@ func_mode_link ()
       *)
        # Unknown arguments in both finalize_command and compile_command need
        # to be aesthetically quoted because they are evaled later.
-       func_quote_for_eval "$arg"
-       arg=$func_quote_for_eval_result
+       func_quote_arg pretty "$arg"
+       arg=$func_quote_arg_result
        ;;
       esac # arg
 
@@ -8632,7 +8911,7 @@ func_mode_link ()
       test CXX = "$tagname" && {
         case $host_os in
         linux*)
-          case `$CC -V 2>&1 | sed 5q` in
+          case `$CC -V 2>&1 | $SED 5q` in
           *Sun\ C*) # Sun C++ 5.9
             func_suncc_cstd_abi
 
@@ -8805,7 +9084,7 @@ func_mode_link ()
          #
          case $version_type in
          # correct linux to gnu/linux during the next big refactor
-         darwin|freebsd-elf|linux|osf|windows|none)
+         darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none)
            func_arith $number_major + $number_minor
            current=$func_arith_result
            age=$number_minor
@@ -8896,7 +9175,7 @@ func_mode_link ()
          versuffix=.$current.$revision
          ;;
 
-       freebsd-elf)
+       freebsd-elf | midnightbsd-elf)
          func_arith $current - $age
          major=.$func_arith_result
          versuffix=$major.$age.$revision
@@ -9122,7 +9401,7 @@ func_mode_link ()
          *-*-netbsd*)
            # Don't link with libc until the a.out ld.so is fixed.
            ;;
-         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*)
            # Do not include libc due to us having libc/libc_r.
            ;;
          *-*-sco3.2v5* | *-*-sco5v6*)
@@ -9933,8 +10212,8 @@ EOF
            for cmd in $concat_cmds; do
              IFS=$save_ifs
              $opt_quiet || {
-                 func_quote_for_expand "$cmd"
-                 eval "func_echo $func_quote_for_expand_result"
+                 func_quote_arg expand,pretty "$cmd"
+                 eval "func_echo $func_quote_arg_result"
              }
              $opt_dry_run || eval "$cmd" || {
                lt_exit=$?
@@ -10027,8 +10306,8 @@ EOF
          eval cmd=\"$cmd\"
          IFS=$save_ifs
          $opt_quiet || {
-           func_quote_for_expand "$cmd"
-           eval "func_echo $func_quote_for_expand_result"
+           func_quote_arg expand,pretty "$cmd"
+           eval "func_echo $func_quote_arg_result"
          }
          $opt_dry_run || eval "$cmd" || {
            lt_exit=$?
@@ -10502,12 +10781,13 @@ EOF
          elif eval var_value=\$$var; test -z "$var_value"; then
            relink_command="$var=; export $var; $relink_command"
          else
-           func_quote_for_eval "$var_value"
-           relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+           func_quote_arg pretty "$var_value"
+           relink_command="$var=$func_quote_arg_result; export $var; $relink_command"
          fi
        done
-       relink_command="(cd `pwd`; $relink_command)"
-       relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
+       func_quote eval cd "`pwd`"
+       func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)"
+       relink_command=$func_quote_arg_unquoted_result
       fi
 
       # Only actually do things if not in dry run mode.
@@ -10747,13 +11027,15 @@ EOF
        elif eval var_value=\$$var; test -z "$var_value"; then
          relink_command="$var=; export $var; $relink_command"
        else
-         func_quote_for_eval "$var_value"
-         relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+         func_quote_arg pretty,unquoted "$var_value"
+         relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command"
        fi
       done
       # Quote the link command for shipping.
-      relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
-      relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
+      func_quote eval cd "`pwd`"
+      relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
+      func_quote_arg pretty,unquoted "$relink_command"
+      relink_command=$func_quote_arg_unquoted_result
       if test yes = "$hardcode_automatic"; then
        relink_command=
       fi
index a644432..e3adeda 100644 (file)
@@ -1,6 +1,7 @@
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 #
-#   Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
+#   Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software
+#   Foundation, Inc.
 #   Written by Gordon Matzigkeit, 1996
 #
 # This file is free software; the Free Software Foundation gives
@@ -31,7 +32,7 @@ m4_define([_LT_COPYING], [dnl
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 ])
 
-# serial 58 LT_INIT
+# serial 59 LT_INIT
 
 
 # LT_PREREQ(VERSION)
@@ -181,6 +182,7 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
 m4_require([_LT_CMD_RELOAD])dnl
+m4_require([_LT_DECL_FILECMD])dnl
 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
@@ -219,8 +221,8 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a '.a' archive for static linking (except MSVC,
-# which needs '.lib').
+# All known linkers require a '.a' archive for static linking (except MSVC and
+# ICC, which need '.lib').
 libext=a
 
 with_gnu_ld=$lt_cv_prog_gnu_ld
@@ -778,7 +780,7 @@ _LT_EOF
   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
   # text mode, it properly converts lines to CR/LF.  This bash problem
   # is reportedly fixed, but why not run on old versions too?
-  sed '$q' "$ltmain" >> "$cfgfile" \
+  $SED '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
    mv -f "$cfgfile" "$ofile" ||
@@ -1042,8 +1044,8 @@ int forced_loaded() { return 2;}
 _LT_EOF
       echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
       $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
-      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
-      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
+      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
+      $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
       echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
       $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
       cat > conftest.c << _LT_EOF
@@ -1067,17 +1069,12 @@ _LT_EOF
       _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' ;;
+    darwin*)
+      case $MACOSX_DEPLOYMENT_TARGET,$host in
+        10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
+          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+        *)
+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
@@ -1126,12 +1123,12 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
     output_verbose_link_cmd=func_echo_all
     _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
     _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+    _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
     m4_if([$1], [CXX],
 [   if test yes != "$lt_cv_apple_cc_single_mod"; then
       _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
+      _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
     fi
 ],[])
   else
@@ -1245,7 +1242,8 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
 # _LT_WITH_SYSROOT
 # ----------------
 AC_DEFUN([_LT_WITH_SYSROOT],
-[AC_MSG_CHECKING([for sysroot])
+[m4_require([_LT_DECL_SED])dnl
+AC_MSG_CHECKING([for sysroot])
 AC_ARG_WITH([sysroot],
 [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
   [Search for dependent libraries within DIR (or the compiler's sysroot
@@ -1262,7 +1260,7 @@ case $with_sysroot in #(
    fi
    ;; #(
  /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
+   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
    ;; #(
  no|'')
    ;; #(
@@ -1292,7 +1290,7 @@ ia64-*-hpux*)
   # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *ELF-32*)
        HPUX_IA64_MODE=32
        ;;
@@ -1309,7 +1307,7 @@ ia64-*-hpux*)
   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     if test yes = "$lt_cv_prog_gnu_ld"; then
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -melf32bsmip"
          ;;
@@ -1321,7 +1319,7 @@ ia64-*-hpux*)
        ;;
       esac
     else
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -32"
          ;;
@@ -1343,7 +1341,7 @@ mips64*-*linux*)
   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     emul=elf
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *32-bit*)
        emul="${emul}32"
        ;;
@@ -1351,7 +1349,7 @@ mips64*-*linux*)
        emul="${emul}64"
        ;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *MSB*)
        emul="${emul}btsmip"
        ;;
@@ -1359,7 +1357,7 @@ mips64*-*linux*)
        emul="${emul}ltsmip"
        ;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *N32*)
        emul="${emul}n32"
        ;;
@@ -1379,14 +1377,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # not appear in the list.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
       *32-bit*)
        case $host in
          x86_64-*kfreebsd*-gnu)
            LD="${LD-ld} -m elf_i386_fbsd"
            ;;
          x86_64-*linux*)
-           case `/usr/bin/file conftest.o` in
+           case `$FILECMD conftest.o` in
              *x86-64*)
                LD="${LD-ld} -m elf32_x86_64"
                ;;
@@ -1454,7 +1452,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*)
@@ -1493,9 +1491,22 @@ need_locks=$enable_libtool_lock
 m4_defun([_LT_PROG_AR],
 [AC_CHECK_TOOLS(AR, [ar], false)
 : ${AR=ar}
-: ${AR_FLAGS=cru}
 _LT_DECL([], [AR], [1], [The archiver])
-_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
+
+# Use ARFLAGS variable as AR's operation code to sync the variable naming with
+# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
+# higher priority because thats what people were doing historically (setting
+# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS
+# variable obsoleted/removed.
+
+test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
+lt_ar_flags=$AR_FLAGS
+_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)])
+
+# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override
+# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
+_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}],
+         [Flags to create an archive])
 
 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
   [lt_cv_ar_at_file=no
@@ -1714,7 +1725,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
+  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -1757,7 +1768,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
   sysv5* | sco5v6* | sysv4.2uw2*)
     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
     if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[        ]]//'`
+      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[       ]]//'`
     else
       lt_cv_sys_max_cmd_len=32768
     fi
@@ -2207,26 +2218,35 @@ m4_defun([_LT_CMD_STRIPLIB],
 striplib=
 old_striplib=
 AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  AC_MSG_RESULT([yes])
+if test -z "$STRIP"; then
+  AC_MSG_RESULT([no])
 else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP"; then
+  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+    old_striplib="$STRIP --strip-debug"
+    striplib="$STRIP --strip-unneeded"
+    AC_MSG_RESULT([yes])
+  else
+    case $host_os in
+    darwin*)
+      # FIXME - insert some real tests, host_os isn't really good enough
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
       AC_MSG_RESULT([yes])
-    else
+      ;;
+    freebsd*)
+      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
+        old_striplib="$STRIP --strip-debug"
+        striplib="$STRIP --strip-unneeded"
+        AC_MSG_RESULT([yes])
+      else
+        AC_MSG_RESULT([no])
+      fi
+      ;;
+    *)
       AC_MSG_RESULT([no])
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-  esac
+      ;;
+    esac
+  fi
 fi
 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
 _LT_DECL([], [striplib], [1])
@@ -2549,7 +2569,7 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
 m4_if([$1], [],[
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
       ;;
@@ -2559,14 +2579,14 @@ m4_if([$1], [],[
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
     ;;
 
-  *,cl*)
-    # Native MSVC
+  *,cl* | *,icl*)
+    # Native MSVC or ICC
     libname_spec='$name'
     soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
     library_names_spec='$libname.dll.lib'
@@ -2585,7 +2605,7 @@ m4_if([$1], [],[
       done
       IFS=$lt_save_ifs
       # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
       ;;
     cygwin*)
       # Convert to unix form, then to dos form, then back to unix form
@@ -2622,7 +2642,7 @@ m4_if([$1], [],[
     ;;
 
   *)
-    # Assume MSVC wrapper
+    # Assume MSVC and ICC wrapper
     library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
@@ -2655,7 +2675,7 @@ dgux*)
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
   if test -x /usr/bin/objformat; then
@@ -3457,7 +3477,7 @@ beos*)
 
 bsdi[[45]]*)
   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  lt_cv_file_magic_cmd='$FILECMD -L'
   lt_cv_file_magic_test_file=/shlib/libc.so
   ;;
 
@@ -3491,14 +3511,14 @@ darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     case $host_cpu in
     i*86 )
       # Not sure whether the presence of OpenBSD here was a mistake.
       # Let's accept both of them until this is cleared up.
       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
+      lt_cv_file_magic_cmd=$FILECMD
       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
       ;;
     esac
@@ -3512,7 +3532,7 @@ haiku*)
   ;;
 
 hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   case $host_cpu in
   ia64*)
     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
@@ -3559,7 +3579,7 @@ netbsd*)
 
 newos6*)
   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   lt_cv_file_magic_test_file=/usr/lib/libnls.so
   ;;
 
@@ -3686,13 +3706,13 @@ else
        mingw*) lt_bad_file=conftest.nm/nofile ;;
        *) lt_bad_file=/dev/null ;;
        esac
-       case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+       case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
        *$lt_bad_file* | *'Invalid file or object type'*)
          lt_cv_path_NM="$tmp_nm -B"
          break 2
          ;;
        *)
-         case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+         case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
          */dev/null*)
            lt_cv_path_NM="$tmp_nm -p"
            break 2
@@ -3718,7 +3738,7 @@ else
     # Let the user override the test.
   else
     AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
-    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
     *COFF*)
       DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
@@ -3958,7 +3978,7 @@ esac
 
 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
   # Gets list of data symbols to import.
-  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
   # Adjust the below global symbol transforms to fixup imported variables.
   lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
   lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
@@ -3976,20 +3996,20 @@ fi
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
 $lt_cdecl_hook\
 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
 $lt_c_name_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
 
 # Transform an extracted symbol line into symbol name with lib prefix and
 # symbol address.
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
 $lt_c_name_lib_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
@@ -4013,7 +4033,7 @@ for ac_symprfx in "" "_"; do
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
     # Fake it for dumpbin and say T for any non-static function,
     # D for any global variable and I for any imported variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
+    # Also find C++ and __fastcall symbols from MSVC++ or ICC,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK ['"\
 "     {last_section=section; section=\$ 3};"\
@@ -4031,9 +4051,9 @@ for ac_symprfx in "" "_"; do
 "     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx]"
   else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[    ]]\($symcode$symcode*\)[[       ]][[    ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[   ]]\($symcode$symcode*\)[[       ]][[    ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
   fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
+  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
 
   # Check to see that the pipe works correctly.
   pipe_works=no
@@ -4320,7 +4340,7 @@ m4_if([$1], [CXX], [
            ;;
        esac
        ;;
-      freebsd* | dragonfly*)
+      freebsd* | dragonfly* | midnightbsd*)
        # FreeBSD uses GNU C++
        ;;
       hpux9* | hpux10* | hpux11*)
@@ -4403,7 +4423,7 @@ m4_if([$1], [CXX], [
            _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
            ;;
          *)
-           case `$CC -V 2>&1 | sed 5q` in
+           case `$CC -V 2>&1 | $SED 5q` in
            *Sun\ C*)
              # Sun C++ 5.9
              _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
@@ -4739,7 +4759,7 @@ m4_if([$1], [CXX], [
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
        ;;
       *)
-       case `$CC -V 2>&1 | sed 5q` in
+       case `$CC -V 2>&1 | $SED 5q` in
        *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
          # Sun Fortran 8.3 passes all unrecognized flags to the linker
          _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
@@ -4922,7 +4942,7 @@ m4_if([$1], [CXX], [
     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
       _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
     else
-      _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+      _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
     fi
     ;;
   pw32*)
@@ -4930,7 +4950,7 @@ m4_if([$1], [CXX], [
     ;;
   cygwin* | mingw* | cegcc*)
     case $cc_basename in
-    cl*)
+    cl* | icl*)
       _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
       ;;
     *)
@@ -4987,15 +5007,15 @@ dnl Note also adjust exclude_expsyms for C++ above.
 
   case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
+    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
+    # Microsoft Visual C++ or Intel C++ Compiler.
     if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
   interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
+    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
     with_gnu_ld=yes
     ;;
   openbsd* | bitrig*)
@@ -5047,7 +5067,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
       _LT_TAGVAR(whole_archive_flag_spec, $1)=
     fi
     supports_anon_versioning=no
-    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
+    case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -5159,6 +5179,7 @@ _LT_EOF
        emximp -o $lib $output_objdir/$libname.def'
       _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+      _LT_TAGVAR(file_list_spec, $1)='@'
       ;;
 
     interix[[3-9]]*)
@@ -5173,7 +5194,7 @@ _LT_EOF
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
@@ -5216,7 +5237,7 @@ _LT_EOF
          _LT_TAGVAR(compiler_needs_object, $1)=yes
          ;;
        esac
-       case `$CC -V 2>&1 | sed 5q` in
+       case `$CC -V 2>&1 | $SED 5q` in
        *Sun\ C*)                       # Sun C 5.9
          _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          _LT_TAGVAR(compiler_needs_object, $1)=yes
@@ -5228,7 +5249,7 @@ _LT_EOF
 
         if test yes = "$supports_anon_versioning"; then
           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
             echo "local: *; };" >> $output_objdir/$libname.ver~
             $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
@@ -5244,7 +5265,7 @@ _LT_EOF
          _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
          if test yes = "$supports_anon_versioning"; then
            _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
               echo "local: *; };" >> $output_objdir/$libname.ver~
               $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
          fi
@@ -5376,7 +5397,7 @@ _LT_EOF
        if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
          _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
        else
-         _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+         _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
        fi
        aix_use_runtimelinking=no
 
@@ -5559,12 +5580,12 @@ _LT_EOF
 
     cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
+      # Microsoft Visual C++ or Intel C++ Compiler.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
       # no search path for DLLs.
       case $cc_basename in
-      cl*)
-       # Native MSVC
+      cl* | icl*)
+       # Native MSVC or ICC
        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
        _LT_TAGVAR(always_export_symbols, $1)=yes
@@ -5605,7 +5626,7 @@ _LT_EOF
           fi'
        ;;
       *)
-       # Assume MSVC wrapper
+       # Assume MSVC and ICC wrapper
        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
        # Tell ltmain to make .lib files, not .a files.
@@ -5653,7 +5674,7 @@ _LT_EOF
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
+    freebsd* | dragonfly* | midnightbsd*)
       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
       _LT_TAGVAR(hardcode_direct, $1)=yes
@@ -5864,6 +5885,7 @@ _LT_EOF
        emximp -o $lib $output_objdir/$libname.def'
       _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+      _LT_TAGVAR(file_list_spec, $1)='@'
       ;;
 
     osf3*)
@@ -6634,8 +6656,8 @@ if test yes != "$_lt_caught_CXX_error"; then
 
       cygwin* | mingw* | pw32* | cegcc*)
        case $GXX,$cc_basename in
-       ,cl* | no,cl*)
-         # Native MSVC
+       ,cl* | no,cl* | ,icl* | no,icl*)
+         # Native MSVC or ICC
          # hardcode_libdir_flag_spec is actually meaningless, as there is
          # no search path for DLLs.
          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
@@ -6733,6 +6755,7 @@ if test yes != "$_lt_caught_CXX_error"; then
          emximp -o $lib $output_objdir/$libname.def'
        _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+       _LT_TAGVAR(file_list_spec, $1)='@'
        ;;
 
       dgux*)
@@ -6763,7 +6786,7 @@ if test yes != "$_lt_caught_CXX_error"; then
         _LT_TAGVAR(archive_cmds_need_lc, $1)=no
         ;;
 
-      freebsd* | dragonfly*)
+      freebsd* | dragonfly* | midnightbsd*)
         # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
         # conventions
         _LT_TAGVAR(ld_shlibs, $1)=yes
@@ -6900,7 +6923,7 @@ if test yes != "$_lt_caught_CXX_error"; then
        # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
        # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
        ;;
       irix5* | irix6*)
         case $cc_basename in
@@ -7040,13 +7063,13 @@ if test yes != "$_lt_caught_CXX_error"; then
            _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
            if test yes = "$supports_anon_versioning"; then
              _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
                 echo "local: *; };" >> $output_objdir/$libname.ver~
                 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
            fi
            ;;
          *)
-           case `$CC -V 2>&1 | sed 5q` in
+           case `$CC -V 2>&1 | $SED 5q` in
            *Sun\ C*)
              # Sun C++ 5.9
              _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
@@ -8192,6 +8215,14 @@ _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
 AC_SUBST([DLLTOOL])
 ])
 
+# _LT_DECL_FILECMD
+# ----------------
+# Check for a file(cmd) program that can be used to detect file type and magic
+m4_defun([_LT_DECL_FILECMD],
+[AC_CHECK_TOOL([FILECMD], [file], [:])
+_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
+])# _LD_DECL_FILECMD
+
 # _LT_DECL_SED
 # ------------
 # Check for a fully-functional sed program, that truncates
index fa04b52..b155d0a 100644 (file)
@@ -1,6 +1,7 @@
 # ltversion.m4 -- version numbers                      -*- Autoconf -*-
 #
-#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
+#   Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
+#   Inc.
 #   Written by Scott James Remnant, 2004
 #
 # This file is free software; the Free Software Foundation gives
 
 # @configure_input@
 
-# serial 4179 ltversion.m4
+# serial 4245 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.4.6])
-m4_define([LT_PACKAGE_REVISION], [2.4.6])
+m4_define([LT_PACKAGE_VERSION], [2.4.7])
+m4_define([LT_PACKAGE_REVISION], [2.4.7])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4.6'
-macro_revision='2.4.6'
+[macro_version='2.4.7'
+macro_revision='2.4.7'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])
diff --git a/meson-cc-tests/flexible-array-member-test.c b/meson-cc-tests/flexible-array-member-test.c
new file mode 100644 (file)
index 0000000..5f96756
--- /dev/null
@@ -0,0 +1,14 @@
+#include <stdlib.h>
+#include <stdio.h>
+#include <stddef.h>
+
+struct s { int n; double d[]; };
+
+int main(void)
+{
+  int m = getchar ();
+  struct s *p = malloc (offsetof (struct s, d)
+                        + m * sizeof (double));
+  p->d[0] = 0.0;
+  return p->d != (double *) NULL;
+}
diff --git a/meson-cc-tests/gperf.txt b/meson-cc-tests/gperf.txt
new file mode 100644 (file)
index 0000000..47929ee
--- /dev/null
@@ -0,0 +1 @@
+foo,bar
diff --git a/meson-cc-tests/intel-atomic-primitives-test.c b/meson-cc-tests/intel-atomic-primitives-test.c
new file mode 100644 (file)
index 0000000..a5c8040
--- /dev/null
@@ -0,0 +1,6 @@
+void memory_barrier (void) { __sync_synchronize (); }
+int atomic_add (int *i) { return __sync_fetch_and_add (i, 1); }
+int mutex_trylock (int *m) { return __sync_lock_test_and_set (m, 1); }
+void mutex_unlock (int *m) { __sync_lock_release (m); }
+
+int main(void) { return 0;}
diff --git a/meson-cc-tests/solaris-atomic-operations.c b/meson-cc-tests/solaris-atomic-operations.c
new file mode 100644 (file)
index 0000000..fae0acd
--- /dev/null
@@ -0,0 +1,8 @@
+#include <atomic.h>
+/* This requires Solaris Studio 12.2 or newer: */
+#include <mbarrier.h>
+void memory_barrier (void) { __machine_rw_barrier (); }
+int atomic_add (volatile unsigned *i) { return atomic_add_int_nv (i, 1); }
+void *atomic_ptr_cmpxchg (volatile void **target, void *cmp, void *newval) { return atomic_cas_ptr (target, cmp, newval); }
+
+int main(void) { return 0; }
diff --git a/meson-cc-tests/stdatomic-primitives-test.c b/meson-cc-tests/stdatomic-primitives-test.c
new file mode 100644 (file)
index 0000000..6d11d34
--- /dev/null
@@ -0,0 +1,8 @@
+#include <stdatomic.h>
+
+void memory_barrier (void) { atomic_thread_fence (memory_order_acq_rel); }
+int atomic_add (atomic_int *i) { return atomic_fetch_add_explicit (i, 1, memory_order_relaxed); }
+int mutex_trylock (atomic_flag *m) { return atomic_flag_test_and_set_explicit (m, memory_order_acquire); }
+void mutex_unlock (atomic_flag *m) { atomic_flag_clear_explicit (m, memory_order_release); }
+
+int main(void) { return 0;}
diff --git a/meson.build b/meson.build
new file mode 100644 (file)
index 0000000..a415d39
--- /dev/null
@@ -0,0 +1,460 @@
+project('fontconfig', 'c',
+  version: '2.14.2',
+  meson_version : '>= 0.57.0',
+  default_options: [ 'buildtype=debugoptimized'],
+)
+
+fc_version = meson.project_version()
+version_arr = fc_version.split('.')
+fc_version_major = version_arr[0].to_int()
+fc_version_minor = version_arr[1].to_int()
+fc_version_micro = version_arr[2].to_int()
+
+# Try and maintain compatibility with the previous libtool versioning
+# (this is a bit of a hack, but it should work fine for our case where
+# API is added, in which case LT_AGE and LIBT_CURRENT are both increased)
+soversion = fc_version_major - 1
+curversion = fc_version_minor - 1
+libversion = '@0@.@1@.0'.format(soversion, curversion)
+defversion = '@0@.@1@'.format(curversion, fc_version_micro)
+osxversion = curversion + 1
+
+freetype_req = '>= 21.0.15'
+freetype_req_cmake = '>= 2.8.1'
+
+cc = meson.get_compiler('c')
+
+
+freetype_dep = dependency('freetype2', method: 'pkg-config', version: freetype_req, required: false)
+
+# Give another shot using CMake
+if not freetype_dep.found()
+  freetype_dep = dependency('freetype', method: 'cmake', version: freetype_req_cmake,
+    fallback: ['freetype2', 'freetype_dep'], default_options: 'werror=false')
+endif
+
+# Linking expat should not be so difficult... see: https://github.com/mesonbuild/meson/issues/10516
+expat_dep = dependency('expat', required: false)
+if not expat_dep.found()
+  expat_dep = cc.find_library('expat', required : false)
+  if not expat_dep.found()
+    expat_dep = dependency('expat', method: 'system', fallback: ['expat', 'expat_dep'])
+  endif
+endif
+
+i18n = import('i18n')
+pkgmod = import('pkgconfig')
+python3 = import('python').find_installation()
+
+check_headers = [
+  ['dirent.h'],
+  ['fcntl.h'],
+  ['stdlib.h'],
+  ['string.h'],
+  ['unistd.h'],
+  ['sys/statvfs.h'],
+  ['sys/vfs.h'],
+  ['sys/statfs.h'],
+  ['sys/param.h'],
+  ['sys/mount.h'],
+]
+
+check_funcs = [
+  ['link'],
+  ['mkstemp'],
+  ['mkostemp'],
+  ['_mktemp_s'],
+  ['mkdtemp'],
+  ['getopt'],
+  ['getopt_long'],
+  ['getprogname'],
+  ['getexecname'],
+  ['rand'],
+  ['random'],
+  ['lrand48'],
+  ['random_r'],
+  ['rand_r'],
+  ['readlink'],
+  ['fstatvfs'],
+  ['fstatfs'],
+  ['lstat'],
+  ['mmap'],
+  ['vprintf'],
+]
+
+check_freetype_funcs = [
+  ['FT_Get_BDF_Property', {'dependencies': freetype_dep}],
+  ['FT_Get_PS_Font_Info', {'dependencies': freetype_dep}],
+  ['FT_Has_PS_Glyph_Names', {'dependencies': freetype_dep}],
+  ['FT_Get_X11_Font_Format', {'dependencies': freetype_dep}],
+  ['FT_Done_MM_Var', {'dependencies': freetype_dep}],
+]
+
+check_header_symbols = [
+  ['posix_fadvise', 'fcntl.h']
+]
+
+check_struct_members = [
+  ['struct statvfs', 'f_basetype', ['sys/statvfs.h']],
+  ['struct statvfs', 'f_fstypename', ['sys/statvfs.']],
+  ['struct statfs', 'f_flags', []],
+  ['struct statfs', 'f_fstypename', []],
+  ['struct dirent', 'd_type', ['sys/types.h', 'dirent.h']],
+]
+
+check_sizeofs = [
+  ['void *', {'conf-name': 'SIZEOF_VOID_P'}],
+]
+
+check_alignofs = [
+  ['void *', {'conf-name': 'ALIGNOF_VOID_P'}],
+  ['double'],
+]
+
+add_project_arguments('-DHAVE_CONFIG_H', language: 'c')
+
+c_args = []
+
+conf = configuration_data()
+deps = [freetype_dep, expat_dep]
+incbase = include_directories('.')
+
+# We cannot try compiling against an internal dependency
+if freetype_dep.type_name() == 'internal'
+  foreach func: check_freetype_funcs
+    name = func[0]
+    conf.set('HAVE_@0@'.format(name.to_upper()), 1)
+  endforeach
+else
+  check_funcs += check_freetype_funcs
+endif
+
+foreach check : check_headers
+  name = check[0]
+
+  if cc.has_header(name)
+    conf.set('HAVE_@0@'.format(name.to_upper().underscorify()), 1)
+  endif
+endforeach
+
+foreach check : check_funcs
+  name = check[0]
+  opts = check.length() > 1 ? check[1] : {}
+  extra_deps = opts.get('dependencies', [])
+
+  if cc.has_function(name, dependencies: extra_deps)
+    conf.set('HAVE_@0@'.format(name.to_upper()), 1)
+  endif
+endforeach
+
+foreach check : check_header_symbols
+  name = check[0]
+  header = check[1]
+
+  if cc.has_header_symbol(header, name)
+    conf.set('HAVE_@0@'.format(name.to_upper()), 1)
+  endif
+endforeach
+
+foreach check : check_struct_members
+  struct_name = check[0]
+  member_name = check[1]
+  headers = check[2]
+
+  prefix = ''
+
+  foreach header : headers
+    prefix += '#include <@0@>\n'.format(header)
+  endforeach
+
+  if cc.has_member(struct_name, member_name, prefix: prefix)
+    conf.set('HAVE_@0@_@1@'.format(struct_name, member_name).to_upper().underscorify(), 1)
+  endif
+endforeach
+
+foreach check : check_sizeofs
+  type = check[0]
+  opts = check.length() > 1 ? check[1] : {}
+
+  conf_name = opts.get('conf-name', 'SIZEOF_@0@'.format(type.to_upper()))
+
+  conf.set(conf_name, cc.sizeof(type))
+endforeach
+
+foreach check : check_alignofs
+  type = check[0]
+  opts = check.length() > 1 ? check[1] : {}
+
+  conf_name = opts.get('conf-name', 'ALIGNOF_@0@'.format(type.to_upper()))
+
+  conf.set(conf_name, cc.alignment(type))
+endforeach
+
+if cc.compiles(files('meson-cc-tests/flexible-array-member-test.c'))
+  conf.set('FLEXIBLE_ARRAY_MEMBER', true)
+else
+  conf.set('FLEXIBLE_ARRAY_MEMBER', 1)
+endif
+
+if cc.links(files('meson-cc-tests/stdatomic-primitives-test.c'), name: 'stdatomic.h atomics')
+  conf.set('HAVE_STDATOMIC_PRIMITIVES', 1)
+endif
+
+if cc.links(files('meson-cc-tests/intel-atomic-primitives-test.c'), name: 'Intel atomics')
+  conf.set('HAVE_INTEL_ATOMIC_PRIMITIVES', 1)
+endif
+
+if cc.links(files('meson-cc-tests/solaris-atomic-operations.c'), name: 'Solaris atomic ops')
+  conf.set('HAVE_SOLARIS_ATOMIC_OPS', 1)
+endif
+
+
+prefix = get_option('prefix')
+
+fonts_conf = configuration_data()
+
+default_fonts_dirs = get_option('default-fonts-dirs')
+if default_fonts_dirs == ['yes']
+  if host_machine.system() == 'windows'
+    fc_fonts_paths = ['WINDOWSFONTDIR', 'WINDOWSUSERFONTDIR']
+  elif host_machine.system() == 'darwin'
+    fc_fonts_paths = ['/System/Library/Fonts', '/Library/Fonts', '~/Library/Fonts', '/System/Library/Assets/com_apple_MobileAsset_Font3', '/System/Library/Assets/com_apple_MobileAsset_Font4']
+  else
+    fc_fonts_paths = ['/usr/share/fonts', '/usr/local/share/fonts']
+  endif
+else
+  fc_fonts_paths = default_fonts_dirs
+endif
+xml_path = ''
+escaped_xml_path = ''
+foreach p : fc_fonts_paths
+  s = '\t<dir>' + p + '</dir>\n'
+  xml_path += s
+  # No substitution method for string
+  s = '\\t<dir>' + p + '</dir>\\n'
+  escaped_xml_path += s
+endforeach
+conf.set_quoted('FC_DEFAULT_FONTS', escaped_xml_path)
+fonts_conf.set('FC_DEFAULT_FONTS', xml_path)
+
+# Add more fonts if available.  By default, add only the directories
+# with outline fonts; those with bitmaps can be added as desired in
+# local.conf or ~/.fonts.conf
+fc_add_fonts = []
+additional_fonts_dirs = get_option('additional-fonts-dirs')
+if additional_fonts_dirs == ['yes']
+  fs = import('fs')
+  foreach dir : ['/usr/X11R6/lib/X11', '/usr/X11/lib/X11', '/usr/lib/X11']
+    if fs.is_dir(dir / 'fonts')
+      fc_add_fonts += [dir / 'fonts']
+    endif
+  endforeach
+elif additional_fonts_dirs == ['no']
+  # nothing to do
+else
+  fc_add_fonts = additional_fonts_dirs
+endif
+xml_path = ''
+escaped_xml_path = ''
+foreach p : fc_add_fonts
+  s = '\t<dir>' + p + '</dir>\n'
+  xml_path += s
+  # No substitution method for string
+  s = '\\t<dir>' + p + '</dir>\\n'
+  escaped_xml_path += s
+endforeach
+conf.set_quoted('FC_FONTPATH', escaped_xml_path)
+fonts_conf.set('FC_FONTPATH', xml_path)
+
+fc_cachedir = get_option('cache-dir')
+if fc_cachedir in ['yes', 'no', 'default']
+  if host_machine.system() == 'windows'
+    fc_cachedir = 'LOCAL_APPDATA_FONTCONFIG_CACHE'
+  else
+    fc_cachedir = join_paths(prefix, get_option('localstatedir'), 'cache', meson.project_name())
+  endif
+endif
+
+if host_machine.system() != 'windows'
+  thread_dep = dependency('threads')
+  conf.set('HAVE_PTHREAD', 1)
+  deps += [thread_dep]
+endif
+
+fc_templatedir = get_option('template-dir')
+if fc_templatedir in ['default', 'yes', 'no']
+  fc_templatedir = prefix / get_option('datadir') / 'fontconfig/conf.avail'
+endif
+
+fc_baseconfigdir = get_option('baseconfig-dir')
+if fc_baseconfigdir in ['default', 'yes', 'no']
+fc_baseconfigdir = prefix / get_option('sysconfdir') / 'fonts'
+endif
+
+fc_configdir = get_option('config-dir')
+if fc_configdir in ['default', 'yes', 'no']
+  fc_configdir = fc_baseconfigdir / 'conf.d'
+endif
+
+fc_xmldir = get_option('xml-dir')
+if fc_xmldir in ['default', 'yes', 'no']
+  fc_xmldir = prefix / get_option('datadir') / 'xml/fontconfig'
+endif
+
+conf.set_quoted('CONFIGDIR', fc_configdir)
+conf.set_quoted('FC_CACHEDIR', fc_cachedir)
+conf.set_quoted('FC_TEMPLATEDIR', fc_templatedir)
+conf.set_quoted('FONTCONFIG_PATH', fc_baseconfigdir)
+conf.set_quoted('FC_FONTPATH', '')
+
+fonts_conf.set('FC_FONTPATH', '')
+fonts_conf.set('FC_CACHEDIR', fc_cachedir)
+fonts_conf.set('CONFIGDIR', fc_configdir)
+# strip off fc_baseconfigdir prefix if that is the prefix
+if fc_configdir.startswith(fc_baseconfigdir + '/')
+  fonts_conf.set('CONFIGDIR', fc_configdir.split(fc_baseconfigdir + '/')[1])
+endif
+
+gperf = find_program('gperf', required: false)
+gperf_len_type = ''
+
+if gperf.found()
+  gperf_test_format = '''
+  #include <string.h>
+  const char * in_word_set(const char *, @0@);
+  @1@
+  '''
+  gperf_snippet = run_command(gperf, '-L', 'ANSI-C', files('meson-cc-tests/gperf.txt'),
+    check: true).stdout()
+
+  foreach type : ['size_t', 'unsigned']
+    if cc.compiles(gperf_test_format.format(type, gperf_snippet))
+      gperf_len_type = type
+      break
+    endif
+  endforeach
+
+  if gperf_len_type == ''
+    error('unable to determine gperf len type')
+  endif
+else
+  # Fallback to subproject
+  gperf = find_program('gperf')
+  # assume if we are compiling from the wrap, the size is just size_t
+  gperf_len_type = 'size_t'
+endif
+
+message('gperf len type is @0@'.format(gperf_len_type))
+
+conf.set('FC_GPERF_SIZE_T', gperf_len_type,
+  description : 'The type of gperf "len" parameter')
+
+conf.set('_GNU_SOURCE', true)
+
+conf.set_quoted('GETTEXT_PACKAGE', meson.project_name())
+
+incsrc = include_directories('src')
+
+# We assume stdint.h is available
+foreach t : ['uint64_t', 'int32_t', 'uintptr_t', 'intptr_t']
+  if not cc.has_type(t, prefix: '#include <stdint.h>')
+    error('Sanity check failed: type @0@ not provided via stdint.h'.format(t))
+  endif
+endforeach
+
+fcstdint_h = configure_file(
+  input: 'src/fcstdint.h.in',
+  output: 'fcstdint.h',
+  copy: true)
+
+makealias = files('src/makealias.py')[0]
+
+alias_headers = custom_target('alias_headers',
+  output: ['fcalias.h', 'fcaliastail.h'],
+  input: ['fontconfig/fontconfig.h', 'src/fcdeprecate.h', 'fontconfig/fcprivate.h'],
+  command: [python3, makealias, join_paths(meson.current_source_dir(), 'src'), '@OUTPUT@', '@INPUT@'],
+)
+
+ft_alias_headers = custom_target('ft_alias_headers',
+  output: ['fcftalias.h', 'fcftaliastail.h'],
+  input: ['fontconfig/fcfreetype.h'],
+  command: [python3, makealias, join_paths(meson.current_source_dir(), 'src'), '@OUTPUT@', '@INPUT@']
+)
+
+tools_man_pages = []
+
+# Do not reorder
+subdir('fc-case')
+subdir('fc-lang')
+subdir('src')
+
+if not get_option('tools').disabled()
+  subdir('fc-cache')
+  subdir('fc-cat')
+  subdir('fc-conflist')
+  subdir('fc-list')
+  subdir('fc-match')
+  subdir('fc-pattern')
+  subdir('fc-query')
+  subdir('fc-scan')
+  subdir('fc-validate')
+endif
+
+if not get_option('tests').disabled()
+  subdir('test')
+endif
+
+subdir('conf.d')
+subdir('its')
+
+# xgettext is optional (on Windows for instance)
+if find_program('xgettext', required : get_option('nls')).found()
+  subdir('po')
+  subdir('po-conf')
+endif
+
+if not get_option('doc').disabled()
+  subdir('doc')
+endif
+
+configure_file(output: 'config.h', configuration: conf)
+
+configure_file(output: 'fonts.conf',
+  input: 'fonts.conf.in',
+  configuration: fonts_conf,
+  install_dir: fc_baseconfigdir,
+  install: true)
+
+install_data('fonts.dtd',
+  install_dir: join_paths(get_option('prefix'), get_option('datadir'), 'xml/fontconfig')
+)
+
+fc_headers = [
+  'fontconfig/fontconfig.h',
+  'fontconfig/fcfreetype.h',
+  'fontconfig/fcprivate.h',
+]
+
+install_headers(fc_headers, subdir: meson.project_name())
+
+# Summary
+doc_targets = get_variable('doc_targets', [])
+
+summary({
+       'Documentation': (doc_targets.length() > 0 ? doc_targets : false),
+       'NLS': not get_option('nls').disabled(),
+       'Tests': not get_option('tests').disabled(),
+       'Tools': not get_option('tools').disabled(),
+       }, section: 'General', bool_yn: true, list_sep: ', ')
+summary({
+       'Hinting': preferred_hinting,
+       'Font directories': fc_fonts_paths,
+       'Additional font directories': fc_add_fonts,
+       }, section: 'Defaults', bool_yn: true, list_sep: ', ')
+summary({
+       'Cache directory': fc_cachedir,
+       'Template directory': fc_templatedir,
+       'Base config directory': fc_baseconfigdir,
+       'Config directory': fc_configdir,
+       'XML directory': fc_xmldir,
+       }, section: 'Paths', bool_yn: true, list_sep: ', ')
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644 (file)
index 0000000..43c8764
--- /dev/null
@@ -0,0 +1,44 @@
+# Common feature options
+option('doc', type : 'feature', value : 'auto', yield: true,
+  description: 'Build documentation')
+option('doc-txt', type: 'feature', value: 'auto')
+option('doc-man', type: 'feature', value: 'auto')
+option('doc-pdf', type: 'feature', value: 'auto')
+option('doc-html', type: 'feature', value: 'auto')
+option('nls', type : 'feature', value : 'auto', yield: true,
+  description : 'Enable native language support (translations)')
+option('tests', type : 'feature', value : 'auto', yield : true,
+  description: 'Enable unit tests')
+option('tools', type : 'feature', value : 'auto', yield : true,
+  description: 'Build command-line tools (fc-list, fc-query, etc.)')
+option('cache-build', type : 'feature', value : 'enabled',
+  description: 'Run fc-cache on install')
+
+# Defaults
+option('default-hinting', type: 'combo', choices: ['none', 'slight', 'medium', 'full'], value: 'slight',
+  description: 'Preferred hinting configuration')
+
+option('default-sub-pixel-rendering', type: 'combo', choices: ['none', 'bgr', 'rgb', 'vbgr', 'vrgb'], value: 'none',
+  description: 'Preferred sub-pixel rendering configuration')
+
+option('default-fonts-dirs', type: 'array', value: ['yes'],
+  description: 'Use fonts from DIR1,DIR2,... when config is busted (set to "yes" for generic system-specific defaults)')
+
+option('additional-fonts-dirs', type: 'array', value: ['yes'],
+  description: 'Find additional fonts in DIR1,DIR2,... (set to "yes" for generic system-specific defaults)')
+
+# Configuration paths
+option('cache-dir', type: 'string', value: 'default',
+  description: 'Use DIR to store cache files (default=LOCALSTATEDIR/cache/fontconfig)')
+
+option('template-dir', type: 'string', value: 'default',
+  description: 'Use DIR to store the configuration template files (default=DATADIR/fontconfig/conf.avail)')
+
+option('baseconfig-dir', type: 'string', value: 'default',
+  description: 'Use DIR to store the base configuration files (default=SYSCONFDIR/fonts)')
+
+option('config-dir', type: 'string', value: 'default',
+  description: 'Use DIR to store active configuration files (default=BASECONFIGDIR/conf.d)')
+
+option('xml-dir', type: 'string', value: 'default',
+  description: 'Use DIR to store XML schema files (default=DATADIR/xml/fontconfig)')
index 0d5d97c..53b48dd 100644 (file)
@@ -1,2 +1,3 @@
 # Please keep this list sorted alphabetically.
+ka
 zh_CN
index 38c293d..8f34f00 100644 (file)
@@ -6,7 +6,7 @@
 # notice and this notice are preserved.  This file is offered as-is,
 # without any warranty.
 #
-# Origin: gettext-0.19.8
+# Origin: gettext-0.19.7
 GETTEXT_MACRO_VERSION = 0.19
 
 PACKAGE = @PACKAGE@
index abbd220..8d57a45 100644 (file)
@@ -41,7 +41,7 @@ PACKAGE_GNU = no
 # It can be your email address, or a mailing list address where translators
 # can write to without being subscribed, or the URL of a web page through
 # which the translators can contact you.
-MSGID_BUGS_ADDRESS = https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig
+MSGID_BUGS_ADDRESS = https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new
 
 # This is the list of locale categories, beyond LC_MESSAGES, for which the
 # message catalogs shall be used.  It is usually empty.
index f4846ac..ad7de5c 100644 (file)
@@ -1,15 +1,18 @@
+conf.d/09-autohint-if-no-hinting.conf
 conf.d/10-autohint.conf
 conf.d/10-hinting-full.conf
 conf.d/10-hinting-medium.conf
 conf.d/10-hinting-none.conf
 conf.d/10-hinting-slight.conf
-conf.d/10-no-sub-pixel.conf
+conf.d/10-no-antialias.conf
 conf.d/10-scale-bitmap-fonts.conf
 conf.d/10-sub-pixel-bgr.conf
+conf.d/10-sub-pixel-none.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/10-yes-antialias.conf
 conf.d/11-lcdfilter-default.conf
 conf.d/11-lcdfilter-legacy.conf
 conf.d/11-lcdfilter-light.conf
@@ -19,6 +22,7 @@ conf.d/30-metric-aliases.conf
 conf.d/40-nonlatin.conf
 conf.d/45-generic.conf
 conf.d/45-latin.conf
+conf.d/48-spacing.conf
 conf.d/49-sansserif.conf
 conf.d/50-user.conf
 conf.d/51-local.conf
index 9cfdd11..0339031 100644 (file)
@@ -6,10 +6,10 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: fontconfig 2.13.1\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?"
-"product=fontconfig\n"
-"POT-Creation-Date: 2018-08-30 08:06+0000\n"
+"Project-Id-Version: fontconfig 2.14.2\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,119 +18,135 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: conf.d/10-autohint.conf:8
+#: conf.d/09-autohint-if-no-hinting.conf:4
+msgid "Enable autohinter if font doesn't have any hinting"
+msgstr ""
+
+#: conf.d/10-autohint.conf:4
 msgid "Enable autohinter"
 msgstr ""
 
-#: conf.d/10-hinting-full.conf:8
+#: conf.d/10-hinting-full.conf:4
 msgid "Set hintfull to hintstyle"
 msgstr ""
 
-#: conf.d/10-hinting-medium.conf:8
+#: conf.d/10-hinting-medium.conf:4
 msgid "Set hintmedium to hintstyle"
 msgstr ""
 
-#: conf.d/10-hinting-none.conf:8
+#: conf.d/10-hinting-none.conf:4
 msgid "Set hintnone to hintstyle"
 msgstr ""
 
-#: conf.d/10-hinting-slight.conf:8
+#: conf.d/10-hinting-slight.conf:4
 msgid "Set hintslight to hintstyle"
 msgstr ""
 
-#: conf.d/10-no-sub-pixel.conf:8
-msgid "Disable sub-pixel rendering"
+#: conf.d/10-no-antialias.conf:4
+msgid "Disable antialiasing"
 msgstr ""
 
-#: conf.d/10-scale-bitmap-fonts.conf:8
+#: conf.d/10-scale-bitmap-fonts.conf:4
 msgid "Bitmap scaling"
 msgstr ""
 
-#: conf.d/10-sub-pixel-bgr.conf:8
+#: conf.d/10-sub-pixel-bgr.conf:4
 msgid "Enable sub-pixel rendering with the BGR stripes layout"
 msgstr ""
 
-#: conf.d/10-sub-pixel-rgb.conf:8
+#: conf.d/10-sub-pixel-none.conf:4
+msgid "Disable sub-pixel rendering"
+msgstr ""
+
+#: conf.d/10-sub-pixel-rgb.conf:4
 msgid "Enable sub-pixel rendering with the RGB stripes layout"
 msgstr ""
 
-#: conf.d/10-sub-pixel-vbgr.conf:8
+#: conf.d/10-sub-pixel-vbgr.conf:4
 msgid "Enable sub-pixel rendering with the vertical BGR stripes layout"
 msgstr ""
 
-#: conf.d/10-sub-pixel-vrgb.conf:8
+#: conf.d/10-sub-pixel-vrgb.conf:4
 msgid "Enable sub-pixel rendering with the vertical RGB stripes layout"
 msgstr ""
 
-#: conf.d/10-unhinted.conf:8
+#: conf.d/10-unhinted.conf:4
 msgid "Disable hinting"
 msgstr ""
 
-#: conf.d/11-lcdfilter-default.conf:8
+#: conf.d/10-yes-antialias.conf:4
+msgid "Enable antialiasing"
+msgstr ""
+
+#: conf.d/11-lcdfilter-default.conf:4
 msgid "Use lcddefault as default for LCD filter"
 msgstr ""
 
-#: conf.d/11-lcdfilter-legacy.conf:8
+#: conf.d/11-lcdfilter-legacy.conf:4
 msgid "Use lcdlegacy as default for LCD filter"
 msgstr ""
 
-#: conf.d/11-lcdfilter-light.conf:8
+#: conf.d/11-lcdfilter-light.conf:4
 msgid "Use lcdlight as default for LCD filter"
 msgstr ""
 
-#: conf.d/20-unhint-small-vera.conf:8
+#: conf.d/20-unhint-small-vera.conf:4
 msgid ""
 "Disable hinting for Bitstream Vera fonts when the size is less than 8ppem"
 msgstr ""
 
-#: conf.d/25-unhint-nonlatin.conf:8
+#: conf.d/25-unhint-nonlatin.conf:4
 msgid "Disable hinting for CJK fonts"
 msgstr ""
 
-#: conf.d/30-metric-aliases.conf:8
+#: conf.d/30-metric-aliases.conf:4
 msgid "Set substitutions for similar/metric-compatible families"
 msgstr ""
 
-#: conf.d/40-nonlatin.conf:8
+#: conf.d/40-nonlatin.conf:4
 msgid "Set substitutions for non-Latin fonts"
 msgstr ""
 
-#: conf.d/45-generic.conf:8
+#: conf.d/45-generic.conf:4
 msgid "Set substitutions for emoji/math fonts"
 msgstr ""
 
-#: conf.d/45-latin.conf:8
+#: conf.d/45-latin.conf:4
 msgid "Set substitutions for Latin fonts"
 msgstr ""
 
-#: conf.d/49-sansserif.conf:8
+#: conf.d/48-spacing.conf:4
+msgid "Add mono to the family when spacing is 100"
+msgstr ""
+
+#: conf.d/49-sansserif.conf:4
 msgid "Add sans-serif to the family when no generic name"
 msgstr ""
 
-#: conf.d/50-user.conf:8
+#: conf.d/50-user.conf:4
 msgid "Load per-user customization files"
 msgstr ""
 
-#: conf.d/51-local.conf:8
+#: conf.d/51-local.conf:4
 msgid "Load local customization file"
 msgstr ""
 
-#: conf.d/60-generic.conf:8
+#: conf.d/60-generic.conf:4
 msgid "Set preferable fonts for emoji/math fonts"
 msgstr ""
 
-#: conf.d/60-latin.conf:8
+#: conf.d/60-latin.conf:4
 msgid "Set preferable fonts for Latin"
 msgstr ""
 
-#: conf.d/65-nonlatin.conf:8
+#: conf.d/65-nonlatin.conf:4
 msgid "Set preferable fonts for non-Latin"
 msgstr ""
 
-#: conf.d/70-no-bitmaps.conf:8
+#: conf.d/70-no-bitmaps.conf:4
 msgid "Reject bitmap fonts"
 msgstr ""
 
-#: conf.d/70-yes-bitmaps.conf:8
+#: conf.d/70-yes-bitmaps.conf:4
 msgid "Accept bitmap fonts"
 msgstr ""
diff --git a/po-conf/ka.gmo b/po-conf/ka.gmo
new file mode 100644 (file)
index 0000000..91571aa
Binary files /dev/null and b/po-conf/ka.gmo differ
diff --git a/po-conf/ka.po b/po-conf/ka.po
new file mode 100644 (file)
index 0000000..f21f89b
--- /dev/null
@@ -0,0 +1,158 @@
+# fontconfig-conf translation to Georgian.
+# Copyright (C) 2022 Fontconfig Author(s)
+# This file is distributed under the same license as the fontconfig package.
+# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2022.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: fontconfig 2.14.0\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
+"PO-Revision-Date: 2022-10-01 11:01+0200\n"
+"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
+"Language-Team: Georgian <(nothing)>\n"
+"Language: ka\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 3.1.1\n"
+
+#: conf.d/09-autohint-if-no-hinting.conf:4
+msgid "Enable autohinter if font doesn't have any hinting"
+msgstr ""
+
+#: conf.d/10-autohint.conf:4
+msgid "Enable autohinter"
+msgstr "autohinter-ის ჩართვა"
+
+#: conf.d/10-hinting-full.conf:4
+msgid "Set hintfull to hintstyle"
+msgstr "hintstyle-ის hintfull -ზე დაყენება"
+
+#: conf.d/10-hinting-medium.conf:4
+msgid "Set hintmedium to hintstyle"
+msgstr "hintstyle-ის hintmedium-ზე დაყენება"
+
+#: conf.d/10-hinting-none.conf:4
+msgid "Set hintnone to hintstyle"
+msgstr "hintstyle-ის hintnone-ზე დაყენება"
+
+#: conf.d/10-hinting-slight.conf:4
+msgid "Set hintslight to hintstyle"
+msgstr "hintstyle-ის hintslight-ზე დაყენება"
+
+#: conf.d/10-no-antialias.conf:4
+#, fuzzy
+msgid "Disable antialiasing"
+msgstr "მომრგვალების გამორთვა"
+
+#: conf.d/10-scale-bitmap-fonts.conf:4
+msgid "Bitmap scaling"
+msgstr "ბიტური რუკის მასშტაბირება"
+
+#: conf.d/10-sub-pixel-bgr.conf:4
+msgid "Enable sub-pixel rendering with the BGR stripes layout"
+msgstr "ქვეპიქსელების რენდერის ჩართვა BGR ზოლების განლაგებით"
+
+#: conf.d/10-sub-pixel-none.conf:4
+msgid "Disable sub-pixel rendering"
+msgstr "ქვეპიქსელის რენდერის გამორთვა"
+
+#: conf.d/10-sub-pixel-rgb.conf:4
+msgid "Enable sub-pixel rendering with the RGB stripes layout"
+msgstr "ქვეპიქსელების რენდერის ჩართვა RGB ზოლების განლაგებით"
+
+#: conf.d/10-sub-pixel-vbgr.conf:4
+msgid "Enable sub-pixel rendering with the vertical BGR stripes layout"
+msgstr "ქვეპიქსელების რენდერის ჩართვა ვერტიკალური BGR ზოლების განლაგებით"
+
+#: conf.d/10-sub-pixel-vrgb.conf:4
+msgid "Enable sub-pixel rendering with the vertical RGB stripes layout"
+msgstr "ქვეპიქსელების რენდერის ჩართვა ვერტიკალური RGB ზოლების განლაგებით"
+
+#: conf.d/10-unhinted.conf:4
+msgid "Disable hinting"
+msgstr "მომრგვალების გამორთვა"
+
+#: conf.d/10-yes-antialias.conf:4
+#, fuzzy
+msgid "Enable antialiasing"
+msgstr "autohinter-ის ჩართვა"
+
+#: conf.d/11-lcdfilter-default.conf:4
+msgid "Use lcddefault as default for LCD filter"
+msgstr "ნაგულისხმებ LCD ფილტრად lcddefault -ის გამოყენება"
+
+#: conf.d/11-lcdfilter-legacy.conf:4
+msgid "Use lcdlegacy as default for LCD filter"
+msgstr "ნაგულისხმებ LCD ფილტრად lcdlegacy -ის გამოყენება"
+
+#: conf.d/11-lcdfilter-light.conf:4
+msgid "Use lcdlight as default for LCD filter"
+msgstr "ნაგულისხმებ LCD ფილტრად lcdlight -ის გამოყენება"
+
+#: conf.d/20-unhint-small-vera.conf:4
+msgid ""
+"Disable hinting for Bitstream Vera fonts when the size is less than 8ppem"
+msgstr ""
+"მომრგვალების გამორთვა Bitsream Vera-ის ფონტებისთვის, როცა ზომა 8ppem-ზე "
+"მცირეა"
+
+#: conf.d/25-unhint-nonlatin.conf:4
+msgid "Disable hinting for CJK fonts"
+msgstr "CJK ფონტების მომრგვალების გამორთვა"
+
+#: conf.d/30-metric-aliases.conf:4
+msgid "Set substitutions for similar/metric-compatible families"
+msgstr "მსგავსი/მეტრულთან-თავსებადი ოჯახების ჩანაცვლებების დაყენება"
+
+#: conf.d/40-nonlatin.conf:4
+msgid "Set substitutions for non-Latin fonts"
+msgstr "არა-Latn ფონტების ჩანაცვლებების დაყენება"
+
+#: conf.d/45-generic.conf:4
+msgid "Set substitutions for emoji/math fonts"
+msgstr "ემოჯი/მათემატიკური ფონტების ჩანაცვლებების დაყენება"
+
+#: conf.d/45-latin.conf:4
+msgid "Set substitutions for Latin fonts"
+msgstr "Latin ფონტების ჩამნაცვლებლების დაყენება"
+
+#: conf.d/48-spacing.conf:4
+#, fuzzy
+msgid "Add mono to the family when spacing is 100"
+msgstr "როცა ზოგადი სახელი არ არსებობს, ოჯახისთვის sans-serif-ის დამატება"
+
+#: conf.d/49-sansserif.conf:4
+msgid "Add sans-serif to the family when no generic name"
+msgstr "როცა ზოგადი სახელი არ არსებობს, ოჯახისთვის sans-serif-ის დამატება"
+
+#: conf.d/50-user.conf:4
+msgid "Load per-user customization files"
+msgstr "მომხმარებლების საკუთარი კონფიგურაციის ფაილების ჩატვირთვა"
+
+#: conf.d/51-local.conf:4
+msgid "Load local customization file"
+msgstr "ლოკალური კონფიგურაციის ფაილის ჩაატვირთვა"
+
+#: conf.d/60-generic.conf:4
+msgid "Set preferable fonts for emoji/math fonts"
+msgstr "ემოჯი/მათემატიკური ფონტებისთვის უმჯობესი ფონტების დაყენება"
+
+#: conf.d/60-latin.conf:4
+msgid "Set preferable fonts for Latin"
+msgstr "Latin-სთვის უმჯობესი ფონტების დაყენება"
+
+#: conf.d/65-nonlatin.conf:4
+msgid "Set preferable fonts for non-Latin"
+msgstr "არა-Latin-სთვის უმჯობესი ფონტების დაყენება"
+
+#: conf.d/70-no-bitmaps.conf:4
+msgid "Reject bitmap fonts"
+msgstr "ბიტური რუკების ფონტების უარყოფა"
+
+#: conf.d/70-yes-bitmaps.conf:4
+msgid "Accept bitmap fonts"
+msgstr "ბიტური რუკების ფონტების მიღება"
diff --git a/po-conf/meson.build b/po-conf/meson.build
new file mode 100644 (file)
index 0000000..5c2a39e
--- /dev/null
@@ -0,0 +1,3 @@
+i18n.gettext(meson.project_name(),
+    args: '--directory=' + meson.project_source_root()
+)
index 2f7dbb9..b7433da 100644 (file)
Binary files a/po-conf/zh_CN.gmo and b/po-conf/zh_CN.gmo differ
index f94f17a..a7e7c26 100644 (file)
@@ -9,9 +9,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: fontconfig 2.12.92\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?"
-"product=fontconfig\n"
-"POT-Creation-Date: 2018-08-30 08:06+0000\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
 "PO-Revision-Date: 2018-02-16 01:19-0600\n"
 "Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
 "Language-Team: AOSC\n"
@@ -22,119 +22,138 @@ msgstr ""
 "X-Generator: Poedit 2.0.5\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
-#: conf.d/10-autohint.conf:8
+#: conf.d/09-autohint-if-no-hinting.conf:4
+msgid "Enable autohinter if font doesn't have any hinting"
+msgstr ""
+
+#: conf.d/10-autohint.conf:4
 msgid "Enable autohinter"
 msgstr "启用自动微调"
 
-#: conf.d/10-hinting-full.conf:8
+#: conf.d/10-hinting-full.conf:4
 msgid "Set hintfull to hintstyle"
 msgstr "设置微调风格为“完全 (hintfull)”"
 
-#: conf.d/10-hinting-medium.conf:8
+#: conf.d/10-hinting-medium.conf:4
 msgid "Set hintmedium to hintstyle"
 msgstr "设置微调风格为“中等 (hintmedium)”"
 
-#: conf.d/10-hinting-none.conf:8
+#: conf.d/10-hinting-none.conf:4
 msgid "Set hintnone to hintstyle"
 msgstr "设置微调风格为“无 (hintnone)”"
 
-#: conf.d/10-hinting-slight.conf:8
+#: conf.d/10-hinting-slight.conf:4
 msgid "Set hintslight to hintstyle"
 msgstr "设置微调风格为“轻微 (hintslight)”"
 
-#: conf.d/10-no-sub-pixel.conf:8
-msgid "Disable sub-pixel rendering"
-msgstr "禁用次像素渲染"
+#: conf.d/10-no-antialias.conf:4
+#, fuzzy
+msgid "Disable antialiasing"
+msgstr "禁用微调"
 
-#: conf.d/10-scale-bitmap-fonts.conf:8
+#: conf.d/10-scale-bitmap-fonts.conf:4
 msgid "Bitmap scaling"
 msgstr "位图缩放"
 
-#: conf.d/10-sub-pixel-bgr.conf:8
+#: conf.d/10-sub-pixel-bgr.conf:4
 msgid "Enable sub-pixel rendering with the BGR stripes layout"
 msgstr "启用蓝绿红 (BGR) 像素布局的次像素渲染"
 
-#: conf.d/10-sub-pixel-rgb.conf:8
+#: conf.d/10-sub-pixel-none.conf:4
+msgid "Disable sub-pixel rendering"
+msgstr "禁用次像素渲染"
+
+#: conf.d/10-sub-pixel-rgb.conf:4
 msgid "Enable sub-pixel rendering with the RGB stripes layout"
 msgstr "启用红绿蓝 (RGB) 像素布局的次像素渲染"
 
-#: conf.d/10-sub-pixel-vbgr.conf:8
+#: conf.d/10-sub-pixel-vbgr.conf:4
 msgid "Enable sub-pixel rendering with the vertical BGR stripes layout"
 msgstr "启用垂直蓝绿红 (BGR) 像素布局的次像素渲染"
 
-#: conf.d/10-sub-pixel-vrgb.conf:8
+#: conf.d/10-sub-pixel-vrgb.conf:4
 msgid "Enable sub-pixel rendering with the vertical RGB stripes layout"
 msgstr "启用垂直红绿蓝 (RGB) 像素布局的次像素渲染"
 
-#: conf.d/10-unhinted.conf:8
+#: conf.d/10-unhinted.conf:4
 msgid "Disable hinting"
 msgstr "禁用微调"
 
-#: conf.d/11-lcdfilter-default.conf:8
+#: conf.d/10-yes-antialias.conf:4
+#, fuzzy
+msgid "Enable antialiasing"
+msgstr "启用自动微调"
+
+#: conf.d/11-lcdfilter-default.conf:4
 msgid "Use lcddefault as default for LCD filter"
 msgstr "将 lcddefault 设为默认 LCD 滤镜"
 
-#: conf.d/11-lcdfilter-legacy.conf:8
+#: conf.d/11-lcdfilter-legacy.conf:4
 msgid "Use lcdlegacy as default for LCD filter"
 msgstr "将 lcdlegacy 设为默认 LCD 滤镜"
 
-#: conf.d/11-lcdfilter-light.conf:8
+#: conf.d/11-lcdfilter-light.conf:4
 msgid "Use lcdlight as default for LCD filter"
 msgstr "将 lcdlight 设为默认 LCD 滤镜"
 
-#: conf.d/20-unhint-small-vera.conf:8
+#: conf.d/20-unhint-small-vera.conf:4
 msgid ""
 "Disable hinting for Bitstream Vera fonts when the size is less than 8ppem"
 msgstr "为大小小于 8ppem 的 Bitstream Vera 字体禁用微调"
 
-#: conf.d/25-unhint-nonlatin.conf:8
+#: conf.d/25-unhint-nonlatin.conf:4
 msgid "Disable hinting for CJK fonts"
 msgstr "为中日韩 (CJK) 字体禁用微调"
 
-#: conf.d/30-metric-aliases.conf:8
+#: conf.d/30-metric-aliases.conf:4
 msgid "Set substitutions for similar/metric-compatible families"
 msgstr "为相似或规格兼容的字体家族设置替换"
 
-#: conf.d/40-nonlatin.conf:8
+#: conf.d/40-nonlatin.conf:4
 msgid "Set substitutions for non-Latin fonts"
 msgstr "为非拉丁语言字体设置替换"
 
-#: conf.d/45-generic.conf:8
+#: conf.d/45-generic.conf:4
 msgid "Set substitutions for emoji/math fonts"
 msgstr "为绘文字 (Emoji) 或数学字体设置替换"
 
-#: conf.d/45-latin.conf:8
+#: conf.d/45-latin.conf:4
 msgid "Set substitutions for Latin fonts"
 msgstr "为拉丁语言字体设置替换"
 
-#: conf.d/49-sansserif.conf:8
+#: conf.d/48-spacing.conf:4
+#, fuzzy
+msgid "Add mono to the family when spacing is 100"
+msgstr "在没有通用名称时添加 sans-serif 到字体家族"
+
+#: conf.d/49-sansserif.conf:4
 msgid "Add sans-serif to the family when no generic name"
 msgstr "在没有通用名称时添加 sans-serif 到字体家族"
 
-#: conf.d/50-user.conf:8
+#: conf.d/50-user.conf:4
 msgid "Load per-user customization files"
 msgstr "载入用户自定义文件"
 
-#: conf.d/51-local.conf:8
+#: conf.d/51-local.conf:4
 msgid "Load local customization file"
 msgstr "载入本地自定义文件"
 
-#: conf.d/60-generic.conf:8
+#: conf.d/60-generic.conf:4
 msgid "Set preferable fonts for emoji/math fonts"
 msgstr "设置首选绘文字 (Emoji) 或数学字体"
 
-#: conf.d/60-latin.conf:8
+#: conf.d/60-latin.conf:4
 msgid "Set preferable fonts for Latin"
 msgstr "设置首选拉丁语言字体"
 
-#: conf.d/65-nonlatin.conf:8
+#: conf.d/65-nonlatin.conf:4
 msgid "Set preferable fonts for non-Latin"
 msgstr "设置首选非拉丁语言字体"
 
-#: conf.d/70-no-bitmaps.conf:8
+#: conf.d/70-no-bitmaps.conf:4
 msgid "Reject bitmap fonts"
 msgstr "排除点阵字体"
 
-#: conf.d/70-yes-bitmaps.conf:8
+#: conf.d/70-yes-bitmaps.conf:4
 msgid "Accept bitmap fonts"
 msgstr "接受点阵字体"
index 0d5d97c..53b48dd 100644 (file)
@@ -1,2 +1,3 @@
 # Please keep this list sorted alphabetically.
+ka
 zh_CN
index 38c293d..8f34f00 100644 (file)
@@ -6,7 +6,7 @@
 # notice and this notice are preserved.  This file is offered as-is,
 # without any warranty.
 #
-# Origin: gettext-0.19.8
+# Origin: gettext-0.19.7
 GETTEXT_MACRO_VERSION = 0.19
 
 PACKAGE = @PACKAGE@
index 3283532..047a77e 100644 (file)
@@ -41,7 +41,7 @@ PACKAGE_GNU = no
 # It can be your email address, or a mailing list address where translators
 # can write to without being subscribed, or the URL of a web page through
 # which the translators can contact you.
-MSGID_BUGS_ADDRESS = https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig
+MSGID_BUGS_ADDRESS = https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new
 
 # This is the list of locale categories, beyond LC_MESSAGES, for which the
 # message catalogs shall be used.  It is usually empty.
index 5dd5883..a4f9d3b 100644 (file)
@@ -6,10 +6,10 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: fontconfig 2.13.1\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?"
-"product=fontconfig\n"
-"POT-Creation-Date: 2018-08-30 08:06+0000\n"
+"Project-Id-Version: fontconfig 2.14.2\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,7 +18,7 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: fc-cache/fc-cache.c:99
+#: fc-cache/fc-cache.c:107
 #, c-format
 msgid ""
 "usage: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--really-"
@@ -26,245 +26,245 @@ msgid ""
 "[dirs]\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:102
+#: fc-cache/fc-cache.c:110
 #, c-format
 msgid "usage: %s [-EfrsvVh] [-y SYSROOT] [dirs]\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:105
+#: fc-cache/fc-cache.c:113
 #, c-format
 msgid ""
 "Build font information caches in [dirs]\n"
 "(all directories in font configuration by default).\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:109
+#: fc-cache/fc-cache.c:117
 #, c-format
 msgid "  -E, --error-on-no-fonts  raise an error if no fonts in a directory\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:110
+#: fc-cache/fc-cache.c:118
 #, c-format
 msgid ""
 "  -f, --force              scan directories with apparently valid caches\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:111
+#: fc-cache/fc-cache.c:119
 #, c-format
 msgid "  -r, --really-force       erase all existing caches, then rescan\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:112
+#: fc-cache/fc-cache.c:120
 #, c-format
 msgid "  -s, --system-only        scan system-wide directories only\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:113
+#: fc-cache/fc-cache.c:121
 #, c-format
 msgid "  -y, --sysroot=SYSROOT    prepend SYSROOT to all paths for scanning\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:114
+#: fc-cache/fc-cache.c:122
 #, c-format
 msgid "  -v, --verbose            display status information while busy\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:115
+#: fc-cache/fc-cache.c:123
 #, c-format
 msgid "  -V, --version            display font config version and exit\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:116
+#: fc-cache/fc-cache.c:124
 #, c-format
 msgid "  -h, --help               display this help and exit\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:118
+#: fc-cache/fc-cache.c:126
 #, c-format
 msgid "  -E         (error-on-no-fonts)\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:119
+#: fc-cache/fc-cache.c:127
 #, c-format
 msgid "                       raise an error if no fonts in a directory\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:120
+#: fc-cache/fc-cache.c:128
 #, c-format
 msgid "  -f         (force)   scan directories with apparently valid caches\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:121
+#: fc-cache/fc-cache.c:129
 #, c-format
 msgid "  -r,   (really force) erase all existing caches, then rescan\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:122
+#: fc-cache/fc-cache.c:130
 #, c-format
 msgid "  -s         (system)  scan system-wide directories only\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:123
+#: fc-cache/fc-cache.c:131
 #, c-format
 msgid "  -y SYSROOT (sysroot) prepend SYSROOT to all paths for scanning\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:124
+#: fc-cache/fc-cache.c:132
 #, c-format
 msgid "  -v         (verbose) display status information while busy\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:125 fc-cat/fc-cat.c:179 fc-list/fc-list.c:100
-#: fc-match/fc-match.c:104 fc-pattern/fc-pattern.c:98
+#: fc-cache/fc-cache.c:133 fc-cat/fc-cat.c:181 fc-list/fc-list.c:103
+#: fc-match/fc-match.c:107 fc-pattern/fc-pattern.c:101
 #, c-format
 msgid "  -V         (version) display font config version and exit\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:126 fc-cat/fc-cat.c:180 fc-list/fc-list.c:101
-#: fc-match/fc-match.c:105 fc-pattern/fc-pattern.c:99
+#: fc-cache/fc-cache.c:134 fc-cat/fc-cat.c:182 fc-list/fc-list.c:104
+#: fc-match/fc-match.c:108 fc-pattern/fc-pattern.c:102
 #, c-format
 msgid "  -h         (help)    display this help and exit\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:163
+#: fc-cache/fc-cache.c:171
 #, c-format
 msgid "skipping, looped directory detected\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:173
+#: fc-cache/fc-cache.c:190
 #, c-format
 msgid "skipping, no such directory\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:186
+#: fc-cache/fc-cache.c:208
 #, c-format
 msgid "\"%s\": not a directory, skipping\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:211
+#: fc-cache/fc-cache.c:232
 #, c-format
 msgid "\"%s\": scanning error\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:220
+#: fc-cache/fc-cache.c:241
 #, c-format
 msgid "skipping, existing cache is valid: %d fonts, %d dirs\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:226
+#: fc-cache/fc-cache.c:247
 #, c-format
 msgid "caching, new cache contents: %d fonts, %d dirs\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:231
+#: fc-cache/fc-cache.c:252
 #, c-format
 msgid "%s: failed to write cache\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:240
+#: fc-cache/fc-cache.c:261
 #, c-format
 msgid "%s: Can't create subdir set\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:254
+#: fc-cache/fc-cache.c:275
 #, c-format
 msgid "%s: Can't create subdir list\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:361 fc-cat/fc-cat.c:307
+#: fc-cache/fc-cache.c:383 fc-cat/fc-cat.c:309
 #, c-format
 msgid "%s: Can't initialize font config library\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:371
+#: fc-cache/fc-cache.c:393
 #, c-format
 msgid "%s: Can't create list of directories\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:379
+#: fc-cache/fc-cache.c:401
 #, c-format
 msgid "%s: Can't add directory\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:391
+#: fc-cache/fc-cache.c:413
 #, c-format
 msgid "Out of Memory\n"
 msgstr ""
 
-#: fc-cache/fc-cache.c:423
+#: fc-cache/fc-cache.c:456
 msgid "failed"
 msgstr ""
 
-#: fc-cache/fc-cache.c:423
+#: fc-cache/fc-cache.c:456
 msgid "succeeded"
 msgstr ""
 
-#: fc-cat/fc-cat.c:160
+#: fc-cat/fc-cat.c:162
 #, c-format
 msgid "usage: %s [-rv] [--recurse] [--verbose] [*-%s"
 msgstr ""
 
-#: fc-cat/fc-cat.c:164
+#: fc-cat/fc-cat.c:166
 #, c-format
 msgid "usage: %s [-rvVh] [*-%s"
 msgstr ""
 
-#: fc-cat/fc-cat.c:167
+#: fc-cat/fc-cat.c:169
 #, c-format
 msgid "Reads font information cache from:\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:168
+#: fc-cat/fc-cat.c:170
 #, c-format
 msgid " 1) specified fontconfig cache file\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:169
+#: fc-cat/fc-cat.c:171
 #, c-format
 msgid " 2) related to a particular font directory\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:172
+#: fc-cat/fc-cat.c:174
 #, c-format
 msgid "  -r, --recurse        recurse into subdirectories\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:173
+#: fc-cat/fc-cat.c:175
 #, c-format
 msgid "  -v, --verbose        be verbose\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:174 fc-conflist/fc-conflist.c:88 fc-list/fc-list.c:93
-#: fc-match/fc-match.c:96 fc-pattern/fc-pattern.c:92 fc-query/fc-query.c:95
-#: fc-scan/fc-scan.c:93 fc-validate/fc-validate.c:95
+#: fc-cat/fc-cat.c:176 fc-conflist/fc-conflist.c:90 fc-list/fc-list.c:96
+#: fc-match/fc-match.c:99 fc-pattern/fc-pattern.c:95 fc-query/fc-query.c:98
+#: fc-validate/fc-validate.c:98
 #, c-format
 msgid "  -V, --version        display font config version and exit\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:175 fc-conflist/fc-conflist.c:89 fc-list/fc-list.c:94
-#: fc-match/fc-match.c:97 fc-pattern/fc-pattern.c:93 fc-query/fc-query.c:96
-#: fc-scan/fc-scan.c:94 fc-validate/fc-validate.c:96
+#: fc-cat/fc-cat.c:177 fc-conflist/fc-conflist.c:91 fc-list/fc-list.c:97
+#: fc-match/fc-match.c:100 fc-pattern/fc-pattern.c:96 fc-query/fc-query.c:99
+#: fc-validate/fc-validate.c:99
 #, c-format
 msgid "  -h, --help           display this help and exit\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:177
+#: fc-cat/fc-cat.c:179
 #, c-format
 msgid "  -r         (recurse) recurse into subdirectories\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:178
+#: fc-cat/fc-cat.c:180
 #, c-format
 msgid "  -v         (verbose) be verbose\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:316 fc-cat/fc-cat.c:325 fc-cat/fc-cat.c:337
-#: fc-cat/fc-cat.c:345
+#: fc-cat/fc-cat.c:318 fc-cat/fc-cat.c:327 fc-cat/fc-cat.c:339
+#: fc-cat/fc-cat.c:347
 #, c-format
 msgid "%s: malloc failure\n"
 msgstr ""
 
-#: fc-cat/fc-cat.c:385
+#: fc-cat/fc-cat.c:387
 #, c-format
 msgid ""
 "Directory: %s\n"
@@ -272,310 +272,341 @@ msgid ""
 "--------\n"
 msgstr ""
 
-#: fc-conflist/fc-conflist.c:79
+#: fc-conflist/fc-conflist.c:81
 #, c-format
 msgid "usage: %s [-Vh] [--version] [--help]\n"
 msgstr ""
 
-#: fc-conflist/fc-conflist.c:82
+#: fc-conflist/fc-conflist.c:84
 #, c-format
 msgid "usage: %s [-Vh]\n"
 msgstr ""
 
-#: fc-conflist/fc-conflist.c:85
+#: fc-conflist/fc-conflist.c:87
 #, c-format
 msgid "Show the ruleset files information on the system\n"
 msgstr ""
 
-#: fc-conflist/fc-conflist.c:91 fc-validate/fc-validate.c:101
+#: fc-conflist/fc-conflist.c:93 fc-validate/fc-validate.c:104
 #, c-format
 msgid "  -V         (version)      display font config version and exit\n"
 msgstr ""
 
-#: fc-conflist/fc-conflist.c:92 fc-validate/fc-validate.c:102
+#: fc-conflist/fc-conflist.c:94 fc-validate/fc-validate.c:105
 #, c-format
 msgid "  -h         (help)         display this help and exit\n"
 msgstr ""
 
-#: fc-list/fc-list.c:80
+#: fc-list/fc-list.c:83
 #, c-format
 msgid ""
 "usage: %s [-vbqVh] [-f FORMAT] [--verbose] [--brief] [--format=FORMAT] [--"
 "quiet] [--version] [--help] [pattern] {element ...} \n"
 msgstr ""
 
-#: fc-list/fc-list.c:83
+#: fc-list/fc-list.c:86
 #, c-format
 msgid "usage: %s [-vbqVh] [-f FORMAT] [pattern] {element ...} \n"
 msgstr ""
 
-#: fc-list/fc-list.c:86
+#: fc-list/fc-list.c:89
 #, c-format
 msgid "List fonts matching [pattern]\n"
 msgstr ""
 
-#: fc-list/fc-list.c:89 fc-match/fc-match.c:93
+#: fc-list/fc-list.c:92 fc-match/fc-match.c:96
 #, c-format
 msgid "  -v, --verbose        display entire font pattern verbosely\n"
 msgstr ""
 
-#: fc-list/fc-list.c:90 fc-match/fc-match.c:94
+#: fc-list/fc-list.c:93 fc-match/fc-match.c:97
 #, c-format
 msgid "  -b, --brief          display entire font pattern briefly\n"
 msgstr ""
 
-#: fc-list/fc-list.c:91 fc-match/fc-match.c:95 fc-pattern/fc-pattern.c:91
-#: fc-query/fc-query.c:94 fc-scan/fc-scan.c:92
+#: fc-list/fc-list.c:94 fc-match/fc-match.c:98 fc-pattern/fc-pattern.c:94
+#: fc-query/fc-query.c:97
 #, c-format
 msgid "  -f, --format=FORMAT  use the given output format\n"
 msgstr ""
 
-#: fc-list/fc-list.c:92
+#: fc-list/fc-list.c:95
 #, c-format
 msgid ""
 "  -q, --quiet          suppress all normal output, exit 1 if no fonts "
 "matched\n"
 msgstr ""
 
-#: fc-list/fc-list.c:96 fc-match/fc-match.c:101
+#: fc-list/fc-list.c:99 fc-match/fc-match.c:104
 #, c-format
 msgid "  -v         (verbose) display entire font pattern verbosely\n"
 msgstr ""
 
-#: fc-list/fc-list.c:97 fc-match/fc-match.c:102
+#: fc-list/fc-list.c:100 fc-match/fc-match.c:105
 #, c-format
 msgid "  -b         (brief)   display entire font pattern briefly\n"
 msgstr ""
 
-#: fc-list/fc-list.c:98 fc-match/fc-match.c:103 fc-pattern/fc-pattern.c:97
+#: fc-list/fc-list.c:101 fc-match/fc-match.c:106 fc-pattern/fc-pattern.c:100
 #, c-format
 msgid "  -f FORMAT  (format)  use the given output format\n"
 msgstr ""
 
-#: fc-list/fc-list.c:99
+#: fc-list/fc-list.c:102
 #, c-format
 msgid ""
 "  -q,        (quiet)   suppress all normal output, exit 1 if no fonts "
 "matched\n"
 msgstr ""
 
-#: fc-list/fc-list.c:161 fc-match/fc-match.c:168 fc-pattern/fc-pattern.c:152
+#: fc-list/fc-list.c:164 fc-match/fc-match.c:172 fc-pattern/fc-pattern.c:155
 #, c-format
 msgid "Unable to parse the pattern\n"
 msgstr ""
 
-#: fc-match/fc-match.c:82
+#: fc-match/fc-match.c:85
 #, c-format
 msgid ""
 "usage: %s [-savbVh] [-f FORMAT] [--sort] [--all] [--verbose] [--brief] [--"
 "format=FORMAT] [--version] [--help] [pattern] {element...}\n"
 msgstr ""
 
-#: fc-match/fc-match.c:85
+#: fc-match/fc-match.c:88
 #, c-format
 msgid "usage: %s [-savVh] [-f FORMAT] [pattern] {element...}\n"
 msgstr ""
 
-#: fc-match/fc-match.c:88 fc-pattern/fc-pattern.c:86
+#: fc-match/fc-match.c:91 fc-pattern/fc-pattern.c:89
 #, c-format
 msgid "List best font matching [pattern]\n"
 msgstr ""
 
-#: fc-match/fc-match.c:91
+#: fc-match/fc-match.c:94
 #, c-format
 msgid "  -s, --sort           display sorted list of matches\n"
 msgstr ""
 
-#: fc-match/fc-match.c:92
+#: fc-match/fc-match.c:95
 #, c-format
 msgid "  -a, --all            display unpruned sorted list of matches\n"
 msgstr ""
 
-#: fc-match/fc-match.c:99
+#: fc-match/fc-match.c:102
 #, c-format
 msgid "  -s,        (sort)    display sorted list of matches\n"
 msgstr ""
 
-#: fc-match/fc-match.c:100
+#: fc-match/fc-match.c:103
 #, c-format
 msgid "  -a         (all)     display unpruned sorted list of matches\n"
 msgstr ""
 
-#: fc-match/fc-match.c:197
+#: fc-match/fc-match.c:201
 #, c-format
 msgid "No fonts installed on the system\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:80
+#: fc-pattern/fc-pattern.c:83
 #, c-format
 msgid ""
 "usage: %s [-cdVh] [-f FORMAT] [--config] [--default] [--verbose] [--"
 "format=FORMAT] [--version] [--help] [pattern] {element...}\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:83
+#: fc-pattern/fc-pattern.c:86
 #, c-format
 msgid "usage: %s [-cdVh] [-f FORMAT] [pattern] {element...}\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:89
+#: fc-pattern/fc-pattern.c:92
 #, c-format
 msgid "  -c, --config         perform config substitution on pattern\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:90
+#: fc-pattern/fc-pattern.c:93
 #, c-format
 msgid "  -d, --default        perform default substitution on pattern\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:95
+#: fc-pattern/fc-pattern.c:98
 #, c-format
 msgid "  -c,        (config)  perform config substitution on pattern\n"
 msgstr ""
 
-#: fc-pattern/fc-pattern.c:96
+#: fc-pattern/fc-pattern.c:99
 #, c-format
 msgid "  -d,        (default) perform default substitution on pattern\n"
 msgstr ""
 
-#: fc-query/fc-query.c:83
+#: fc-query/fc-query.c:86
 #, c-format
 msgid ""
 "usage: %s [-bVh] [-i index] [-f FORMAT] [--index index] [--brief] [--format "
 "FORMAT] [--version] [--help] font-file...\n"
 msgstr ""
 
-#: fc-query/fc-query.c:86
+#: fc-query/fc-query.c:89
 #, c-format
 msgid "usage: %s [-bVh] [-i index] [-f FORMAT] font-file...\n"
 msgstr ""
 
-#: fc-query/fc-query.c:89
+#: fc-query/fc-query.c:92
 #, c-format
 msgid "Query font files and print resulting pattern(s)\n"
 msgstr ""
 
-#: fc-query/fc-query.c:92 fc-validate/fc-validate.c:92
+#: fc-query/fc-query.c:95 fc-validate/fc-validate.c:95
 #, c-format
 msgid "  -i, --index INDEX    display the INDEX face of each font file only\n"
 msgstr ""
 
-#: fc-query/fc-query.c:93 fc-scan/fc-scan.c:91
+#: fc-query/fc-query.c:96
 #, c-format
 msgid "  -b, --brief          display font pattern briefly\n"
 msgstr ""
 
-#: fc-query/fc-query.c:98
+#: fc-query/fc-query.c:101
 #, c-format
 msgid ""
 "  -i INDEX   (index)         display the INDEX face of each font file only\n"
 msgstr ""
 
-#: fc-query/fc-query.c:99 fc-scan/fc-scan.c:96
+#: fc-query/fc-query.c:102 fc-scan/fc-scan.c:101
 #, c-format
 msgid "  -b         (brief)         display font pattern briefly\n"
 msgstr ""
 
-#: fc-query/fc-query.c:100 fc-scan/fc-scan.c:97
+#: fc-query/fc-query.c:103 fc-scan/fc-scan.c:102
 #, c-format
 msgid "  -f FORMAT  (format)        use the given output format\n"
 msgstr ""
 
-#: fc-query/fc-query.c:101 fc-scan/fc-scan.c:98
+#: fc-query/fc-query.c:104 fc-scan/fc-scan.c:104
 #, c-format
 msgid "  -V         (version)       display font config version and exit\n"
 msgstr ""
 
-#: fc-query/fc-query.c:102 fc-scan/fc-scan.c:99
+#: fc-query/fc-query.c:105 fc-scan/fc-scan.c:105
 #, c-format
 msgid "  -h         (help)          display this help and exit\n"
 msgstr ""
 
-#: fc-query/fc-query.c:160
+#: fc-query/fc-query.c:163
 #, c-format
 msgid "Can't query face %u of font file %s\n"
 msgstr ""
 
-#: fc-scan/fc-scan.c:82
+#: fc-scan/fc-scan.c:86
 #, c-format
 msgid ""
-"usage: %s [-bVh] [-f FORMAT] [--brief] [--format FORMAT] [--version] [--"
-"help] font-file...\n"
+"usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] [--brief] [--format FORMAT] [--"
+"version] [--help] font-file...\n"
 msgstr ""
 
-#: fc-scan/fc-scan.c:85
+#: fc-scan/fc-scan.c:89
 #, c-format
-msgid "usage: %s [-bVh] [-f FORMAT] font-file...\n"
+msgid "usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] font-file...\n"
 msgstr ""
 
-#: fc-scan/fc-scan.c:88
+#: fc-scan/fc-scan.c:92
 #, c-format
 msgid "Scan font files and directories, and print resulting pattern(s)\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:83
+#: fc-scan/fc-scan.c:95
+#, c-format
+msgid "  -b, --brief            display font pattern briefly\n"
+msgstr ""
+
+#: fc-scan/fc-scan.c:96
+#, c-format
+msgid "  -f, --format=FORMAT    use the given output format\n"
+msgstr ""
+
+#: fc-scan/fc-scan.c:97
+#, c-format
+msgid "  -y, --sysroot=SYSROOT  prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+
+#: fc-scan/fc-scan.c:98
+#, c-format
+msgid "  -V, --version          display font config version and exit\n"
+msgstr ""
+
+#: fc-scan/fc-scan.c:99
+#, c-format
+msgid "  -h, --help             display this help and exit\n"
+msgstr ""
+
+#: fc-scan/fc-scan.c:103
+#, c-format
+msgid ""
+"  -y SYSROOT (sysroot)       prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+
+#: fc-validate/fc-validate.c:86
 #, c-format
 msgid ""
 "usage: %s [-Vhv] [-i index] [-l LANG] [--index index] [--lang LANG] [--"
 "verbose] [--version] [--help] font-file...\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:86
+#: fc-validate/fc-validate.c:89
 #, c-format
 msgid "usage: %s [-Vhv] [-i index] [-l LANG] font-file...\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:89
+#: fc-validate/fc-validate.c:92
 #, c-format
 msgid "Validate font files and print result\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:93
+#: fc-validate/fc-validate.c:96
 #, c-format
 msgid "  -l, --lang=LANG      set LANG instead of current locale\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:94
+#: fc-validate/fc-validate.c:97
 #, c-format
 msgid "  -v, --verbose        show more detailed information\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:98
+#: fc-validate/fc-validate.c:101
 #, c-format
 msgid ""
 "  -i INDEX   (index)        display the INDEX face of each font file only\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:99
+#: fc-validate/fc-validate.c:102
 #, c-format
 msgid "  -l LANG    (lang)         set LANG instead of current locale\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:100
+#: fc-validate/fc-validate.c:103
 #, c-format
 msgid "  -v         (verbose)      show more detailed information\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:167
+#: fc-validate/fc-validate.c:170
 #, c-format
-msgid "Can't initalize FreeType library\n"
+msgid "Can't initialize FreeType library\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:185
+#: fc-validate/fc-validate.c:188
 #, c-format
 msgid "Unable to open %s\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:200
+#: fc-validate/fc-validate.c:204
 #, c-format
 msgid "%s:%d Missing %d glyph(s) to satisfy the coverage for %s language\n"
 msgstr ""
 
-#: fc-validate/fc-validate.c:230
+#: fc-validate/fc-validate.c:234
 #, c-format
 msgid "%s:%d Satisfy the coverage for %s language\n"
 msgstr ""
 
-#: src/fccfg.c:2701
+#: src/fccfg.c:3251
 msgid "No description"
 msgstr ""
diff --git a/po/ka.gmo b/po/ka.gmo
new file mode 100644 (file)
index 0000000..0183fd2
Binary files /dev/null and b/po/ka.gmo differ
diff --git a/po/ka.po b/po/ka.po
new file mode 100644 (file)
index 0000000..761c519
--- /dev/null
+++ b/po/ka.po
@@ -0,0 +1,659 @@
+# fontconfig translation to Georgian.
+# Copyright (C) 2022 Fontconfig Author(s)
+# This file is distributed under the same license as the fontconfig package.
+# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2022.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: fontconfig 2.14.0\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
+"PO-Revision-Date: 2022-10-01 10:53+0200\n"
+"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
+"Language-Team: Georgian <(none)>\n"
+"Language: ka\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 3.1.1\n"
+
+#: fc-cache/fc-cache.c:107
+#, c-format
+msgid ""
+"usage: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--really-"
+"force] [--sysroot=SYSROOT] [--system-only] [--verbose] [--version] [--help] "
+"[dirs]\n"
+msgstr ""
+"გამოყენება: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--"
+"really-force] [--sysroot=SYSROOT] [--system-only] [--verbose] [--version] [--"
+"help] [საქაღალდეები]\n"
+
+#: fc-cache/fc-cache.c:110
+#, c-format
+msgid "usage: %s [-EfrsvVh] [-y SYSROOT] [dirs]\n"
+msgstr "გამოყენება: %s [-EfrsvVh] [-y SYSROOT] [საქაღალდეები]\n"
+
+#: fc-cache/fc-cache.c:113
+#, c-format
+msgid ""
+"Build font information caches in [dirs]\n"
+"(all directories in font configuration by default).\n"
+msgstr ""
+"საქაღალდეებში ფონტის ინფორმაციის ქეშის აშენება\n"
+"(ნაგულისხმებად - ყველა კონფიგურაციის ფაილში მოხსენებულ საქაღალდეში).\n"
+
+#: fc-cache/fc-cache.c:117
+#, c-format
+msgid "  -E, --error-on-no-fonts  raise an error if no fonts in a directory\n"
+msgstr "  -E, --error-on-no-fonts  შეცდომა, თუ საქაღალდეში ფონტები არაა\n"
+
+#: fc-cache/fc-cache.c:118
+#, c-format
+msgid ""
+"  -f, --force              scan directories with apparently valid caches\n"
+msgstr ""
+"  -f, --force              საქაღალდეების სკანირება იმის მიუხედავად, რომ მათი "
+"ქეში სწორია\n"
+
+#: fc-cache/fc-cache.c:119
+#, c-format
+msgid "  -r, --really-force       erase all existing caches, then rescan\n"
+msgstr "  -r, --really-force       ქეშის წაშლა და თავიდან სკანირება\n"
+
+#: fc-cache/fc-cache.c:120
+#, c-format
+msgid "  -s, --system-only        scan system-wide directories only\n"
+msgstr ""
+"  -s, --system-only        მხოლოდ სისტემისთვის გლობალური საქაღალდეების "
+"სკანირება\n"
+
+#: fc-cache/fc-cache.c:121
+#, c-format
+msgid "  -y, --sysroot=SYSROOT    prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+"  -y, --sysroot=SYSROOT    სკანირებისას ყველა ბილიკისთვის თავში SYSROOT -ის "
+"მიწერა\n"
+
+#: fc-cache/fc-cache.c:122
+#, c-format
+msgid "  -v, --verbose            display status information while busy\n"
+msgstr "  -v, --verbose            მუშაობისას სტატუსის ინფორმაციის გამოტანა\n"
+
+#: fc-cache/fc-cache.c:123
+#, c-format
+msgid "  -V, --version            display font config version and exit\n"
+msgstr "  -V, --version          font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-cache/fc-cache.c:124
+#, c-format
+msgid "  -h, --help               display this help and exit\n"
+msgstr "  -h, --help               ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-cache/fc-cache.c:126
+#, c-format
+msgid "  -E         (error-on-no-fonts)\n"
+msgstr "  -E         (error-on-no-fonts)\n"
+
+#: fc-cache/fc-cache.c:127
+#, c-format
+msgid "                       raise an error if no fonts in a directory\n"
+msgstr "                       შეცდომა, თუ საქაღალდეში ფონტები არაა\n"
+
+#: fc-cache/fc-cache.c:128
+#, c-format
+msgid "  -f         (force)   scan directories with apparently valid caches\n"
+msgstr ""
+"  -f,  (ძალით)              საქაღალდეების სკანირება იმის მიუხედავად, რომ "
+"მათი ქეში სწორია\n"
+
+#: fc-cache/fc-cache.c:129
+#, c-format
+msgid "  -r,   (really force) erase all existing caches, then rescan\n"
+msgstr "  -r (სრულად ძალით      ქეშის წაშლა და თავიდან სკანირება\n"
+
+#: fc-cache/fc-cache.c:130
+#, c-format
+msgid "  -s         (system)  scan system-wide directories only\n"
+msgstr ""
+"  -s    (სისტემური)        მხოლოდ სისტემისთვის გლობალური საქაღალდეების "
+"სკანირება\n"
+
+#: fc-cache/fc-cache.c:131
+#, c-format
+msgid "  -y SYSROOT (sysroot) prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+"  -y SYSROOT (sysroot) სკანირებისას ყველა ბილიკისთვის თავში SYSROOT -ის "
+"მიწერა\n"
+
+#: fc-cache/fc-cache.c:132
+#, c-format
+msgid "  -v         (verbose) display status information while busy\n"
+msgstr "  -v         (verbose) მუშაობისას სტატუსის ინფორმაციის გამოტანა\n"
+
+#: fc-cache/fc-cache.c:133 fc-cat/fc-cat.c:181 fc-list/fc-list.c:103
+#: fc-match/fc-match.c:107 fc-pattern/fc-pattern.c:101
+#, c-format
+msgid "  -V         (version) display font config version and exit\n"
+msgstr "  -V         (version) font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-cache/fc-cache.c:134 fc-cat/fc-cat.c:182 fc-list/fc-list.c:104
+#: fc-match/fc-match.c:108 fc-pattern/fc-pattern.c:102
+#, c-format
+msgid "  -h         (help)    display this help and exit\n"
+msgstr "  -h         (help)    ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-cache/fc-cache.c:171
+#, c-format
+msgid "skipping, looped directory detected\n"
+msgstr "გამოტოვება. აღმოჩენილია საქაღალდეების მარყუჟი\n"
+
+#: fc-cache/fc-cache.c:190
+#, c-format
+msgid "skipping, no such directory\n"
+msgstr "გამოტოვება. საქაღალდე არ არსებობს\n"
+
+#: fc-cache/fc-cache.c:208
+#, c-format
+msgid "\"%s\": not a directory, skipping\n"
+msgstr "\"%s\": საქაღალდეს არ წარმოადგენს. გამოტოვება\n"
+
+#: fc-cache/fc-cache.c:232
+#, c-format
+msgid "\"%s\": scanning error\n"
+msgstr "\"%s\": სკანირების შეცდომა\n"
+
+#: fc-cache/fc-cache.c:241
+#, c-format
+msgid "skipping, existing cache is valid: %d fonts, %d dirs\n"
+msgstr "გამოტოვება. არსებული ქეში სწორია: %d ფონტი, %d საქაღალდე\n"
+
+#: fc-cache/fc-cache.c:247
+#, c-format
+msgid "caching, new cache contents: %d fonts, %d dirs\n"
+msgstr "ქეშირება. ახალი ქეშის შემცველობა: %d ფონტი, %d საქაღალდე\n"
+
+#: fc-cache/fc-cache.c:252
+#, c-format
+msgid "%s: failed to write cache\n"
+msgstr "%s ქეშის ჩაწერის შეცდომა\n"
+
+#: fc-cache/fc-cache.c:261
+#, c-format
+msgid "%s: Can't create subdir set\n"
+msgstr "%s: ქვესაქაღალდეების ნაკრების შექმნის შეცდომა\n"
+
+#: fc-cache/fc-cache.c:275
+#, c-format
+msgid "%s: Can't create subdir list\n"
+msgstr "%s: ქვესაქაღალდეების სიის შექმნის შეცდომა\n"
+
+#: fc-cache/fc-cache.c:383 fc-cat/fc-cat.c:309
+#, c-format
+msgid "%s: Can't initialize font config library\n"
+msgstr "%s: fontconfig-ის ბიბლიოთეკის ინიციალიზაციის შეცდომა\n"
+
+#: fc-cache/fc-cache.c:393
+#, c-format
+msgid "%s: Can't create list of directories\n"
+msgstr "%s: საქაღალდეების სიის შექმნის შეცდომა\n"
+
+#: fc-cache/fc-cache.c:401
+#, c-format
+msgid "%s: Can't add directory\n"
+msgstr "%s: საქაღალდის დამატების შეცდომა\n"
+
+#: fc-cache/fc-cache.c:413
+#, c-format
+msgid "Out of Memory\n"
+msgstr "არასაკმარისი მეხსიერება\n"
+
+#: fc-cache/fc-cache.c:456
+msgid "failed"
+msgstr "შეცდომა"
+
+#: fc-cache/fc-cache.c:456
+msgid "succeeded"
+msgstr "წარმატებული"
+
+#: fc-cat/fc-cat.c:162
+#, c-format
+msgid "usage: %s [-rv] [--recurse] [--verbose] [*-%s"
+msgstr "გამოყენება: %s [-rv] [--recurse] [--verbose] [*-%s"
+
+#: fc-cat/fc-cat.c:166
+#, c-format
+msgid "usage: %s [-rvVh] [*-%s"
+msgstr "გამოყენება: %s [-rvVh] [*-%s"
+
+#: fc-cat/fc-cat.c:169
+#, c-format
+msgid "Reads font information cache from:\n"
+msgstr "ფონტის ფორმაციის ქეში წაიკითხება:\n"
+
+#: fc-cat/fc-cat.c:170
+#, c-format
+msgid " 1) specified fontconfig cache file\n"
+msgstr " 1) მითითებული fontconfig-ის ქეშის ფაილიდან\n"
+
+#: fc-cat/fc-cat.c:171
+#, c-format
+msgid " 2) related to a particular font directory\n"
+msgstr " 2) მითითებული ფონტის საქაღალდიდან\n"
+
+#: fc-cat/fc-cat.c:174
+#, c-format
+msgid "  -r, --recurse        recurse into subdirectories\n"
+msgstr "  -r, --recurse        რეკურსია ქვესაქაღალდეებში\n"
+
+#: fc-cat/fc-cat.c:175
+#, c-format
+msgid "  -v, --verbose        be verbose\n"
+msgstr "  -v, --verbose        მეტი შეტყობინების გამოტანა\n"
+
+#: fc-cat/fc-cat.c:176 fc-conflist/fc-conflist.c:90 fc-list/fc-list.c:96
+#: fc-match/fc-match.c:99 fc-pattern/fc-pattern.c:95 fc-query/fc-query.c:98
+#: fc-validate/fc-validate.c:98
+#, c-format
+msgid "  -V, --version        display font config version and exit\n"
+msgstr "  -V, --version        font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-cat/fc-cat.c:177 fc-conflist/fc-conflist.c:91 fc-list/fc-list.c:97
+#: fc-match/fc-match.c:100 fc-pattern/fc-pattern.c:96 fc-query/fc-query.c:99
+#: fc-validate/fc-validate.c:99
+#, c-format
+msgid "  -h, --help           display this help and exit\n"
+msgstr "  -h, --help           ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-cat/fc-cat.c:179
+#, c-format
+msgid "  -r         (recurse) recurse into subdirectories\n"
+msgstr "  -r        (recurse)        რეკურსია ქვესაქაღალდეებში\n"
+
+#: fc-cat/fc-cat.c:180
+#, c-format
+msgid "  -v         (verbose) be verbose\n"
+msgstr "  -v         (verbose) მეტი შეტყობინების გამოტანა\n"
+
+#: fc-cat/fc-cat.c:318 fc-cat/fc-cat.c:327 fc-cat/fc-cat.c:339
+#: fc-cat/fc-cat.c:347
+#, c-format
+msgid "%s: malloc failure\n"
+msgstr "%s: malloc -ის შეცდომა\n"
+
+#: fc-cat/fc-cat.c:387
+#, c-format
+msgid ""
+"Directory: %s\n"
+"Cache: %s\n"
+"--------\n"
+msgstr ""
+"საქაღალდე: %s\n"
+"ქეში: %s\n"
+"--------\n"
+
+#: fc-conflist/fc-conflist.c:81
+#, c-format
+msgid "usage: %s [-Vh] [--version] [--help]\n"
+msgstr "გამოყენება: %s [-Vh] [--version] [--help]\n"
+
+#: fc-conflist/fc-conflist.c:84
+#, c-format
+msgid "usage: %s [-Vh]\n"
+msgstr "გამოყენება: %s [-Vh]\n"
+
+#: fc-conflist/fc-conflist.c:87
+#, c-format
+msgid "Show the ruleset files information on the system\n"
+msgstr "სისტემაში პოლიტიკის ფაილების ინფორმაციის ჩვენება\n"
+
+#: fc-conflist/fc-conflist.c:93 fc-validate/fc-validate.c:104
+#, c-format
+msgid "  -V         (version)      display font config version and exit\n"
+msgstr ""
+"  -V         (version)      font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-conflist/fc-conflist.c:94 fc-validate/fc-validate.c:105
+#, c-format
+msgid "  -h         (help)         display this help and exit\n"
+msgstr "  -h         (help)         ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-list/fc-list.c:83
+#, c-format
+msgid ""
+"usage: %s [-vbqVh] [-f FORMAT] [--verbose] [--brief] [--format=FORMAT] [--"
+"quiet] [--version] [--help] [pattern] {element ...} \n"
+msgstr ""
+"გამოყენება: %s [-vbqVh] [-f ფორმატი] [--verbose] [--brief] [--format=ფორატი] "
+"[--quiet] [--version] [--help] [pattern] {element ...} \n"
+
+#: fc-list/fc-list.c:86
+#, c-format
+msgid "usage: %s [-vbqVh] [-f FORMAT] [pattern] {element ...} \n"
+msgstr "გამოყენება: %s [-vbqVh] [-f ფორმატი] [შაბლონი] {ელემენტი ...} \n"
+
+#: fc-list/fc-list.c:89
+#, c-format
+msgid "List fonts matching [pattern]\n"
+msgstr "ფონტები, რომლებიც ემთხვევა [შაბლონი]\n"
+
+#: fc-list/fc-list.c:92 fc-match/fc-match.c:96
+#, c-format
+msgid "  -v, --verbose        display entire font pattern verbosely\n"
+msgstr "  -v, --verbose        მთელი ფონტის შაბლონის ჩვენება\n"
+
+#: fc-list/fc-list.c:93 fc-match/fc-match.c:97
+#, c-format
+msgid "  -b, --brief          display entire font pattern briefly\n"
+msgstr "  -b, --brief          მთელი ფონტის შაბლონის მოკლედ ჩვენება\n"
+
+#: fc-list/fc-list.c:94 fc-match/fc-match.c:98 fc-pattern/fc-pattern.c:94
+#: fc-query/fc-query.c:97
+#, c-format
+msgid "  -f, --format=FORMAT  use the given output format\n"
+msgstr "  -f, --format=ფორმატი  მითითებული ფორმატის გამოყენება\n"
+
+#: fc-list/fc-list.c:95
+#, c-format
+msgid ""
+"  -q, --quiet          suppress all normal output, exit 1 if no fonts "
+"matched\n"
+msgstr ""
+"  -q, --quiet          ეკრანზე არაფერი გამოჩნდება. თუ ფონტები არ დაემთხვა, "
+"გამოსვლის კოდი 1-ის ტოლი იქნება\n"
+
+#: fc-list/fc-list.c:99 fc-match/fc-match.c:104
+#, c-format
+msgid "  -v         (verbose) display entire font pattern verbosely\n"
+msgstr "  -v         (verbose) მთელი ფონტის შაბლონის დიდად ჩვენება\n"
+
+#: fc-list/fc-list.c:100 fc-match/fc-match.c:105
+#, c-format
+msgid "  -b         (brief)   display entire font pattern briefly\n"
+msgstr "  -b         (brief)   მთელი ფონტის შაბლონის მოკლედ ჩვენება\n"
+
+#: fc-list/fc-list.c:101 fc-match/fc-match.c:106 fc-pattern/fc-pattern.c:100
+#, c-format
+msgid "  -f FORMAT  (format)  use the given output format\n"
+msgstr "  -f ფორმატი  (format)  მითითებული გამოტანის ფორმატის გამოყენება\n"
+
+#: fc-list/fc-list.c:102
+#, c-format
+msgid ""
+"  -q,        (quiet)   suppress all normal output, exit 1 if no fonts "
+"matched\n"
+msgstr ""
+"  -q,  (quiet)          ეკრანზე არაფერი გამოჩნდება. თუ ფონტები არ დაემთხვა, "
+"გამოსვლის კოდი 1-ის ტოლი იქნება\n"
+
+#: fc-list/fc-list.c:164 fc-match/fc-match.c:172 fc-pattern/fc-pattern.c:155
+#, c-format
+msgid "Unable to parse the pattern\n"
+msgstr "შაბლონის დამუშავების შეცდომა\n"
+
+#: fc-match/fc-match.c:85
+#, c-format
+msgid ""
+"usage: %s [-savbVh] [-f FORMAT] [--sort] [--all] [--verbose] [--brief] [--"
+"format=FORMAT] [--version] [--help] [pattern] {element...}\n"
+msgstr ""
+"გამოყენება: %s [-savbVh] [-f ფორმატი] [--sort] [--all] [--verbose] [--brief] "
+"[--format=ფორმატი] [--version] [--help] [შაბლონი] {ელემენტი...}\n"
+
+#: fc-match/fc-match.c:88
+#, c-format
+msgid "usage: %s [-savVh] [-f FORMAT] [pattern] {element...}\n"
+msgstr "გამოყენება: %s [-savVh] [-f ფორმატი] [შაბლონი] {ელემენტი...}\n"
+
+#: fc-match/fc-match.c:91 fc-pattern/fc-pattern.c:89
+#, c-format
+msgid "List best font matching [pattern]\n"
+msgstr "ფონტების საუკეთესო დამთხვევების სია [შაბლონი]\n"
+
+#: fc-match/fc-match.c:94
+#, c-format
+msgid "  -s, --sort           display sorted list of matches\n"
+msgstr "  -s, --sort           დამთხვევების დალაგებული სიის ჩვენება\n"
+
+#: fc-match/fc-match.c:95
+#, c-format
+msgid "  -a, --all            display unpruned sorted list of matches\n"
+msgstr ""
+"  -a, --all            დამთხვევების წაუკვეთავი დალაგებული სიის ჩვენება\n"
+
+#: fc-match/fc-match.c:102
+#, c-format
+msgid "  -s,        (sort)    display sorted list of matches\n"
+msgstr "  -s,        (sort)    დამთხვევების დალაგებული სიის ჩვენება\n"
+
+#: fc-match/fc-match.c:103
+#, c-format
+msgid "  -a         (all)     display unpruned sorted list of matches\n"
+msgstr ""
+"  -a         (all)     დამთხვევების წაუკვეთავი დალაგებული სიის ჩვენება\n"
+
+#: fc-match/fc-match.c:201
+#, c-format
+msgid "No fonts installed on the system\n"
+msgstr "სისტემაში ფონტები დაყენებული არაა\n"
+
+#: fc-pattern/fc-pattern.c:83
+#, c-format
+msgid ""
+"usage: %s [-cdVh] [-f FORMAT] [--config] [--default] [--verbose] [--"
+"format=FORMAT] [--version] [--help] [pattern] {element...}\n"
+msgstr ""
+"გამოყენება: %s [-cdVh] [-f ფორმატი] [--config] [--default] [--verbose] [--"
+"format=ფორმატი] [--version] [--help] [შაბლონი] {ელემენტი...}\n"
+
+#: fc-pattern/fc-pattern.c:86
+#, c-format
+msgid "usage: %s [-cdVh] [-f FORMAT] [pattern] {element...}\n"
+msgstr "გამოყენება: %s [-cdVh] [-f ფორმატი] [შაბლონი] {ელემენტი...}\n"
+
+#: fc-pattern/fc-pattern.c:92
+#, c-format
+msgid "  -c, --config         perform config substitution on pattern\n"
+msgstr "  -c, --config         შაბლონზე კონფიგურაციის ჩანაცვლების ჩატარება\n"
+
+#: fc-pattern/fc-pattern.c:93
+#, c-format
+msgid "  -d, --default        perform default substitution on pattern\n"
+msgstr "  -d, --default        შაბლონზე ნაგულისხმები ჩანაცვლების ჩატარება\n"
+
+#: fc-pattern/fc-pattern.c:98
+#, c-format
+msgid "  -c,        (config)  perform config substitution on pattern\n"
+msgstr "  -c,        (config)  შაბლონზე კონფიგურაციის ჩანაცვლების ჩატარება\n"
+
+#: fc-pattern/fc-pattern.c:99
+#, c-format
+msgid "  -d,        (default) perform default substitution on pattern\n"
+msgstr "  -d,        (default) შაბლონზე ნაგულისხმები ჩანაცვლების ჩატარება\n"
+
+#: fc-query/fc-query.c:86
+#, c-format
+msgid ""
+"usage: %s [-bVh] [-i index] [-f FORMAT] [--index index] [--brief] [--format "
+"FORMAT] [--version] [--help] font-file...\n"
+msgstr ""
+"გამოყენება: %s [-bVh] [-i index] [-f ფორმატი] [--index index] [--brief] [--"
+"format ფორმატი] [--version] [--help] ფონტის-ფაილი...\n"
+
+#: fc-query/fc-query.c:89
+#, c-format
+msgid "usage: %s [-bVh] [-i index] [-f FORMAT] font-file...\n"
+msgstr "გამოყენება: %s [-bVh] [-i index] [-f ფორმატი] ფონტის-ფაილი...\n"
+
+#: fc-query/fc-query.c:92
+#, c-format
+msgid "Query font files and print resulting pattern(s)\n"
+msgstr "ფონტის ფაილების გადამოწმება და დამთხვევების გამოტანა\n"
+
+#: fc-query/fc-query.c:95 fc-validate/fc-validate.c:95
+#, c-format
+msgid "  -i, --index INDEX    display the INDEX face of each font file only\n"
+msgstr "  -i, --index INDEX    თითოეული ფონტის მხოლოდ INDEX სახის ჩვენება\n"
+
+#: fc-query/fc-query.c:96
+#, c-format
+msgid "  -b, --brief          display font pattern briefly\n"
+msgstr "  -b, --brief          ფონტის შაბლონის მოკლედ ჩვენება\n"
+
+#: fc-query/fc-query.c:101
+#, c-format
+msgid ""
+"  -i INDEX   (index)         display the INDEX face of each font file only\n"
+msgstr ""
+"  -i INDEX   (index)         თითოეული ფონტის მხოლოდ INDEX სახის ჩვენება\n"
+
+#: fc-query/fc-query.c:102 fc-scan/fc-scan.c:101
+#, c-format
+msgid "  -b         (brief)         display font pattern briefly\n"
+msgstr "  -b       (brief)            ფონტის შაბლონის მოკლედ ჩვენება\n"
+
+#: fc-query/fc-query.c:103 fc-scan/fc-scan.c:102
+#, c-format
+msgid "  -f FORMAT  (format)        use the given output format\n"
+msgstr "  -f ფორმატი      მითითებული გამოტანის ფორმატის გამოყენება\n"
+
+#: fc-query/fc-query.c:104 fc-scan/fc-scan.c:104
+#, c-format
+msgid "  -V         (version)       display font config version and exit\n"
+msgstr ""
+"  -V         (version)       font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-query/fc-query.c:105 fc-scan/fc-scan.c:105
+#, c-format
+msgid "  -h         (help)          display this help and exit\n"
+msgstr "  -h         (help)          ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-query/fc-query.c:163
+#, c-format
+msgid "Can't query face %u of font file %s\n"
+msgstr "შეცდომა %u-ე სახის გამოთხოვის შეცდომა ფონტის ფაილიდან %s\n"
+
+#: fc-scan/fc-scan.c:86
+#, c-format
+msgid ""
+"usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] [--brief] [--format FORMAT] [--"
+"version] [--help] font-file...\n"
+msgstr ""
+"გამოყენება: %s [-bcVh] [-f ფორმატი] [-y SYSROOT] [--brief] [--format "
+"ფორმატი] [--version] [--help] ფონტის-ფაილი...\n"
+
+#: fc-scan/fc-scan.c:89
+#, c-format
+msgid "usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] font-file...\n"
+msgstr "გამოყენება: %s [-bcVh] [-f ფორმატი] [-y SYSROOT] ფონტის-ფაილი...\n"
+
+#: fc-scan/fc-scan.c:92
+#, c-format
+msgid "Scan font files and directories, and print resulting pattern(s)\n"
+msgstr "ფონტის ფაილებისა და საქაღლდეების გადამოწმება და შაბლონების გამოტანა\n"
+
+#: fc-scan/fc-scan.c:95
+#, c-format
+msgid "  -b, --brief            display font pattern briefly\n"
+msgstr "  -b, --brief            ფონტის შაბლონის მოკლედ ჩვენება\n"
+
+#: fc-scan/fc-scan.c:96
+#, c-format
+msgid "  -f, --format=FORMAT    use the given output format\n"
+msgstr "  -f, --format=ფორმატი    მითითებული გამოტანის ფორმატის გამოყენება\n"
+
+#: fc-scan/fc-scan.c:97
+#, c-format
+msgid "  -y, --sysroot=SYSROOT  prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+"  -y, --sysroot=SYSROOT  სკანირებისას ყველა ბილიკისთვის თავში SYSROOT -ის "
+"მიწერა\n"
+
+#: fc-scan/fc-scan.c:98
+#, c-format
+msgid "  -V, --version          display font config version and exit\n"
+msgstr "  -V, --version          font config -ის ვერსიის გამოტანა და გასვლა\n"
+
+#: fc-scan/fc-scan.c:99
+#, c-format
+msgid "  -h, --help             display this help and exit\n"
+msgstr "  -h, --help             ამ დახმარების გამოტანა და გასვლა\n"
+
+#: fc-scan/fc-scan.c:103
+#, c-format
+msgid ""
+"  -y SYSROOT (sysroot)       prepend SYSROOT to all paths for scanning\n"
+msgstr ""
+"  -y SYSROOT (sysroot)       სკანირებისას ყველა ბილიკისთვის თავში SYSROOT -"
+"ის მიწერა\n"
+
+#: fc-validate/fc-validate.c:86
+#, c-format
+msgid ""
+"usage: %s [-Vhv] [-i index] [-l LANG] [--index index] [--lang LANG] [--"
+"verbose] [--version] [--help] font-file...\n"
+msgstr ""
+"გამოყენება: %s [-Vhv] [-i index] [-l ენა] [--index ინდექსი] [--lang ენა] [--"
+"verbose] [--version] [--help] ფონტის-ფაილი...\n"
+
+#: fc-validate/fc-validate.c:89
+#, c-format
+msgid "usage: %s [-Vhv] [-i index] [-l LANG] font-file...\n"
+msgstr "გამოყენება: %s [-Vhv] [-i ინდექსი] [-l ენა] ფონტის-ფაილი...\n"
+
+#: fc-validate/fc-validate.c:92
+#, c-format
+msgid "Validate font files and print result\n"
+msgstr "ფონტის ფაილების გადამოწმება და შედეგების გამოტანა\n"
+
+#: fc-validate/fc-validate.c:96
+#, c-format
+msgid "  -l, --lang=LANG      set LANG instead of current locale\n"
+msgstr "  -l, --lang=LANG      მიმდინარე ენის მაგიერ LANG-ის გამოყენება\n"
+
+#: fc-validate/fc-validate.c:97
+#, c-format
+msgid "  -v, --verbose        show more detailed information\n"
+msgstr "  -v, --verbose        უფრო მეტად დეტალური ინფორმაციის ჩვენება\n"
+
+#: fc-validate/fc-validate.c:101
+#, c-format
+msgid ""
+"  -i INDEX   (index)        display the INDEX face of each font file only\n"
+msgstr ""
+"  -i INDEX   (index)        თითოეული ფონტის მხოლოდ INDEX სახის ჩვენება\n"
+
+#: fc-validate/fc-validate.c:102
+#, c-format
+msgid "  -l LANG    (lang)         set LANG instead of current locale\n"
+msgstr "  -l LANG    (lang)         მიმდინარე ენის მაგიერ LANG-ის გამოყენება\n"
+
+#: fc-validate/fc-validate.c:103
+#, c-format
+msgid "  -v         (verbose)      show more detailed information\n"
+msgstr "  -v         (verbose)      უფრო მეტად დეტალური ინფორმაციის ჩვენება\n"
+
+#: fc-validate/fc-validate.c:170
+#, c-format
+msgid "Can't initialize FreeType library\n"
+msgstr "შეცდომა FreeType ბიბლიოთეკის ინიციალიზაციისას\n"
+
+#: fc-validate/fc-validate.c:188
+#, c-format
+msgid "Unable to open %s\n"
+msgstr "%s-ის გახსნის შეცდომა\n"
+
+#: fc-validate/fc-validate.c:204
+#, c-format
+msgid "%s:%d Missing %d glyph(s) to satisfy the coverage for %s language\n"
+msgstr "%s:%d აკლია %d გლიფი, რომ დააკმაყოფილოს დაფარვა ენისთვის: %s\n"
+
+#: fc-validate/fc-validate.c:234
+#, c-format
+msgid "%s:%d Satisfy the coverage for %s language\n"
+msgstr "%s:%d აკმაყოფილებს დაფარვას ენისთვის: %s\n"
+
+#: src/fccfg.c:3251
+msgid "No description"
+msgstr "აღწერის გარეშე"
diff --git a/po/meson.build b/po/meson.build
new file mode 100644 (file)
index 0000000..5cea343
--- /dev/null
@@ -0,0 +1,3 @@
+i18n.gettext(meson.project_name() + '-conf',
+    args: '--directory=' + meson.project_source_root()
+)
index 788f6fb..8343235 100644 (file)
Binary files a/po/zh_CN.gmo and b/po/zh_CN.gmo differ
index ebb192d..1d04396 100644 (file)
@@ -10,9 +10,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: fontconfig 2.12.92\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?"
-"product=fontconfig\n"
-"POT-Creation-Date: 2018-08-30 08:06+0000\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/fontconfig/fontconfig/"
+"issues/new\n"
+"POT-Creation-Date: 2023-01-27 17:24+0900\n"
 "PO-Revision-Date: 2018-02-16 01:41-0600\n"
 "Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
 "Language-Team: AOSC\n"
@@ -23,7 +23,7 @@ msgstr ""
 "X-Generator: Poedit 2.0.5\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
-#: fc-cache/fc-cache.c:99
+#: fc-cache/fc-cache.c:107
 #, c-format
 msgid ""
 "usage: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--really-"
@@ -34,12 +34,12 @@ msgstr ""
 "force] [--sysroot=<系统根>] [--system-only] [--verbose] [--version] [--help] "
 "[目录]\n"
 
-#: fc-cache/fc-cache.c:102
+#: fc-cache/fc-cache.c:110
 #, c-format
 msgid "usage: %s [-EfrsvVh] [-y SYSROOT] [dirs]\n"
 msgstr "用法:%s [-EfrsvVh] [-y <系统根>] [目录]\n"
 
-#: fc-cache/fc-cache.c:105
+#: fc-cache/fc-cache.c:113
 #, c-format
 msgid ""
 "Build font information caches in [dirs]\n"
@@ -48,233 +48,233 @@ msgstr ""
 "在 [目录] 构建字体信息缓存\n"
 "(默认为所有字体配置中定义的目录)。\n"
 
-#: fc-cache/fc-cache.c:109
+#: fc-cache/fc-cache.c:117
 #, c-format
 msgid "  -E, --error-on-no-fonts  raise an error if no fonts in a directory\n"
 msgstr "  -E, --error-on-no-fonts  在目录中无字体时报错\n"
 
-#: fc-cache/fc-cache.c:110
+#: fc-cache/fc-cache.c:118
 #, c-format
 msgid ""
 "  -f, --force              scan directories with apparently valid caches\n"
 msgstr "  -f, --force              强制扫描已有有效缓存的目录\n"
 
-#: fc-cache/fc-cache.c:111
+#: fc-cache/fc-cache.c:119
 #, c-format
 msgid "  -r, --really-force       erase all existing caches, then rescan\n"
 msgstr "  -r, --really-force       清空所有缓存并重新扫描\n"
 
-#: fc-cache/fc-cache.c:112
+#: fc-cache/fc-cache.c:120
 #, c-format
 msgid "  -s, --system-only        scan system-wide directories only\n"
 msgstr "  -s, --system-only        仅扫描系统全局目录\n"
 
-#: fc-cache/fc-cache.c:113
+#: fc-cache/fc-cache.c:121
 #, c-format
 msgid "  -y, --sysroot=SYSROOT    prepend SYSROOT to all paths for scanning\n"
 msgstr "  -y, --sysroot=<系统根>    扫描时将 <系统根> 值附加到路径开头\n"
 
-#: fc-cache/fc-cache.c:114
+#: fc-cache/fc-cache.c:122
 #, c-format
 msgid "  -v, --verbose            display status information while busy\n"
 msgstr "  -v, --verbose            在程序工作时显示状态信息\n"
 
-#: fc-cache/fc-cache.c:115
+#: fc-cache/fc-cache.c:123
 #, c-format
 msgid "  -V, --version            display font config version and exit\n"
 msgstr "  -V, --version            显示 Fontconfig 版本并退出\n"
 
-#: fc-cache/fc-cache.c:116
+#: fc-cache/fc-cache.c:124
 #, c-format
 msgid "  -h, --help               display this help and exit\n"
 msgstr "  -h, --help               显示该帮助信息并退出\n"
 
-#: fc-cache/fc-cache.c:118
+#: fc-cache/fc-cache.c:126
 #, c-format
 msgid "  -E         (error-on-no-fonts)\n"
 msgstr "  -E         (error-on-no-fonts)\n"
 
-#: fc-cache/fc-cache.c:119
+#: fc-cache/fc-cache.c:127
 #, c-format
 msgid "                       raise an error if no fonts in a directory\n"
 msgstr "                       在目录中无字体时报错\n"
 
-#: fc-cache/fc-cache.c:120
+#: fc-cache/fc-cache.c:128
 #, c-format
 msgid "  -f         (force)   scan directories with apparently valid caches\n"
 msgstr "  -f         (force)   强制扫描带有有效缓存的目录\n"
 
-#: fc-cache/fc-cache.c:121
+#: fc-cache/fc-cache.c:129
 #, c-format
 msgid "  -r,   (really force) erase all existing caches, then rescan\n"
 msgstr "  -r,   (really-force) 清空所有缓存并重新扫描\n"
 
-#: fc-cache/fc-cache.c:122
+#: fc-cache/fc-cache.c:130
 #, c-format
 msgid "  -s         (system)  scan system-wide directories only\n"
 msgstr "  -s         (system)  仅扫描系统全局目录\n"
 
-#: fc-cache/fc-cache.c:123
+#: fc-cache/fc-cache.c:131
 #, c-format
 msgid "  -y SYSROOT (sysroot) prepend SYSROOT to all paths for scanning\n"
 msgstr "  -y <系统根> (sysroot) 扫描时将 <系统根> 值附加到路径开头\n"
 
-#: fc-cache/fc-cache.c:124
+#: fc-cache/fc-cache.c:132
 #, c-format
 msgid "  -v         (verbose) display status information while busy\n"
 msgstr "  -v         (verbose) 在程序工作时显示状态信息\n"
 
-#: fc-cache/fc-cache.c:125 fc-cat/fc-cat.c:179 fc-list/fc-list.c:100
-#: fc-match/fc-match.c:104 fc-pattern/fc-pattern.c:98
+#: fc-cache/fc-cache.c:133 fc-cat/fc-cat.c:181 fc-list/fc-list.c:103
+#: fc-match/fc-match.c:107 fc-pattern/fc-pattern.c:101
 #, c-format
 msgid "  -V         (version) display font config version and exit\n"
 msgstr "  -V         (version) 显示 Fontconfig 版本并退出\n"
 
-#: fc-cache/fc-cache.c:126 fc-cat/fc-cat.c:180 fc-list/fc-list.c:101
-#: fc-match/fc-match.c:105 fc-pattern/fc-pattern.c:99
+#: fc-cache/fc-cache.c:134 fc-cat/fc-cat.c:182 fc-list/fc-list.c:104
+#: fc-match/fc-match.c:108 fc-pattern/fc-pattern.c:102
 #, c-format
 msgid "  -h         (help)    display this help and exit\n"
 msgstr "  -h         (help)    显示该帮助信息并退出\n"
 
-#: fc-cache/fc-cache.c:163
+#: fc-cache/fc-cache.c:171
 #, c-format
 msgid "skipping, looped directory detected\n"
 msgstr "跳过,探测到循环目录\n"
 
-#: fc-cache/fc-cache.c:173
+#: fc-cache/fc-cache.c:190
 #, c-format
 msgid "skipping, no such directory\n"
 msgstr "跳过,无此目录\n"
 
-#: fc-cache/fc-cache.c:186
+#: fc-cache/fc-cache.c:208
 #, c-format
 msgid "\"%s\": not a directory, skipping\n"
 msgstr "“%s”:不是一个目录,跳过\n"
 
-#: fc-cache/fc-cache.c:211
+#: fc-cache/fc-cache.c:232
 #, c-format
 msgid "\"%s\": scanning error\n"
 msgstr "“%s”:扫描错误\n"
 
-#: fc-cache/fc-cache.c:220
+#: fc-cache/fc-cache.c:241
 #, c-format
 msgid "skipping, existing cache is valid: %d fonts, %d dirs\n"
 msgstr "跳过,当前缓存有效:%d 个字体,%d 个目录\n"
 
-#: fc-cache/fc-cache.c:226
+#: fc-cache/fc-cache.c:247
 #, c-format
 msgid "caching, new cache contents: %d fonts, %d dirs\n"
 msgstr "正在生成缓存,新增缓存内容:%d 个字体,%d 个目录\n"
 
-#: fc-cache/fc-cache.c:231
+#: fc-cache/fc-cache.c:252
 #, c-format
 msgid "%s: failed to write cache\n"
 msgstr "%s:无法写入缓存\n"
 
-#: fc-cache/fc-cache.c:240
+#: fc-cache/fc-cache.c:261
 #, c-format
 msgid "%s: Can't create subdir set\n"
 msgstr "%s:无法创建子目录集\n"
 
-#: fc-cache/fc-cache.c:254
+#: fc-cache/fc-cache.c:275
 #, c-format
 msgid "%s: Can't create subdir list\n"
 msgstr "%s:无法创建子目录列表\n"
 
-#: fc-cache/fc-cache.c:361 fc-cat/fc-cat.c:307
+#: fc-cache/fc-cache.c:383 fc-cat/fc-cat.c:309
 #, c-format
 msgid "%s: Can't initialize font config library\n"
 msgstr "%s:无法初始化 Fontconfig 库\n"
 
-#: fc-cache/fc-cache.c:371
+#: fc-cache/fc-cache.c:393
 #, c-format
 msgid "%s: Can't create list of directories\n"
 msgstr "%s:无法创建目录列表\n"
 
-#: fc-cache/fc-cache.c:379
+#: fc-cache/fc-cache.c:401
 #, c-format
 msgid "%s: Can't add directory\n"
 msgstr "%s:无法添加目录\n"
 
-#: fc-cache/fc-cache.c:391
+#: fc-cache/fc-cache.c:413
 #, c-format
 msgid "Out of Memory\n"
 msgstr "内存耗尽\n"
 
-#: fc-cache/fc-cache.c:423
+#: fc-cache/fc-cache.c:456
 msgid "failed"
 msgstr "缓存生成失败"
 
-#: fc-cache/fc-cache.c:423
+#: fc-cache/fc-cache.c:456
 msgid "succeeded"
 msgstr "缓存生成成功"
 
-#: fc-cat/fc-cat.c:160
+#: fc-cat/fc-cat.c:162
 #, c-format
 msgid "usage: %s [-rv] [--recurse] [--verbose] [*-%s"
 msgstr "用法:%s [-rv] [--recurse] [--verbose] [*-%s"
 
-#: fc-cat/fc-cat.c:164
+#: fc-cat/fc-cat.c:166
 #, c-format
 msgid "usage: %s [-rvVh] [*-%s"
 msgstr "用法:%s [-rvVh] [*-%s"
 
-#: fc-cat/fc-cat.c:167
+#: fc-cat/fc-cat.c:169
 #, c-format
 msgid "Reads font information cache from:\n"
 msgstr "从此处读取字体信息缓存:\n"
 
-#: fc-cat/fc-cat.c:168
+#: fc-cat/fc-cat.c:170
 #, c-format
 msgid " 1) specified fontconfig cache file\n"
 msgstr "1. 指定的 Fontconfig 缓存文件\n"
 
-#: fc-cat/fc-cat.c:169
+#: fc-cat/fc-cat.c:171
 #, c-format
 msgid " 2) related to a particular font directory\n"
 msgstr "2. 相对于某个字体目录\n"
 
-#: fc-cat/fc-cat.c:172
+#: fc-cat/fc-cat.c:174
 #, c-format
 msgid "  -r, --recurse        recurse into subdirectories\n"
 msgstr "  -r, --recurse        递归进入子目录\n"
 
-#: fc-cat/fc-cat.c:173
+#: fc-cat/fc-cat.c:175
 #, c-format
 msgid "  -v, --verbose        be verbose\n"
 msgstr "  -v, --verbose        输出详尽信息\n"
 
-#: fc-cat/fc-cat.c:174 fc-conflist/fc-conflist.c:88 fc-list/fc-list.c:93
-#: fc-match/fc-match.c:96 fc-pattern/fc-pattern.c:92 fc-query/fc-query.c:95
-#: fc-scan/fc-scan.c:93 fc-validate/fc-validate.c:95
+#: fc-cat/fc-cat.c:176 fc-conflist/fc-conflist.c:90 fc-list/fc-list.c:96
+#: fc-match/fc-match.c:99 fc-pattern/fc-pattern.c:95 fc-query/fc-query.c:98
+#: fc-validate/fc-validate.c:98
 #, c-format
 msgid "  -V, --version        display font config version and exit\n"
 msgstr "  -V, --version        显示 Fontconfig 版本并退出\n"
 
-#: fc-cat/fc-cat.c:175 fc-conflist/fc-conflist.c:89 fc-list/fc-list.c:94
-#: fc-match/fc-match.c:97 fc-pattern/fc-pattern.c:93 fc-query/fc-query.c:96
-#: fc-scan/fc-scan.c:94 fc-validate/fc-validate.c:96
+#: fc-cat/fc-cat.c:177 fc-conflist/fc-conflist.c:91 fc-list/fc-list.c:97
+#: fc-match/fc-match.c:100 fc-pattern/fc-pattern.c:96 fc-query/fc-query.c:99
+#: fc-validate/fc-validate.c:99
 #, c-format
 msgid "  -h, --help           display this help and exit\n"
 msgstr "  -h, --help           显示该帮助信息并退出\n"
 
-#: fc-cat/fc-cat.c:177
+#: fc-cat/fc-cat.c:179
 #, c-format
 msgid "  -r         (recurse) recurse into subdirectories\n"
 msgstr "  -r         (recurse) 递归进入子目录\n"
 
-#: fc-cat/fc-cat.c:178
+#: fc-cat/fc-cat.c:180
 #, c-format
 msgid "  -v         (verbose) be verbose\n"
 msgstr "  -v         (verbose) 输出详尽信息\n"
 
-#: fc-cat/fc-cat.c:316 fc-cat/fc-cat.c:325 fc-cat/fc-cat.c:337
-#: fc-cat/fc-cat.c:345
+#: fc-cat/fc-cat.c:318 fc-cat/fc-cat.c:327 fc-cat/fc-cat.c:339
+#: fc-cat/fc-cat.c:347
 #, c-format
 msgid "%s: malloc failure\n"
 msgstr "%s:无法分配内存 (malloc)\n"
 
-#: fc-cat/fc-cat.c:385
+#: fc-cat/fc-cat.c:387
 #, c-format
 msgid ""
 "Directory: %s\n"
@@ -285,32 +285,32 @@ msgstr ""
 "缓存:%s\n"
 "--------\n"
 
-#: fc-conflist/fc-conflist.c:79
+#: fc-conflist/fc-conflist.c:81
 #, c-format
 msgid "usage: %s [-Vh] [--version] [--help]\n"
 msgstr "用法:%s [-Vh] [--version] [--help]\n"
 
-#: fc-conflist/fc-conflist.c:82
+#: fc-conflist/fc-conflist.c:84
 #, c-format
 msgid "usage: %s [-Vh]\n"
 msgstr "用法:%s [-Vh]\n"
 
-#: fc-conflist/fc-conflist.c:85
+#: fc-conflist/fc-conflist.c:87
 #, c-format
 msgid "Show the ruleset files information on the system\n"
 msgstr "显示当前系统中的规则集文件\n"
 
-#: fc-conflist/fc-conflist.c:91 fc-validate/fc-validate.c:101
+#: fc-conflist/fc-conflist.c:93 fc-validate/fc-validate.c:104
 #, c-format
 msgid "  -V         (version)      display font config version and exit\n"
 msgstr "  -V         (版本)      显示 Fontconfig 版本并退出\n"
 
-#: fc-conflist/fc-conflist.c:92 fc-validate/fc-validate.c:102
+#: fc-conflist/fc-conflist.c:94 fc-validate/fc-validate.c:105
 #, c-format
 msgid "  -h         (help)         display this help and exit\n"
 msgstr "  -h         (帮助)         显示该帮助信息并退出\n"
 
-#: fc-list/fc-list.c:80
+#: fc-list/fc-list.c:83
 #, c-format
 msgid ""
 "usage: %s [-vbqVh] [-f FORMAT] [--verbose] [--brief] [--format=FORMAT] [--"
@@ -319,67 +319,67 @@ msgstr ""
 "用法:%s [-vbqVh] [-f <输出格式>] [--verbose] [--brief] [--format=<输出格式"
 ">] [--quiet] [--version] [--help] [匹配模式] {元素 …} \n"
 
-#: fc-list/fc-list.c:83
+#: fc-list/fc-list.c:86
 #, c-format
 msgid "usage: %s [-vbqVh] [-f FORMAT] [pattern] {element ...} \n"
 msgstr "用法:%s [-vbqVh] [-f <输出格式>] [匹配模式] {元素 …} \n"
 
-#: fc-list/fc-list.c:86
+#: fc-list/fc-list.c:89
 #, c-format
 msgid "List fonts matching [pattern]\n"
 msgstr "列出符合 [匹配模式] 的字体\n"
 
-#: fc-list/fc-list.c:89 fc-match/fc-match.c:93
+#: fc-list/fc-list.c:92 fc-match/fc-match.c:96
 #, c-format
 msgid "  -v, --verbose        display entire font pattern verbosely\n"
 msgstr "  -v, --verbose        详尽显示整个字体匹配模式\n"
 
-#: fc-list/fc-list.c:90 fc-match/fc-match.c:94
+#: fc-list/fc-list.c:93 fc-match/fc-match.c:97
 #, c-format
 msgid "  -b, --brief          display entire font pattern briefly\n"
 msgstr "  -b, --brief          简略显示整个字体匹配模式\n"
 
-#: fc-list/fc-list.c:91 fc-match/fc-match.c:95 fc-pattern/fc-pattern.c:91
-#: fc-query/fc-query.c:94 fc-scan/fc-scan.c:92
+#: fc-list/fc-list.c:94 fc-match/fc-match.c:98 fc-pattern/fc-pattern.c:94
+#: fc-query/fc-query.c:97
 #, c-format
 msgid "  -f, --format=FORMAT  use the given output format\n"
 msgstr "  -f, --format=<输出格式>  使用指定的输出格式\n"
 
-#: fc-list/fc-list.c:92
+#: fc-list/fc-list.c:95
 #, c-format
 msgid ""
 "  -q, --quiet          suppress all normal output, exit 1 if no fonts "
 "matched\n"
 msgstr "  -q, --quiet          静默所有正常输出,无匹配字体时返回退出代码 1\n"
 
-#: fc-list/fc-list.c:96 fc-match/fc-match.c:101
+#: fc-list/fc-list.c:99 fc-match/fc-match.c:104
 #, c-format
 msgid "  -v         (verbose) display entire font pattern verbosely\n"
 msgstr "  -v         (verbose) 详尽显示整个字体匹配模式\n"
 
-#: fc-list/fc-list.c:97 fc-match/fc-match.c:102
+#: fc-list/fc-list.c:100 fc-match/fc-match.c:105
 #, c-format
 msgid "  -b         (brief)   display entire font pattern briefly\n"
 msgstr "  -b         (brief)   简略显示整个字体匹配模式\n"
 
-#: fc-list/fc-list.c:98 fc-match/fc-match.c:103 fc-pattern/fc-pattern.c:97
+#: fc-list/fc-list.c:101 fc-match/fc-match.c:106 fc-pattern/fc-pattern.c:100
 #, c-format
 msgid "  -f FORMAT  (format)  use the given output format\n"
 msgstr "  -f <输出格式>  (format)  使用指定的输出格式\n"
 
-#: fc-list/fc-list.c:99
+#: fc-list/fc-list.c:102
 #, c-format
 msgid ""
 "  -q,        (quiet)   suppress all normal output, exit 1 if no fonts "
 "matched\n"
 msgstr "  -q,        (quiet)   静默所有正常输出,无匹配字体时返回退出代码 1\n"
 
-#: fc-list/fc-list.c:161 fc-match/fc-match.c:168 fc-pattern/fc-pattern.c:152
+#: fc-list/fc-list.c:164 fc-match/fc-match.c:172 fc-pattern/fc-pattern.c:155
 #, c-format
 msgid "Unable to parse the pattern\n"
 msgstr "无法解析匹配模式\n"
 
-#: fc-match/fc-match.c:82
+#: fc-match/fc-match.c:85
 #, c-format
 msgid ""
 "usage: %s [-savbVh] [-f FORMAT] [--sort] [--all] [--verbose] [--brief] [--"
@@ -388,42 +388,42 @@ msgstr ""
 "用法:%s [-savbVh] [-f <输出格式>] [--sort] [--all] [--verbose] [--brief] [--"
 "format=<输出格式>] [--version] [--help] [匹配模式] {元素…}\n"
 
-#: fc-match/fc-match.c:85
+#: fc-match/fc-match.c:88
 #, c-format
 msgid "usage: %s [-savVh] [-f FORMAT] [pattern] {element...}\n"
 msgstr "用法:%s [-savVh] [-f <输出格式>] [匹配模式] {元素…}\n"
 
-#: fc-match/fc-match.c:88 fc-pattern/fc-pattern.c:86
+#: fc-match/fc-match.c:91 fc-pattern/fc-pattern.c:89
 #, c-format
 msgid "List best font matching [pattern]\n"
 msgstr "列出符合 [匹配模式] 的最佳字体\n"
 
-#: fc-match/fc-match.c:91
+#: fc-match/fc-match.c:94
 #, c-format
 msgid "  -s, --sort           display sorted list of matches\n"
 msgstr "  -s, --sort           显示已排序的匹配列表\n"
 
-#: fc-match/fc-match.c:92
+#: fc-match/fc-match.c:95
 #, c-format
 msgid "  -a, --all            display unpruned sorted list of matches\n"
 msgstr "  -a, --all            显示未修剪而已排序的匹配列表\n"
 
-#: fc-match/fc-match.c:99
+#: fc-match/fc-match.c:102
 #, c-format
 msgid "  -s,        (sort)    display sorted list of matches\n"
 msgstr "  -s,        (sort)    显示已排序的匹配列表\n"
 
-#: fc-match/fc-match.c:100
+#: fc-match/fc-match.c:103
 #, c-format
 msgid "  -a         (all)     display unpruned sorted list of matches\n"
 msgstr "  -a         (all)     显示未修剪而已排序的匹配列表\n"
 
-#: fc-match/fc-match.c:197
+#: fc-match/fc-match.c:201
 #, c-format
 msgid "No fonts installed on the system\n"
 msgstr "系统中未安装任何字体\n"
 
-#: fc-pattern/fc-pattern.c:80
+#: fc-pattern/fc-pattern.c:83
 #, c-format
 msgid ""
 "usage: %s [-cdVh] [-f FORMAT] [--config] [--default] [--verbose] [--"
@@ -432,32 +432,32 @@ msgstr ""
 "用法:%s [-cdVh] [-f <输出格式>] [--config] [--default] [--verbose] [--"
 "format=<输出格式>] [--version] [--help] [匹配模式] {元素…}\n"
 
-#: fc-pattern/fc-pattern.c:83
+#: fc-pattern/fc-pattern.c:86
 #, c-format
 msgid "usage: %s [-cdVh] [-f FORMAT] [pattern] {element...}\n"
 msgstr "用法:%s [-cdVh] [-f <输出格式>] [匹配模式] {元素…}\n"
 
-#: fc-pattern/fc-pattern.c:89
+#: fc-pattern/fc-pattern.c:92
 #, c-format
 msgid "  -c, --config         perform config substitution on pattern\n"
 msgstr "  -c, --config         根据匹配模式进行配置替换\n"
 
-#: fc-pattern/fc-pattern.c:90
+#: fc-pattern/fc-pattern.c:93
 #, c-format
 msgid "  -d, --default        perform default substitution on pattern\n"
 msgstr "  -d, --default        根据匹配模式进行默认值替换\n"
 
-#: fc-pattern/fc-pattern.c:95
+#: fc-pattern/fc-pattern.c:98
 #, c-format
 msgid "  -c,        (config)  perform config substitution on pattern\n"
 msgstr "  -c,        (config)  根据匹配模式进行配置替换\n"
 
-#: fc-pattern/fc-pattern.c:96
+#: fc-pattern/fc-pattern.c:99
 #, c-format
 msgid "  -d,        (default) perform default substitution on pattern\n"
 msgstr "  -d,        (default) 根据匹配模式进行默认值替换\n"
 
-#: fc-query/fc-query.c:83
+#: fc-query/fc-query.c:86
 #, c-format
 msgid ""
 "usage: %s [-bVh] [-i index] [-f FORMAT] [--index index] [--brief] [--format "
@@ -466,79 +466,110 @@ msgstr ""
 "用法:%s [-bVh] [-i index] [-f <输出格式>] [--index index] [--brief] [--"
 "format <输出格式>] [--version] [--help] 字体文件…\n"
 
-#: fc-query/fc-query.c:86
+#: fc-query/fc-query.c:89
 #, c-format
 msgid "usage: %s [-bVh] [-i index] [-f FORMAT] font-file...\n"
 msgstr "用法:%s [-bVh] [-i index] [-f <输出格式>] 字体文件…\n"
 
-#: fc-query/fc-query.c:89
+#: fc-query/fc-query.c:92
 #, c-format
 msgid "Query font files and print resulting pattern(s)\n"
 msgstr ""
 "查询字体文件并输出匹配模式\n"
 "\n"
 
-#: fc-query/fc-query.c:92 fc-validate/fc-validate.c:92
+#: fc-query/fc-query.c:95 fc-validate/fc-validate.c:95
 #, c-format
 msgid "  -i, --index INDEX    display the INDEX face of each font file only\n"
 msgstr "  -i, --index <编号>    仅显示每个字体文件的 <编号> 样式\n"
 
-#: fc-query/fc-query.c:93 fc-scan/fc-scan.c:91
+#: fc-query/fc-query.c:96
 #, c-format
 msgid "  -b, --brief          display font pattern briefly\n"
 msgstr "  -b, --brief          简略显示字体匹配模式\n"
 
-#: fc-query/fc-query.c:98
+#: fc-query/fc-query.c:101
 #, c-format
 msgid ""
 "  -i INDEX   (index)         display the INDEX face of each font file only\n"
 msgstr "  -i <编号>   (index)         仅显示每个字体文件的 <编号> 样式\n"
 
-#: fc-query/fc-query.c:99 fc-scan/fc-scan.c:96
+#: fc-query/fc-query.c:102 fc-scan/fc-scan.c:101
 #, c-format
 msgid "  -b         (brief)         display font pattern briefly\n"
 msgstr "  -b         (brief)         简略显示字体匹配模式\n"
 
-#: fc-query/fc-query.c:100 fc-scan/fc-scan.c:97
+#: fc-query/fc-query.c:103 fc-scan/fc-scan.c:102
 #, c-format
 msgid "  -f FORMAT  (format)        use the given output format\n"
 msgstr "  -f <输出格式>  (format)        使用指定的输出格式\n"
 
-#: fc-query/fc-query.c:101 fc-scan/fc-scan.c:98
+#: fc-query/fc-query.c:104 fc-scan/fc-scan.c:104
 #, c-format
 msgid "  -V         (version)       display font config version and exit\n"
 msgstr "  -V         (version)       显示 Fontconfig 版本并退出\n"
 
-#: fc-query/fc-query.c:102 fc-scan/fc-scan.c:99
+#: fc-query/fc-query.c:105 fc-scan/fc-scan.c:105
 #, c-format
 msgid "  -h         (help)          display this help and exit\n"
 msgstr "  -h         (help)          显示此帮助信息并退出\n"
 
-#: fc-query/fc-query.c:160
+#: fc-query/fc-query.c:163
 #, c-format
 msgid "Can't query face %u of font file %s\n"
 msgstr "无法查询字体文件 %2$s 的样式 %1$u\n"
 
-#: fc-scan/fc-scan.c:82
-#, c-format
+#: fc-scan/fc-scan.c:86
+#, fuzzy, c-format
 msgid ""
-"usage: %s [-bVh] [-f FORMAT] [--brief] [--format FORMAT] [--version] [--"
-"help] font-file...\n"
+"usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] [--brief] [--format FORMAT] [--"
+"version] [--help] font-file...\n"
 msgstr ""
 "用法:%s [-bVh] [-f <输出格式>] [--brief] [--format <输出格式>] [--version] "
 "[--help] 字体文件…\n"
 
-#: fc-scan/fc-scan.c:85
-#, c-format
-msgid "usage: %s [-bVh] [-f FORMAT] font-file...\n"
+#: fc-scan/fc-scan.c:89
+#, fuzzy, c-format
+msgid "usage: %s [-bcVh] [-f FORMAT] [-y SYSROOT] font-file...\n"
 msgstr "用法:%s [-bVh] [-f <输出格式>] 字体文件…\n"
 
-#: fc-scan/fc-scan.c:88
+#: fc-scan/fc-scan.c:92
 #, c-format
 msgid "Scan font files and directories, and print resulting pattern(s)\n"
 msgstr "扫描字体文件和目录并输出匹配模式\n"
 
-#: fc-validate/fc-validate.c:83
+#: fc-scan/fc-scan.c:95
+#, fuzzy, c-format
+msgid "  -b, --brief            display font pattern briefly\n"
+msgstr "  -b, --brief          简略显示字体匹配模式\n"
+
+#: fc-scan/fc-scan.c:96
+#, fuzzy, c-format
+msgid "  -f, --format=FORMAT    use the given output format\n"
+msgstr "  -f, --format=<输出格式>  使用指定的输出格式\n"
+
+#: fc-scan/fc-scan.c:97
+#, fuzzy, c-format
+msgid "  -y, --sysroot=SYSROOT  prepend SYSROOT to all paths for scanning\n"
+msgstr "  -y, --sysroot=<系统根>    扫描时将 <系统根> 值附加到路径开头\n"
+
+#: fc-scan/fc-scan.c:98
+#, fuzzy, c-format
+msgid "  -V, --version          display font config version and exit\n"
+msgstr "  -V, --version            显示 Fontconfig 版本并退出\n"
+
+#: fc-scan/fc-scan.c:99
+#, fuzzy, c-format
+msgid "  -h, --help             display this help and exit\n"
+msgstr "  -h, --help               显示该帮助信息并退出\n"
+
+#: fc-scan/fc-scan.c:103
+#, fuzzy, c-format
+msgid ""
+"  -y SYSROOT (sysroot)       prepend SYSROOT to all paths for scanning\n"
+msgstr "  -y <系统根> (sysroot) 扫描时将 <系统根> 值附加到路径开头\n"
+
+#: fc-validate/fc-validate.c:86
 #, c-format
 msgid ""
 "usage: %s [-Vhv] [-i index] [-l LANG] [--index index] [--lang LANG] [--"
@@ -547,62 +578,62 @@ msgstr ""
 "用法:%s [-Vhv] [-i index] [-l LANG] [--index index] [--lang LANG] [--"
 "verbose] [--version] [--help] 字体文件…\n"
 
-#: fc-validate/fc-validate.c:86
+#: fc-validate/fc-validate.c:89
 #, c-format
 msgid "usage: %s [-Vhv] [-i index] [-l LANG] font-file...\n"
 msgstr "用法:%s [-Vhv] [-i index] [-l LANG] 字体文件…\n"
 
-#: fc-validate/fc-validate.c:89
+#: fc-validate/fc-validate.c:92
 #, c-format
 msgid "Validate font files and print result\n"
 msgstr "验证字体文件并输出结果\n"
 
-#: fc-validate/fc-validate.c:93
+#: fc-validate/fc-validate.c:96
 #, c-format
 msgid "  -l, --lang=LANG      set LANG instead of current locale\n"
 msgstr "  -l, --lang=LANG      使用 LANG 值替换当前区域设置\n"
 
-#: fc-validate/fc-validate.c:94
+#: fc-validate/fc-validate.c:97
 #, c-format
 msgid "  -v, --verbose        show more detailed information\n"
 msgstr "  -v, --verbose        显示详尽信息\n"
 
-#: fc-validate/fc-validate.c:98
+#: fc-validate/fc-validate.c:101
 #, c-format
 msgid ""
 "  -i INDEX   (index)        display the INDEX face of each font file only\n"
 msgstr "  -i <编号>   (index)        仅显示每个字体的 <编号> 字形\n"
 
-#: fc-validate/fc-validate.c:99
+#: fc-validate/fc-validate.c:102
 #, c-format
 msgid "  -l LANG    (lang)         set LANG instead of current locale\n"
 msgstr "  -l LANG    (lang)         使用 LANG 值替换当前区域设置\n"
 
-#: fc-validate/fc-validate.c:100
+#: fc-validate/fc-validate.c:103
 #, c-format
 msgid "  -v         (verbose)      show more detailed information\n"
 msgstr "  -v         (详尽)      显示详尽信息\n"
 
-#: fc-validate/fc-validate.c:167
-#, c-format
-msgid "Can't initalize FreeType library\n"
+#: fc-validate/fc-validate.c:170
+#, fuzzy, c-format
+msgid "Can't initialize FreeType library\n"
 msgstr "无法初始化 FreeType 库\n"
 
-#: fc-validate/fc-validate.c:185
+#: fc-validate/fc-validate.c:188
 #, c-format
 msgid "Unable to open %s\n"
 msgstr "无法打开 %s\n"
 
-#: fc-validate/fc-validate.c:200
+#: fc-validate/fc-validate.c:204
 #, c-format
 msgid "%s:%d Missing %d glyph(s) to satisfy the coverage for %s language\n"
 msgstr "%s:%d 尚需 %d 个字形以满足 %s 语言的覆盖需求\n"
 
-#: fc-validate/fc-validate.c:230
+#: fc-validate/fc-validate.c:234
 #, c-format
 msgid "%s:%d Satisfy the coverage for %s language\n"
 msgstr "%s:%d 完全满足 %s 语言的覆盖需求\n"
 
-#: src/fccfg.c:2701
+#: src/fccfg.c:3251
 msgid "No description"
 msgstr "无描述"
index 7b414df..390ca82 100644 (file)
@@ -77,16 +77,16 @@ AM_CPPFLAGS =                                               \
        $(ICONV_CFLAGS)                                 \
        $(LIBXML2_CFLAGS)                               \
        $(EXPAT_CFLAGS)                                 \
-       $(UUID_CFLAGS)                                  \
        $(WARN_CFLAGS)                                  \
        -DFC_CACHEDIR='"$(FC_CACHEDIR)"'                \
+       -DCONFIGDIR='"$(CONFIGDIR)"'                    \
        -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
        -DFC_TEMPLATEDIR='"$(TEMPLATEDIR)"'
 LDADD  = $(LIBINTL)
 
 EXTRA_DIST += makealias
 
-noinst_HEADERS=fcint.h fcftint.h fcdeprecate.h fcstdint.h
+noinst_HEADERS=fcint.h fcftint.h fcdeprecate.h fcfoundry.h fcmd5.h fcstdint.h
 
 ALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
 
@@ -167,7 +167,7 @@ lib_LTLIBRARIES = libfontconfig.la
 libfontconfig_la_LDFLAGS =                     \
        -version-info @LIBT_VERSION_INFO@ -no-undefined $(export_symbols)
 
-libfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS) $(UUID_LIBS) $(LTLIBINTL)
+libfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS) $(LTLIBINTL)
 
 libfontconfig_la_DEPENDENCIES = $(fontconfig_def_dependency)
 
index 70b1161..1fc5a03 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -262,8 +262,6 @@ am__define_uniq_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__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -283,6 +281,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -294,6 +294,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -304,6 +305,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -374,9 +376,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -385,8 +393,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -438,9 +444,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -463,14 +474,14 @@ AM_CPPFLAGS = \
        $(ICONV_CFLAGS)                                 \
        $(LIBXML2_CFLAGS)                               \
        $(EXPAT_CFLAGS)                                 \
-       $(UUID_CFLAGS)                                  \
        $(WARN_CFLAGS)                                  \
        -DFC_CACHEDIR='"$(FC_CACHEDIR)"'                \
+       -DCONFIGDIR='"$(CONFIGDIR)"'                    \
        -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
        -DFC_TEMPLATEDIR='"$(TEMPLATEDIR)"'
 
 LDADD = $(LIBINTL)
-noinst_HEADERS = fcint.h fcftint.h fcdeprecate.h fcstdint.h
+noinst_HEADERS = fcint.h fcftint.h fcdeprecate.h fcfoundry.h fcmd5.h fcstdint.h
 ALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
 BUILT_SOURCES = $(ALIAS_FILES) \
        ../fc-case/fccase.h \
@@ -519,7 +530,7 @@ lib_LTLIBRARIES = libfontconfig.la
 libfontconfig_la_LDFLAGS = \
        -version-info @LIBT_VERSION_INFO@ -no-undefined $(export_symbols)
 
-libfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS) $(UUID_LIBS) $(LTLIBINTL)
+libfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS) $(LTLIBINTL)
 libfontconfig_la_DEPENDENCIES = $(fontconfig_def_dependency)
 PUBLIC_FILES = \
        $(top_srcdir)/fontconfig/fontconfig.h \
@@ -746,7 +757,6 @@ cscopelist-am: $(am__tagged_files)
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
 distdir: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -790,7 +800,8 @@ installdirs:
        done
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -951,7 +962,7 @@ ps-am:
 
 uninstall-am: uninstall-libLTLIBRARIES uninstall-local
 
-.MAKE: all check install install-am install-strip
+.MAKE: all check install install-am install-exec install-strip
 
 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
        clean-generic clean-libLTLIBRARIES clean-libtool \
diff --git a/src/cutout.py b/src/cutout.py
new file mode 100644 (file)
index 0000000..6b46529
--- /dev/null
@@ -0,0 +1,46 @@
+import argparse
+import subprocess
+import json
+import os
+import re
+
+if __name__== '__main__':
+    parser = argparse.ArgumentParser()
+    parser.add_argument('input')
+    parser.add_argument('output')
+    parser.add_argument('buildroot')
+
+    args = parser.parse_known_args()
+
+    # c_args might contain things that are essential for crosscompilation, but
+    # are not included in cc.cmd_array(), so we have to look them up ourselves
+    host_cargs = []
+    buildroot = args[0].buildroot
+    with open(os.path.join(buildroot, 'meson-info', 'intro-buildoptions.json')) as json_file:
+        bopts = json.load(json_file)
+        for opt in bopts:
+            if opt['name'] == 'c_args' and opt['section'] == 'compiler' and opt['machine'] == 'host':
+                host_cargs = opt['value']
+                break
+
+    cpp = args[1]
+    cpp_args = [i for i in host_cargs + [args[0].input] if not i.startswith('-g')]
+    ret = subprocess.run(cpp + cpp_args, stdout=subprocess.PIPE, check=True)
+
+    stdout = ret.stdout.decode('utf8')
+
+    with open(args[0].output, 'w') as out:
+        write = True
+        for l in stdout.split('\n'):
+            l = l.strip('\r')
+            if l.startswith('CUT_OUT_BEGIN'):
+                write = False
+
+            if write and l:
+                stripped = re.sub('^\s+', '', l)
+                stripped = re.sub('\s*,\s*', ',', stripped)
+                if not stripped.isspace() and stripped:
+                    out.write('%s\n' % stripped)
+
+            if l.startswith('CUT_OUT_END'):
+                write = True
index d12d324..be09457 100644 (file)
  * held.
  */
 
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
 #include "fcint.h"
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <unistd.h>
 #include <stdlib.h>
 #include <time.h>
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 #ifdef _WIN32
 #include <direct.h>
 #define mkdir(path,mode) _mkdir(path)
@@ -222,7 +229,8 @@ FcAtomicUnlock (FcAtomic *atomic)
 void
 FcAtomicDestroy (FcAtomic *atomic)
 {
-    free (atomic);
+    if (atomic)
+       free (atomic);
 }
 #define __fcatomic__
 #include "fcaliastail.h"
index cc28a88..3f4a9d3 100644 (file)
 
 #if 0
 
+typedef <type> fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "<printf format for fc_atomic_int_t>"
+#define fc_atomic_int_add(AI, V)       o = (AI), (AI) += (V), o // atomic acquire/release
 
-#elif !defined(FC_NO_MT) && defined(_MSC_VER) || defined(__MINGW32__)
+#define fc_atomic_ptr_get(P)           *(P) // atomic acquire
+#define fc_atomic_ptr_cmpexch(P,O,N)   *(P) == (O) ? (*(P) = (N), FcTrue) : FcFalse // atomic release
 
-#include "fcwindows.h"
 
-/* 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
+#elif !defined(FC_NO_MT) && defined(HAVE_STDATOMIC_PRIMITIVES)
+
+#include <stdatomic.h>
+
+typedef atomic_int fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "d"
+#define fc_atomic_int_add(AI, V)       atomic_fetch_add_explicit (&(AI), (V), memory_order_acq_rel)
+
+#define fc_atomic_ptr_get(P)           atomic_load_explicit ((_Atomic(void *)*) (P), memory_order_acquire)
+static inline FcBool _fc_atomic_ptr_cmpexch(_Atomic(void *)*P, void * O, _Atomic(void *) N) {
+  return atomic_compare_exchange_strong_explicit(P, &O, N, memory_order_release, memory_order_relaxed);
 }
+#define fc_atomic_ptr_cmpexch(P,O,N)   _fc_atomic_ptr_cmpexch ((_Atomic(void *)*) (P), (O), (N))
+
+/* Casting -1 to _Atomic(int) produces a compiler error with Clang (but not GCC)
+ * so we have to override FC_REF_CONSTANT_VALUE for stdatomic.h atomics.
+ * See https://bugs.llvm.org/show_bug.cgi?id=40249. */
+#define FC_REF_CONSTANT_VALUE (-1)
+
+#elif !defined(FC_NO_MT) && defined(_MSC_VER) || defined(__MINGW32__)
+
+#include "fcwindows.h"
 
 typedef LONG fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "ld"
 #define fc_atomic_int_add(AI, V)       InterlockedExchangeAdd (&(AI), (V))
 
-#define fc_atomic_ptr_get(P)           (_FCMemoryBarrier (), (void *) *(P))
+#define fc_atomic_ptr_get(P)           (InterlockedCompareExchangePointerAcquire ((void **) (P), NULL, NULL))
 #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_FORMAT           "d"
 #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)
+#if SIZEOF_VOID_P == 8
+#define fc_atomic_ptr_get(P)           OSAtomicAdd64Barrier (0, (int64_t*)(P))
+#elif SIZEOF_VOID_P == 4
+#define fc_atomic_ptr_get(P)           OSAtomicAdd32Barrier (0, (int32_t*)(P))
+#else
+#error "SIZEOF_VOID_P not 4 or 8 (assumes CHAR_BIT is 8)"
+#endif
+
+#if (MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 || __IPHONE_OS_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))
+#if __LP64__
+#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))
+#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)
 
 typedef int fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "d"
 #define fc_atomic_int_add(AI, V)       __sync_fetch_and_add (&(AI), (V))
 
-#define fc_atomic_ptr_get(P)           (void *) (__sync_synchronize (), *(P))
+#define fc_atomic_ptr_get(P)           (void *) (__sync_fetch_and_add ((P), 0))
 #define fc_atomic_ptr_cmpexch(P,O,N)   __sync_bool_compare_and_swap ((P), (O), (N))
 
 
@@ -105,6 +126,7 @@ typedef int fc_atomic_int_t;
 #include <mbarrier.h>
 
 typedef unsigned int fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "u"
 #define fc_atomic_int_add(AI, V)       ( ({__machine_rw_barrier ();}), atomic_add_int_nv (&(AI), (V)) - (V))
 
 #define fc_atomic_ptr_get(P)           ( ({__machine_rw_barrier ();}), (void *) *(P))
@@ -115,6 +137,7 @@ typedef unsigned int fc_atomic_int_t;
 
 #define FC_ATOMIC_INT_NIL 1 /* Warn that fallback implementation is in use. */
 typedef volatile int fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "d"
 #define fc_atomic_int_add(AI, V)       (((AI) += (V)) - (V))
 
 #define fc_atomic_ptr_get(P)           ((void *) *(P))
@@ -124,6 +147,7 @@ typedef volatile int fc_atomic_int_t;
 #else /* FC_NO_MT */
 
 typedef int fc_atomic_int_t;
+#define FC_ATOMIC_INT_FORMAT           "d"
 #define fc_atomic_int_add(AI, V)       (((AI) += (V)) - (V))
 
 #define fc_atomic_ptr_get(P)           ((void *) *(P))
@@ -132,7 +156,9 @@ typedef int fc_atomic_int_t;
 #endif
 
 /* reference count */
+#ifndef FC_REF_CONSTANT_VALUE
 #define FC_REF_CONSTANT_VALUE ((fc_atomic_int_t) -1)
+#endif
 #define FC_REF_CONSTANT {FC_REF_CONSTANT_VALUE}
 typedef struct _FcRef { fc_atomic_int_t count; } FcRef;
 static inline void   FcRefInit     (FcRef *r, int v) { r->count = v; }
index 2b60401..cebbb81 100644 (file)
  */
 #include "fcint.h"
 #include "fcarch.h"
+#include "fcmd5.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <fcntl.h>
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 #include <string.h>
 #include <limits.h>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <sys/time.h>
+
+#ifndef _WIN32
+  #include <sys/time.h>
+#else
+  #include <winsock2.h> /* for struct timeval */
+#endif
+
 #include <assert.h>
 #if defined(HAVE_MMAP) || defined(__CYGWIN__)
 #  include <unistd.h>
@@ -38,8 +47,6 @@
 #endif
 #if defined(_WIN32)
 #include <sys/locking.h>
-#else
-#include <uuid/uuid.h>
 #endif
 
 #ifndef O_BINARY
@@ -51,188 +58,59 @@ FcDirCacheCreateUUID (FcChar8  *dir,
                      FcBool    force,
                      FcConfig *config)
 {
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
-    FcChar8 *target;
-    FcBool ret = FcTrue;
-#ifndef _WIN32
-    FcChar8 *uuidname;
-
-    if (sysroot)
-       target = FcStrBuildFilename (sysroot, dir, NULL);
-    else
-       target = FcStrdup (dir);
-    uuidname = FcStrBuildFilename (target, ".uuid", NULL);
-
-    if (!uuidname)
-    {
-       FcStrFree (target);
-       return FcFalse;
-    }
-
-    if (force || access ((const char *) uuidname, F_OK) < 0)
-    {
-       FcAtomic *atomic;
-       int fd;
-       uuid_t uuid;
-       char out[37];
-       FcBool (* hash_add) (FcHashTable *, void*, void*);
-       struct stat statb;
-       struct timeval times[2];
-
-       if (FcStat (target, &statb) != 0)
-       {
-           ret = FcFalse;
-           goto bail1;
-       }
-       atomic = FcAtomicCreate (uuidname);
-       if (!atomic)
-       {
-           ret = FcFalse;
-           goto bail1;
-       }
-       if (!FcAtomicLock (atomic))
-       {
-           ret = FcFalse;
-           goto bail2;
-       }
-       fd = FcOpen ((char *)FcAtomicNewFile (atomic), O_RDWR | O_CREAT, 0644);
-       if (fd == -1)
-       {
-           ret = FcFalse;
-           goto bail3;
-       }
-       uuid_generate_random (uuid);
-       if (force)
-           hash_add = FcHashTableReplace;
-       else
-           hash_add = FcHashTableAdd;
-       if (!hash_add (config->uuid_table, target, uuid))
-       {
-           ret = FcFalse;
-           FcAtomicDeleteNew (atomic);
-           close (fd);
-           goto bail3;
-       }
-       uuid_unparse (uuid, out);
-       if (FcDebug () & FC_DBG_CACHE)
-           printf ("FcDirCacheCreateUUID %s: %s\n", uuidname, out);
-       write (fd, out, strlen (out));
-       close (fd);
-       FcAtomicReplaceOrig (atomic);
-    bail3:
-       FcAtomicUnlock (atomic);
-    bail2:
-       FcAtomicDestroy (atomic);
-
-       if (ret)
-       {
-           /* revert mtime of the directory */
-           times[0].tv_sec = statb.st_atime;
-           times[1].tv_sec = statb.st_mtime;
-#ifdef HAVE_STRUCT_STAT_ST_MTIM
-           times[0].tv_usec = statb.st_atim.tv_nsec / 1000;
-           times[1].tv_usec = statb.st_mtim.tv_nsec / 1000;
-#else
-           times[0].tv_usec = 0;
-           times[1].tv_usec = 0;
-#endif
-           if (utimes ((const  char *) target, times) != 0)
-           {
-               fprintf (stderr, "Unable to revert mtime: %s\n", target);
-           }
-       }
-    }
-bail1:
-    FcStrFree (uuidname);
-    FcStrFree (target);
-#endif
-
-    return ret;
+    return FcTrue;
 }
 
 FcBool
 FcDirCacheDeleteUUID (const FcChar8  *dir,
                      FcConfig       *config)
 {
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
-    FcChar8 *target;
     FcBool ret = FcTrue;
-
-    if (sysroot)
-       target = FcStrBuildFilename (sysroot, dir, ".uuid", NULL);
-    else
-       target = FcStrBuildFilename (dir, ".uuid", NULL);
-
-    ret = unlink ((char *) target) == 0;
-    FcHashTableRemove (config->uuid_table, target);
-    FcStrFree(target);
-
-    return ret;
-}
-
 #ifndef _WIN32
-static void
-FcDirCacheReadUUID (FcChar8  *dir,
-                   FcConfig *config)
-{
-    void *u;
-    uuid_t uuid;
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
-    FcChar8 *target;
+    const FcChar8 *sysroot;
+    FcChar8 *target, *d;
+    struct stat statb;
+    struct timeval times[2];
 
+    config = FcConfigReference (config);
+    if (!config)
+       return FcFalse;
+    sysroot = FcConfigGetSysRoot (config);
     if (sysroot)
-       target = FcStrBuildFilename (sysroot, dir, NULL);
+       d = FcStrBuildFilename (sysroot, dir, NULL);
     else
-       target = FcStrdup (dir);
-
-    if (!FcHashTableFind (config->uuid_table, target, &u))
+       d = FcStrBuildFilename (dir, NULL);
+    if (FcStat (d, &statb) != 0)
     {
-       FcChar8 *uuidname = FcStrBuildFilename (target, ".uuid", NULL);
-       int fd;
-
-       if ((fd = FcOpen ((char *) uuidname, O_RDONLY)) >= 0)
-       {
-           char suuid[37];
-           ssize_t len;
-
-           memset (suuid, 0, sizeof (suuid));
-           len = read (fd, suuid, 36);
-           if (len != -1)
-           {
-               suuid[len] = 0;
-               memset (uuid, 0, sizeof (uuid));
-               if (uuid_parse (suuid, uuid) == 0)
-               {
-                   if (FcDebug () & FC_DBG_CACHE)
-                       printf ("FcDirCacheReadUUID %s -> %s\n", uuidname, suuid);
-                   FcHashTableAdd (config->uuid_table, target, uuid);
-               }
-           }
-           close (fd);
-       }
-       else
+       ret = FcFalse;
+       goto bail;
+    }
+    target = FcStrBuildFilename (d, ".uuid", NULL);
+    ret = unlink ((char *) target) == 0;
+    if (ret)
+    {
+       times[0].tv_sec = statb.st_atime;
+       times[1].tv_sec = statb.st_mtime;
+#ifdef HAVE_STRUCT_STAT_ST_MTIM
+       times[0].tv_usec = statb.st_atim.tv_nsec / 1000;
+       times[1].tv_usec = statb.st_mtim.tv_nsec / 1000;
+#else
+       times[0].tv_usec = 0;
+       times[1].tv_usec = 0;
+#endif
+       if (utimes ((const char *) d, times) != 0)
        {
-           if (FcDebug () & FC_DBG_CACHE)
-               printf ("FcDirCacheReadUUID Unable to read %s\n", uuidname);
+           fprintf (stderr, "Unable to revert mtime: %s\n", d);
        }
-       FcStrFree (uuidname);
     }
-    else
-       FcHashUuidFree (u);
     FcStrFree (target);
-}
+bail:
+    FcStrFree (d);
 #endif
+    FcConfigDestroy (config);
 
-struct MD5Context {
-        FcChar32 buf[4];
-        FcChar32 bits[2];
-        unsigned char in[64];
-};
-
-static void MD5Init(struct MD5Context *ctx);
-static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned len);
-static void MD5Final(unsigned char digest[16], struct MD5Context *ctx);
-static void MD5Transform(FcChar32 buf[4], FcChar32 in[16]);
+    return ret;
+}
 
 #define CACHEBASE_LEN (1 + 36 + 1 + sizeof (FC_ARCHITECTURE) + sizeof (FC_CACHE_SUFFIX))
 
@@ -257,7 +135,7 @@ FcCacheIsMmapSafe (int fd)
            status =  use ? MMAP_USE : MMAP_DONT_USE;
        else
            status = MMAP_CHECK_FS;
-       (void) fc_atomic_ptr_cmpexch (&static_status, NULL, (void *) status);
+       (void) fc_atomic_ptr_cmpexch (&static_status, NULL, (void *) (intptr_t) status);
     }
 
     if (status == MMAP_CHECK_FS)
@@ -273,18 +151,49 @@ static const char bin2hex[] = { '0', '1', '2', '3',
                                'c', 'd', 'e', 'f' };
 
 static FcChar8 *
-FcDirCacheBasenameMD5 (const FcChar8 *dir, FcChar8 cache_base[CACHEBASE_LEN])
+FcDirCacheBasenameMD5 (FcConfig *config, const FcChar8 *dir, FcChar8 cache_base[CACHEBASE_LEN])
 {
+    FcChar8            *mapped_dir = NULL;
     unsigned char      hash[16];
-    FcChar8            *hex_hash;
+    FcChar8            *hex_hash, *key = NULL;
     int                        cnt;
     struct MD5Context  ctx;
-
+    const FcChar8      *salt, *orig_dir = NULL;
+
+    salt = FcConfigMapSalt (config, dir);
+    /* Obtain a path where "dir" is mapped to.
+     * In case:
+     * <remap-dir as-path="/usr/share/fonts">/run/host/fonts</remap-dir>
+     *
+     * FcConfigMapFontPath (config, "/run/host/fonts") will returns "/usr/share/fonts".
+     */
+    mapped_dir = FcConfigMapFontPath(config, dir);
+    if (mapped_dir)
+    {
+       orig_dir = dir;
+       dir = mapped_dir;
+    }
+    if (salt)
+    {
+       size_t dl = strlen ((const char *) dir);
+       size_t sl = strlen ((const char *) salt);
+
+       key = (FcChar8 *) malloc (dl + sl + 1);
+       memcpy (key, dir, dl);
+       memcpy (key + dl, salt, sl + 1);
+       key[dl + sl] = 0;
+       if (!orig_dir)
+               orig_dir = dir;
+       dir = key;
+    }
     MD5Init (&ctx);
     MD5Update (&ctx, (const unsigned char *)dir, strlen ((const char *) dir));
 
     MD5Final (hash, &ctx);
 
+    if (key)
+       FcStrFree (key);
+
     cache_base[0] = '/';
     hex_hash = cache_base + 1;
     for (cnt = 0; cnt < 16; ++cnt)
@@ -294,32 +203,58 @@ FcDirCacheBasenameMD5 (const FcChar8 *dir, FcChar8 cache_base[CACHEBASE_LEN])
     }
     hex_hash[2*cnt] = 0;
     strcat ((char *) cache_base, "-" FC_ARCHITECTURE FC_CACHE_SUFFIX);
+    if (FcDebug() & FC_DBG_CACHE)
+    {
+       printf ("cache: %s (dir: %s%s%s%s%s%s)\n", cache_base, orig_dir ? orig_dir : dir, mapped_dir ? " (mapped to " : "", mapped_dir ? (char *)mapped_dir : "", mapped_dir ? ")" : "", salt ? ", salt: " : "", salt ? (char *)salt : "");
+    }
+
+    if (mapped_dir)
+       FcStrFree(mapped_dir);
 
     return cache_base;
 }
 
 #ifndef _WIN32
 static FcChar8 *
-FcDirCacheBasenameUUID (const FcChar8 *dir, FcChar8 cache_base[CACHEBASE_LEN], FcConfig *config)
+FcDirCacheBasenameUUID (FcConfig *config, const FcChar8 *dir, FcChar8 cache_base[CACHEBASE_LEN])
 {
-    void *u;
-    FcChar8 *target;
+    FcChar8 *target, *fuuid;
     const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    int fd;
 
+    /* We don't need to apply remapping here. because .uuid was created at that very directory
+     * to determine the cache name no matter where it was mapped to.
+     */
+    cache_base[0] = 0;
     if (sysroot)
        target = FcStrBuildFilename (sysroot, dir, NULL);
     else
        target = FcStrdup (dir);
-    if (FcHashTableFind (config->uuid_table, target, &u))
+    fuuid = FcStrBuildFilename (target, ".uuid", NULL);
+    if ((fd = FcOpen ((char *) fuuid, O_RDONLY)) != -1)
     {
-       uuid_unparse (u, (char *) cache_base);
+       char suuid[37];
+       ssize_t len;
+
+       memset (suuid, 0, sizeof (suuid));
+       len = read (fd, suuid, 36);
+       suuid[36] = 0;
+       close (fd);
+       if (len < 0)
+           goto bail;
+       cache_base[0] = '/';
+       strcpy ((char *)&cache_base[1], suuid);
        strcat ((char *) cache_base, "-" FC_ARCHITECTURE FC_CACHE_SUFFIX);
-       FcHashUuidFree (u);
-       FcStrFree (target);
-       return cache_base;
+       if (FcDebug () & FC_DBG_CACHE)
+       {
+           printf ("cache fallbacks to: %s (dir: %s)\n", cache_base, dir);
+       }
     }
+bail:
+    FcStrFree (fuuid);
     FcStrFree (target);
-    return NULL;
+
+    return cache_base;
 }
 #endif
 
@@ -328,19 +263,31 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
 {
     FcChar8    *cache_hashed = NULL;
     FcChar8    cache_base[CACHEBASE_LEN];
+#ifndef _WIN32
+    FcChar8     uuid_cache_base[CACHEBASE_LEN];
+#endif
     FcStrList  *list;
     FcChar8    *cache_dir;
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    const FcChar8 *sysroot;
+    FcBool     ret = FcTrue;
 
+    config = FcConfigReference (config);
+    if (!config)
+       return FcFalse;
+    sysroot = FcConfigGetSysRoot (config);
+
+    FcDirCacheBasenameMD5 (config, dir, cache_base);
 #ifndef _WIN32
-    if (!FcDirCacheBasenameUUID (dir, cache_base, config))
+    FcDirCacheBasenameUUID (config, dir, uuid_cache_base);
 #endif
-       FcDirCacheBasenameMD5 (dir, cache_base);
 
     list = FcStrListCreate (config->cacheDirs);
     if (!list)
-        return FcFalse;
-       
+    {
+       ret = FcFalse;
+       goto bail;
+    }
+
     while ((cache_dir = FcStrListNext (list)))
     {
        if (sysroot)
@@ -350,14 +297,30 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
         if (!cache_hashed)
            break;
        (void) unlink ((char *) cache_hashed);
-       FcDirCacheDeleteUUID (dir, config);
        FcStrFree (cache_hashed);
+#ifndef _WIN32
+       if (uuid_cache_base[0] != 0)
+       {
+           if (sysroot)
+               cache_hashed = FcStrBuildFilename (sysroot, cache_dir, uuid_cache_base, NULL);
+           else
+               cache_hashed = FcStrBuildFilename (cache_dir, uuid_cache_base, NULL);
+           if (!cache_hashed)
+               break;
+           (void) unlink ((char *) cache_hashed);
+           FcStrFree (cache_hashed);
+       }
+#endif
     }
     FcStrListDone (list);
+    FcDirCacheDeleteUUID (dir, config);
     /* return FcFalse if something went wrong */
     if (cache_dir)
-       return FcFalse;
-    return FcTrue;
+       ret = FcFalse;
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 static int
@@ -390,7 +353,7 @@ FcDirCacheOpenFile (const FcChar8 *cache_file, struct stat *file_stat)
 static FcBool
 FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
                   FcBool (*callback) (FcConfig *config, int fd, struct stat *fd_stat,
-                                      struct stat *dir_stat, void *closure),
+                                      struct stat *dir_stat, struct timeval *cache_mtime, void *closure),
                   void *closure, FcChar8 **cache_file_ret)
 {
     int                fd = -1;
@@ -400,6 +363,7 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
     struct stat file_stat, dir_stat;
     FcBool     ret = FcFalse;
     const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    struct timeval latest_mtime = (struct timeval){ 0 };
 
     if (sysroot)
        d = FcStrBuildFilename (sysroot, dir, NULL);
@@ -412,18 +376,18 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
     }
     FcStrFree (d);
 
-#ifndef _WIN32
-    if (!FcDirCacheBasenameUUID (dir, cache_base, config))
-#endif
-       FcDirCacheBasenameMD5 (dir, cache_base);
+    FcDirCacheBasenameMD5 (config, dir, cache_base);
 
     list = FcStrListCreate (config->cacheDirs);
     if (!list)
         return FcFalse;
-       
+
     while ((cache_dir = FcStrListNext (list)))
     {
         FcChar8        *cache_hashed;
+#ifndef _WIN32
+       FcBool retried = FcFalse;
+#endif
 
        if (sysroot)
            cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
@@ -431,23 +395,56 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
            cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
         if (!cache_hashed)
            break;
+#ifndef _WIN32
+      retry:
+#endif
         fd = FcDirCacheOpenFile (cache_hashed, &file_stat);
         if (fd >= 0) {
-           ret = (*callback) (config, fd, &file_stat, &dir_stat, closure);
+           ret = (*callback) (config, fd, &file_stat, &dir_stat, &latest_mtime, closure);
            close (fd);
            if (ret)
            {
                if (cache_file_ret)
+               {
+                   if (*cache_file_ret)
+                       FcStrFree (*cache_file_ret);
                    *cache_file_ret = cache_hashed;
+               }
                else
                    FcStrFree (cache_hashed);
-               break;
            }
+           else
+               FcStrFree (cache_hashed);
+       }
+#ifndef _WIN32
+       else if (!retried)
+       {
+           FcChar8     uuid_cache_base[CACHEBASE_LEN];
+
+           retried = FcTrue;
+           FcDirCacheBasenameUUID (config, dir, uuid_cache_base);
+           if (uuid_cache_base[0] != 0)
+           {
+               FcStrFree (cache_hashed);
+               if (sysroot)
+                   cache_hashed = FcStrBuildFilename (sysroot, cache_dir, uuid_cache_base, NULL);
+               else
+                   cache_hashed = FcStrBuildFilename (cache_dir, uuid_cache_base, NULL);
+               if (!cache_hashed)
+                   break;
+               goto retry;
+           }
+           else
+               FcStrFree (cache_hashed);
        }
-       FcStrFree (cache_hashed);
+#endif
+       else
+           FcStrFree (cache_hashed);
     }
     FcStrListDone (list);
 
+    if (closure)
+       return !!(*((FcCache **)closure) != NULL);
     return ret;
 }
 
@@ -498,6 +495,7 @@ retry:
     FcMutexInit (lock);
     if (!fc_atomic_ptr_cmpexch (&cache_lock, NULL, lock)) {
       FcMutexFinish (lock);
+      free (lock);
       goto retry;
     }
 
@@ -512,7 +510,9 @@ retry:
 static void
 unlock_cache (void)
 {
-  FcMutexUnlock (cache_lock);
+  FcMutex *lock;
+  lock = fc_atomic_ptr_get (&cache_lock);
+  FcMutexUnlock (lock);
 }
 
 static void
@@ -685,15 +685,18 @@ FcCacheRemoveUnlocked (FcCache *cache)
     while (fcCacheMaxLevel > 0 && fcCacheChains[fcCacheMaxLevel - 1] == NULL)
        fcCacheMaxLevel--;
 
-    allocated = s->allocated;
-    while (allocated)
+    if (s)
     {
-       /* First element in allocated chunk is the free list */
-       next = *(void **)allocated;
-       free (allocated);
-       allocated = next;
+       allocated = s->allocated;
+       while (allocated)
+       {
+           /* First element in allocated chunk is the free list */
+           next = *(void **)allocated;
+           free (allocated);
+           allocated = next;
+       }
+       free (s);
     }
-    free (s);
 }
 
 static FcCache *
@@ -791,9 +794,17 @@ FcCacheFini (void)
 {
     int                    i;
 
-    for (i = 0; i < FC_CACHE_MAX_LEVEL; i++)
-       assert (fcCacheChains[i] == NULL);
-    assert (fcCacheMaxLevel == 0);
+    if (FcDebug() & FC_DBG_CACHE)
+    {
+       for (i = 0; i < FC_CACHE_MAX_LEVEL; i++)
+       {
+           if (fcCacheChains[i] != NULL)
+           {
+               FcCacheSkip *s = fcCacheChains[i];
+               fprintf(stderr, "Fontconfig error: not freed %p (dir: %s, refcount %" FC_ATOMIC_INT_FORMAT ")\n", s->cache, FcCacheDir(s->cache), s->ref.count);
+           }
+       }
+    }
 
     free_lock ();
 }
@@ -832,7 +843,7 @@ FcCacheTimeValid (FcConfig *config, FcCache *cache, struct stat *dir_stat)
                FcCacheDir (cache), cache->checksum, (int) dir_stat->st_mtime);
 #endif
 
-    return cache->checksum == (int) dir_stat->st_mtime && fnano;
+    return dir_stat->st_mtime == 0 || (cache->checksum == (int) dir_stat->st_mtime && fnano);
 }
 
 static FcBool
@@ -948,7 +959,7 @@ FcDirCacheMapFd (FcConfig *config, int fd, struct stat *fd_stat, struct stat *di
     {
 #if defined(HAVE_MMAP) || defined(__CYGWIN__)
        cache = mmap (0, fd_stat->st_size, PROT_READ, MAP_SHARED, fd, 0);
-#if (HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED)
+#if defined(HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED)
        posix_fadvise (fd, 0, fd_stat->st_size, POSIX_FADV_WILLNEED);
 #endif
        if (cache == MAP_FAILED)
@@ -1005,7 +1016,7 @@ FcDirCacheMapFd (FcConfig *config, int fd, struct stat *fd_stat, struct stat *di
     /* Mark allocated caches so they're freed rather than unmapped */
     if (allocated)
        cache->magic = FC_CACHE_MAGIC_ALLOC;
-       
+
     return cache;
 }
 
@@ -1025,12 +1036,53 @@ FcDirCacheUnload (FcCache *cache)
 }
 
 static FcBool
-FcDirCacheMapHelper (FcConfig *config, 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, struct timeval *latest_cache_mtime, void *closure)
 {
     FcCache *cache = FcDirCacheMapFd (config, fd, fd_stat, dir_stat);
+    struct timeval cache_mtime, zero_mtime = { 0, 0}, dir_mtime;
 
     if (!cache)
        return FcFalse;
+    cache_mtime.tv_sec = fd_stat->st_mtime;
+    dir_mtime.tv_sec = dir_stat->st_mtime;
+#ifdef HAVE_STRUCT_STAT_ST_MTIM
+    cache_mtime.tv_usec = fd_stat->st_mtim.tv_nsec / 1000;
+    dir_mtime.tv_usec = dir_stat->st_mtim.tv_nsec / 1000;
+#else
+    cache_mtime.tv_usec = 0;
+    dir_mtime.tv_usec = 0;
+#endif
+    /* special take care of OSTree */
+    if (!timercmp (&zero_mtime, &dir_mtime, !=))
+    {
+       if (!timercmp (&zero_mtime, &cache_mtime, !=))
+       {
+           if (*((FcCache **) closure))
+               FcDirCacheUnload (*((FcCache **) closure));
+       }
+       else if (*((FcCache **) closure) && !timercmp (&zero_mtime, latest_cache_mtime, !=))
+       {
+           FcDirCacheUnload (cache);
+           return FcFalse;
+       }
+       else if (timercmp (latest_cache_mtime, &cache_mtime, <))
+       {
+           if (*((FcCache **) closure))
+               FcDirCacheUnload (*((FcCache **) closure));
+       }
+    }
+    else if (timercmp (latest_cache_mtime, &cache_mtime, <))
+    {
+       if (*((FcCache **) closure))
+           FcDirCacheUnload (*((FcCache **) closure));
+    }
+    else
+    {
+       FcDirCacheUnload (cache);
+       return FcFalse;
+    }
+    latest_cache_mtime->tv_sec = cache_mtime.tv_sec;
+    latest_cache_mtime->tv_usec = cache_mtime.tv_usec;
     *((FcCache **) closure) = cache;
     return FcTrue;
 }
@@ -1040,13 +1092,15 @@ FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file)
 {
     FcCache *cache = NULL;
 
-#ifndef _WIN32
-    FcDirCacheReadUUID ((FcChar8 *) dir, config);
-#endif
+    config = FcConfigReference (config);
+    if (!config)
+       return NULL;
     if (!FcDirCacheProcess (config, dir,
                            FcDirCacheMapHelper,
                            &cache, cache_file))
-       return NULL;
+       cache = NULL;
+
+    FcConfigDestroy (config);
 
     return cache;
 }
@@ -1055,16 +1109,23 @@ FcCache *
 FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
 {
     int        fd;
-    FcCache *cache;
+    FcCache *cache = NULL;
     struct stat        my_file_stat;
+    FcConfig *config;
 
     if (!file_stat)
        file_stat = &my_file_stat;
-    fd = FcDirCacheOpenFile (cache_file, file_stat);
-    if (fd < 0)
+    config = FcConfigReference (NULL);
+    if (!config)
        return NULL;
-    cache = FcDirCacheMapFd (FcConfigGetCurrent (), fd, file_stat, NULL);
-    close (fd);
+    fd = FcDirCacheOpenFile (cache_file, file_stat);
+    if (fd >= 0)
+    {
+       cache = FcDirCacheMapFd (config, fd, file_stat, NULL);
+       close (fd);
+    }
+    FcConfigDestroy (config);
+
     return cache;
 }
 
@@ -1079,6 +1140,7 @@ FcDirChecksum (struct stat *statb)
     source_date_epoch = getenv("SOURCE_DATE_EPOCH");
     if (source_date_epoch)
     {
+       errno = 0;
        epoch = strtoull(source_date_epoch, &endptr, 10);
 
        if (endptr == source_date_epoch)
@@ -1087,14 +1149,14 @@ FcDirChecksum (struct stat *statb)
        else if ((errno == ERANGE && (epoch == ULLONG_MAX || epoch == 0))
                || (errno != 0 && epoch == 0))
            fprintf (stderr,
-                    "Fontconfig: SOURCE_DATE_EPOCH: strtoull: %s: %llu\n",
+                    "Fontconfig: SOURCE_DATE_EPOCH: strtoull: %s: %" FC_UINT64_FORMAT "\n",
                     strerror(errno), epoch);
        else if (*endptr != '\0')
            fprintf (stderr,
                     "Fontconfig: SOURCE_DATE_EPOCH has trailing garbage\n");
        else if (epoch > ULONG_MAX)
            fprintf (stderr,
-                    "Fontconfig: SOURCE_DATE_EPOCH must be <= %lu but saw: %llu\n",
+                    "Fontconfig: SOURCE_DATE_EPOCH must be <= %lu but saw: %" FC_UINT64_FORMAT "\n",
                     ULONG_MAX, epoch);
        else if (epoch < ret)
            /* Only override if directory is newer */
@@ -1122,7 +1184,7 @@ FcDirChecksumNano (struct stat *statb)
  * the magic number and the size field
  */
 static FcBool
-FcDirCacheValidateHelper (FcConfig *config, 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, struct timeval *latest_cache_mtime, void *closure FC_UNUSED)
 {
     FcBool  ret = FcTrue;
     FcCache    c;
@@ -1156,12 +1218,16 @@ FcBool
 FcDirCacheValid (const FcChar8 *dir)
 {
     FcConfig   *config;
+    FcBool     ret;
 
-    config = FcConfigGetCurrent ();
+    config = FcConfigReference (NULL);
     if (!config)
         return FcFalse;
 
-    return FcDirCacheValidConfig (dir, config);
+    ret = FcDirCacheValidConfig (dir, config);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 /*
@@ -1340,16 +1406,15 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
            }
        }
     }
+    if (!test_dir)
+       fprintf (stderr, "Fontconfig error: No writable cache directories\n");
     if (d)
        FcStrFree (d);
     FcStrListDone (list);
     if (!cache_dir)
        return FcFalse;
 
-#ifndef _WIN32
-    if (!FcDirCacheBasenameUUID (dir, cache_base, config))
-#endif
-       FcDirCacheBasenameMD5 (dir, cache_base);
+    FcDirCacheBasenameMD5 (config, dir, cache_base);
     cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
     FcStrFree (cache_dir);
     if (!cache_hashed)
@@ -1442,9 +1507,13 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
     FcCache    *cache;
     struct stat        target_stat;
     const FcChar8 *sysroot;
+    FcConfig   *config;
 
+    config = FcConfigReference (NULL);
+    if (!config)
+       return FcFalse;
     /* FIXME: this API needs to support non-current FcConfig */
-    sysroot = FcConfigGetSysRoot (NULL);
+    sysroot = FcConfigGetSysRoot (config);
     if (sysroot)
        dir = FcStrBuildFilename (sysroot, cache_dir, NULL);
     else
@@ -1452,7 +1521,8 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
     if (!dir)
     {
        fprintf (stderr, "Fontconfig error: %s: out of memory\n", cache_dir);
-       return FcFalse;
+       ret = FcFalse;
+       goto bail;
     }
     if (access ((char *) dir, W_OK) != 0)
     {
@@ -1529,8 +1599,10 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
     }
 
     closedir (d);
-  bail0:
+bail0:
     FcStrFree (dir);
+bail:
+    FcConfigDestroy (config);
 
     return ret;
 }
@@ -1546,10 +1618,7 @@ FcDirCacheLock (const FcChar8 *dir,
     const FcChar8 *sysroot = FcConfigGetSysRoot (config);
     int fd = -1;
 
-#ifndef _WIN32
-    if (!FcDirCacheBasenameUUID (dir, cache_base, config))
-#endif
-       FcDirCacheBasenameMD5 (dir, cache_base);
+    FcDirCacheBasenameMD5 (config, dir, cache_base);
     list = FcStrListCreate (config->cacheDirs);
     if (!list)
        return -1;
@@ -1639,7 +1708,7 @@ FcCacheCopySet args1(const FcCache *c)
     for (i = 0; i < old->nfont; i++)
     {
        FcPattern   *font = FcFontSetFont (old, i);
-       
+
        FcPatternReference (font);
        if (!FcFontSetAdd (new, font))
        {
@@ -1668,250 +1737,6 @@ FcCacheNumFont args1(const FcCache *c)
     return FcCacheSet(c)->nfont;
 }
 
-/*
- * This code implements the MD5 message-digest algorithm.
- * The algorithm is due to Ron Rivest. This code was
- * written by Colin Plumb in 1993, no copyright is claimed.
- * This code is in the public domain; do with it what you wish.
- *
- * Equivalent code is available from RSA Data Security, Inc.
- * This code has been tested against that, and is equivalent,
- * except that you don't need to include two pages of legalese
- * with every copy.
- *
- * To compute the message digest of a chunk of bytes, declare an
- * MD5Context structure, pass it to MD5Init, call MD5Update as
- * needed on buffers full of bytes, and then call MD5Final, which
- * will fill a supplied 16-byte array with the digest.
- */
-
-#ifndef HIGHFIRST
-#define byteReverse(buf, len)  /* Nothing */
-#else
-/*
- * Note: this code is harmless on little-endian machines.
- */
-void byteReverse(unsigned char *buf, unsigned longs)
-{
-    FcChar32 t;
-    do {
-       t = (FcChar32) ((unsigned) buf[3] << 8 | buf[2]) << 16 |
-           ((unsigned) buf[1] << 8 | buf[0]);
-       *(FcChar32 *) buf = t;
-       buf += 4;
-    } while (--longs);
-}
-#endif
-
-/*
- * Start MD5 accumulation.  Set bit count to 0 and buffer to mysterious
- * initialization constants.
- */
-static void MD5Init(struct MD5Context *ctx)
-{
-    ctx->buf[0] = 0x67452301;
-    ctx->buf[1] = 0xefcdab89;
-    ctx->buf[2] = 0x98badcfe;
-    ctx->buf[3] = 0x10325476;
-
-    ctx->bits[0] = 0;
-    ctx->bits[1] = 0;
-}
-
-/*
- * Update context to reflect the concatenation of another buffer full
- * of bytes.
- */
-static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned len)
-{
-    FcChar32 t;
-
-    /* Update bitcount */
-
-    t = ctx->bits[0];
-    if ((ctx->bits[0] = t + ((FcChar32) len << 3)) < t)
-       ctx->bits[1]++;         /* Carry from low to high */
-    ctx->bits[1] += len >> 29;
-
-    t = (t >> 3) & 0x3f;       /* Bytes already in shsInfo->data */
-
-    /* Handle any leading odd-sized chunks */
-
-    if (t) {
-       unsigned char *p = (unsigned char *) ctx->in + t;
-
-       t = 64 - t;
-       if (len < t) {
-           memcpy(p, buf, len);
-           return;
-       }
-       memcpy(p, buf, t);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
-       buf += t;
-       len -= t;
-    }
-    /* Process data in 64-byte chunks */
-
-    while (len >= 64) {
-       memcpy(ctx->in, buf, 64);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
-       buf += 64;
-       len -= 64;
-    }
-
-    /* Handle any remaining bytes of data. */
-
-    memcpy(ctx->in, buf, len);
-}
-
-/*
- * Final wrapup - pad to 64-byte boundary with the bit pattern
- * 1 0* (64-bit count of bits processed, MSB-first)
- */
-static void MD5Final(unsigned char digest[16], struct MD5Context *ctx)
-{
-    unsigned count;
-    unsigned char *p;
-
-    /* Compute number of bytes mod 64 */
-    count = (ctx->bits[0] >> 3) & 0x3F;
-
-    /* Set the first char of padding to 0x80.  This is safe since there is
-       always at least one byte free */
-    p = ctx->in + count;
-    *p++ = 0x80;
-
-    /* Bytes of padding needed to make 64 bytes */
-    count = 64 - 1 - count;
-
-    /* Pad out to 56 mod 64 */
-    if (count < 8) {
-       /* Two lots of padding:  Pad the first block to 64 bytes */
-       memset(p, 0, count);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
-
-       /* Now fill the next block with 56 bytes */
-       memset(ctx->in, 0, 56);
-    } else {
-       /* Pad block to 56 bytes */
-       memset(p, 0, count - 8);
-    }
-    byteReverse(ctx->in, 14);
-
-    /* Append length in bits and transform */
-    ((FcChar32 *) ctx->in)[14] = ctx->bits[0];
-    ((FcChar32 *) ctx->in)[15] = ctx->bits[1];
-
-    MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
-    byteReverse((unsigned char *) ctx->buf, 4);
-    memcpy(digest, ctx->buf, 16);
-    memset(ctx, 0, sizeof(*ctx));        /* In case it's sensitive */
-}
-
-
-/* The four core functions - F1 is optimized somewhat */
-
-/* #define F1(x, y, z) (x & y | ~x & z) */
-#define F1(x, y, z) (z ^ (x & (y ^ z)))
-#define F2(x, y, z) F1(z, x, y)
-#define F3(x, y, z) (x ^ y ^ z)
-#define F4(x, y, z) (y ^ (x | ~z))
-
-/* This is the central step in the MD5 algorithm. */
-#define MD5STEP(f, w, x, y, z, data, s) \
-       ( w += f(x, y, z) + data,  w = w<<s | w>>(32-s),  w += x )
-
-/*
- * The core of the MD5 algorithm, this alters an existing MD5 hash to
- * reflect the addition of 16 longwords of new data.  MD5Update blocks
- * the data and converts bytes into longwords for this routine.
- */
-static void MD5Transform(FcChar32 buf[4], FcChar32 in[16])
-{
-    register FcChar32 a, b, c, d;
-
-    a = buf[0];
-    b = buf[1];
-    c = buf[2];
-    d = buf[3];
-
-    MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
-    MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
-    MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
-    MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
-    MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
-    MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
-    MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
-    MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
-    MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
-    MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
-    MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
-    MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
-    MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
-    MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
-    MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
-    MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
-
-    MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
-    MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
-    MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
-    MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
-    MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
-    MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
-    MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
-    MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
-    MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
-    MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
-    MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
-    MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
-    MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
-    MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
-    MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
-    MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
-
-    MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
-    MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
-    MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
-    MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
-    MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
-    MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
-    MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
-    MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
-    MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
-    MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
-    MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
-    MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
-    MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
-    MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
-    MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
-    MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
-
-    MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
-    MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
-    MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
-    MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
-    MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
-    MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
-    MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
-    MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
-    MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
-    MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
-    MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
-    MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
-    MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
-    MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
-    MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
-    MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
-
-    buf[0] += a;
-    buf[1] += b;
-    buf[2] += c;
-    buf[3] += d;
-}
-
 FcBool
 FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
 {
@@ -1975,15 +1800,20 @@ FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
 }
 
 void
-FcCacheCreateTagFile (const FcConfig *config)
+FcCacheCreateTagFile (FcConfig *config)
 {
     FcChar8   *cache_dir = NULL, *d = NULL;
     FcStrList *list;
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    const FcChar8 *sysroot;
+
+    config = FcConfigReference (config);
+    if (!config)
+       return;
+    sysroot = FcConfigGetSysRoot (config);
 
     list = FcConfigGetCacheDirs (config);
     if (!list)
-       return;
+       goto bail;
 
     while ((cache_dir = FcStrListNext (list)))
     {
@@ -1999,6 +1829,8 @@ FcCacheCreateTagFile (const FcConfig *config)
     if (d)
        FcStrFree (d);
     FcStrListDone (list);
+bail:
+    FcConfigDestroy (config);
 }
 
 #define __fccache__
index d7c48e8..f62e228 100644 (file)
 /* Objects MT-safe for readonly access. */
 
 #include "fcint.h"
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 #include <sys/types.h>
 
 #if defined (_WIN32) && !defined (R_OK)
 #define R_OK 4
 #endif
 
+#if defined(_WIN32) && !defined(S_ISFIFO)
+#define S_ISFIFO(m) 0
+#endif
+
 static FcConfig    *_fcConfig; /* MT-safe */
+static FcMutex    *_lock;
+
+static void
+lock_config (void)
+{
+    FcMutex *lock;
+retry:
+    lock = fc_atomic_ptr_get (&_lock);
+    if (!lock)
+    {
+       lock = (FcMutex *) malloc (sizeof (FcMutex));
+       FcMutexInit (lock);
+       if (!fc_atomic_ptr_cmpexch (&_lock, NULL, lock))
+       {
+           FcMutexFinish (lock);
+           free (lock);
+           goto retry;
+       }
+       FcMutexLock (lock);
+       /* Initialize random state */
+       FcRandom ();
+       return;
+    }
+    FcMutexLock (lock);
+}
+
+static void
+unlock_config (void)
+{
+    FcMutex *lock;
+    lock = fc_atomic_ptr_get (&_lock);
+    FcMutexUnlock (lock);
+}
+
+static void
+free_lock (void)
+{
+    FcMutex *lock;
+    lock = fc_atomic_ptr_get (&_lock);
+    if (lock && fc_atomic_ptr_cmpexch (&_lock, lock, NULL))
+    {
+       FcMutexFinish (lock);
+       free (lock);
+    }
+}
 
 static FcConfig *
 FcConfigEnsure (void)
@@ -44,26 +95,15 @@ retry:
     {
        config = FcInitLoadConfigAndFonts ();
 
-       if (!fc_atomic_ptr_cmpexch (&_fcConfig, NULL, config)) {
-           FcConfigDestroy (config);
+       if (!config || !fc_atomic_ptr_cmpexch (&_fcConfig, NULL, config)) {
+           if (config)
+               FcConfigDestroy (config);
            goto retry;
        }
     }
     return config;
 }
 
-static FcChar32
-FcHashAsStrIgnoreCase (const void *data)
-{
-    return FcStrHashIgnoreCase (data);
-}
-
-static int
-FcCompareAsStr (const void *v1, const void *v2)
-{
-    return FcStrCmp (v1, v2);
-}
-
 static void
 FcDestroyAsRule (void *data)
 {
@@ -76,12 +116,6 @@ FcDestroyAsRuleSet (void *data)
     FcRuleSetDestroy (data);
 }
 
-static void
-FcDestroyAsStr (void *data)
-{
-    FcStrFree (data);
-}
-
 FcBool
 FcConfigInit (void)
 {
@@ -94,9 +128,9 @@ FcConfigFini (void)
     FcConfig *cfg = fc_atomic_ptr_get (&_fcConfig);
     if (cfg && fc_atomic_ptr_cmpexch (&_fcConfig, cfg, NULL))
        FcConfigDestroy (cfg);
+    free_lock ();
 }
 
-
 FcConfig *
 FcConfigCreate (void)
 {
@@ -113,6 +147,10 @@ FcConfigCreate (void)
     if (!config->configDirs)
        goto bail1;
 
+    config->configMapDirs = FcStrSetCreate();
+    if (!config->configMapDirs)
+       goto bail1_5;
+
     config->configFiles = FcStrSetCreate ();
     if (!config->configFiles)
        goto bail2;
@@ -159,7 +197,7 @@ FcConfigCreate (void)
 
     config->expr_pool = NULL;
 
-    config->sysRoot = NULL;
+    config->sysRoot = FcStrRealPath ((const FcChar8 *) getenv("FONTCONFIG_SYSROOT"));
 
     config->rulesetList = FcPtrListCreate (FcDestroyAsRuleSet);
     if (!config->rulesetList)
@@ -168,13 +206,6 @@ FcConfigCreate (void)
     if (!config->availConfigFiles)
        goto bail10;
 
-    config->uuid_table = FcHashTableCreate (FcHashAsStrIgnoreCase,
-                                           FcCompareAsStr,
-                                           FcHashStrCopy,
-                                           FcHashUuidCopy,
-                                           FcDestroyAsStr,
-                                           FcHashUuidFree);
-
     FcRefInit (&config->ref, 1);
 
     return config;
@@ -199,6 +230,8 @@ bail4:
 bail3:
     FcStrSetDestroy (config->configFiles);
 bail2:
+    FcStrSetDestroy (config->configMapDirs);
+bail1_5:
     FcStrSetDestroy (config->configDirs);
 bail1:
     free (config);
@@ -233,12 +266,12 @@ FcConfigUptoDate (FcConfig *config)
 {
     FcFileTime config_time, config_dir_time, font_time;
     time_t     now = time(0);
+    FcBool     ret = FcTrue;
+
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
+       return FcFalse;
+
     config_time = FcConfigNewestFile (config->configFiles);
     config_dir_time = FcConfigNewestFile (config->configDirs);
     font_time = FcConfigNewestFile (config->fontDirs);
@@ -254,13 +287,19 @@ FcConfigUptoDate (FcConfig *config)
            fprintf (stderr,
                     "Fontconfig warning: Directory/file mtime in the future. New fonts may not be detected.\n");
            config->rescanTime = now;
-           return FcTrue;
+           goto bail;
        }
        else
-           return FcFalse;
+       {
+           ret = FcFalse;
+           goto bail;
+       }
     }
     config->rescanTime = now;
-    return FcTrue;
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcExpr *
@@ -287,12 +326,31 @@ FcConfigReference (FcConfig *config)
 {
     if (!config)
     {
-       config = FcConfigGetCurrent ();
+       /* lock during obtaining the value from _fcConfig and count up refcount there,
+        * there are the race between them.
+        */
+       lock_config ();
+    retry:
+       config = fc_atomic_ptr_get (&_fcConfig);
        if (!config)
-           return 0;
-    }
+       {
+           unlock_config ();
 
-    FcRefInc (&config->ref);
+           config = FcInitLoadConfigAndFonts ();
+           if (!config)
+               goto retry;
+           lock_config ();
+           if (!fc_atomic_ptr_cmpexch (&_fcConfig, NULL, config))
+           {
+               FcConfigDestroy (config);
+               goto retry;
+           }
+       }
+       FcRefInc (&config->ref);
+       unlock_config ();
+    }
+    else
+       FcRefInc (&config->ref);
 
     return config;
 }
@@ -304,41 +362,43 @@ FcConfigDestroy (FcConfig *config)
     FcExprPage *page;
     FcMatchKind        k;
 
-    if (FcRefDec (&config->ref) != 1)
-       return;
-
-    (void) fc_atomic_ptr_cmpexch (&_fcConfig, config, NULL);
+    if (config)
+    {
+       if (FcRefDec (&config->ref) != 1)
+           return;
 
-    FcStrSetDestroy (config->configDirs);
-    FcStrSetDestroy (config->fontDirs);
-    FcStrSetDestroy (config->cacheDirs);
-    FcStrSetDestroy (config->configFiles);
-    FcStrSetDestroy (config->acceptGlobs);
-    FcStrSetDestroy (config->rejectGlobs);
-    FcFontSetDestroy (config->acceptPatterns);
-    FcFontSetDestroy (config->rejectPatterns);
+       (void) fc_atomic_ptr_cmpexch (&_fcConfig, config, NULL);
 
-    for (k = FcMatchKindBegin; k < FcMatchKindEnd; k++)
-       FcPtrListDestroy (config->subst[k]);
-    FcPtrListDestroy (config->rulesetList);
-    FcStrSetDestroy (config->availConfigFiles);
-    for (set = FcSetSystem; set <= FcSetApplication; set++)
-       if (config->fonts[set])
-           FcFontSetDestroy (config->fonts[set]);
+       FcStrSetDestroy (config->configDirs);
+       FcStrSetDestroy (config->configMapDirs);
+       FcStrSetDestroy (config->fontDirs);
+       FcStrSetDestroy (config->cacheDirs);
+       FcStrSetDestroy (config->configFiles);
+       FcStrSetDestroy (config->acceptGlobs);
+       FcStrSetDestroy (config->rejectGlobs);
+       FcFontSetDestroy (config->acceptPatterns);
+       FcFontSetDestroy (config->rejectPatterns);
 
-    page = config->expr_pool;
-    while (page)
-    {
-      FcExprPage *next = page->next_page;
-      free (page);
-      page = next;
-    }
-    if (config->sysRoot)
+       for (k = FcMatchKindBegin; k < FcMatchKindEnd; k++)
+           FcPtrListDestroy (config->subst[k]);
+       FcPtrListDestroy (config->rulesetList);
+       FcStrSetDestroy (config->availConfigFiles);
+       for (set = FcSetSystem; set <= FcSetApplication; set++)
+           if (config->fonts[set])
+               FcFontSetDestroy (config->fonts[set]);
+
+       page = config->expr_pool;
+       while (page)
+       {
+           FcExprPage *next = page->next_page;
+           free (page);
+           page = next;
+       }
+       if (config->sysRoot)
        FcStrFree (config->sysRoot);
 
-    FcHashTableDestroy (config->uuid_table);
-
-    free (config);
+       free (config);
+    }
 }
 
 /*
@@ -364,7 +424,7 @@ FcConfigAddCache (FcConfig *config, FcCache *cache,
     if (fs)
     {
        int     nref = 0;
-       
+
        for (i = 0; i < fs->nfont; i++)
        {
            FcPattern   *font = FcFontSetFont (fs, i);
@@ -448,7 +508,7 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
     dirlist = FcStrListCreate (dirSet);
     if (!dirlist)
         return FcFalse;
-       
+
     while ((dir = FcStrListNext (dirlist)))
     {
        if (FcDebug () & FC_DBG_FONTSET)
@@ -472,25 +532,32 @@ FcBool
 FcConfigBuildFonts (FcConfig *config)
 {
     FcFontSet      *fonts;
+    FcBool         ret = FcTrue;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
-       
+       return FcFalse;
+
     fonts = FcFontSetCreate ();
     if (!fonts)
-       return FcFalse;
+    {
+       ret = FcFalse;
+       goto bail;
+    }
 
     FcConfigSetFonts (config, fonts, FcSetSystem);
 
     if (!FcConfigAddDirList (config, FcSetSystem, config->fontDirs))
-       return FcFalse;
+    {
+       ret = FcFalse;
+       goto bail;
+    }
     if (FcDebug () & FC_DBG_FONTSET)
        FcFontSetPrint (fonts);
-    return FcTrue;
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcBool
@@ -498,20 +565,29 @@ FcConfigSetCurrent (FcConfig *config)
 {
     FcConfig *cfg;
 
+    if (config)
+    {
+       if (!config->fonts[FcSetSystem])
+           if (!FcConfigBuildFonts (config))
+               return FcFalse;
+       FcRefInc (&config->ref);
+    }
+
+    lock_config ();
 retry:
     cfg = fc_atomic_ptr_get (&_fcConfig);
 
     if (config == cfg)
+    {
+       unlock_config ();
+       if (config)
+           FcConfigDestroy (config);
        return FcTrue;
-
-    if (config && !config->fonts[FcSetSystem])
-       if (!FcConfigBuildFonts (config))
-           return FcFalse;
+    }
 
     if (!fc_atomic_ptr_cmpexch (&_fcConfig, cfg, config))
        goto retry;
-
-    FcConfigReference (config);
+    unlock_config ();
     if (cfg)
        FcConfigDestroy (cfg);
 
@@ -534,32 +610,133 @@ FcConfigAddConfigDir (FcConfig       *config,
 FcStrList *
 FcConfigGetConfigDirs (FcConfig   *config)
 {
+    FcStrList *ret;
+
+    config = FcConfigReference (config);
     if (!config)
+       return NULL;
+    ret = FcStrListCreate (config->configDirs);
+    FcConfigDestroy (config);
+
+    return ret;
+}
+
+FcBool
+FcConfigAddFontDir (FcConfig       *config,
+                   const FcChar8   *d,
+                   const FcChar8   *m,
+                   const FcChar8   *salt)
+{
+    if (FcDebug() & FC_DBG_CACHE)
     {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
+       if (m)
+       {
+           printf ("%s -> %s%s%s%s\n", d, m, salt ? " (salt: " : "", salt ? (const char *)salt : "", salt ? ")" : "");
+       }
+       else if (salt)
+       {
+           printf ("%s%s%s%s\n", d, salt ? " (salt: " : "", salt ? (const char *)salt : "", salt ? ")" : "");
+       }
     }
-    return FcStrListCreate (config->configDirs);
+    return FcStrSetAddFilenamePairWithSalt (config->fontDirs, d, m, salt);
 }
 
 FcBool
-FcConfigAddFontDir (FcConfig       *config,
-                   const FcChar8   *d)
+FcConfigResetFontDirs (FcConfig *config)
 {
-    return FcStrSetAddFilename (config->fontDirs, d);
+    if (FcDebug() & FC_DBG_CACHE)
+    {
+       printf ("Reset font directories!\n");
+    }
+    return FcStrSetDeleteAll (config->fontDirs);
 }
 
 FcStrList *
 FcConfigGetFontDirs (FcConfig  *config)
 {
+    FcStrList *ret;
+
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
+       return NULL;
+    ret = FcStrListCreate (config->fontDirs);
+    FcConfigDestroy (config);
+
+    return ret;
+}
+
+static FcBool
+FcConfigPathStartsWith(const FcChar8   *path,
+                      const FcChar8    *start)
+{
+    int len = strlen((char *) start);
+
+    if (strncmp((char *) path, (char *) start, len) != 0)
+       return FcFalse;
+
+    switch (path[len]) {
+    case '\0':
+    case FC_DIR_SEPARATOR:
+       return FcTrue;
+    default:
+       return FcFalse;
     }
-    return FcStrListCreate (config->fontDirs);
+}
+
+FcChar8 *
+FcConfigMapFontPath(FcConfig           *config,
+                   const FcChar8       *path)
+{
+    FcStrList  *list;
+    FcChar8    *dir;
+    const FcChar8 *map, *rpath;
+    FcChar8     *retval;
+
+    list = FcConfigGetFontDirs(config);
+    if (!list)
+       return 0;
+    while ((dir = FcStrListNext(list)))
+       if (FcConfigPathStartsWith(path, dir))
+           break;
+    FcStrListDone(list);
+    if (!dir)
+       return 0;
+    map = FcStrTripleSecond(dir);
+    if (!map)
+       return 0;
+    rpath = path + strlen ((char *) dir);
+    while (*rpath == '/')
+       rpath++;
+    retval = FcStrBuildFilename(map, rpath, NULL);
+    if (retval)
+    {
+       size_t len = strlen ((const char *) retval);
+       while (len > 0 && retval[len-1] == '/')
+           len--;
+       /* trim the last slash */
+       retval[len] = 0;
+    }
+    return retval;
+}
+
+const FcChar8 *
+FcConfigMapSalt (FcConfig      *config,
+                const FcChar8 *path)
+{
+    FcStrList *list;
+    FcChar8 *dir;
+
+    list = FcConfigGetFontDirs (config);
+    if (!list)
+       return NULL;
+    while ((dir = FcStrListNext (list)))
+       if (FcConfigPathStartsWith (path, dir))
+           break;
+    FcStrListDone (list);
+    if (!dir)
+       return NULL;
+
+    return FcStrTripleThird (dir);
 }
 
 FcBool
@@ -570,15 +747,17 @@ FcConfigAddCacheDir (FcConfig         *config,
 }
 
 FcStrList *
-FcConfigGetCacheDirs (const FcConfig *config)
+FcConfigGetCacheDirs (FcConfig *config)
 {
+    FcStrList *ret;
+
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
-    return FcStrListCreate (config->cacheDirs);
+       return NULL;
+    ret = FcStrListCreate (config->cacheDirs);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcBool
@@ -586,7 +765,7 @@ FcConfigAddConfigFile (FcConfig         *config,
                       const FcChar8   *f)
 {
     FcBool     ret;
-    FcChar8    *file = FcConfigFilename (f);
+    FcChar8    *file = FcConfigGetFilename (config, f);
 
     if (!file)
        return FcFalse;
@@ -599,13 +778,15 @@ FcConfigAddConfigFile (FcConfig       *config,
 FcStrList *
 FcConfigGetConfigFiles (FcConfig    *config)
 {
+    FcStrList *ret;
+
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
-    return FcStrListCreate (config->configFiles);
+       return NULL;
+    ret = FcStrListCreate (config->configFiles);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcChar8 *
@@ -684,25 +865,26 @@ FcConfigAddBlank (FcConfig        *config FC_UNUSED,
 int
 FcConfigGetRescanInterval (FcConfig *config)
 {
+    int ret;
+
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
-    return config->rescanInterval;
+       return 0;
+    ret = config->rescanInterval;
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcBool
 FcConfigSetRescanInterval (FcConfig *config, int rescanInterval)
 {
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
+       return FcFalse;
     config->rescanInterval = rescanInterval;
+    FcConfigDestroy (config);
+
     return FcTrue;
 }
 
@@ -733,35 +915,45 @@ FcConfigAddRule (FcConfig *config,
 static FcValue
 FcConfigPromote (FcValue v, FcValue u, FcValuePromotionBuffer *buf)
 {
-    if (v.type == FcTypeInteger)
-    {
-       v.type = FcTypeDouble;
-       v.u.d = (double) v.u.i;
-    }
-    else if (v.type == FcTypeVoid && u.type == FcTypeMatrix)
-    {
-       v.u.m = &FcIdentityMatrix;
-       v.type = FcTypeMatrix;
-    }
-    else if (buf && v.type == FcTypeString && u.type == FcTypeLangSet)
-    {
-       v.u.l = FcLangSetPromote (v.u.s, buf);
-       v.type = FcTypeLangSet;
-    }
-    else if (buf && v.type == FcTypeVoid && u.type == FcTypeLangSet)
-    {
-       v.u.l = FcLangSetPromote (NULL, buf);
-       v.type = FcTypeLangSet;
-    }
-    else if (buf && 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;
+    switch (v.type)
+    {
+    case FcTypeInteger:
+        v.type = FcTypeDouble;
+        v.u.d = (double) v.u.i;
+        /* Fallthrough */
+    case FcTypeDouble:
+        if (u.type == FcTypeRange && buf)
+        {
+            v.u.r = FcRangePromote (v.u.d, buf);
+            v.type = FcTypeRange;
+        }
+        break;
+    case FcTypeVoid:
+        if (u.type == FcTypeMatrix)
+        {
+            v.u.m = &FcIdentityMatrix;
+            v.type = FcTypeMatrix;
+        }
+        else if (u.type == FcTypeLangSet && buf)
+        {
+            v.u.l = FcLangSetPromote (NULL, buf);
+            v.type = FcTypeLangSet;
+        }
+        else if (u.type == FcTypeCharSet && buf)
+        {
+            v.u.c = FcCharSetPromote (buf);
+            v.type = FcTypeCharSet;
+        }
+        break;
+    case FcTypeString:
+        if (u.type == FcTypeLangSet && buf)
+        {
+            v.u.l = FcLangSetPromote (v.u.s, buf);
+            v.type = FcTypeLangSet;
+        }
+        break;
+    default:
+        break;
     }
     return v;
 }
@@ -771,195 +963,247 @@ FcConfigCompareValue (const FcValue     *left_o,
                      unsigned int      op_,
                      const FcValue     *right_o)
 {
-    FcValue    left = FcValueCanonicalize(left_o);
-    FcValue    right = FcValueCanonicalize(right_o);
+    FcValue     left;
+    FcValue     right;
     FcBool     ret = FcFalse;
     FcOp       op = FC_OP_GET_OP (op_);
     int                flags = FC_OP_GET_FLAGS (op_);
     FcValuePromotionBuffer buf1, buf2;
 
-    left = FcConfigPromote (left, right, &buf1);
-    right = FcConfigPromote (right, left, &buf2);
-    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:
-           switch ((int) op) {
-           case FcOpEqual:
-           case FcOpContains:
-           case FcOpListing:
-               ret = left.u.d == right.u.d;
-               break;
-           case FcOpNotEqual:
-           case FcOpNotContains:
-               ret = left.u.d != right.u.d;
-               break;
-           case FcOpLess:
-               ret = left.u.d < right.u.d;
-               break;
-           case FcOpLessEqual:
-               ret = left.u.d <= right.u.d;
-               break;
-           case FcOpMore:
-               ret = left.u.d > right.u.d;
-               break;
-           case FcOpMoreEqual:
-               ret = left.u.d >= right.u.d;
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeBool:
-           switch ((int) op) {
-           case FcOpEqual:
-               ret = left.u.b == right.u.b;
-               break;
-           case FcOpContains:
-           case FcOpListing:
-               ret = left.u.b == right.u.b || left.u.b == FcDontCare;
-               break;
-           case FcOpNotEqual:
-               ret = left.u.b != right.u.b;
-               break;
-           case FcOpNotContains:
-               ret = !(left.u.b == right.u.b || left.u.b == FcDontCare);
-               break;
-           case FcOpLess:
-               ret = left.u.b != right.u.b && right.u.b == FcDontCare;
-               break;
-           case FcOpLessEqual:
-               ret = left.u.b == right.u.b || right.u.b == FcDontCare;
-               break;
-           case FcOpMore:
-               ret = left.u.b != right.u.b && left.u.b == FcDontCare;
-               break;
-           case FcOpMoreEqual:
-               ret = left.u.b == right.u.b || left.u.b == FcDontCare;
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeString:
-           switch ((int) op) {
-           case FcOpEqual:
-           case FcOpListing:
-               if (flags & FcOpFlagIgnoreBlanks)
-                   ret = FcStrCmpIgnoreBlanksAndCase (left.u.s, right.u.s) == 0;
-               else
-                   ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0;
-               break;
-           case FcOpContains:
-               ret = FcStrStrIgnoreCase (left.u.s, right.u.s) != 0;
-               break;
-           case FcOpNotEqual:
-               if (flags & FcOpFlagIgnoreBlanks)
-                   ret = FcStrCmpIgnoreBlanksAndCase (left.u.s, right.u.s) != 0;
-               else
-                   ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) != 0;
-               break;
-           case FcOpNotContains:
-               ret = FcStrStrIgnoreCase (left.u.s, right.u.s) == 0;
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeMatrix:
-           switch ((int) op) {
-           case FcOpEqual:
-           case FcOpContains:
-           case FcOpListing:
-               ret = FcMatrixEqual (left.u.m, right.u.m);
-               break;
-           case FcOpNotEqual:
-           case FcOpNotContains:
-               ret = !FcMatrixEqual (left.u.m, right.u.m);
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeCharSet:
-           switch ((int) op) {
-           case FcOpContains:
-           case FcOpListing:
-               /* left contains right if right is a subset of left */
-               ret = FcCharSetIsSubset (right.u.c, left.u.c);
-               break;
-           case FcOpNotContains:
-               /* left contains right if right is a subset of left */
-               ret = !FcCharSetIsSubset (right.u.c, left.u.c);
-               break;
-           case FcOpEqual:
-               ret = FcCharSetEqual (left.u.c, right.u.c);
-               break;
-           case FcOpNotEqual:
-               ret = !FcCharSetEqual (left.u.c, right.u.c);
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeLangSet:
-           switch ((int) op) {
-           case FcOpContains:
-           case FcOpListing:
-               ret = FcLangSetContains (left.u.l, right.u.l);
-               break;
-           case FcOpNotContains:
-               ret = !FcLangSetContains (left.u.l, right.u.l);
-               break;
-           case FcOpEqual:
-               ret = FcLangSetEqual (left.u.l, right.u.l);
-               break;
-           case FcOpNotEqual:
-               ret = !FcLangSetEqual (left.u.l, right.u.l);
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeVoid:
-           switch ((int) op) {
-           case FcOpEqual:
-           case FcOpContains:
-           case FcOpListing:
-               ret = FcTrue;
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeFTFace:
-           switch ((int) op) {
-           case FcOpEqual:
-           case FcOpContains:
-           case FcOpListing:
-               ret = left.u.f == right.u.f;
-               break;
-           case FcOpNotEqual:
-           case FcOpNotContains:
-               ret = left.u.f != right.u.f;
-               break;
-           default:
-               break;
-           }
-           break;
-       case FcTypeRange:
-           ret = FcRangeCompare (op, left.u.r, right.u.r);
-           break;
-       }
+    if (left_o->type != right_o->type)
+    {
+        left = FcValueCanonicalize(left_o);
+        right = FcValueCanonicalize(right_o);
+        left = FcConfigPromote (left, right, &buf1);
+        right = FcConfigPromote (right, left, &buf2);
+        left_o = &left;
+        right_o = &right;
+        if (left_o->type != right_o->type)
+        {
+           if (op == FcOpNotEqual || op == FcOpNotContains)
+               ret = FcTrue;
+            return ret;
+        }
+    }
+    switch (left_o->type) {
+    case FcTypeUnknown:
+        break; /* No way to guess how to compare for this object */
+    case FcTypeInteger: {
+        int l = left_o->u.i;
+        int r = right_o->u.i;
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpContains:
+        case FcOpListing:
+            ret = l == r;
+            break;
+        case FcOpNotEqual:
+        case FcOpNotContains:
+            ret = l != r;
+            break;
+        case FcOpLess:
+            ret = l < r;
+            break;
+        case FcOpLessEqual:
+            ret = l <= r;
+            break;
+        case FcOpMore:
+            ret = l > r;
+            break;
+        case FcOpMoreEqual:
+            ret = l >= r;
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeDouble: {
+        double l = left_o->u.d;
+        double r = right_o->u.d;
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpContains:
+        case FcOpListing:
+            ret = l == r;
+            break;
+        case FcOpNotEqual:
+        case FcOpNotContains:
+            ret = l != r;
+            break;
+        case FcOpLess:
+            ret = l < r;
+            break;
+        case FcOpLessEqual:
+            ret = l <= r;
+            break;
+        case FcOpMore:
+            ret = l > r;
+            break;
+        case FcOpMoreEqual:
+            ret = l >= r;
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeBool: {
+        FcBool l = left_o->u.b;
+        FcBool r = right_o->u.b;
+        switch ((int) op) {
+        case FcOpEqual:
+            ret = l == r;
+            break;
+        case FcOpContains:
+        case FcOpListing:
+            ret = l == r || l >= FcDontCare;
+            break;
+        case FcOpNotEqual:
+            ret = l != r;
+            break;
+        case FcOpNotContains:
+            ret = !(l == r || l >= FcDontCare);
+            break;
+        case FcOpLess:
+            ret = l != r && r >= FcDontCare;
+            break;
+        case FcOpLessEqual:
+            ret = l == r || r >= FcDontCare;
+            break;
+        case FcOpMore:
+            ret = l != r && l >= FcDontCare;
+            break;
+        case FcOpMoreEqual:
+            ret = l == r || l >= FcDontCare;
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeString: {
+        const FcChar8 *l = FcValueString (left_o);
+        const FcChar8 *r = FcValueString (right_o);
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpListing:
+            if (flags & FcOpFlagIgnoreBlanks)
+                ret = FcStrCmpIgnoreBlanksAndCase (l, r) == 0;
+            else
+                ret = FcStrCmpIgnoreCase (l, r) == 0;
+            break;
+        case FcOpContains:
+            ret = FcStrStrIgnoreCase (l, r) != 0;
+            break;
+        case FcOpNotEqual:
+            if (flags & FcOpFlagIgnoreBlanks)
+                ret = FcStrCmpIgnoreBlanksAndCase (l, r) != 0;
+            else
+                ret = FcStrCmpIgnoreCase (l, r) != 0;
+            break;
+        case FcOpNotContains:
+            ret = FcStrStrIgnoreCase (l, r) == 0;
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeMatrix: {
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpContains:
+        case FcOpListing:
+            ret = FcMatrixEqual (left_o->u.m, right_o->u.m);
+            break;
+        case FcOpNotEqual:
+        case FcOpNotContains:
+            ret = !FcMatrixEqual (left_o->u.m, right_o->u.m);
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeCharSet: {
+        const FcCharSet *l = FcValueCharSet (left_o);
+        const FcCharSet *r = FcValueCharSet (right_o);
+        switch ((int) op) {
+        case FcOpContains:
+        case FcOpListing:
+            /* left contains right if right is a subset of left */
+            ret = FcCharSetIsSubset (r, l);
+            break;
+        case FcOpNotContains:
+            /* left contains right if right is a subset of left */
+            ret = !FcCharSetIsSubset (r, l);
+            break;
+        case FcOpEqual:
+            ret = FcCharSetEqual (l, r);
+            break;
+        case FcOpNotEqual:
+            ret = !FcCharSetEqual (l, r);
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeLangSet: {
+        const FcLangSet *l = FcValueLangSet (left_o);
+        const FcLangSet *r = FcValueLangSet (right_o);
+        switch ((int) op) {
+        case FcOpContains:
+        case FcOpListing:
+            ret = FcLangSetContains (l, r);
+            break;
+        case FcOpNotContains:
+            ret = !FcLangSetContains (l, r);
+            break;
+        case FcOpEqual:
+            ret = FcLangSetEqual (l, r);
+            break;
+        case FcOpNotEqual:
+            ret = !FcLangSetEqual (l, r);
+            break;
+        default:
+            break;
+        }
+        break;
+    }
+    case FcTypeVoid:
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpContains:
+        case FcOpListing:
+            ret = FcTrue;
+            break;
+        default:
+            break;
+        }
+        break;
+    case FcTypeFTFace:
+        switch ((int) op) {
+        case FcOpEqual:
+        case FcOpContains:
+        case FcOpListing:
+            ret = left_o->u.f == right_o->u.f;
+            break;
+        case FcOpNotEqual:
+        case FcOpNotContains:
+            ret = left_o->u.f != right_o->u.f;
+            break;
+        default:
+            break;
+        }
+        break;
+    case FcTypeRange: {
+        const FcRange *l = FcValueRange (left_o);
+        const FcRange *r = FcValueRange (right_o);
+        ret = FcRangeCompare (op, l, r);
+        break;
     }
-    else
-    {
-       if (op == FcOpNotEqual || op == FcOpNotContains)
-           ret = FcTrue;
     }
     return ret;
 }
@@ -1090,7 +1334,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
        v.u.b = FcConfigCompareValue (&vl, e->op, &vr);
        FcValueDestroy (vl);
        FcValueDestroy (vr);
-       break;  
+       break;
     case FcOpOr:
     case FcOpAnd:
     case FcOpPlus:
@@ -1106,7 +1350,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
            switch ((int) vle.type) {
            case FcTypeDouble:
                switch ((int) op) {
-               case FcOpPlus:  
+               case FcOpPlus:
                    v.type = FcTypeDouble;
                    v.u.d = vle.u.d + vre.u.d;
                    break;
@@ -1155,7 +1399,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                    str = FcStrPlus (vle.u.s, vre.u.s);
                    v.u.s = FcStrdup (str);
                    FcStrFree (str);
-                       
+
                    if (!v.u.s)
                        v.type = FcTypeVoid;
                    break;
@@ -1316,17 +1560,141 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
     return v;
 }
 
+/* The bulk of the time in FcConfigSubstitute is spent walking
+ * lists of family names. We speed this up with a hash table.
+ * Since we need to take the ignore-blanks option into account,
+ * we use two separate hash tables.
+ */
+typedef struct
+{
+  int count;
+} FamilyTableEntry;
+
+
+typedef struct
+{
+  FcHashTable *family_blank_hash;
+  FcHashTable *family_hash;
+} FamilyTable;
+
+static FcBool
+FamilyTableLookup (FamilyTable   *table,
+                   FcOp           _op,
+                   const FcChar8 *s)
+{
+    FamilyTableEntry *fe;
+    int flags = FC_OP_GET_FLAGS (_op);
+    FcHashTable *hash;
+
+    if (flags & FcOpFlagIgnoreBlanks)
+        hash = table->family_blank_hash;
+    else
+        hash = table->family_hash;
+
+    return FcHashTableFind (hash, (const void *)s, (void **)&fe);
+}
+
+static void
+FamilyTableAdd (FamilyTable    *table,
+                FcValueListPtr  values)
+{
+    FcValueListPtr ll;
+    for (ll = values; ll; ll = FcValueListNext (ll))
+        {
+            const FcChar8 *s = FcValueString (&ll->value);
+            FamilyTableEntry *fe;
+
+            if (!FcHashTableFind (table->family_hash, (const void *)s, (void **)&fe))
+            {
+                fe = malloc (sizeof (FamilyTableEntry));
+                fe->count = 0;
+                FcHashTableAdd (table->family_hash, (void *)s, fe);
+            }
+            fe->count++;
+
+            if (!FcHashTableFind (table->family_blank_hash, (const void *)s, (void **)&fe))
+            {
+                fe = malloc (sizeof (FamilyTableEntry));
+                fe->count = 0;
+                FcHashTableAdd (table->family_blank_hash, (void *)s, fe);
+            }
+            fe->count++;
+       }
+}
+
+static void
+FamilyTableDel (FamilyTable   *table,
+                const FcChar8 *s)
+{
+    FamilyTableEntry *fe;
+
+    if (FcHashTableFind (table->family_hash, (void *)s, (void **)&fe))
+    {
+        fe->count--;
+        if (fe->count == 0)
+            FcHashTableRemove (table->family_hash, (void *)s);
+    }
+
+    if (FcHashTableFind (table->family_blank_hash, (void *)s, (void **)&fe))
+    {
+        fe->count--;
+        if (fe->count == 0)
+            FcHashTableRemove (table->family_blank_hash, (void *)s);
+    }
+}
+
+static FcBool
+copy_string (const void *src, void **dest)
+{
+  *dest = strdup ((char *)src);
+  return FcTrue;
+}
+
+static void
+FamilyTableInit (FamilyTable *table,
+                 FcPattern *p)
+{
+    FcPatternElt *e;
+
+    table->family_blank_hash = FcHashTableCreate ((FcHashFunc)FcStrHashIgnoreBlanksAndCase,
+                                          (FcCompareFunc)FcStrCmpIgnoreBlanksAndCase,
+                                          (FcCopyFunc)copy_string,
+                                          NULL,
+                                          free,
+                                          free);
+    table->family_hash = FcHashTableCreate ((FcHashFunc)FcStrHashIgnoreCase,
+                                          (FcCompareFunc)FcStrCmpIgnoreCase,
+                                          (FcCopyFunc)copy_string,
+                                          NULL,
+                                          free,
+                                          free);
+    e = FcPatternObjectFindElt (p, FC_FAMILY_OBJECT);
+    if (e)
+        FamilyTableAdd (table, FcPatternEltValues (e));
+}
+
+static void
+FamilyTableClear (FamilyTable *table)
+{
+    if (table->family_blank_hash)
+        FcHashTableDestroy (table->family_blank_hash);
+    if (table->family_hash)
+        FcHashTableDestroy (table->family_hash);
+}
+
 static FcValueList *
 FcConfigMatchValueList (FcPattern      *p,
                        FcPattern       *p_pat,
                        FcMatchKind      kind,
                        FcTest          *t,
-                       FcValueList     *values)
+                       FcValueList     *values,
+                        FamilyTable     *table)
 {
     FcValueList            *ret = 0;
     FcExpr         *e = t->expr;
     FcValue        value;
     FcValueList            *v;
+    FcOp            op;
 
     while (e)
     {
@@ -1342,6 +1710,27 @@ FcConfigMatchValueList (FcPattern        *p,
            e = 0;
        }
 
+        if (t->object == FC_FAMILY_OBJECT && table)
+        {
+            op = FC_OP_GET_OP (t->op);
+            if (op == FcOpEqual || op == FcOpListing)
+            {
+                if (!FamilyTableLookup (table, t->op, FcValueString (&value)))
+                {
+                    ret = 0;
+                    goto done;
+                }
+            }
+            if (op == FcOpNotEqual && t->qual == FcQualAll)
+            {
+                ret = 0;
+                if (!FamilyTableLookup (table, t->op, FcValueString (&value)))
+                {
+                    ret = values;
+                }
+                goto done;
+            }
+        }
        for (v = values; v; v = FcValueListNext(v))
        {
            /* Compare the pattern value to the match expression value */
@@ -1349,6 +1738,8 @@ FcConfigMatchValueList (FcPattern *p,
            {
                if (!ret)
                    ret = v;
+                if (t->qual != FcQualAll)
+                    break;
            }
            else
            {
@@ -1359,6 +1750,7 @@ FcConfigMatchValueList (FcPattern *p,
                }
            }
        }
+done:
        FcValueDestroy (value);
     }
     return ret;
@@ -1401,7 +1793,8 @@ FcConfigAdd (FcValueListPtr *head,
             FcValueList    *position,
             FcBool         append,
             FcValueList    *new,
-            FcObject        object)
+            FcObject        object,
+             FamilyTable    *table)
 {
     FcValueListPtr  *prev, l, last, v;
     FcValueBinding  sameBinding;
@@ -1427,6 +1820,11 @@ FcConfigAdd (FcValueListPtr *head,
        }
     }
 
+    if (object == FC_FAMILY_OBJECT && table)
+    {
+        FamilyTableAdd (table, new);
+    }
+
     if (position)
        sameBinding = position->binding;
     else
@@ -1493,10 +1891,17 @@ FcConfigAdd (FcValueListPtr *head,
 
 static void
 FcConfigDel (FcValueListPtr *head,
-            FcValueList    *position)
+            FcValueList    *position,
+             FcObject        object,
+             FamilyTable    *table)
 {
     FcValueListPtr *prev;
 
+    if (object == FC_FAMILY_OBJECT && table)
+    {
+        FamilyTableDel (table, FcValueString (&position->value));
+    }
+
     for (prev = head; *prev != NULL; prev = &(*prev)->next)
     {
        if (*prev == position)
@@ -1511,9 +1916,10 @@ FcConfigDel (FcValueListPtr *head,
 
 static void
 FcConfigPatternAdd (FcPattern  *p,
-                   FcObject    object,
+                   FcObject     object,
                    FcValueList *list,
-                   FcBool      append)
+                   FcBool       append,
+                    FamilyTable *table)
 {
     if (list)
     {
@@ -1521,7 +1927,7 @@ FcConfigPatternAdd (FcPattern     *p,
 
        if (!e)
            return;
-       FcConfigAdd (&e->values, 0, append, list, object);
+       FcConfigAdd (&e->values, 0, append, list, object, table);
     }
 }
 
@@ -1530,13 +1936,14 @@ FcConfigPatternAdd (FcPattern   *p,
  */
 static void
 FcConfigPatternDel (FcPattern  *p,
-                   FcObject    object)
+                   FcObject     object,
+                    FamilyTable *table)
 {
     FcPatternElt    *e = FcPatternObjectFindElt (p, object);
     if (!e)
        return;
     while (e->values != NULL)
-       FcConfigDel (&e->values, e->values);
+       FcConfigDel (&e->values, e->values, object, table);
 }
 
 static void
@@ -1569,16 +1976,16 @@ FcConfigSubstituteWithPat (FcConfig    *config,
     int                    i, nobjs;
     FcBool         retval = FcTrue;
     FcTest         **tst = NULL;
-
-    if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
+    FamilyTable     data;
+    FamilyTable     *table = &data;
 
     if (kind < FcMatchKindBegin || kind >= FcMatchKindEnd)
        return FcFalse;
+
+    config = FcConfigReference (config);
+    if (!config)
+       return FcFalse;
+
     s = config->subst[kind];
     if (kind == FcMatchPattern)
     {
@@ -1668,6 +2075,9 @@ FcConfigSubstituteWithPat (FcConfig    *config,
        printf ("FcConfigSubstitute ");
        FcPatternPrint (p);
     }
+
+    FamilyTableInit (&data, p);
+
     FcPtrListIterInit (s, &iter);
     for (; FcPtrListIterIsValid (s, &iter); FcPtrListIterNext (s, &iter))
     {
@@ -1704,9 +2114,15 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                        FcTestPrint (r->u.test);
                    }
                    if (kind == FcMatchFont && r->u.test->kind == FcMatchPattern)
+                    {
                        m = p_pat;
+                        table = NULL;
+                    }
                    else
+                    {
                        m = p;
+                        table = &data;
+                    }
                    if (m)
                        e = FcPatternObjectFindElt (m, r->u.test->object);
                    else
@@ -1739,7 +2155,7 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                     * 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);
+                   vl = FcConfigMatchValueList (m, p_pat, kind, r->u.test, e->values, table);
                    /* different 'kind' won't be the target of edit */
                    if (!value[object] && kind == r->u.test->kind)
                        value[object] = vl;
@@ -1763,7 +2179,7 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                    /*
                     * Evaluate the list of expressions
                     */
-                   l = FcConfigValues (p, p_pat,kind,  r->u.edit->expr, r->u.edit->binding);
+                   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);
 
@@ -1781,12 +2197,12 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                            /*
                             * Append the new list of values after the current value
                             */
-                           FcConfigAdd (&elt[object]->values, thisValue, FcTrue, l, r->u.edit->object);
+                           FcConfigAdd (&elt[object]->values, thisValue, FcTrue, l, r->u.edit->object, table);
                            /*
                             * Delete the marked value
                             */
                            if (thisValue)
-                               FcConfigDel (&elt[object]->values, thisValue);
+                               FcConfigDel (&elt[object]->values, thisValue, object, table);
                            /*
                             * Adjust a pointer into the value list to ensure
                             * future edits occur at the same place
@@ -1800,8 +2216,8 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                         * Delete all of the values and insert
                         * the new set
                         */
-                       FcConfigPatternDel (p, r->u.edit->object);
-                       FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
+                       FcConfigPatternDel (p, r->u.edit->object, table);
+                       FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue, table);
                        /*
                         * Adjust a pointer into the value list as they no
                         * longer point to anything valid
@@ -1811,33 +2227,33 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                    case FcOpPrepend:
                        if (value[object])
                        {
-                           FcConfigAdd (&elt[object]->values, value[object], FcFalse, l, r->u.edit->object);
+                           FcConfigAdd (&elt[object]->values, value[object], FcFalse, l, r->u.edit->object, table);
                            break;
                        }
                        /* fall through ... */
                    case FcOpPrependFirst:
-                       FcConfigPatternAdd (p, r->u.edit->object, l, FcFalse);
+                       FcConfigPatternAdd (p, r->u.edit->object, l, FcFalse, table);
                        break;
                    case FcOpAppend:
                        if (value[object])
                        {
-                           FcConfigAdd (&elt[object]->values, value[object], FcTrue, l, r->u.edit->object);
+                           FcConfigAdd (&elt[object]->values, value[object], FcTrue, l, r->u.edit->object, table);
                            break;
                        }
                        /* fall through ... */
                    case FcOpAppendLast:
-                       FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
+                       FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue, table);
                        break;
                    case FcOpDelete:
                        if (value[object])
                        {
-                           FcConfigDel (&elt[object]->values, value[object]);
+                           FcConfigDel (&elt[object]->values, value[object], object, table);
                            FcValueListDestroy (l);
                            break;
                        }
                        /* fall through ... */
                    case FcOpDeleteAll:
-                       FcConfigPatternDel (p, r->u.edit->object);
+                       FcConfigPatternDel (p, r->u.edit->object, table);
                        FcValueListDestroy (l);
                        break;
                    default:
@@ -1867,12 +2283,14 @@ FcConfigSubstituteWithPat (FcConfig    *config,
        FcPatternPrint (p);
     }
 bail1:
+    FamilyTableClear (&data);
     if (elt)
        free (elt);
     if (value)
        free (value);
     if (tst)
        free (tst);
+    FcConfigDestroy (config);
 
     return retval;
 }
@@ -2099,7 +2517,7 @@ FcConfigXdgCacheHome (void)
 
     if (!_FcConfigHomeEnabled)
        return NULL;
-    if (env)
+    if (env && env[0])
        ret = FcStrCopy ((const FcChar8 *)env);
     else
     {
@@ -2175,6 +2593,65 @@ FcConfigXdgDataHome (void)
     return ret;
 }
 
+FcStrSet *
+FcConfigXdgDataDirs (void)
+{
+    const char *env = getenv ("XDG_DATA_DIRS");
+    FcStrSet *ret = FcStrSetCreate ();
+
+    if (env)
+    {
+       FcChar8 *ee, *e = ee = FcStrCopy ((const FcChar8 *) env);
+
+       /* We don't intentionally use FC_SEARCH_PATH_SEPARATOR here because of:
+        *   The directories in $XDG_DATA_DIRS should be seperated with a colon ':'.
+        * in doc.
+        */
+       while (e)
+       {
+           FcChar8 *p = (FcChar8 *) strchr ((const char *) e, ':');
+           FcChar8 *s;
+           size_t len;
+
+           if (!p)
+           {
+               s = FcStrCopy (e);
+               e = NULL;
+           }
+           else
+           {
+               *p = 0;
+               s = FcStrCopy (e);
+               e = p + 1;
+           }
+           len = strlen ((const char *) s);
+           if (s[len - 1] == FC_DIR_SEPARATOR)
+           {
+               do
+               {
+                   len--;
+               }
+               while (len > 1 && s[len - 1] == FC_DIR_SEPARATOR);
+               s[len] = 0;
+           }
+           FcStrSetAdd (ret, s);
+           FcStrFree (s);
+       }
+       FcStrFree (ee);
+    }
+    else
+    {
+       /* From spec doc at https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables
+        *
+        * If $XDG_DATA_DIRS is either not set or empty, a value equal to /usr/local/share/:/usr/share/ should be used.
+        */
+       FcStrSetAdd (ret, (const FcChar8 *) "/usr/local/share");
+       FcStrSetAdd (ret, (const FcChar8 *) "/usr/share");
+    }
+
+    return ret;
+}
+
 FcBool
 FcConfigEnableHome (FcBool enable)
 {
@@ -2184,10 +2661,16 @@ FcConfigEnableHome (FcBool enable)
 }
 
 FcChar8 *
-FcConfigFilename (const FcChar8 *url)
+FcConfigGetFilename (FcConfig      *config,
+                    const FcChar8 *url)
 {
     FcChar8    *file, *dir, **path, **p;
+    const FcChar8 *sysroot;
 
+    config = FcConfigReference (config);
+    if (!config)
+       return NULL;
+    sysroot = FcConfigGetSysRoot (config);
     if (!url || !*url)
     {
        url = (FcChar8 *) getenv ("FONTCONFIG_FILE");
@@ -2197,57 +2680,99 @@ FcConfigFilename (const FcChar8 *url)
     file = 0;
 
     if (FcStrIsAbsoluteFilename(url))
-       return FcConfigFileExists (0, url);
+    {
+       if (sysroot)
+       {
+           size_t len = strlen ((const char *) sysroot);
+
+           /* Workaround to avoid adding sysroot repeatedly */
+           if (strncmp ((const char *) url, (const char *) sysroot, len) == 0)
+               sysroot = NULL;
+       }
+       file = FcConfigFileExists (sysroot, url);
+       goto bail;
+    }
 
     if (*url == '~')
     {
        dir = FcConfigHome ();
        if (dir)
-           file = FcConfigFileExists (dir, url + 1);
+       {
+           FcChar8 *s;
+
+           if (sysroot)
+               s = FcStrBuildFilename (sysroot, dir, NULL);
+           else
+               s = dir;
+           file = FcConfigFileExists (s, url + 1);
+           if (sysroot)
+               FcStrFree (s);
+       }
        else
            file = 0;
     }
-
-    path = FcConfigGetPath ();
-    if (!path)
-       return NULL;
-    for (p = path; *p; p++)
+    else
     {
-       file = FcConfigFileExists (*p, url);
-       if (file)
-           break;
+       path = FcConfigGetPath ();
+       if (!path)
+       {
+           file = NULL;
+           goto bail;
+       }
+       for (p = path; *p; p++)
+       {
+           FcChar8 *s;
+
+           if (sysroot)
+               s = FcStrBuildFilename (sysroot, *p, NULL);
+           else
+               s = *p;
+           file = FcConfigFileExists (s, url);
+           if (sysroot)
+               FcStrFree (s);
+           if (file)
+               break;
+       }
+       FcConfigFreePath (path);
     }
-    FcConfigFreePath (path);
+bail:
+    FcConfigDestroy (config);
+
     return file;
 }
 
 FcChar8 *
+FcConfigFilename (const FcChar8 *url)
+{
+    return FcConfigGetFilename (NULL, url);
+}
+
+FcChar8 *
 FcConfigRealFilename (FcConfig         *config,
                      const FcChar8     *url)
 {
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
-    FcChar8 *n = FcConfigFilename (url);
-    FcChar8 *nn = NULL;
+    FcChar8 *n = FcConfigGetFilename (config, url);
 
     if (n)
     {
-       FcChar8 buf[PATH_MAX];
+       FcChar8 buf[FC_PATH_MAX];
        ssize_t len;
+       struct stat sb;
 
-       if (sysroot)
-           nn = FcStrBuildFilename (sysroot, n, NULL);
-       else
-           nn = FcStrdup (n);
-       FcStrFree (n);
-
-       if ((len = FcReadLink (nn, buf, sizeof (buf) - 1)) != -1)
+       if ((len = FcReadLink (n, buf, sizeof (buf) - 1)) != -1)
        {
            buf[len] = 0;
 
-           if (!FcStrIsAbsoluteFilename (buf))
+           /* We try to pick up a config from FONTCONFIG_FILE
+            * when url is null. don't try to address the real filename
+            * if it is a named pipe.
+            */
+           if (!url && FcStat (n, &sb) == 0 && S_ISFIFO (sb.st_mode))
+               return n;
+           else if (!FcStrIsAbsoluteFilename (buf))
            {
-               FcChar8 *dirname = FcStrDirname (nn);
-               FcStrFree (nn);
+               FcChar8 *dirname = FcStrDirname (n);
+               FcStrFree (n);
                if (!dirname)
                    return NULL;
 
@@ -2256,18 +2781,18 @@ FcConfigRealFilename (FcConfig          *config,
                if (!path)
                    return NULL;
 
-               nn = FcStrCanonFilename (path);
+               n = FcStrCanonFilename (path);
                FcStrFree (path);
            }
            else
            {
-               FcStrFree (nn);
-               nn = FcStrdup (buf);
+               FcStrFree (n);
+               n = FcStrdup (buf);
            }
        }
     }
 
-    return nn;
+    return n;
 }
 
 /*
@@ -2282,17 +2807,18 @@ FcConfigAppFontAddFile (FcConfig    *config,
     FcStrSet   *subdirs;
     FcStrList  *sublist;
     FcChar8    *subdir;
+    FcBool     ret = FcTrue;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
+       return FcFalse;
 
     subdirs = FcStrSetCreateEx (FCSS_GROW_BY_64);
     if (!subdirs)
-       return FcFalse;
+    {
+       ret = FcFalse;
+       goto bail;
+    }
 
     set = FcConfigGetFonts (config, FcSetApplication);
     if (!set)
@@ -2301,15 +2827,17 @@ FcConfigAppFontAddFile (FcConfig    *config,
        if (!set)
        {
            FcStrSetDestroy (subdirs);
-           return FcFalse;
+           ret = FcFalse;
+           goto bail;
        }
        FcConfigSetFonts (config, set, FcSetApplication);
     }
-       
+
     if (!FcFileScanConfig (set, subdirs, file, config))
     {
        FcStrSetDestroy (subdirs);
-       return FcFalse;
+       ret = FcFalse;
+       goto bail;
     }
     if ((sublist = FcStrListCreate (subdirs)))
     {
@@ -2320,7 +2848,10 @@ FcConfigAppFontAddFile (FcConfig    *config,
        FcStrListDone (sublist);
     }
     FcStrSetDestroy (subdirs);
-    return FcTrue;
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcBool
@@ -2329,17 +2860,18 @@ FcConfigAppFontAddDir (FcConfig     *config,
 {
     FcFontSet  *set;
     FcStrSet   *dirs;
+    FcBool     ret = FcTrue;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return FcFalse;
-    }
+       return FcFalse;
 
     dirs = FcStrSetCreateEx (FCSS_GROW_BY_64);
     if (!dirs)
-       return FcFalse;
+    {
+       ret = FcFalse;
+       goto bail;
+    }
 
     set = FcConfigGetFonts (config, FcSetApplication);
     if (!set)
@@ -2348,7 +2880,8 @@ FcConfigAppFontAddDir (FcConfig       *config,
        if (!set)
        {
            FcStrSetDestroy (dirs);
-           return FcFalse;
+           ret = FcFalse;
+           goto bail;
        }
        FcConfigSetFonts (config, set, FcSetApplication);
     }
@@ -2358,23 +2891,26 @@ FcConfigAppFontAddDir (FcConfig     *config,
     if (!FcConfigAddDirList (config, FcSetApplication, dirs))
     {
        FcStrSetDestroy (dirs);
-       return FcFalse;
+       ret = FcFalse;
+       goto bail;
     }
     FcStrSetDestroy (dirs);
-    return FcTrue;
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 void
 FcConfigAppFontClear (FcConfig     *config)
 {
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return;
-    }
+       return;
 
     FcConfigSetFonts (config, 0, FcSetApplication);
+
+    FcConfigDestroy (config);
 }
 
 /*
@@ -2387,8 +2923,13 @@ FcConfigGlobAdd (FcConfig        *config,
                 FcBool         accept)
 {
     FcStrSet   *set = accept ? config->acceptGlobs : config->rejectGlobs;
+       FcChar8 *realglob = FcStrCopyFilename(glob);
+       if (!realglob)
+               return FcFalse;
 
-    return FcStrSetAdd (set, glob);
+    FcBool      ret = FcStrSetAdd (set, realglob);
+    FcStrFree(realglob);
+    return ret;
 }
 
 static FcBool
@@ -2460,11 +3001,7 @@ FcConfigGetSysRoot (const FcConfig *config)
        if (!config)
            return NULL;
     }
-
-    if (config->sysRoot)
-        return config->sysRoot;
-
-    return (FcChar8 *) getenv ("FONTCONFIG_SYSROOT");
+    return config->sysRoot;
 }
 
 void
@@ -2473,7 +3010,9 @@ FcConfigSetSysRoot (FcConfig      *config,
 {
     FcChar8 *s = NULL;
     FcBool init = FcFalse;
+    int nretry = 3;
 
+retry:
     if (!config)
     {
        /* We can't use FcConfigGetCurrent() here to ensure
@@ -2493,7 +3032,7 @@ FcConfigSetSysRoot (FcConfig      *config,
 
     if (sysroot)
     {
-       s = FcStrCopyFilename (sysroot);
+       s = FcStrRealPath (sysroot);
        if (!s)
            return;
     }
@@ -2505,6 +3044,17 @@ FcConfigSetSysRoot (FcConfig      *config,
     if (init)
     {
        config = FcInitLoadOwnConfigAndFonts (config);
+       if (!config)
+       {
+           /* Something failed. this is usually unlikely. so retrying */
+           init = FcFalse;
+           if (--nretry == 0)
+           {
+               fprintf (stderr, "Fontconfig warning: Unable to initialize config and retry limit exceeded. sysroot functionality may not work as expected.\n");
+               return;
+           }
+           goto retry;
+       }
        FcConfigSetCurrent (config);
        /* FcConfigSetCurrent() increases the refcount.
         * decrease it here to avoid the memory leak.
index 114f948..cd927d9 100644 (file)
@@ -175,30 +175,33 @@ FcCharSetPutLeaf (FcCharSet       *fcs,
       }
       else
       {
+       int i;
         unsigned int alloced = fcs->num;
-       intptr_t *new_leaves, distance;
+       intptr_t *new_leaves;
+       ptrdiff_t distance;
 
        alloced *= 2;
-       new_leaves = realloc (leaves, alloced * sizeof (*leaves));
-       if (!new_leaves)
-           return FcFalse;
        numbers = realloc (numbers, alloced * sizeof (*numbers));
        if (!numbers)
+           return FcFalse;
+       new_leaves = realloc (leaves, alloced * sizeof (*leaves));
+       if (!new_leaves)
        {
-           /* Revert the reallocation of leaves */
-           leaves = realloc (new_leaves, (alloced / 2) * sizeof (*new_leaves));
+           /*
+            * Revert the reallocation of numbers. We update numbers_offset
+            * first in case realloc() fails.
+            */
+           fcs->numbers_offset = FcPtrToOffset (fcs, numbers);
+           numbers = realloc (numbers, (alloced / 2) * sizeof (*numbers));
            /* unlikely to fail though */
-           if (!leaves)
+           if (!numbers)
                return FcFalse;
-           fcs->leaves_offset = FcPtrToOffset (fcs, leaves);
+           fcs->numbers_offset = FcPtrToOffset (fcs, numbers);
            return FcFalse;
        }
-       distance = (intptr_t) new_leaves - (intptr_t) leaves;
-       if (new_leaves && distance)
-       {
-           int i;
-           for (i = 0; i < fcs->num; i++)
-               new_leaves[i] -= distance;
+       distance = (char *) new_leaves - (char *) leaves;
+       for (i = 0; i < fcs->num; i++) {
+           new_leaves[i] -= distance;
        }
        leaves = new_leaves;
       }
@@ -838,14 +841,14 @@ FcNameParseRange (FcChar8 **string, FcChar32 *pfirst, FcChar32 *plast)
        char *t;
        long first, last;
 
-       while (isspace(*s))
+       while (isspace((unsigned char) *s))
            s++;
        t = s;
        errno = 0;
        first = last = strtol (s, &s, 16);
        if (errno)
            return FcFalse;
-       while (isspace(*s))
+       while (isspace((unsigned char) *s))
            s++;
        if (*s == '-')
        {
index 16f108d..65ac84c 100644 (file)
 #define FC_O_NOINHERIT 0
 #endif
 
+#ifndef HAVE_UNISTD_H
+/* Values for the second argument to access. These may be OR'd together. */
+#ifndef R_OK
+#define R_OK    4       /* Test for read permission.  */
+#endif
+#ifndef W_OK
+#define W_OK    2       /* Test for write permission.  */
+#endif
+#ifndef F_OK
+#define F_OK    0       /* Test for existence.  */
+#endif
+
+typedef int mode_t;
+#endif /* !HAVE_UNISTD_H */
+
 #if !defined (HAVE_MKOSTEMP) && !defined(HAVE_MKSTEMP) && !defined(HAVE__MKTEMP_S)
 static int
 mkstemp (char *template)
@@ -275,6 +290,91 @@ FcReadLink (const FcChar8 *pathname,
 #endif
 }
 
+/* On Windows MingW provides dirent.h / openddir(), but MSVC does not */
+#ifndef HAVE_DIRENT_H
+
+struct DIR {
+    struct dirent d_ent;
+    HANDLE handle;
+    WIN32_FIND_DATA fdata;
+    FcBool valid;
+};
+
+FcPrivate DIR *
+FcCompatOpendirWin32 (const char *dirname)
+{
+    size_t len;
+    char *name;
+    DIR *dir;
+
+    dir = calloc (1, sizeof (struct DIR));
+    if (dir == NULL)
+        return NULL;
+
+    len = strlen (dirname);
+    name = malloc (len + 3);
+    if (name == NULL)
+    {
+      free (dir);
+      return NULL;
+    }
+    memcpy (name, dirname, len);
+    name[len++] = FC_DIR_SEPARATOR;
+    name[len++] = '*';
+    name[len] = '\0';
+
+    dir->handle = FindFirstFileEx (name, FindExInfoBasic, &dir->fdata, FindExSearchNameMatch, NULL, 0);
+
+    free (name);
+
+    if (!dir->handle)
+    {
+        free (dir);
+        dir = NULL;
+
+        if (GetLastError () == ERROR_FILE_NOT_FOUND)
+            errno = ENOENT;
+        else
+            errno = EACCES;
+    }
+
+    dir->valid = FcTrue;
+    return dir;
+}
+
+FcPrivate struct dirent *
+FcCompatReaddirWin32 (DIR *dir)
+{
+    if (dir->valid != FcTrue)
+        return NULL;
+
+    dir->d_ent.d_name = dir->fdata.cFileName;
+
+    if ((dir->fdata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0)
+        dir->d_ent.d_type = DT_DIR;
+    else if (dir->fdata.dwFileAttributes == FILE_ATTRIBUTE_NORMAL)
+        dir->d_ent.d_type = DT_REG;
+    else
+        dir->d_ent.d_type = DT_UNKNOWN;
+
+    if (!FindNextFile (dir->handle, &dir->fdata))
+        dir->valid = FcFalse;
+
+    return &dir->d_ent;
+}
+
+FcPrivate int
+FcCompatClosedirWin32 (DIR *dir)
+{
+    if (dir != NULL && dir->handle != NULL)
+    {
+        FindClose (dir->handle);
+        free (dir);
+    }
+    return 0;
+}
+#endif /* HAVE_DIRENT_H */
+
 #define __fccompat__
 #include "fcaliastail.h"
 #undef __fccompat__
index f3addca..d00c494 100644 (file)
@@ -62,7 +62,17 @@ retry:
        if (!langs || !langs[0])
            langs = getenv ("LC_ALL");
        if (!langs || !langs[0])
-           langs = getenv ("LC_CTYPE");
+        {
+            langs = getenv ("LC_CTYPE");
+            // On some macOS systems, LC_CTYPE is set to "UTF-8", which doesn't
+            // give any languge information. In this case, ignore LC_CTYPE and
+            // continue the search with LANG.
+            if (langs && (FcStrCmpIgnoreCase((const FcChar8 *) langs,
+                                             (const FcChar8 *)"UTF-8") == 0))
+            {
+                langs = NULL;
+            }
+        }
        if (!langs || !langs[0])
            langs = getenv ("LANG");
        if (langs && langs[0])
@@ -211,28 +221,73 @@ retry:
     return prgname;
 }
 
+static FcChar8 *default_desktop_name;
+
+FcChar8 *
+FcGetDesktopName (void)
+{
+    FcChar8 *desktop_name;
+retry:
+    desktop_name = fc_atomic_ptr_get (&default_desktop_name);
+    if (!desktop_name)
+    {
+       char *s = getenv ("XDG_CURRENT_DESKTOP");
+
+       if (!s)
+           desktop_name = FcStrdup ("");
+       else
+           desktop_name = FcStrdup (s);
+       if (!desktop_name)
+       {
+           fprintf (stderr, "Fontconfig error: out of memory in %s\n",
+                    __FUNCTION__);
+           return NULL;
+       }
+
+       if (!fc_atomic_ptr_cmpexch(&default_desktop_name, NULL, desktop_name))
+       {
+           free (desktop_name);
+           goto retry;
+       }
+    }
+    if (desktop_name && !desktop_name[0])
+       return NULL;
+
+    return desktop_name;
+}
+
 void
 FcDefaultFini (void)
 {
     FcChar8  *lang;
     FcStrSet *langs;
     FcChar8  *prgname;
+    FcChar8  *desktop;
 
     lang = fc_atomic_ptr_get (&default_lang);
-    if (lang && fc_atomic_ptr_cmpexch (&default_lang, lang, NULL)) {
+    if (lang && fc_atomic_ptr_cmpexch (&default_lang, lang, NULL))
+    {
        free (lang);
     }
 
     langs = fc_atomic_ptr_get (&default_langs);
-    if (langs && fc_atomic_ptr_cmpexch (&default_langs, langs, NULL)) {
+    if (langs && fc_atomic_ptr_cmpexch (&default_langs, langs, NULL))
+    {
        FcRefInit (&langs->ref, 1);
        FcStrSetDestroy (langs);
     }
 
     prgname = fc_atomic_ptr_get (&default_prgname);
-    if (prgname && fc_atomic_ptr_cmpexch (&default_prgname, prgname, NULL)) {
+    if (prgname && fc_atomic_ptr_cmpexch (&default_prgname, prgname, NULL))
+    {
        free (prgname);
     }
+
+    desktop = fc_atomic_ptr_get (&default_desktop_name);
+    if (desktop && fc_atomic_ptr_cmpexch(&default_desktop_name, desktop, NULL))
+    {
+       free (desktop);
+    }
 }
 
 void
@@ -335,6 +390,16 @@ FcDefaultSubstitute (FcPattern *pattern)
        if (prgname)
            FcPatternObjectAddString (pattern, FC_PRGNAME_OBJECT, prgname);
     }
+
+    if (FcPatternObjectGet (pattern, FC_DESKTOP_NAME_OBJECT, 0, &v) == FcResultNoMatch)
+    {
+       FcChar8 *desktop = FcGetDesktopName ();
+       if (desktop)
+           FcPatternObjectAddString (pattern, FC_DESKTOP_NAME_OBJECT, desktop);
+    }
+
+    if (!FcPatternFindObjectIter (pattern, &iter, FC_ORDER_OBJECT))
+       FcPatternObjectAddInteger (pattern, FC_ORDER_OBJECT, 0);
 }
 #define __fcdefault__
 #include "fcaliastail.h"
index 93f220c..e332897 100644 (file)
  */
 
 #include "fcint.h"
+
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 
 FcBool
 FcFileIsDir (const FcChar8 *file)
@@ -167,7 +170,16 @@ FcFileScan (FcFontSet          *set,
            const FcChar8   *file,
            FcBool          force FC_UNUSED)
 {
-    return FcFileScanConfig (set, dirs, file, FcConfigGetCurrent ());
+    FcConfig *config;
+    FcBool ret;
+
+    config = FcConfigReference (NULL);
+    if (!config)
+       return FcFalse;
+    ret = FcFileScanConfig (set, dirs, file, config);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 /*
@@ -189,8 +201,9 @@ FcDirScanConfig (FcFontSet  *set,
     DIR                        *d;
     struct dirent      *e;
     FcStrSet           *files;
-    FcChar8            *file;
+    FcChar8            *file_prefix, *s_dir = NULL;
     FcChar8            *base;
+    const FcChar8      *sysroot = FcConfigGetSysRoot (config);
     FcBool             ret = FcTrue;
     int                        i;
 
@@ -201,20 +214,28 @@ FcDirScanConfig (FcFontSet        *set,
        return FcTrue;
 
     /* freed below */
-    file = (FcChar8 *) malloc (strlen ((char *) dir) + 1 + FC_MAX_FILE_LEN + 1);
-    if (!file) {
+    file_prefix = (FcChar8 *) malloc (strlen ((char *) dir) + 1 + FC_MAX_FILE_LEN + 1);
+    if (!file_prefix) {
        ret = FcFalse;
        goto bail;
     }
+    strcpy ((char *) file_prefix, (char *) dir);
+    strcat ((char *) file_prefix, FC_DIR_SEPARATOR_S);
+    base = file_prefix + strlen ((char *) file_prefix);
 
-    strcpy ((char *) file, (char *) dir);
-    strcat ((char *) file, "/");
-    base = file + strlen ((char *) file);
+    if (sysroot)
+       s_dir = FcStrBuildFilename (sysroot, dir, NULL);
+    else
+       s_dir = FcStrdup (dir);
+    if (!s_dir) {
+       ret = FcFalse;
+       goto bail;
+    }
 
     if (FcDebug () & FC_DBG_SCAN)
-       printf ("\tScanning dir %s\n", dir);
+       printf ("\tScanning dir %s\n", s_dir);
        
-    d = opendir ((char *) dir);
+    d = opendir ((char *) s_dir);
     if (!d)
     {
        /* Don't complain about missing directories */
@@ -234,7 +255,7 @@ FcDirScanConfig (FcFontSet  *set,
        if (e->d_name[0] != '.' && strlen (e->d_name) < FC_MAX_FILE_LEN)
        {
            strcpy ((char *) base, (char *) e->d_name);
-           if (!FcStrSetAdd (files, file)) {
+           if (!FcStrSetAdd (files, file_prefix)) {
                ret = FcFalse;
                goto bail2;
            }
@@ -257,8 +278,10 @@ bail2:
 bail1:
     closedir (d);
 bail:
-    if (file)
-       free (file);
+    if (s_dir)
+       free (s_dir);
+    if (file_prefix)
+       free (file_prefix);
 
     return ret;
 }
@@ -271,10 +294,19 @@ FcDirScan (FcFontSet          *set,
           const FcChar8    *dir,
           FcBool           force FC_UNUSED)
 {
+    FcConfig *config;
+    FcBool ret;
+
     if (cache || !force)
        return FcFalse;
 
-    return FcDirScanConfig (set, dirs, dir, force, FcConfigGetCurrent ());
+    config = FcConfigReference (NULL);
+    if (!config)
+       return FcFalse;
+    ret = FcDirScanConfig (set, dirs, dir, force, config);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 /*
@@ -318,7 +350,8 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
     /*
      * Scan the dir
      */
-    if (!FcDirScanConfig (set, dirs, d, FcTrue, config))
+    /* Do not pass sysroot here. FcDirScanConfig() do take care of it */
+    if (!FcDirScanConfig (set, dirs, dir, FcTrue, config))
        goto bail2;
 
     /*
@@ -353,12 +386,16 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
     FcCache *new = NULL;
     struct stat dir_stat;
     FcStrSet *dirs;
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    const FcChar8 *sysroot;
     FcChar8 *d = NULL;
 #ifndef _WIN32
     int fd = -1;
 #endif
 
+    config = FcConfigReference (config);
+    if (!config)
+       return NULL;
+    sysroot = FcConfigGetSysRoot (config);
     cache = FcDirCacheLoad (dir, config, NULL);
     if (!cache)
        goto bail;
@@ -379,7 +416,8 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
     /*
      * Scan the dir
      */
-    if (!FcDirScanConfig (NULL, dirs, d, FcTrue, config))
+    /* Do not pass sysroot here. FcDirScanConfig() do take care of it */
+    if (!FcDirScanConfig (NULL, dirs, dir, FcTrue, config))
        goto bail1;
     /*
      * Rebuild the cache object
@@ -401,6 +439,7 @@ bail1:
 bail:
     if (d)
        FcStrFree (d);
+    FcConfigDestroy (config);
 
     return new;
 }
@@ -413,7 +452,7 @@ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config)
 {
     FcCache            *cache = NULL;
 
-    FcDirCacheCreateUUID ((FcChar8 *) dir, FcFalse, config);
+    config = FcConfigReference (config);
     /* Try to use existing cache file */
     if (!force)
        cache = FcDirCacheLoad (dir, config, NULL);
@@ -421,13 +460,7 @@ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config)
     /* Not using existing cache file, construct new cache */
     if (!cache)
        cache = FcDirCacheScan (dir, config);
-    if (cache)
-    {
-       FcFontSet *fs = FcCacheSet (cache);
-
-       if (cache->dirs_count == 0 && (!fs || fs->nfont == 0))
-           FcDirCacheDeleteUUID (dir, config);
-    }
+    FcConfigDestroy (config);
 
     return cache;
 }
index c76dc5e..ae8c59c 100644 (file)
@@ -759,14 +759,14 @@ interpret_simple (FcFormatContext *c,
            }
            if (l && idx == 0)
            {
-               if (!FcNameUnparseValue (buf, &l->value, '\0'))
+               if (!FcNameUnparseValue (buf, &l->value, NULL))
                    return FcFalse;
            }
            else goto notfound;
         }
        else if (l)
        {
-           FcNameUnparseValueList (buf, l, '\0');
+           FcNameUnparseValueList (buf, l, NULL);
        }
        else
        {
diff --git a/src/fcfoundry.h b/src/fcfoundry.h
new file mode 100644 (file)
index 0000000..bc103bb
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+  Copyright © 2002-2003 by Juliusz Chroboczek
+
+  Permission is hereby granted, free of charge, to any person obtaining a copy
+  of this software and associated documentation files (the "Software"), to deal
+  in the Software without restriction, including without limitation the rights
+  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+  copies of the Software, and to permit persons to whom the Software is
+  furnished to do so, subject to the following conditions:
+
+  The above copyright notice and this permission notice shall be included in
+  all copies or substantial portions of the Software.
+
+  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+  THE SOFTWARE.
+*/
+
+/* Order is significant.  For example, some B&H fonts are hinted by
+   URW++, and both strings appear in the notice. */
+
+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]))
index 07978cf..cf923f2 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/*
-  Copyright © 2002-2003 by Juliusz Chroboczek
-
-  Permission is hereby granted, free of charge, to any person obtaining a copy
-  of this software and associated documentation files (the "Software"), to deal
-  in the Software without restriction, including without limitation the rights
-  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-  copies of the Software, and to permit persons to whom the Software is
-  furnished to do so, subject to the following conditions:
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-  THE SOFTWARE.
-*/
-
 #include "fcint.h"
 #include "fcftint.h"
 #include <stdlib.h>
@@ -65,6 +43,7 @@
 #endif
 #include FT_MULTIPLE_MASTERS_H
 
+#include "fcfoundry.h"
 #include "ftglue.h"
 
 /*
@@ -193,9 +172,9 @@ static const FcFtLanguage   fcFtLanguage[] = {
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_KIRGHIZ,              "ky" },
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_TAJIKI,               "tg" },
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_TURKMEN,              "tk" },
- {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN,            "mo" },
- {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN_MONGOLIAN_SCRIPT,"mo" },
- {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN_CYRILLIC_SCRIPT, "mo" },
+ {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN,            "mn" },
+ {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN_MONGOLIAN_SCRIPT,"mn" },
+ {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_MONGOLIAN_CYRILLIC_SCRIPT, "mn" },
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_PASHTO,               "ps" },
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_KURDISH,              "ku" },
  {  TT_PLATFORM_MACINTOSH,     TT_MAC_LANGID_KASHMIRI,             "ks" },
@@ -543,6 +522,9 @@ static const FcMacRomanFake fcMacRomanFake[] = {
 static FcChar8 *
 FcFontCapabilities(FT_Face face);
 
+static FcBool
+FcFontHasHint (FT_Face face);
+
 static int
 FcFreeTypeSpacing (FT_Face face);
 
@@ -924,33 +906,6 @@ FcSfntNameLanguage (FT_SfntName *sname)
     return 0;
 }
 
-/* Order is significant.  For example, some B&H fonts are hinted by
-   URW++, and both strings appear in the notice. */
-
-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]))
-
 static const FcChar8 *
 FcNoticeFoundry(const FT_String *notice)
 {
@@ -1101,15 +1056,22 @@ FcGetPixelSize (FT_Face face, int i)
 }
 
 static FcBool
-FcStringInPatternElement (FcPattern *pat, const char *elt, FcChar8 *string)
+FcStringInPatternElement (FcPattern *pat, FcObject obj, const FcChar8 *string)
 {
-    int            e;
-    FcChar8 *old;
-    for (e = 0; FcPatternGetString (pat, elt, e, &old) == FcResultMatch; e++)
-       if (!FcStrCmpIgnoreBlanksAndCase (old, string))
-       {
+    FcPatternIter iter;
+    FcValueListPtr l;
+
+    FcPatternIterStart (pat, &iter);
+    if (!FcPatternFindObjectIter (pat, &iter, obj))
+       return FcFalse;
+    for (l = FcPatternIterGetValues (pat, &iter); l; l = FcValueListNext (l))
+    {
+       FcValue v = FcValueCanonicalize (&l->value);
+       if (v.type != FcTypeString)
+           break;
+       if (!FcStrCmpIgnoreBlanksAndCase (v.u.s, string))
            return FcTrue;
-       }
+    }
     return FcFalse;
 }
 
@@ -1123,12 +1085,12 @@ static const FT_UShort platform_order[] = {
 
 static const FT_UShort nameid_order[] = {
     TT_NAME_ID_WWS_FAMILY,
-    TT_NAME_ID_PREFERRED_FAMILY,
+    TT_NAME_ID_TYPOGRAPHIC_FAMILY,
     TT_NAME_ID_FONT_FAMILY,
     TT_NAME_ID_MAC_FULL_NAME,
     TT_NAME_ID_FULL_NAME,
     TT_NAME_ID_WWS_SUBFAMILY,
-    TT_NAME_ID_PREFERRED_SUBFAMILY,
+    TT_NAME_ID_TYPOGRAPHIC_SUBFAMILY,
     TT_NAME_ID_FONT_SUBFAMILY,
     TT_NAME_ID_TRADEMARK,
     TT_NAME_ID_MANUFACTURER,
@@ -1145,6 +1107,23 @@ typedef struct
   unsigned int idx;
 } FcNameMapping;
 
+static FcBool
+_is_english(int platform, int language)
+{
+    FcBool ret = FcFalse;
+
+    switch (platform)
+    {
+    case TT_PLATFORM_MACINTOSH:
+       ret = language == TT_MAC_LANGID_ENGLISH;
+       break;
+    case TT_PLATFORM_MICROSOFT:
+       ret = language == TT_MS_LANGID_ENGLISH_UNITED_STATES;
+       break;
+    }
+    return ret;
+}
+
 static int
 name_mapping_cmp (const void *pa, const void *pb)
 {
@@ -1154,7 +1133,7 @@ name_mapping_cmp (const void *pa, const void *pb)
   if (a->platform_id != b->platform_id) return (int) a->platform_id - (int) b->platform_id;
   if (a->name_id != b->name_id) return (int) a->name_id - (int) b->name_id;
   if (a->encoding_id != b->encoding_id) return (int) a->encoding_id - (int) b->encoding_id;
-  if (a->language_id != b->language_id) return (int) a->language_id - (int) b->language_id;
+  if (a->language_id != b->language_id) return _is_english(a->platform_id, a->language_id) ? -1 : _is_english(b->platform_id, b->language_id) ? 1 : (int) a->language_id - (int) b->language_id;
   if (a->idx != b->idx) return (int) a->idx - (int) b->idx;
 
   return 0;
@@ -1253,6 +1232,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     int                    st;
 
     FcBool         symbol = FcFalse;
+    FT_Error       ftresult;
 
     FcInitDebug (); /* We might be called with no initizalization whatsoever. */
 
@@ -1264,36 +1244,37 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        int has_outline = !!(face->face_flags & FT_FACE_FLAG_SCALABLE);
        int has_color = 0;
 
-       if (!FcPatternAddBool (pat, FC_OUTLINE, has_outline))
+       if (!FcPatternObjectAddBool (pat, FC_OUTLINE_OBJECT, has_outline))
            goto bail1;
 
-       has_color = FT_HAS_COLOR (face);
-       if (!FcPatternAddBool (pat, FC_COLOR, has_color))
+       has_color = !!FT_HAS_COLOR (face);
+       if (!FcPatternObjectAddBool (pat, FC_COLOR_OBJECT, has_color))
            goto bail1;
 
        /* 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))
+        * is in contrast to non-color strikes... */
+       if (!FcPatternObjectAddBool (pat, FC_SCALABLE_OBJECT, has_outline || has_color))
            goto bail1;
     }
 
+    ftresult = FT_Get_MM_Var (face, &master);
+
     if (id >> 16)
     {
-      if (FT_Get_MM_Var (face, &master))
-         goto bail1;
+       if (ftresult)
+           goto bail1;
 
       if (id >> 16 == 0x8000)
       {
          /* Query variable font itself. */
          unsigned int i;
-
          for (i = 0; i < master->num_axis; i++)
          {
              double min_value = master->axis[i].minimum / (double) (1U << 16);
              double def_value = master->axis[i].def / (double) (1U << 16);
              double max_value = master->axis[i].maximum / (double) (1U << 16);
-             const char *elt = NULL;
+             FcObject obj = FC_INVALID_OBJECT;
 
              if (min_value > def_value || def_value > max_value || min_value == max_value)
                  continue;
@@ -1301,7 +1282,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
              switch (master->axis[i].tag)
              {
                case FT_MAKE_TAG ('w','g','h','t'):
-                 elt = FC_WEIGHT;
+                 obj = FC_WEIGHT_OBJECT;
                  min_value = FcWeightFromOpenTypeDouble (min_value);
                  max_value = FcWeightFromOpenTypeDouble (max_value);
                  variable_weight = FcTrue;
@@ -1309,23 +1290,23 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                  break;
 
                case FT_MAKE_TAG ('w','d','t','h'):
-                 elt = FC_WIDTH;
+                 obj = FC_WIDTH_OBJECT;
                  /* Values in 'wdth' match Fontconfig FC_WIDTH_* scheme directly. */
                  variable_width = FcTrue;
                  width = 0; /* To stop looking for width. */
                  break;
 
                case FT_MAKE_TAG ('o','p','s','z'):
-                 elt = FC_SIZE;
+                 obj = FC_SIZE_OBJECT;
                  /* Values in 'opsz' match Fontconfig FC_SIZE, both are in points. */
                  variable_size = FcTrue;
                  break;
              }
 
-             if (elt)
+             if (obj != FC_INVALID_OBJECT)
              {
                  FcRange *r = FcRangeCreateDouble (min_value, max_value);
-                 if (!FcPatternAddRange (pat, elt, r))
+                 if (!FcPatternObjectAddRange (pat, obj, r))
                  {
                      FcRangeDestroy (r);
                      goto bail1;
@@ -1364,7 +1345,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                  break;
 
                case FT_MAKE_TAG ('o','p','s','z'):
-                 if (!FcPatternAddDouble (pat, FC_SIZE, value))
+                 if (!FcPatternObjectAddDouble (pat, FC_SIZE_OBJECT, value))
                      goto bail1;
                  break;
            }
@@ -1373,7 +1354,29 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
         else
            goto bail1;
     }
-    if (!FcPatternAddBool (pat, FC_VARIABLE, variable))
+    else
+    {
+       if (!ftresult)
+       {
+           unsigned int i;
+           for (i = 0; i < master->num_axis; i++)
+           {
+               switch (master->axis[i].tag)
+               {
+               case FT_MAKE_TAG ('o','p','s','z'):
+                   if (!FcPatternObjectAddDouble (pat, FC_SIZE_OBJECT, master->axis[i].def / (double) (1U << 16)))
+                       goto bail1;
+                   variable_size = FcTrue;
+                   break;
+               }
+           }
+       }
+       else
+       {
+           /* ignore an error of FT_Get_MM_Var() */
+       }
+    }
+    if (!FcPatternObjectAddBool (pat, FC_VARIABLE_OBJECT, variable))
        goto bail1;
 
     /*
@@ -1391,7 +1394,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
 
     if (os2 && os2->version >= 0x0001 && os2->version != 0xffff)
     {
-       if (os2->achVendID && os2->achVendID[0] != 0)
+       if (os2->achVendID[0] != 0)
        {
            foundry_ = (FcChar8 *) malloc (sizeof (os2->achVendID) + 1);
            memcpy ((void *)foundry_, os2->achVendID, sizeof (os2->achVendID));
@@ -1455,10 +1458,10 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
            FT_SfntName sname;
            int nameidx;
            const FcChar8       *lang;
-           const char  *elt = 0, *eltlang = 0;
            int         *np = 0, *nlangp = 0;
            size_t              len;
            int nameid, lookupid;
+           FcObject obj = FC_INVALID_OBJECT, objlang = FC_INVALID_OBJECT;
 
            nameid = lookupid = nameid_order[n];
 
@@ -1468,7 +1471,8 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                 * and treat the instance's nameid as FONT_SUBFAMILY.
                 * Postscript name is automatically handled by FreeType. */
                if (nameid == TT_NAME_ID_WWS_SUBFAMILY ||
-                   nameid == TT_NAME_ID_PREFERRED_SUBFAMILY)
+                   nameid == TT_NAME_ID_TYPOGRAPHIC_SUBFAMILY ||
+                   nameid == TT_NAME_ID_FULL_NAME)
                    continue;
 
                if (nameid == TT_NAME_ID_FONT_SUBFAMILY)
@@ -1484,7 +1488,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
            {
                switch (nameid) {
                case TT_NAME_ID_WWS_FAMILY:
-               case TT_NAME_ID_PREFERRED_FAMILY:
+               case TT_NAME_ID_TYPOGRAPHIC_FAMILY:
                case TT_NAME_ID_FONT_FAMILY:
 #if 0  
                case TT_NAME_ID_UNIQUE_ID:
@@ -1494,25 +1498,27 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                                sname.name_id, sname.platform_id,
                                sname.encoding_id, sname.language_id);
 
-                   elt = FC_FAMILY;
-                   eltlang = FC_FAMILYLANG;
+                   obj = FC_FAMILY_OBJECT;
+                   objlang = FC_FAMILYLANG_OBJECT;
                    np = &nfamily;
                    nlangp = &nfamily_lang;
                    break;
                case TT_NAME_ID_MAC_FULL_NAME:
                case TT_NAME_ID_FULL_NAME:
+                   if (variable)
+                       break;
                    if (FcDebug () & FC_DBG_SCANV)
                        printf ("found full   (n %2d p %d e %d l 0x%04x)",
                                sname.name_id, sname.platform_id,
                                sname.encoding_id, sname.language_id);
 
-                   elt = FC_FULLNAME;
-                   eltlang = FC_FULLNAMELANG;
+                   obj = FC_FULLNAME_OBJECT;
+                   objlang = FC_FULLNAMELANG_OBJECT;
                    np = &nfullname;
                    nlangp = &nfullname_lang;
                    break;
                case TT_NAME_ID_WWS_SUBFAMILY:
-               case TT_NAME_ID_PREFERRED_SUBFAMILY:
+               case TT_NAME_ID_TYPOGRAPHIC_SUBFAMILY:
                case TT_NAME_ID_FONT_SUBFAMILY:
                    if (variable)
                        break;
@@ -1521,8 +1527,8 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                                sname.name_id, sname.platform_id,
                                sname.encoding_id, sname.language_id);
 
-                   elt = FC_STYLE;
-                   eltlang = FC_STYLELANG;
+                   obj = FC_STYLE_OBJECT;
+                   objlang = FC_STYLELANG_OBJECT;
                    np = &nstyle;
                    nlangp = &nstyle_lang;
                    break;
@@ -1538,7 +1544,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                    }
                    break;
                }
-               if (elt)
+               if (obj != FC_INVALID_OBJECT)
                {
                    FcChar8             *utf8, *pp;
 
@@ -1546,7 +1552,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                    lang = FcSfntNameLanguage (&sname);
 
                    if (FcDebug () & FC_DBG_SCANV)
-                       printf ("%s\n", utf8);
+                       printf ("%s\n", utf8 ? (char *)utf8 : "(null)");
 
                    if (!utf8)
                        continue;
@@ -1562,14 +1568,14 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                        pp--;
                    *pp = 0;
 
-                   if (FcStringInPatternElement (pat, elt, utf8))
+                   if (FcStringInPatternElement (pat, obj, utf8))
                    {
                        free (utf8);
                        continue;
                    }
 
                    /* add new element */
-                   if (!FcPatternAddString (pat, elt, utf8))
+                   if (!FcPatternObjectAddString (pat, obj, utf8))
                    {
                        free (utf8);
                        goto bail1;
@@ -1580,11 +1586,11 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
                        /* pad lang list with 'und' to line up with elt */
                        while (*nlangp < *np)
                        {
-                           if (!FcPatternAddString (pat, eltlang, (FcChar8 *) "und"))
+                           if (!FcPatternObjectAddString (pat, objlang, (FcChar8 *) "und"))
                                goto bail1;
                            ++*nlangp;
                        }
-                       if (!FcPatternAddString (pat, eltlang, lang))
+                       if (!FcPatternObjectAddString (pat, objlang, lang))
                            goto bail1;
                        ++*nlangp;
                    }
@@ -1597,29 +1603,45 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        }
     }
     if (!nm_share)
+    {
        free (name_mapping);
+       name_mapping = NULL;
+    }
 
     if (!nfamily && face->family_name &&
        FcStrCmpIgnoreBlanksAndCase ((FcChar8 *) face->family_name, (FcChar8 *) "") != 0)
     {
        if (FcDebug () & FC_DBG_SCANV)
            printf ("using FreeType family \"%s\"\n", face->family_name);
-       if (!FcPatternAddString (pat, FC_FAMILY, (FcChar8 *) face->family_name))
+       if (!FcPatternObjectAddString (pat, FC_FAMILY_OBJECT, (FcChar8 *) face->family_name))
            goto bail1;
-       if (!FcPatternAddString (pat, FC_STYLELANG, (FcChar8 *) "en"))
+       if (!FcPatternObjectAddString (pat, FC_FAMILYLANG_OBJECT, (FcChar8 *) "en"))
            goto bail1;
        ++nfamily;
     }
 
-    if (!variable && !nstyle && face->style_name &&
-       FcStrCmpIgnoreBlanksAndCase ((FcChar8 *) face->style_name, (FcChar8 *) "") != 0)
+    if (!variable && !nstyle)
     {
-       if (FcDebug () & FC_DBG_SCANV)
-           printf ("using FreeType style \"%s\"\n", face->style_name);
+       const FcChar8 *style_regular = (const FcChar8 *) "Regular";
+       const FcChar8 *ss;
 
-       if (!FcPatternAddString (pat, FC_STYLE, (FcChar8 *) face->style_name))
+       if (face->style_name &&
+           FcStrCmpIgnoreBlanksAndCase ((FcChar8 *) face->style_name, (FcChar8 *) "") != 0)
+       {
+           if (FcDebug () & FC_DBG_SCANV)
+               printf ("using FreeType style \"%s\"\n", face->style_name);
+
+           ss = (const FcChar8 *) face->style_name;
+       }
+       else
+       {
+           if (FcDebug () & FC_DBG_SCANV)
+               printf ("applying default style Regular\n");
+           ss = style_regular;
+       }
+       if (!FcPatternObjectAddString (pat, FC_STYLE_OBJECT, ss))
            goto bail1;
-       if (!FcPatternAddString (pat, FC_STYLELANG, (FcChar8 *) "en"))
+       if (!FcPatternObjectAddString (pat, FC_STYLELANG_OBJECT, (FcChar8 *) "en"))
            goto bail1;
        ++nstyle;
     }
@@ -1643,7 +1665,12 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        family[end - start] = '\0';
        if (FcDebug () & FC_DBG_SCANV)
            printf ("using filename for family %s\n", family);
-       if (!FcPatternAddString (pat, FC_FAMILY, family))
+       if (!FcPatternObjectAddString (pat, FC_FAMILY_OBJECT, family))
+       {
+           free (family);
+           goto bail1;
+       }
+       if (!FcPatternObjectAddString (pat, FC_FAMILYLANG_OBJECT, (FcChar8 *) "en"))
        {
            free (family);
            goto bail1;
@@ -1652,6 +1679,61 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        ++nfamily;
     }
 
+    /* Add the fullname into the cache */
+    if (!variable && !nfullname)
+    {
+       FcChar8 *family, *style, *lang = NULL;
+       int n = 0;
+       size_t len, i;
+       FcStrBuf sbuf;
+
+       while (FcPatternObjectGetString (pat, FC_FAMILYLANG_OBJECT, n, &lang) == FcResultMatch)
+       {
+           if (FcStrCmp (lang, (const FcChar8 *) "en") == 0)
+               break;
+           n++;
+           lang = NULL;
+       }
+       if (!lang)
+           n = 0;
+       if (FcPatternObjectGetString (pat, FC_FAMILY_OBJECT, n, &family) != FcResultMatch)
+           goto bail1;
+       len = strlen ((const char *) family);
+       for (i = len; i > 0; i--)
+       {
+           if (!isspace (family[i-1]))
+               break;
+       }
+       family[i] = 0;
+       n = 0;
+       while (FcPatternObjectGetString (pat, FC_STYLELANG_OBJECT, n, &lang) == FcResultMatch)
+       {
+           if (FcStrCmp (lang, (const FcChar8 *) "en") == 0)
+               break;
+           n++;
+           lang = NULL;
+       }
+       if (!lang)
+           n = 0;
+       if (FcPatternObjectGetString (pat, FC_STYLE_OBJECT, n, &style) != FcResultMatch)
+           goto bail1;
+       len = strlen ((const char *) style);
+       for (i = 0; style[i] != 0 && isspace (style[i]); i++);
+       memcpy (style, &style[i], len - i);
+       FcStrBufInit (&sbuf, NULL, 0);
+       FcStrBufString (&sbuf, family);
+       FcStrBufChar (&sbuf, ' ');
+       FcStrBufString (&sbuf, style);
+       if (!FcPatternObjectAddString (pat, FC_FULLNAME_OBJECT, FcStrBufDoneStatic (&sbuf)))
+       {
+           FcStrBufDestroy (&sbuf);
+           goto bail1;
+       }
+       FcStrBufDestroy (&sbuf);
+       if (!FcPatternObjectAddString (pat, FC_FULLNAMELANG_OBJECT, (const FcChar8 *) "en"))
+           goto bail1;
+       ++nfullname;
+    }
     /* Add the PostScript name into the cache */
     if (!variable)
     {
@@ -1701,14 +1783,14 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
            strncpy (psname, tmp, 255);
            psname[255] = 0;
        }
-       if (!FcPatternAddString (pat, FC_POSTSCRIPT_NAME, (const FcChar8 *)psname))
+       if (!FcPatternObjectAddString (pat, FC_POSTSCRIPT_NAME_OBJECT, (const FcChar8 *)psname))
            goto bail1;
     }
 
-    if (file && *file && !FcPatternAddString (pat, FC_FILE, file))
+    if (file && *file && !FcPatternObjectAddString (pat, FC_FILE_OBJECT, file))
        goto bail1;
 
-    if (!FcPatternAddInteger (pat, FC_INDEX, id))
+    if (!FcPatternObjectAddInteger (pat, FC_INDEX_OBJECT, id))
        goto bail1;
 
 #if 0
@@ -1718,7 +1800,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
      * the attribute.  Sigh.
      */
     if ((face->face_flags & FT_FACE_FLAG_FIXED_WIDTH) != 0)
-       if (!FcPatternAddInteger (pat, FC_SPACING, FC_MONO))
+       if (!FcPatternObjectAddInteger (pat, FC_SPACING_OBJECT, FC_MONO))
            goto bail1;
 #endif
 
@@ -1728,14 +1810,16 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     head = (TT_Header *) FT_Get_Sfnt_Table (face, ft_sfnt_head);
     if (head)
     {
-       if (!FcPatternAddInteger (pat, FC_FONTVERSION, head->Font_Revision))
+       if (!FcPatternObjectAddInteger (pat, FC_FONTVERSION_OBJECT, head->Font_Revision))
            goto bail1;
     }
     else
     {
-       if (!FcPatternAddInteger (pat, FC_FONTVERSION, 0))
+       if (!FcPatternObjectAddInteger (pat, FC_FONTVERSION_OBJECT, 0))
            goto bail1;
     }
+    if (!FcPatternObjectAddInteger (pat, FC_ORDER_OBJECT, 0))
+       goto bail1;
 
     if (os2 && os2->version >= 0x0001 && os2->version != 0xffff)
     {
@@ -1797,7 +1881,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     }
     if (os2 && (complex_ = FcFontCapabilities(face)))
     {
-       if (!FcPatternAddString (pat, FC_CAPABILITY, complex_))
+       if (!FcPatternObjectAddString (pat, FC_CAPABILITY_OBJECT, complex_))
        {
            free (complex_);
            goto bail1;
@@ -1805,6 +1889,9 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        free (complex_);
     }
 
+    if (!FcPatternObjectAddBool (pat, FC_FONT_HAS_HINT_OBJECT, FcFontHasHint (face)))
+       goto bail1;
+
     if (!variable_size && os2 && os2->version >= 0x0005 && os2->version != 0xffff)
     {
        double lower_size, upper_size;
@@ -1816,13 +1903,13 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
 
        if (lower_size == upper_size)
        {
-           if (!FcPatternAddDouble (pat, FC_SIZE, lower_size))
+           if (!FcPatternObjectAddDouble (pat, FC_SIZE_OBJECT, lower_size))
                goto bail1;
        }
        else
        {
            r = FcRangeCreateDouble (lower_size, upper_size);
-           if (!FcPatternAddRange (pat, FC_SIZE, r))
+           if (!FcPatternObjectAddRange (pat, FC_SIZE_OBJECT, r))
            {
                FcRangeDestroy (r);
                goto bail1;
@@ -1966,19 +2053,19 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     if (foundry == 0)
        foundry = (FcChar8 *) "unknown";
 
-    if (!FcPatternAddInteger (pat, FC_SLANT, slant))
+    if (!FcPatternObjectAddInteger (pat, FC_SLANT_OBJECT, slant))
        goto bail1;
 
-    if (!variable_weight && !FcPatternAddDouble (pat, FC_WEIGHT, weight))
+    if (!variable_weight && !FcPatternObjectAddDouble (pat, FC_WEIGHT_OBJECT, weight))
        goto bail1;
 
-    if (!variable_width && !FcPatternAddDouble (pat, FC_WIDTH, width))
+    if (!variable_width && !FcPatternObjectAddDouble (pat, FC_WIDTH_OBJECT, width))
        goto bail1;
 
-    if (!FcPatternAddString (pat, FC_FOUNDRY, foundry))
+    if (!FcPatternObjectAddString (pat, FC_FOUNDRY_OBJECT, foundry))
        goto bail1;
 
-    if (!FcPatternAddBool (pat, FC_DECORATIVE, decorative))
+    if (!FcPatternObjectAddBool (pat, FC_DECORATIVE_OBJECT, decorative))
        goto bail1;
 
 
@@ -1998,7 +2085,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
 
     /* The FcFreeTypeCharSet() chose the encoding; test it for symbol. */
     symbol = face->charmap && face->charmap->encoding == FT_ENCODING_MS_SYMBOL;
-    if (!FcPatternAddBool (pat, FC_SYMBOL, symbol))
+    if (!FcPatternObjectAddBool (pat, FC_SYMBOL_OBJECT, symbol))
        goto bail1;
 
     spacing = FcFreeTypeSpacing (face);
@@ -2031,7 +2118,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
 #endif
     }
 
-    if (!FcPatternAddCharSet (pat, FC_CHARSET, cs))
+    if (!FcPatternObjectAddCharSet (pat, FC_CHARSET_OBJECT, cs))
        goto bail2;
 
     if (!symbol)
@@ -2054,7 +2141,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        ls = FcLangSetCreate ();
     }
 
-    if (!FcPatternAddLangSet (pat, FC_LANG, ls))
+    if (!FcPatternObjectAddLangSet (pat, FC_LANG_OBJECT, ls))
     {
        FcLangSetDestroy (ls);
        goto bail2;
@@ -2063,17 +2150,17 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     FcLangSetDestroy (ls);
 
     if (spacing != FC_PROPORTIONAL)
-       if (!FcPatternAddInteger (pat, FC_SPACING, spacing))
+       if (!FcPatternObjectAddInteger (pat, FC_SPACING_OBJECT, spacing))
            goto bail2;
 
     if (!(face->face_flags & FT_FACE_FLAG_SCALABLE))
     {
        int i;
        for (i = 0; i < face->num_fixed_sizes; i++)
-           if (!FcPatternAddDouble (pat, FC_PIXEL_SIZE,
-                                    FcGetPixelSize (face, i)))
+           if (!FcPatternObjectAddDouble (pat, FC_PIXEL_SIZE_OBJECT,
+                                          FcGetPixelSize (face, i)))
                goto bail2;
-       if (!FcPatternAddBool (pat, FC_ANTIALIAS, FcFalse))
+       if (!FcPatternObjectAddBool (pat, FC_ANTIALIAS_OBJECT, FcFalse))
            goto bail2;
     }
 #if HAVE_FT_GET_X11_FONT_FORMAT
@@ -2084,7 +2171,7 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
     {
        const char *font_format = FT_Get_X11_Font_Format (face);
        if (font_format)
-           if (!FcPatternAddString (pat, FC_FONTFORMAT, (FcChar8 *) font_format))
+           if (!FcPatternObjectAddString (pat, FC_FONTFORMAT_OBJECT, (FcChar8 *) font_format))
                goto bail2;
     }
 #endif
@@ -2097,9 +2184,14 @@ FcFreeTypeQueryFaceInternal (const FT_Face  face,
        free (foundry_);
 
     if (master)
-      {
-       /* TODO: How to free master?! */
-      }
+    {
+#ifdef HAVE_FT_DONE_MM_VAR
+       if (face->glyph)
+           FT_Done_MM_Var (face->glyph->library, master);
+#else
+       free (master);
+#endif
+    }
 
     return pat;
 
@@ -2107,6 +2199,17 @@ bail2:
     FcCharSetDestroy (cs);
 bail1:
     FcPatternDestroy (pat);
+    if (master)
+    {
+#ifdef HAVE_FT_DONE_MM_VAR
+       if (face->glyph)
+           FT_Done_MM_Var (face->glyph->library, master);
+#else
+       free (master);
+#endif
+    }
+    if (!nm_share && name_mapping)
+       free (name_mapping);
     if (foundry_)
        free (foundry_);
 bail0:
@@ -2135,7 +2238,7 @@ FcFreeTypeQuery(const FcChar8     *file,
     if (FT_Init_FreeType (&ftLibrary))
        return NULL;
 
-    if (FT_New_Face (ftLibrary, (char *) file, id & 0x7FFFFFFFF, &face))
+    if (FT_New_Face (ftLibrary, (char *) file, id & 0x7FFFFFFF, &face))
        goto bail;
 
     if (count)
@@ -2267,6 +2370,8 @@ bail:
     if (face)
        FT_Done_Face (face);
     FT_Done_FreeType (ftLibrary);
+    if (nm)
+       free (nm);
 
     return ret;
 }
@@ -2523,6 +2628,7 @@ FcFreeTypeCharSetAndSpacing (FT_Face face, FcBlanks *blanks FC_UNUSED, int *spac
 #define TTAG_GPOS  FT_MAKE_TAG( 'G', 'P', 'O', 'S' )
 #define TTAG_GSUB  FT_MAKE_TAG( 'G', 'S', 'U', 'B' )
 #define TTAG_SILF  FT_MAKE_TAG( 'S', 'i', 'l', 'f')
+#define TTAG_prep  FT_MAKE_TAG( 'p', 'r', 'e', 'p' )
 
 #define OTLAYOUT_HEAD      "otlayout:"
 #define OTLAYOUT_HEAD_LEN   9
@@ -2572,6 +2678,20 @@ compareulong (const void *a, const void *b)
     return *ua - *ub;
 }
 
+static FcBool
+FindTable (FT_Face face, FT_ULong tabletag)
+{
+    FT_Stream  stream = face->stream;
+    FT_Error   error;
+
+    if (!stream)
+        return FcFalse;
+
+    if (( error = ftglue_face_goto_table( face, tabletag, stream ) ))
+       return FcFalse;
+
+    return FcTrue;
+}
 
 static int
 GetScriptTags(FT_Face face, FT_ULong tabletag, FT_ULong **stags)
@@ -2707,6 +2827,13 @@ bail:
     return complex_;
 }
 
+static FcBool
+FcFontHasHint (FT_Face face)
+{
+    return FindTable (face, TTAG_prep);
+}
+
+
 #define __fcfreetype__
 #include "fcaliastail.h"
 #include "fcftaliastail.h"
index 21c6c7c..a9c7aac 100644 (file)
@@ -42,13 +42,16 @@ FcFontSetCreate (void)
 void
 FcFontSetDestroy (FcFontSet *s)
 {
-    int            i;
+    if (s)
+    {
+       int         i;
 
-    for (i = 0; i < s->nfont; i++)
-       FcPatternDestroy (s->fonts[i]);
-    if (s->fonts)
-       free (s->fonts);
-    free (s);
+       for (i = 0; i < s->nfont; i++)
+           FcPatternDestroy (s->fonts[i]);
+       if (s->fonts)
+           free (s->fonts);
+       free (s);
+    }
 }
 
 FcBool
index 2f06f1a..e91c72f 100644 (file)
@@ -20,9 +20,6 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 #include "fcint.h"
-#ifndef _WIN32
-#include <uuid/uuid.h>
-#endif
 
 #define FC_HASH_SIZE 227
 
@@ -52,23 +49,6 @@ FcHashStrCopy (const void  *src,
     return *dest != NULL;
 }
 
-FcBool
-FcHashUuidCopy (const void  *src,
-               void       **dest)
-{
-#ifndef _WIN32
-    *dest = malloc (sizeof (uuid_t));
-    uuid_copy (*dest, src);
-#endif
-    return FcTrue;
-}
-
-void
-FcHashUuidFree (void *data)
-{
-    free (data);
-}
-
 FcHashTable *
 FcHashTableCreate (FcHashFunc    hash_func,
                   FcCompareFunc compare_func,
index 5831a19..c05cdc5 100644 (file)
@@ -41,10 +41,11 @@ FcInitFallbackConfig (const FcChar8 *sysroot)
     FcConfig   *config;
     const FcChar8 *fallback = (const FcChar8 *) ""     \
        "<fontconfig>" \
-       "  <dir>" FC_DEFAULT_FONTS "</dir>" \
+       FC_DEFAULT_FONTS \
        "  <dir prefix=\"xdg\">fonts</dir>" \
        "  <cachedir>" FC_CACHEDIR "</cachedir>" \
        "  <cachedir prefix=\"xdg\">fontconfig</cachedir>" \
+       "  <include ignore_missing=\"yes\">" CONFIGDIR "</include>" \
        "  <include ignore_missing=\"yes\" prefix=\"xdg\">fontconfig/conf.d</include>" \
        "  <include ignore_missing=\"yes\" prefix=\"xdg\">fontconfig/fonts.conf</include>" \
        "</fontconfig>";
@@ -199,10 +200,10 @@ void
 FcFini (void)
 {
     FcConfigFini ();
-    FcCacheFini ();
+    FcConfigPathFini ();
     FcDefaultFini ();
     FcObjectFini ();
-    FcConfigPathFini ();
+    FcCacheFini ();
 }
 
 /*
@@ -229,7 +230,8 @@ FcInitReinitialize (void)
 FcBool
 FcInitBringUptoDate (void)
 {
-    FcConfig   *config = FcConfigGetCurrent ();
+    FcConfig   *config = FcConfigReference (NULL);
+    FcBool     ret = FcTrue;
     time_t     now;
 
     if (!config)
@@ -238,19 +240,23 @@ FcInitBringUptoDate (void)
      * rescanInterval == 0 disables automatic up to date
      */
     if (config->rescanInterval == 0)
-       return FcTrue;
+       goto bail;
     /*
      * Check no more often than rescanInterval seconds
      */
     now = time (0);
     if (config->rescanTime + config->rescanInterval - now > 0)
-       return FcTrue;
+       goto bail;
     /*
      * If up to date, don't reload configuration
      */
     if (FcConfigUptoDate (0))
-       return FcTrue;
-    return FcInitReinitialize ();
+       goto bail;
+    ret = FcInitReinitialize ();
+bail:
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 #define __fcinit__
index de78cd8..78cee54 100644 (file)
@@ -40,7 +40,9 @@
 #include <limits.h>
 #include <float.h>
 #include <math.h>
+#ifdef HAVE_UNISTD_H
 #include <unistd.h>
+#endif
 #include <stddef.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #endif
 
 #ifdef _WIN32
+#define FC_LIKELY(expr) (expr)
+#define FC_UNLIKELY(expr) (expr)
+#else
+#define FC_LIKELY(expr) (__builtin_expect (((expr) ? 1 : 0), 1))
+#define FC_UNLIKELY(expr) (__builtin_expect (((expr) ? 1 : 0), 0))
+#endif
+
+#ifdef _WIN32
 #  include "fcwindows.h"
 typedef UINT (WINAPI *pfnGetSystemWindowsDirectory)(LPSTR, UINT);
 typedef HRESULT (WINAPI *pfnSHGetFolderPathA)(HWND, int, HANDLE, DWORD, LPSTR);
@@ -82,6 +92,10 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
 #define FC_UNUSED
 #endif
 
+#ifndef FC_UINT64_FORMAT
+#define FC_UINT64_FORMAT       "llu"
+#endif
+
 #define FC_DBG_MATCH   1
 #define FC_DBG_MATCHV  2
 #define FC_DBG_EDIT    4
@@ -138,16 +152,16 @@ FC_ASSERT_STATIC (sizeof (FcRef) == sizeof (int));
 #define FcIsEncodedOffset(p)   ((((intptr_t) (p)) & 1) != 0)
 
 /* Encode offset in a pointer of type t */
-#define FcOffsetEncode(o,t)    ((t *) ((o) | 1))
+#define FcOffsetEncode(o,t)    ((t *) (intptr_t) ((o) | 1))
 
 /* Decode a pointer into an offset */
 #define FcOffsetDecode(p)      (((intptr_t) (p)) & ~1)
 
 /* Compute pointer offset */
-#define FcPtrToOffset(b,p)     ((intptr_t) (p) - (intptr_t) (b))
+#define FcPtrToOffset(b,p)     ((ptrdiff_t) ((intptr_t) (p) - (intptr_t) (b)))
 
 /* Given base address, offset and type, return a pointer */
-#define FcOffsetToPtr(b,o,t)   ((t *) ((intptr_t) (b) + (o)))
+#define FcOffsetToPtr(b,o,t)   ((t *) ((intptr_t) (b) + (ptrdiff_t) (o)))
 
 /* Given base address, encoded offset and type, return a pointer */
 #define FcEncodedOffsetToPtr(b,p,t) FcOffsetToPtr(b,FcOffsetDecode(p),t)
@@ -185,7 +199,7 @@ typedef struct _FcValueList {
 } FcValueList;
 
 #define FcValueListNext(vl)    FcPointerMember(vl,next,FcValueList)
-                       
+
 typedef int FcObject;
 
 /* The 1024 is to leave some room for future added internal objects, such
@@ -224,7 +238,7 @@ struct _FcPattern {
                                                      FcFontSetFonts(fs)[i], \
                                                      FcPattern) : \
                                 fs->fonts[i])
-                                               
+
 typedef enum _FcOp {
     FcOpInteger, FcOpDouble, FcOpString, FcOpMatrix, FcOpRange, FcOpBool, FcOpCharSet, FcOpLangSet,
     FcOpNil,
@@ -424,8 +438,6 @@ struct _FcCache {
  * Used while constructing a directory cache object
  */
 
-#define FC_SERIALIZE_HASH_SIZE 8191
-
 typedef union _FcAlign {
     double     d;
     int                i;
@@ -435,9 +447,9 @@ typedef union _FcAlign {
 } FcAlign;
 
 typedef struct _FcSerializeBucket {
-    struct _FcSerializeBucket *next;
-    const void *object;
-    intptr_t   offset;
+    const void *object; /* key */
+    uintptr_t  hash;    /* hash of key */
+    intptr_t   offset;  /* value */
 } FcSerializeBucket;
 
 typedef struct _FcCharSetFreezer FcCharSetFreezer;
@@ -446,7 +458,10 @@ typedef struct _FcSerialize {
     intptr_t           size;
     FcCharSetFreezer   *cs_freezer;
     void               *linear;
-    FcSerializeBucket  *buckets[FC_SERIALIZE_HASH_SIZE];
+    FcSerializeBucket  *buckets;
+    size_t             buckets_count;
+    size_t             buckets_used;
+    size_t             buckets_used_max;
 } FcSerialize;
 
 /*
@@ -509,6 +524,7 @@ struct _FcConfig {
      * and those directives may occur in any order
      */
     FcStrSet   *configDirs;        /* directories to scan for fonts */
+    FcStrSet   *configMapDirs;     /* mapped names to generate cache entries */
     /*
      * List of directories containing fonts,
      * built by recursively scanning the set
@@ -565,7 +581,6 @@ struct _FcConfig {
     FcChar8     *sysRoot;          /* override the system root directory */
     FcStrSet   *availConfigFiles;  /* config files available */
     FcPtrList  *rulesetList;       /* List of rulesets being installed */
-    FcHashTable *uuid_table;       /* UUID table for cachedirs */
 };
 
 typedef struct _FcFileTime {
@@ -650,6 +665,9 @@ FcConfigXdgConfigHome (void);
 FcPrivate FcChar8 *
 FcConfigXdgDataHome (void);
 
+FcPrivate FcStrSet *
+FcConfigXdgDataDirs (void);
+
 FcPrivate FcExpr *
 FcConfigAllocExpr (FcConfig *config);
 
@@ -659,7 +677,20 @@ FcConfigAddConfigDir (FcConfig         *config,
 
 FcPrivate FcBool
 FcConfigAddFontDir (FcConfig       *config,
-                   const FcChar8   *d);
+                   const FcChar8   *d,
+                   const FcChar8   *m,
+                   const FcChar8   *salt);
+
+FcPrivate FcBool
+FcConfigResetFontDirs (FcConfig *config);
+
+FcPrivate FcChar8 *
+FcConfigMapFontPath(FcConfig           *config,
+                   const FcChar8       *path);
+
+FcPrivate const FcChar8 *
+FcConfigMapSalt (FcConfig      *config,
+                const FcChar8 *path);
 
 FcPrivate FcBool
 FcConfigAddCacheDir (FcConfig      *config,
@@ -878,6 +909,9 @@ FcGetDefaultLang (void);
 FcPrivate FcChar8 *
 FcGetPrgname (void);
 
+FcPrivate FcChar8 *
+FcGetDesktopName (void);
+
 FcPrivate void
 FcDefaultFini (void);
 
@@ -1022,6 +1056,9 @@ enum {
 };
 
 FcPrivate FcBool
+FcNameConstantWithObjectCheck (const FcChar8 *string, const char *object, int *result);
+
+FcPrivate FcBool
 FcNameBool (const FcChar8 *v, FcBool *result);
 
 FcPrivate FcBool
@@ -1228,11 +1265,32 @@ FcPrivate FcStrSet *
 FcStrSetCreateEx (unsigned int control);
 
 FcPrivate FcBool
+FcStrSetInsert (FcStrSet *set, const FcChar8 *s, int pos);
+
+FcPrivate FcBool
 FcStrSetAddLangs (FcStrSet *strs, const char *languages);
 
 FcPrivate void
 FcStrSetSort (FcStrSet * set);
 
+FcPrivate FcBool
+FcStrSetMemberAB (FcStrSet *set, const FcChar8 *a, FcChar8 *b, FcChar8 **ret);
+
+FcPrivate FcBool
+FcStrSetAddTriple (FcStrSet *set, const FcChar8 *a, const FcChar8 *b, const FcChar8 *c);
+
+FcPrivate const FcChar8 *
+FcStrTripleSecond (FcChar8 *s);
+
+FcPrivate const FcChar8 *
+FcStrTripleThird (FcChar8 *str);
+
+FcPrivate FcBool
+FcStrSetAddFilenamePairWithSalt (FcStrSet *strs, const FcChar8 *d, const FcChar8 *m, const FcChar8 *salt);
+
+FcPrivate FcBool
+FcStrSetDeleteAll (FcStrSet *set);
+
 FcPrivate void
 FcStrBufInit (FcStrBuf *buf, FcChar8 *init, int size);
 
@@ -1283,15 +1341,17 @@ FcPrivate FcBool
 FcStrIsAbsoluteFilename (const FcChar8 *s);
 
 FcPrivate FcChar8 *
-FcStrBuildFilename (const FcChar8 *path,
-                   ...);
-
-FcPrivate FcChar8 *
 FcStrLastSlash (const FcChar8  *path);
 
 FcPrivate FcChar32
 FcStrHashIgnoreCase (const FcChar8 *s);
 
+FcPrivate FcChar32
+FcStrHashIgnoreBlanksAndCase (const FcChar8 *s);
+
+FcPrivate FcChar8 *
+FcStrRealPath (const FcChar8 *path);
+
 FcPrivate FcChar8 *
 FcStrCanonFilename (const FcChar8 *s);
 
index 687e2a7..9f3e046 100644 (file)
@@ -415,10 +415,10 @@ FcLangContains (const FcChar8 *super, const FcChar8 *sub)
        c2 = FcToLower (c2);
        if (c1 != c2)
        {
-           /* see if super has a country while sub is mising one */
+           /* see if super has a country while sub is missing one */
            if (c1 == '-' && c2 == '\0')
                return FcTrue;
-           /* see if sub has a country while super is mising one */
+           /* see if sub has a country while super is missing one */
            if (c1 == '\0' && c2 == '-')
                return FcTrue;
            return FcFalse;
index 494bdea..ecf4495 100644 (file)
@@ -92,14 +92,17 @@ FcObjectSetDestroy (FcObjectSet *os)
 {
     int i;
 
-    if (os->objects)
+    if (os)
     {
-       for (i = 0; i < os->nobject; i++)
-           FcFree (os->objects[i]);
+       if (os->objects)
+       {
+           for (i = 0; i < os->nobject; i++)
+               FcFree (os->objects[i]);
 
-       free ((void *) os->objects);
+           free ((void *) os->objects);
+       }
+       free (os);
     }
-    free (os);
 }
 
 FcObjectSet *
@@ -222,7 +225,7 @@ FcListPatternMatchAny (const FcPattern *p,
        if (pe->object == FC_NAMELANG_OBJECT)
        {
            /* "namelang" object is the alias object to change "familylang",
-            * "stylelang" and "fullnamelang" object alltogether. it won't be
+            * "stylelang" and "fullnamelang" object all together. it won't be
             * available on the font pattern. so checking its availability
             * causes no results. we should ignore it here.
             */
@@ -491,11 +494,10 @@ FcFontSetList (FcConfig       *config,
     {
        if (!FcInitBringUptoDate ())
            goto bail0;
-
-       config = FcConfigGetCurrent ();
-       if (!config)
-           goto bail0;
     }
+    config = FcConfigReference (config);
+    if (!config)
+       goto bail0;
     FcListHashTableInit (&table);
 
     if (!os)
@@ -558,7 +560,7 @@ FcFontSetList (FcConfig         *config,
      */
     ret = FcFontSetCreate ();
     if (!ret)
-       goto bail0;
+       goto bail1;
     for (i = 0; i < FC_LIST_HASH_SIZE; i++)
        while ((bucket = table.buckets[i]))
        {
@@ -570,6 +572,7 @@ FcFontSetList (FcConfig         *config,
 
     if (destroy_os)
         FcObjectSetDestroy (os);
+    FcConfigDestroy (config);
 
     return ret;
 
@@ -577,6 +580,7 @@ bail2:
     FcFontSetDestroy (ret);
 bail1:
     FcListHashTableCleanup (&table);
+    FcConfigDestroy (config);
 bail0:
     if (destroy_os)
        FcObjectSetDestroy (os);
@@ -588,24 +592,26 @@ FcFontList (FcConfig      *config,
            FcPattern   *p,
            FcObjectSet *os)
 {
-    FcFontSet  *sets[2];
+    FcFontSet  *sets[2], *ret;
     int                nsets;
 
     if (!config)
     {
        if (!FcInitBringUptoDate ())
            return 0;
-
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
     }
+    config = FcConfigReference (config);
+    if (!config)
+       return NULL;
     nsets = 0;
     if (config->fonts[FcSetSystem])
        sets[nsets++] = config->fonts[FcSetSystem];
     if (config->fonts[FcSetApplication])
        sets[nsets++] = config->fonts[FcSetApplication];
-    return FcFontSetList (config, sets, nsets, p, os);
+    ret = FcFontSetList (config, sets, nsets, p, os);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 #define __fclist__
 #include "fcaliastail.h"
index c3d2b8a..cf0876c 100644 (file)
@@ -86,7 +86,7 @@ FcComparePostScript (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
     const FcChar8 *v1_string = FcValueString (v1);
     const FcChar8 *v2_string = FcValueString (v2);
     int n;
-    size_t len;
+    size_t len1, len2, mlen;
 
     *bestValue = FcValueCanonicalize (v2);
 
@@ -95,39 +95,38 @@ FcComparePostScript (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
        return 1.0;
 
     n = FcStrMatchIgnoreCaseAndDelims (v1_string, v2_string, (const FcChar8 *)" -");
-    len = strlen ((const char *)v1_string);
+    len1 = strlen ((const char *)v1_string);
+    len2 = strlen ((const char *)v2_string);
+    mlen = FC_MAX (len1, len2);
 
-    return (double)(len - n) / (double)len;
+    return (double)(mlen - n) / (double)mlen;
 }
 
 static double
 FcCompareLang (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
 {
     FcLangResult    result;
-    FcValue value1 = FcValueCanonicalize(v1), value2 = FcValueCanonicalize(v2);
 
-    switch ((int) value1.type) {
+    switch ((int) v1->type) {
     case FcTypeLangSet:
-       switch ((int) value2.type) {
+       switch ((int) v2->type) {
        case FcTypeLangSet:
-           result = FcLangSetCompare (value1.u.l, value2.u.l);
+           result = FcLangSetCompare (FcValueLangSet (v1), FcValueLangSet (v2));
            break;
        case FcTypeString:
-           result = FcLangSetHasLang (value1.u.l,
-                                      value2.u.s);
+           result = FcLangSetHasLang (FcValueLangSet (v1), FcValueString (v2));
            break;
        default:
            return -1.0;
        }
        break;
     case FcTypeString:
-       switch ((int) value2.type) {
+       switch ((int) v2->type) {
        case FcTypeLangSet:
-           result = FcLangSetHasLang (value2.u.l, value1.u.s);
+           result = FcLangSetHasLang (FcValueLangSet (v2), FcValueString (v1));
            break;
        case FcTypeString:
-           result = FcLangCompare (value1.u.s,
-                                   value2.u.s);
+           result = FcLangCompare (FcValueString (v1), FcValueString (v2));
            break;
        default:
            return -1.0;
@@ -154,10 +153,11 @@ FcCompareBool (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
     if (v2->type != FcTypeBool || v1->type != FcTypeBool)
        return -1.0;
 
+    bestValue->type = FcTypeBool;
     if (v2->u.b != FcDontCare)
-       *bestValue = FcValueCanonicalize (v2);
+       bestValue->u.b = v2->u.b;
     else
-       *bestValue = FcValueCanonicalize (v1);
+       bestValue->u.b = v1->u.b;
 
     return (double) ((v2->u.b ^ v1->u.b) == 1);
 }
@@ -237,7 +237,6 @@ FcCompareSize (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
         b1 = e1 = value1.u.d;
        break;
     case FcTypeRange:
-       abort();
        b1 = value1.u.r->begin;
        e1 = value1.u.r->end;
        break;
@@ -342,10 +341,12 @@ typedef enum _FcMatcherPriority {
     PRI1(SLANT),
     PRI1(WEIGHT),
     PRI1(WIDTH),
+    PRI1(FONT_HAS_HINT),
     PRI1(DECORATIVE),
     PRI1(ANTIALIAS),
     PRI1(RASTERIZER),
     PRI1(OUTLINE),
+    PRI1(ORDER),
     PRI1(FONTVERSION),
     PRI_END
 } FcMatcherPriority;
@@ -406,6 +407,7 @@ FcCompareValueList (FcObject             object,
     FcValueListPtr  v1, v2;
     double         v, best, bestStrong, bestWeak;
     int                    j, k, pos = 0;
+    int weak, strong;
 
     if (!match)
     {
@@ -416,11 +418,13 @@ FcCompareValueList (FcObject           object,
        return FcTrue;
     }
 
+    weak    = match->weak;
+    strong  = match->strong;
+
     best = 1e99;
     bestStrong = 1e99;
     bestWeak = 1e99;
-    j = 0;
-    for (v1 = v1orig; v1; v1 = FcValueListNext(v1))
+    for (v1 = v1orig, j = 0; v1; v1 = FcValueListNext(v1), j++)
     {
        for (v2 = v2orig, k = 0; v2; v2 = FcValueListNext(v2), k++)
        {
@@ -431,7 +435,7 @@ FcCompareValueList (FcObject             object,
                *result = FcResultTypeMismatch;
                return FcFalse;
            }
-           v = v * 1000 + j;
+           v = v * 1000 + j * 100 + k * (v2->value.type == FcTypeString ? 1 : 0);
            if (v < best)
            {
                if (bestValue)
@@ -439,7 +443,13 @@ FcCompareValueList (FcObject            object,
                best = v;
                pos = k;
            }
-           if (v1->binding == FcValueBindingStrong)
+            if (weak == strong)
+            {
+                /* found the best possible match */
+                if (best < 1000)
+                    goto done;
+            }
+            else if (v1->binding == FcValueBindingStrong)
            {
                if (v < bestStrong)
                    bestStrong = v;
@@ -450,8 +460,8 @@ FcCompareValueList (FcObject             object,
                    bestWeak = v;
            }
        }
-       j++;
     }
+done:
     if (FcDebug () & FC_DBG_MATCHV)
     {
        printf (" %s: %g ", FcObjectName (object), best);
@@ -462,8 +472,6 @@ FcCompareValueList (FcObject             object,
     }
     if (value)
     {
-       int weak    = match->weak;
-       int strong  = match->strong;
        if (weak == strong)
            value[strong] += best;
        else
@@ -478,6 +486,120 @@ FcCompareValueList (FcObject           object,
     return FcTrue;
 }
 
+/* The bulk of the time in FcFontMatch and FcFontSort goes to
+ * walking long lists of family names. We speed this up with a
+ * hash table.
+ */
+typedef struct
+{
+    double strong_value;
+    double weak_value;
+} FamilyEntry;
+
+typedef struct
+{
+    FcHashTable *family_hash;
+} FcCompareData;
+
+static void
+FcCompareDataClear (FcCompareData *data)
+{
+    FcHashTableDestroy (data->family_hash);
+}
+
+static void
+FcCompareDataInit (FcPattern     *pat,
+                   FcCompareData *data)
+{
+    FcHashTable *table;
+    FcPatternElt *elt;
+    FcValueListPtr l;
+    int i;
+    const void *key;
+    FamilyEntry *e;
+
+    table = FcHashTableCreate ((FcHashFunc)FcStrHashIgnoreBlanksAndCase,
+                               (FcCompareFunc)FcStrCmpIgnoreBlanksAndCase,
+                               NULL,
+                               NULL,
+                               NULL,
+                               free);
+
+    elt = FcPatternObjectFindElt (pat, FC_FAMILY_OBJECT);
+    if (elt)
+    {
+        for (l = FcPatternEltValues(elt), i = 0; l; l = FcValueListNext(l), i++)
+        {
+            key = FcValueString (&l->value);
+            if (!FcHashTableFind (table, key, (void **)&e))
+            {
+                e = malloc (sizeof (FamilyEntry));
+                e->strong_value = 1e99;
+                e->weak_value = 1e99;
+                FcHashTableAdd (table, (void *)key, e);
+            }
+            if (l->binding == FcValueBindingWeak)
+            {
+                if (i < e->weak_value)
+                    e->weak_value = i;
+            }
+            else
+            {
+                if (i < e->strong_value)
+                    e->strong_value = i;
+            }
+        }
+    }
+
+    data->family_hash = table;
+}
+
+static FcBool
+FcCompareFamilies (FcPattern       *pat,
+                   FcValueListPtr   v1orig,
+                   FcPattern       *fnt,
+                   FcValueListPtr   v2orig,
+                   double          *value,
+                   FcResult        *result,
+                   FcHashTable     *table)
+{
+    FcValueListPtr v2;
+    double strong_value;
+    double weak_value;
+    const void *key;
+    FamilyEntry *e;
+
+    assert (table != NULL);
+
+    strong_value = 1e99;
+    weak_value = 1e99;
+
+    for (v2 = v2orig; v2; v2 = FcValueListNext(v2))
+    {
+        key = FcValueString (&v2->value);
+        if (FcHashTableFind (table, key, (void **)&e))
+        {
+            if (e->strong_value < strong_value)
+                strong_value = e->strong_value;
+            if (e->weak_value < weak_value)
+                weak_value = e->weak_value;
+        }
+    }
+    if (FcDebug () & FC_DBG_MATCHV)
+    {
+       printf ("%s: %g ", FcObjectName (FC_FAMILY_OBJECT), strong_value);
+       FcValueListPrint (v1orig);
+       printf (", ");
+       FcValueListPrint (v2orig);
+       printf ("\n");
+    }
+
+    value[PRI_FAMILY_STRONG] = strong_value;
+    value[PRI_FAMILY_WEAK] = weak_value;
+
+    return FcTrue;
+}
+
 /*
  * Return a value indicating the distance between the two lists of
  * values
@@ -487,7 +609,8 @@ static FcBool
 FcCompare (FcPattern   *pat,
           FcPattern    *fnt,
           double       *value,
-          FcResult     *result)
+          FcResult     *result,
+           FcCompareData *data)
 {
     int                    i, i1, i2;
 
@@ -506,8 +629,18 @@ FcCompare (FcPattern       *pat,
            i2++;
        else if (i < 0)
            i1++;
-       else
-       {
+       else if (elt_i1->object == FC_FAMILY_OBJECT && data->family_hash)
+        {
+            if (!FcCompareFamilies (pat, FcPatternEltValues(elt_i1),
+                                    fnt, FcPatternEltValues(elt_i2),
+                                    value, result,
+                                    data->family_hash))
+                return FcFalse;
+           i1++;
+           i2++;
+        }
+        else
+        {
            const FcMatcher *match = FcObjectToMatcher (elt_i1->object, FcFalse);
            if (!FcCompareValueList (elt_i1->object, match,
                                     FcPatternEltValues(elt_i1),
@@ -591,27 +724,29 @@ FcFontRenderPrepare (FcConfig         *config,
                     l1 != NULL || l2 != NULL;
                     j++, l1 = l1 ? FcValueListNext (l1) : NULL, l2 = l2 ? FcValueListNext (l2) : NULL)
                {
+                   FcValueListPtr (* func) (FcValueListPtr, FcValue, FcValueBinding);
+                   FcValueBinding binding = FcValueBindingEnd;
+
                    if (j == n)
                    {
-                       if (l1)
-                           ln = FcValueListPrepend (ln,
-                                                    FcValueCanonicalize (&l1->value),
-                                                    FcValueBindingStrong);
-                       if (l2)
-                           ll = FcValueListPrepend (ll,
-                                                    FcValueCanonicalize (&l2->value),
-                                                    FcValueBindingStrong);
+                       binding = FcValueBindingStrong;
+                       func = FcValueListPrepend;
                    }
                    else
+                       func = FcValueListAppend;
+                   if (l1)
                    {
-                       if (l1)
-                           ln = FcValueListAppend (ln,
-                                                   FcValueCanonicalize (&l1->value),
-                                                   FcValueBindingStrong);
-                       if (l2)
-                           ll = FcValueListAppend (ll,
-                                                   FcValueCanonicalize (&l2->value),
-                                                   FcValueBindingStrong);
+                       ln = func (ln,
+                                  FcValueCanonicalize (&l1->value),
+                                  l1->binding);
+                   }
+                   if (l2)
+                   {
+                       if (binding == FcValueBindingEnd)
+                           binding = l2->binding;
+                       ll = func (ll,
+                                  FcValueCanonicalize (&l2->value),
+                                  binding);
                    }
                }
                FcPatternObjectListAdd (new, fe->object, ln, FcFalse);
@@ -729,9 +864,11 @@ FcFontSetMatchInternal (FcFontSet   **sets,
     double         score[PRI_END], bestscore[PRI_END];
     int                    f;
     FcFontSet      *s;
-    FcPattern      *best;
+    FcPattern      *best, *pat = NULL;
     int                    i;
     int                    set;
+    FcCompareData   data;
+    const FcPatternElt *elt;
 
     for (i = 0; i < PRI_END; i++)
        bestscore[i] = 0;
@@ -741,6 +878,9 @@ FcFontSetMatchInternal (FcFontSet   **sets,
        printf ("Match ");
        FcPatternPrint (p);
     }
+
+    FcCompareDataInit (p, &data);
+
     for (set = 0; set < nsets; set++)
     {
        s = sets[set];
@@ -753,8 +893,11 @@ FcFontSetMatchInternal (FcFontSet   **sets,
                printf ("Font %d ", f);
                FcPatternPrint (s->fonts[f]);
            }
-           if (!FcCompare (p, s->fonts[f], score, result))
+           if (!FcCompare (p, s->fonts[f], score, result, &data))
+            {
+                FcCompareDataClear (&data);
                return 0;
+            }
            if (FcDebug () & FC_DBG_MATCHV)
            {
                printf ("Score");
@@ -778,13 +921,59 @@ FcFontSetMatchInternal (FcFontSet   **sets,
            }
        }
     }
+
+    FcCompareDataClear (&data);
+
+    /* Update the binding according to the score to indicate how exactly values matches on. */
+    if (best)
+    {
+       pat = FcPatternCreate ();
+       elt = FcPatternElts (best);
+       for (i = 0; i < FcPatternObjectCount (best); i++)
+       {
+           const FcMatcher *match = FcObjectToMatcher (elt[i].object, FcFalse);
+           FcValueListPtr l = FcPatternEltValues (&elt[i]);
+
+           if (!match)
+               FcPatternObjectListAdd(pat, elt[i].object,
+                                      FcValueListDuplicate(l), FcTrue);
+           else
+           {
+               FcValueBinding binding = FcValueBindingWeak;
+               FcValueListPtr new = NULL, ll, t = NULL;
+               FcValue v;
+
+               /* If the value was matched exactly, update the binding to Strong. */
+               if (bestscore[match->strong] < 1000)
+                   binding = FcValueBindingStrong;
+
+               for (ll = l; ll != NULL; ll = FcValueListNext (ll))
+               {
+                   if (!new)
+                   {
+                       t = new = FcValueListCreate ();
+                   }
+                   else
+                   {
+                       t->next = FcValueListCreate ();
+                       t = FcValueListNext (t);
+                   }
+                   v = FcValueCanonicalize (&ll->value);
+                   t->value = FcValueSave (v);
+                   t->binding = binding;
+                   t->next = NULL;
+               }
+               FcPatternObjectListAdd (pat, elt[i].object, new, FcTrue);
+           }
+       }
+    }
     if (FcDebug () & FC_DBG_MATCH)
     {
        printf ("Best score");
        for (i = 0; i < PRI_END; i++)
            printf (" %g", bestscore[i]);
        printf ("\n");
-       FcPatternPrint (best);
+       FcPatternPrint (pat);
     }
     if (FcDebug () & FC_DBG_MATCH2)
     {
@@ -825,16 +1014,16 @@ FcFontSetMatchInternal (FcFontSet   **sets,
            }
            free (ss);
        }
-       FcPatternPrint2 (p, best, os);
+       FcPatternPrint2 (p, pat, os);
        if (os)
            FcObjectSetDestroy (os);
     }
     /* assuming that 'result' is initialized with FcResultNoMatch
      * outside this function */
-    if (best)
+    if (pat)
        *result = FcResultMatch;
 
-    return best;
+    return pat;
 }
 
 FcPattern *
@@ -844,7 +1033,7 @@ FcFontSetMatch (FcConfig    *config,
                FcPattern   *p,
                FcResult    *result)
 {
-    FcPattern      *best;
+    FcPattern      *best, *ret = NULL;
 
     assert (sets != NULL);
     assert (p != NULL);
@@ -852,17 +1041,19 @@ FcFontSetMatch (FcConfig    *config,
 
     *result = FcResultNoMatch;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
+           return NULL;
     best = FcFontSetMatchInternal (sets, nsets, p, result);
     if (best)
-       return FcFontRenderPrepare (config, p, best);
-    else
-       return NULL;
+    {
+       ret = FcFontRenderPrepare (config, p, best);
+       FcPatternDestroy (best);
+    }
+
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcPattern *
@@ -872,19 +1063,16 @@ FcFontMatch (FcConfig    *config,
 {
     FcFontSet  *sets[2];
     int                nsets;
-    FcPattern   *best;
+    FcPattern   *best, *ret = NULL;
 
     assert (p != NULL);
     assert (result != NULL);
 
     *result = FcResultNoMatch;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
+       return NULL;
     nsets = 0;
     if (config->fonts[FcSetSystem])
        sets[nsets++] = config->fonts[FcSetSystem];
@@ -893,9 +1081,14 @@ FcFontMatch (FcConfig     *config,
 
     best = FcFontSetMatchInternal (sets, nsets, p, result);
     if (best)
-       return FcFontRenderPrepare (config, p, best);
-    else
-       return NULL;
+    {
+       ret = FcFontRenderPrepare (config, p, best);
+       FcPatternDestroy (best);
+    }
+
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 typedef struct _FcSortNode {
@@ -1015,6 +1208,7 @@ FcFontSetSort (FcConfig       *config FC_UNUSED,
     int                    nPatternLang;
     FcBool         *patternLangSat;
     FcValue        patternLang;
+    FcCompareData   data;
 
     assert (sets != NULL);
     assert (p != NULL);
@@ -1059,6 +1253,8 @@ FcFontSetSort (FcConfig       *config FC_UNUSED,
     nodeps = (FcSortNode **) (nodes + nnodes);
     patternLangSat = (FcBool *) (nodeps + nnodes);
 
+    FcCompareDataInit (p, &data);
+
     new = nodes;
     nodep = nodeps;
     for (set = 0; set < nsets; set++)
@@ -1074,7 +1270,7 @@ FcFontSetSort (FcConfig       *config FC_UNUSED,
                FcPatternPrint (s->fonts[f]);
            }
            new->pattern = s->fonts[f];
-           if (!FcCompare (p, new->pattern, new->score, result))
+           if (!FcCompare (p, new->pattern, new->score, result, &data))
                goto bail1;
            if (FcDebug () & FC_DBG_MATCHV)
            {
@@ -1091,6 +1287,8 @@ FcFontSetSort (FcConfig       *config FC_UNUSED,
        }
     }
 
+    FcCompareDataClear (&data);
+
     nnodes = new - nodes;
 
     qsort (nodeps, nnodes, sizeof (FcSortNode *),
@@ -1182,7 +1380,7 @@ FcFontSort (FcConfig      *config,
            FcCharSet   **csp,
            FcResult    *result)
 {
-    FcFontSet  *sets[2];
+    FcFontSet  *sets[2], *ret;
     int                nsets;
 
     assert (p != NULL);
@@ -1190,18 +1388,18 @@ FcFontSort (FcConfig    *config,
 
     *result = FcResultNoMatch;
 
+    config = FcConfigReference (config);
     if (!config)
-    {
-       config = FcConfigGetCurrent ();
-       if (!config)
-           return 0;
-    }
+       return NULL;
     nsets = 0;
     if (config->fonts[FcSetSystem])
        sets[nsets++] = config->fonts[FcSetSystem];
     if (config->fonts[FcSetApplication])
        sets[nsets++] = config->fonts[FcSetApplication];
-    return FcFontSetSort (config, sets, nsets, p, trim, csp, result);
+    ret = FcFontSetSort (config, sets, nsets, p, trim, csp, result);
+    FcConfigDestroy (config);
+
+    return ret;
 }
 #define __fcmatch__
 #include "fcaliastail.h"
diff --git a/src/fcmd5.h b/src/fcmd5.h
new file mode 100644 (file)
index 0000000..7e8a6e1
--- /dev/null
@@ -0,0 +1,255 @@
+/*
+ * This code implements the MD5 message-digest algorithm.
+ * The algorithm is due to Ron Rivest. This code was
+ * written by Colin Plumb in 1993, no copyright is claimed.
+ * This code is in the public domain; do with it what you wish.
+ *
+ * Equivalent code is available from RSA Data Security, Inc.
+ * This code has been tested against that, and is equivalent,
+ * except that you don't need to include two pages of legalese
+ * with every copy.
+ *
+ * To compute the message digest of a chunk of bytes, declare an
+ * MD5Context structure, pass it to MD5Init, call MD5Update as
+ * needed on buffers full of bytes, and then call MD5Final, which
+ * will fill a supplied 16-byte array with the digest.
+ */
+#include "fcint.h"
+
+struct MD5Context {
+        FcChar32 buf[4];
+        FcChar32 bits[2];
+        unsigned char in[64];
+};
+
+static void MD5Init(struct MD5Context *ctx);
+static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned len);
+static void MD5Final(unsigned char digest[16], struct MD5Context *ctx);
+static void MD5Transform(FcChar32 buf[4], FcChar32 in[16]);
+
+#ifndef WORDS_BIGENDIAN
+#define byteReverse(buf, len)  /* Nothing */
+#else
+/*
+ * Note: this code is harmless on little-endian machines.
+ */
+void byteReverse(unsigned char *buf, unsigned longs)
+{
+    FcChar32 t;
+    do {
+       t = (FcChar32) ((unsigned) buf[3] << 8 | buf[2]) << 16 |
+           ((unsigned) buf[1] << 8 | buf[0]);
+       *(FcChar32 *) buf = t;
+       buf += 4;
+    } while (--longs);
+}
+#endif
+
+/*
+ * Start MD5 accumulation.  Set bit count to 0 and buffer to mysterious
+ * initialization constants.
+ */
+static void MD5Init(struct MD5Context *ctx)
+{
+    ctx->buf[0] = 0x67452301;
+    ctx->buf[1] = 0xefcdab89;
+    ctx->buf[2] = 0x98badcfe;
+    ctx->buf[3] = 0x10325476;
+
+    ctx->bits[0] = 0;
+    ctx->bits[1] = 0;
+}
+
+/*
+ * Update context to reflect the concatenation of another buffer full
+ * of bytes.
+ */
+static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned len)
+{
+    FcChar32 t;
+
+    /* Update bitcount */
+
+    t = ctx->bits[0];
+    if ((ctx->bits[0] = t + ((FcChar32) len << 3)) < t)
+       ctx->bits[1]++;         /* Carry from low to high */
+    ctx->bits[1] += len >> 29;
+
+    t = (t >> 3) & 0x3f;       /* Bytes already in shsInfo->data */
+
+    /* Handle any leading odd-sized chunks */
+
+    if (t) {
+       unsigned char *p = (unsigned char *) ctx->in + t;
+
+       t = 64 - t;
+       if (len < t) {
+           memcpy(p, buf, len);
+           return;
+       }
+       memcpy(p, buf, t);
+       byteReverse(ctx->in, 16);
+       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
+       buf += t;
+       len -= t;
+    }
+    /* Process data in 64-byte chunks */
+
+    while (len >= 64) {
+       memcpy(ctx->in, buf, 64);
+       byteReverse(ctx->in, 16);
+       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
+       buf += 64;
+       len -= 64;
+    }
+
+    /* Handle any remaining bytes of data. */
+
+    memcpy(ctx->in, buf, len);
+}
+
+/*
+ * Final wrapup - pad to 64-byte boundary with the bit pattern
+ * 1 0* (64-bit count of bits processed, MSB-first)
+ */
+static void MD5Final(unsigned char digest[16], struct MD5Context *ctx)
+{
+    unsigned count;
+    unsigned char *p;
+
+    /* Compute number of bytes mod 64 */
+    count = (ctx->bits[0] >> 3) & 0x3F;
+
+    /* Set the first char of padding to 0x80.  This is safe since there is
+       always at least one byte free */
+    p = ctx->in + count;
+    *p++ = 0x80;
+
+    /* Bytes of padding needed to make 64 bytes */
+    count = 64 - 1 - count;
+
+    /* Pad out to 56 mod 64 */
+    if (count < 8) {
+       /* Two lots of padding:  Pad the first block to 64 bytes */
+       memset(p, 0, count);
+       byteReverse(ctx->in, 16);
+       MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
+
+       /* Now fill the next block with 56 bytes */
+       memset(ctx->in, 0, 56);
+    } else {
+       /* Pad block to 56 bytes */
+       memset(p, 0, count - 8);
+    }
+    byteReverse(ctx->in, 14);
+
+    /* Append length in bits and transform */
+    ((FcChar32 *) ctx->in)[14] = ctx->bits[0];
+    ((FcChar32 *) ctx->in)[15] = ctx->bits[1];
+
+    MD5Transform(ctx->buf, (FcChar32 *) ctx->in);
+    byteReverse((unsigned char *) ctx->buf, 4);
+    memcpy(digest, ctx->buf, 16);
+    memset(ctx, 0, sizeof(*ctx));        /* In case it's sensitive */
+}
+
+
+/* The four core functions - F1 is optimized somewhat */
+
+/* #define F1(x, y, z) (x & y | ~x & z) */
+#define F1(x, y, z) (z ^ (x & (y ^ z)))
+#define F2(x, y, z) F1(z, x, y)
+#define F3(x, y, z) (x ^ y ^ z)
+#define F4(x, y, z) (y ^ (x | ~z))
+
+/* This is the central step in the MD5 algorithm. */
+#define MD5STEP(f, w, x, y, z, data, s) \
+       ( w += f(x, y, z) + data,  w = w<<s | w>>(32-s),  w += x )
+
+/*
+ * The core of the MD5 algorithm, this alters an existing MD5 hash to
+ * reflect the addition of 16 longwords of new data.  MD5Update blocks
+ * the data and converts bytes into longwords for this routine.
+ */
+static void MD5Transform(FcChar32 buf[4], FcChar32 in[16])
+{
+    register FcChar32 a, b, c, d;
+
+    a = buf[0];
+    b = buf[1];
+    c = buf[2];
+    d = buf[3];
+
+    MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
+    MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
+    MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
+    MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
+    MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
+    MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
+    MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
+    MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
+    MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
+    MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
+    MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
+    MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
+    MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
+    MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
+    MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
+    MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
+
+    MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
+    MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
+    MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
+    MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
+    MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
+    MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
+    MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
+    MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
+    MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
+    MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
+    MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
+    MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
+    MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
+    MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
+    MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
+    MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
+
+    MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
+    MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
+    MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
+    MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
+    MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
+    MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
+    MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
+    MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
+    MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
+    MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
+    MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
+    MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
+    MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
+    MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
+    MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
+    MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
+
+    MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
+    MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
+    MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
+    MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
+    MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
+    MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
+    MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
+    MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
+    MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
+    MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
+    MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
+    MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
+    MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
+    MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
+    MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
+    MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
+
+    buf[0] += a;
+    buf[1] += b;
+    buf[2] += c;
+    buf[3] += d;
+}
index 711bb9b..566f0ef 100644 (file)
@@ -143,6 +143,7 @@ static const FcConstant _FcBaseConstants[] = {
     { (FcChar8 *) "light",         "weight",   FC_WEIGHT_LIGHT, },
     { (FcChar8 *) "book",          "weight",   FC_WEIGHT_BOOK, },
     { (FcChar8 *) "regular",       "weight",   FC_WEIGHT_REGULAR, },
+    { (FcChar8 *) "normal",        "weight",   FC_WEIGHT_NORMAL, },
     { (FcChar8 *) "medium",        "weight",   FC_WEIGHT_MEDIUM, },
     { (FcChar8 *) "demibold",      "weight",   FC_WEIGHT_DEMIBOLD, },
     { (FcChar8 *) "semibold",      "weight",   FC_WEIGHT_DEMIBOLD, },
@@ -151,6 +152,8 @@ static const FcConstant _FcBaseConstants[] = {
     { (FcChar8 *) "ultrabold",     "weight",   FC_WEIGHT_EXTRABOLD, },
     { (FcChar8 *) "black",         "weight",   FC_WEIGHT_BLACK, },
     { (FcChar8 *) "heavy",         "weight",   FC_WEIGHT_HEAVY, },
+    { (FcChar8 *) "extrablack",     "weight",  FC_WEIGHT_EXTRABLACK, },
+    { (FcChar8 *) "ultrablack",     "weight",  FC_WEIGHT_ULTRABLACK, },
 
     { (FcChar8 *) "roman",         "slant",    FC_SLANT_ROMAN, },
     { (FcChar8 *) "italic",        "slant",    FC_SLANT_ITALIC, },
@@ -228,6 +231,19 @@ FcNameGetConstant (const FcChar8 *string)
     return 0;
 }
 
+const FcConstant *
+FcNameGetConstantFor (const FcChar8 *string, const char *object)
+{
+    unsigned int           i;
+
+    for (i = 0; i < NUM_FC_CONSTANTS; i++)
+       if (!FcStrCmpIgnoreCase (string, _FcBaseConstants[i].name) &&
+           !FcStrCmpIgnoreCase ((const FcChar8 *)object, (const FcChar8 *)_FcBaseConstants[i].object))
+           return &_FcBaseConstants[i];
+
+    return 0;
+}
+
 FcBool
 FcNameConstant (const FcChar8 *string, int *result)
 {
@@ -242,6 +258,30 @@ FcNameConstant (const FcChar8 *string, int *result)
 }
 
 FcBool
+FcNameConstantWithObjectCheck (const FcChar8 *string, const char *object, int *result)
+{
+    const FcConstant   *c;
+
+    if ((c = FcNameGetConstantFor(string, object)))
+    {
+       *result = c->value;
+       return FcTrue;
+    }
+    else if ((c = FcNameGetConstant(string)))
+    {
+       if (strcmp (c->object, object) != 0)
+       {
+           fprintf (stderr, "Fontconfig error: Unexpected constant name `%s' used for object `%s': should be `%s'\n", string, object, c->object);
+           return FcFalse;
+       }
+       /* Unlikely to reach out */
+       *result = c->value;
+       return FcTrue;
+    }
+    return FcFalse;
+}
+
+FcBool
 FcNameBool (const FcChar8 *v, FcBool *result)
 {
     char    c0, c1;
@@ -287,7 +327,7 @@ FcNameBool (const FcChar8 *v, FcBool *result)
 }
 
 static FcValue
-FcNameConvert (FcType type, FcChar8 *string)
+FcNameConvert (FcType type, const char *object, FcChar8 *string)
 {
     FcValue    v;
     FcMatrix   m;
@@ -297,7 +337,7 @@ FcNameConvert (FcType type, FcChar8 *string)
     v.type = type;
     switch ((int) v.type) {
     case FcTypeInteger:
-       if (!FcNameConstant (string, &v.u.i))
+       if (!FcNameConstantWithObjectCheck (string, object, &v.u.i))
            v.u.i = atoi ((char *) string);
        break;
     case FcTypeString:
@@ -338,8 +378,8 @@ FcNameConvert (FcType type, FcChar8 *string)
            ec = malloc (len + 1);
            if (sc && ec && sscanf ((char *) string, "[%s %[^]]]", sc, ec) == 2)
            {
-               if (FcNameConstant ((const FcChar8 *) sc, &si) &&
-                   FcNameConstant ((const FcChar8 *) ec, &ei))
+               if (FcNameConstantWithObjectCheck ((const FcChar8 *) sc, object, &si) &&
+                   FcNameConstantWithObjectCheck ((const FcChar8 *) ec, object, &ei))
                    v.u.r =  FcRangeCreateDouble (si, ei);
                else
                    goto bail1;
@@ -348,7 +388,7 @@ FcNameConvert (FcType type, FcChar8 *string)
            {
            bail1:
                v.type = FcTypeDouble;
-               if (FcNameConstant (string, &si))
+               if (FcNameConstantWithObjectCheck (string, object, &si))
                {
                    v.u.d = (double) si;
                } else {
@@ -427,7 +467,7 @@ FcNameParse (const FcChar8 *name)
        name = FcNameFindNext (name, "-,:", save, &delim);
        if (save[0])
        {
-           if (!FcPatternAddString (pat, FC_FAMILY, save))
+           if (!FcPatternObjectAddString (pat, FC_FAMILY_OBJECT, save))
                goto bail2;
        }
        if (delim != ',')
@@ -441,7 +481,7 @@ FcNameParse (const FcChar8 *name)
            d = strtod ((char *) save, (char **) &e);
            if (e != save)
            {
-               if (!FcPatternAddDouble (pat, FC_SIZE, d))
+               if (!FcPatternObjectAddDouble (pat, FC_SIZE_OBJECT, d))
                    goto bail2;
            }
            if (delim != ',')
@@ -461,7 +501,7 @@ FcNameParse (const FcChar8 *name)
                    name = FcNameFindNext (name, ":,", save, &delim);
                    if (t)
                    {
-                       v = FcNameConvert (t->type, save);
+                       v = FcNameConvert (t->type, t->object, save);
                        if (!FcPatternAdd (pat, t->object, v, FcTrue))
                        {
                            FcValueDestroy (v);
@@ -637,7 +677,7 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
        if (!strcmp (o->object, FC_FAMILY) ||
            !strcmp (o->object, FC_SIZE))
            continue;
-    
+
        e = FcPatternObjectFindElt (pat, id);
        if (e)
        {
index e3926cc..1cd8ed3 100644 (file)
@@ -72,4 +72,7 @@ FC_OBJECT (COLOR,             FcTypeBool,     FcCompareBool)
 FC_OBJECT (SYMBOL,             FcTypeBool,     FcCompareBool)
 FC_OBJECT (FONT_VARIATIONS,    FcTypeString,   NULL)
 FC_OBJECT (VARIABLE,           FcTypeBool,     FcCompareBool)
+FC_OBJECT (FONT_HAS_HINT,      FcTypeBool,     FcCompareBool)
+FC_OBJECT (ORDER,              FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (DESKTOP_NAME,       FcTypeString,   NULL)
 /* ^-------------- Add new objects here. */
index 0861b8f..cdbeec4 100644 (file)
@@ -142,27 +142,7 @@ FcValueListDestroy (FcValueListPtr l)
     FcValueListPtr next;
     for (; l; l = next)
     {
-       switch ((int) l->value.type) {
-       case FcTypeString:
-           FcFree (l->value.u.s);
-           break;
-       case FcTypeMatrix:
-           FcMatrixFree ((FcMatrix *)l->value.u.m);
-           break;
-       case FcTypeCharSet:
-           FcCharSetDestroy
-               ((FcCharSet *) (l->value.u.c));
-           break;
-       case FcTypeLangSet:
-           FcLangSetDestroy
-               ((FcLangSet *) (l->value.u.l));
-           break;
-       case FcTypeRange:
-           FcRangeDestroy ((FcRange *) (l->value.u.r));
-           break;
-       default:
-           break;
-       }
+       FcValueDestroy (l->value);
        next = FcValueListNext(l);
        free(l);
     }
@@ -338,7 +318,7 @@ FcValueHash (const FcValue *v)
     case FcTypeLangSet:
        return FcLangSetHash (FcValueLangSet(v));
     case FcTypeRange:
-       return FcRangeHash (v->u.r);
+       return FcRangeHash (FcValueRange (v));
     }
     return 0;
 }
@@ -553,17 +533,17 @@ FcPatternObjectInsertElt (FcPattern *p, FcObject object)
                p->size++;
            }
        }
-       
+
        e = FcPatternElts(p);
        /* move elts up */
        memmove (e + i + 1,
                 e + i,
                 sizeof (FcPatternElt) *
                 (FcPatternObjectCount (p) - i));
-               
+
        /* bump count */
        p->num++;
-       
+
        e[i].object = object;
        e[i].values = NULL;
     }
@@ -708,30 +688,29 @@ FcPatternObjectAddWithBinding  (FcPattern *p,
     if (!new)
        goto bail0;
 
-    value = FcValueSave (value);
-    if (value.type == FcTypeVoid)
+    new->value = FcValueSave (value);
+    new->binding = binding;
+    new->next = NULL;
+
+    if (new->value.type == FcTypeVoid)
        goto bail1;
 
     /*
      * Make sure the stored type is valid for built-in objects
      */
-    if (!FcObjectValidType (object, value.type))
+    if (!FcObjectValidType (object, new->value.type))
     {
        fprintf (stderr,
                 "Fontconfig warning: FcPattern object %s does not accept value",
                 FcObjectName (object));
-       FcValuePrintFile (stderr, value);
+       FcValuePrintFile (stderr, new->value);
        fprintf (stderr, "\n");
        goto bail1;
     }
 
-    new->value = value;
-    new->binding = binding;
-    new->next = NULL;
-
     e = FcPatternObjectInsertElt (p, object);
     if (!e)
-       goto bail2;
+       goto bail1;
 
     if (append)
     {
@@ -747,10 +726,8 @@ FcPatternObjectAddWithBinding  (FcPattern  *p,
 
     return FcTrue;
 
-bail2:
-    FcValueDestroy (value);
 bail1:
-    free (new);
+    FcValueListDestroy (new);
 bail0:
     return FcFalse;
 }
@@ -914,13 +891,19 @@ FcPatternAddBool (FcPattern *p, const char *object, FcBool b)
 }
 
 FcBool
-FcPatternAddCharSet (FcPattern *p, const char *object, const FcCharSet *c)
+FcPatternObjectAddCharSet (FcPattern *p, FcObject object, const FcCharSet *c)
 {
     FcValue    v;
 
     v.type = FcTypeCharSet;
     v.u.c = (FcCharSet *)c;
-    return FcPatternAdd (p, object, v, FcTrue);
+    return FcPatternObjectAdd (p, object, v, FcTrue);
+}
+
+FcBool
+FcPatternAddCharSet (FcPattern *p, const char *object, const FcCharSet *c)
+{
+    return FcPatternObjectAddCharSet (p, FcObjectFromName (object), c);
 }
 
 FcBool
@@ -934,13 +917,19 @@ FcPatternAddFTFace (FcPattern *p, const char *object, const FT_Face f)
 }
 
 FcBool
-FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls)
+FcPatternObjectAddLangSet (FcPattern *p, FcObject object, const FcLangSet *ls)
 {
     FcValue    v;
 
     v.type = FcTypeLangSet;
     v.u.l = (FcLangSet *)ls;
-    return FcPatternAdd (p, object, v, FcTrue);
+    return FcPatternObjectAdd (p, object, v, FcTrue);
+}
+
+FcBool
+FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls)
+{
+    return FcPatternObjectAddLangSet (p, FcObjectFromName (object), ls);
 }
 
 FcBool
@@ -1570,7 +1559,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
                                                          FcValueList);
        else
            head_serialized = vl_serialized;
-       
+
        vl_serialized->next = NULL;
        vl_serialized->value.type = vl->value.type;
        switch ((int) vl->value.type) {
index bb88832..07428a4 100644 (file)
@@ -57,15 +57,18 @@ FcPtrListDestroy (FcPtrList *list)
 {
     FcPtrListIter iter;
 
-    FcPtrListIterInit (list, &iter);
-    do
+    if (list)
     {
-       if (FcPtrListIterGetValue (list, &iter))
-           list->destroy_func (FcPtrListIterGetValue (list, &iter));
-       FcPtrListIterRemove (list, &iter);
-    } while (FcPtrListIterIsValid (list, &iter));
+       FcPtrListIterInit (list, &iter);
+       do
+       {
+           if (FcPtrListIterGetValue (list, &iter))
+               list->destroy_func (FcPtrListIterGetValue (list, &iter));
+           FcPtrListIterRemove (list, &iter);
+       } while (FcPtrListIterIsValid (list, &iter));
 
-    free (list);
+       free (list);
+    }
 }
 
 void
index 8689930..0dc3d3b 100644 (file)
@@ -56,7 +56,8 @@ FcRangeCreateInteger (FcChar32 begin, FcChar32 end)
 void
 FcRangeDestroy (FcRange *range)
 {
-    free (range);
+    if (range)
+       free (range);
 }
 
 FcRange *
index d2f221d..2388dcd 100644 (file)
@@ -47,50 +47,187 @@ FcSerializeCreate (void)
     serialize->size = 0;
     serialize->linear = NULL;
     serialize->cs_freezer = NULL;
-    memset (serialize->buckets, '\0', sizeof (serialize->buckets));
+    serialize->buckets = NULL;
+    serialize->buckets_count = 0;
+    serialize->buckets_used = 0;
+    serialize->buckets_used_max = 0;
     return serialize;
 }
 
 void
 FcSerializeDestroy (FcSerialize *serialize)
 {
-    uintptr_t  bucket;
+    free (serialize->buckets);
+    if (serialize->cs_freezer)
+       FcCharSetFreezerDestroy (serialize->cs_freezer);
+    free (serialize);
+}
 
-    for (bucket = 0; bucket < FC_SERIALIZE_HASH_SIZE; bucket++)
-    {
-       FcSerializeBucket   *buck, *next;
+static size_t
+FcSerializeNextBucketIndex (const FcSerialize *serialize, size_t index)
+{
+    if (index == 0)
+       index = serialize->buckets_count;
+    --index;
+    return index;
+}
+
+#if ((SIZEOF_VOID_P) * (CHAR_BIT)) == 32
+
+/*
+ * Based on triple32
+ * https://github.com/skeeto/hash-prospector
+ */
+static uintptr_t
+FcSerializeHashPtr (const void *object)
+{
+    uintptr_t x = (uintptr_t)object;
+    x ^= x >> 17;
+    x *= 0xed5ad4bbU;
+    x ^= x >> 11;
+    x *= 0xac4c1b51U;
+    x ^= x >> 15;
+    x *= 0x31848babU;
+    x ^= x >> 14;
+    return x ? x : 1; /* 0 reserved to mark empty, x starts out 0 */
+}
 
-       for (buck = serialize->buckets[bucket]; buck; buck = next) {
-           next = buck->next;
-           free (buck);
+
+#elif ((SIZEOF_VOID_P) * (CHAR_BIT)) == 64
+
+/*
+ * Based on splittable64/splitmix64 from Mix13
+ * https://zimbry.blogspot.com/2011/09/better-bit-mixing-improving-on.html
+ * https://prng.di.unimi.it/splitmix64.c
+ */
+static uintptr_t
+FcSerializeHashPtr (const void *object)
+{
+    uintptr_t x = (uintptr_t)object;
+    x ^= x >> 30;
+    x *= 0xbf58476d1ce4e5b9U;
+    x ^= x >> 27;
+    x *= 0x94d049bb133111ebU;
+    x ^= x >> 31;
+    return x ? x : 1; /* 0 reserved to mark empty, x starts out 0 */
+}
+
+#endif
+
+static FcSerializeBucket*
+FcSerializeFind (const FcSerialize *serialize, const void *object)
+{
+    uintptr_t hash = FcSerializeHashPtr (object);
+    size_t buckets_count = serialize->buckets_count;
+    size_t index = hash & (buckets_count-1);
+    for (size_t n = 0; n < buckets_count; ++n) {
+       FcSerializeBucket* bucket = &serialize->buckets[index];
+       if (bucket->hash == 0) {
+           return NULL;
+       }
+       if (object == bucket->object) {
+           return bucket;
        }
+       index = FcSerializeNextBucketIndex (serialize, index);
     }
-    if (serialize->cs_freezer)
-       FcCharSetFreezerDestroy (serialize->cs_freezer);
-    free (serialize);
+    return NULL;
+}
+
+static FcSerializeBucket*
+FcSerializeUncheckedSet (FcSerialize *serialize, FcSerializeBucket* insert) {
+    const void *object = insert->object;
+    size_t buckets_count = serialize->buckets_count;
+    size_t index = insert->hash & (buckets_count-1);
+    for (size_t n = 0; n < buckets_count; ++n) {
+       FcSerializeBucket* bucket = &serialize->buckets[index];
+       if (bucket->hash == 0) {
+           *bucket = *insert;
+           ++serialize->buckets_used;
+           return bucket;
+       }
+       if (object == bucket->object) {
+           /* FcSerializeAlloc should not allow this to happen. */
+           assert (0);
+           *bucket = *insert;
+           return bucket;
+       }
+       index = FcSerializeNextBucketIndex (serialize, index);
+    }
+    assert (0);
+    return NULL;
+}
+
+static FcBool
+FcSerializeResize (FcSerialize *serialize, size_t new_count)
+{
+    size_t old_used = serialize->buckets_used;
+    size_t old_count = serialize->buckets_count;
+    FcSerializeBucket *old_buckets = serialize->buckets;
+    FcSerializeBucket *old_buckets_end = old_buckets + old_count;
+
+    FcSerializeBucket *new_buckets = malloc (new_count * sizeof (*old_buckets));
+    if (!new_buckets)
+       return FcFalse;
+    FcSerializeBucket *new_buckets_end = new_buckets + new_count;
+    for (FcSerializeBucket *b = new_buckets; b < new_buckets_end; ++b)
+       b->hash = 0;
+
+    serialize->buckets = new_buckets;
+    serialize->buckets_count = new_count;
+    serialize->buckets_used = 0;
+    for (FcSerializeBucket *b = old_buckets; b < old_buckets_end; ++b)
+       if (b->hash != 0 && !FcSerializeUncheckedSet (serialize, b))
+       {
+           serialize->buckets = old_buckets;
+           serialize->buckets_count = old_count;
+           serialize->buckets_used = old_used;
+           free (new_buckets);
+           return FcFalse;
+       }
+    free (old_buckets);
+    return FcTrue;
+}
+
+static FcSerializeBucket*
+FcSerializeSet (FcSerialize *serialize, const void *object, intptr_t offset)
+{
+    if (serialize->buckets_used >= serialize->buckets_used_max)
+    {
+       size_t capacity = serialize->buckets_count;
+       if (capacity == 0)
+           capacity = 4;
+       else if (capacity > SIZE_MAX / 2u)
+           return NULL;
+       else
+           capacity *= 2;
+
+       if (!FcSerializeResize (serialize, capacity))
+           return NULL;
+
+       serialize->buckets_used_max = capacity / 4u * 3u;
+    }
+
+    FcSerializeBucket bucket;
+    bucket.object = object;
+    bucket.offset = offset;
+    bucket.hash = FcSerializeHashPtr (object);
+    return FcSerializeUncheckedSet (serialize, &bucket);
 }
 
 /*
  * Allocate space for an object in the serialized array. Keep track
  * of where the object is placed and only allocate one copy of each object
  */
-
 FcBool
 FcSerializeAlloc (FcSerialize *serialize, const void *object, int size)
 {
-    uintptr_t  bucket = ((uintptr_t) object) % FC_SERIALIZE_HASH_SIZE;
-    FcSerializeBucket  *buck;
-
-    for (buck = serialize->buckets[bucket]; buck; buck = buck->next)
-       if (buck->object == object)
-           return FcTrue;
-    buck = malloc (sizeof (FcSerializeBucket));
-    if (!buck)
+    FcSerializeBucket *bucket = FcSerializeFind (serialize, object);
+    if (bucket)
+       return FcTrue;
+
+    if (!FcSerializeSet (serialize, object, serialize->size))
        return FcFalse;
-    buck->object = object;
-    buck->offset = serialize->size;
-    buck->next = serialize->buckets[bucket];
-    serialize->buckets[bucket] = buck;
+
     serialize->size += FcAlignSize (size);
     return FcTrue;
 }
@@ -113,13 +250,8 @@ FcSerializeReserve (FcSerialize *serialize, int size)
 intptr_t
 FcSerializeOffset (FcSerialize *serialize, const void *object)
 {
-    uintptr_t  bucket = ((uintptr_t) object) % FC_SERIALIZE_HASH_SIZE;
-    FcSerializeBucket  *buck;
-
-    for (buck = serialize->buckets[bucket]; buck; buck = buck->next)
-       if (buck->object == object)
-           return buck->offset;
-    return 0;
+    FcSerializeBucket *bucket = FcSerializeFind (serialize, object);
+    return bucket ? bucket->offset : 0;
 }
 
 /*
index 5aa1643..4f69eae 100644 (file)
@@ -22,7 +22,9 @@
  */
 #include "fcint.h"
 #include "fcarch.h"
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 #include <limits.h>
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -384,7 +386,7 @@ FcFStatFs (int fd, FcStatFS *statb)
 #  endif
 #  if defined(HAVE_STRUCT_STATFS_F_FSTYPENAME)
        p = buf.f_fstypename;
-#  elif defined(__linux__)
+#  elif defined(__linux__) || defined (__EMSCRIPTEN__)
        switch (buf.f_type)
        {
        case 0x6969: /* nfs */
index 72a0c79..be9771c 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.13.1"
-/* generated using gnu compiler gcc (GCC) 8.2.1 20180801 (Red Hat 8.2.1-2) */
+#define _GENERATED_STDINT_H "fontconfig 2.14.2"
+/* generated using gnu compiler gcc (GCC) 13.0.1 20230117 (Red Hat 13.0.1-0) */
 #define _STDINT_HAVE_STDINT_H 1
 #include <stdint.h>
 #endif
diff --git a/src/fcstdint.h.in b/src/fcstdint.h.in
new file mode 100644 (file)
index 0000000..9a6118b
--- /dev/null
@@ -0,0 +1 @@
+#include <stdint.h>
index 4247c85..8f756af 100644 (file)
@@ -36,6 +36,32 @@ FcStrCopy (const FcChar8 *s)
     return FcStrdup (s);
 }
 
+static FcChar8 *
+FcStrMakeTriple (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *s3)
+{
+    int            s1l = s1 ? strlen ((char *) s1) : 0;
+    int            s2l = s2 ? strlen ((char *) s2) : 0;
+    int     s3l = s3 ? strlen ((char *) s3) : 0;
+    int            l = s1l + 1 + s2l + 1 + s3l + 1;
+    FcChar8 *s = malloc (l);
+
+    if (!s)
+       return 0;
+    if (s1)
+       memcpy (s, s1, s1l + 1);
+    else
+       s[0] = '\0';
+    if (s2)
+       memcpy (s + s1l + 1, s2, s2l + 1);
+    else
+       s[s1l + 1] = '\0';
+    if (s3)
+       memcpy (s + s1l + 1 + s2l + 1, s3, s3l + 1);
+    else
+       s[s1l + 1 + s2l + 1] = '\0';
+    return s;
+}
+
 FcChar8 *
 FcStrPlus (const FcChar8 *s1, const FcChar8 *s2)
 {
@@ -96,7 +122,7 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
            int         mid = (min + max) >> 1;
            FcChar32    low = fcCaseFold[mid].upper;
            FcChar32    high = low + FcCaseFoldUpperCount (&fcCaseFold[mid]);
-       
+
            if (high <= ucs4)
                min = mid + 1;
            else if (ucs4 < low)
@@ -105,7 +131,7 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
            {
                const FcCaseFold    *fold = &fcCaseFold[mid];
                int                 dlen;
-               
+
                switch (fold->method) {
                case  FC_CASE_FOLD_EVEN_ODD:
                    if ((ucs4 & 1) != (fold->upper & 1))
@@ -119,10 +145,10 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
                    memcpy (w->utf8, fcCaseFoldChars + fold->offset, dlen);
                    break;
                }
-               
+
                /* consume rest of src utf-8 bytes */
                w->src += slen - 1;
-               
+
                /* read from temp buffer */
                w->utf8[dlen] = '\0';
                w->read = w->utf8;
@@ -134,11 +160,11 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
 }
 
 static FcChar8
-FcStrCaseWalkerNext (FcCaseWalker *w, const char *delims)
+FcStrCaseWalkerNextNonDelim (FcCaseWalker *w, const char *delims)
 {
     FcChar8    r;
 
-    if (w->read)
+    if (FC_UNLIKELY (w->read != NULL))
     {
        if ((r = *w->read++))
            return r;
@@ -149,7 +175,51 @@ FcStrCaseWalkerNext (FcCaseWalker *w, const char *delims)
        r = *w->src++;
     } while (r != 0 && delims && strchr (delims, r));
 
-    if ((r & 0xc0) == 0xc0)
+    if (FC_UNLIKELY ((r & 0xc0) == 0xc0))
+       return FcStrCaseWalkerLong (w, r);
+    if ('A' <= r && r <= 'Z')
+        r = r - 'A' + 'a';
+    return r;
+}
+
+static FcChar8
+FcStrCaseWalkerNextNonBlank (FcCaseWalker *w)
+{
+    FcChar8    r;
+
+    if (FC_UNLIKELY (w->read != NULL))
+    {
+       if ((r = *w->read++))
+           return r;
+       w->read = 0;
+    }
+    do
+    {
+       r = *w->src++;
+    } while (r == ' ');
+
+    if (FC_UNLIKELY ((r & 0xc0) == 0xc0))
+       return FcStrCaseWalkerLong (w, r);
+    if ('A' <= r && r <= 'Z')
+        r = r - 'A' + 'a';
+    return r;
+}
+
+static FcChar8
+FcStrCaseWalkerNext (FcCaseWalker *w)
+{
+    FcChar8    r;
+
+    if (FC_UNLIKELY (w->read != NULL))
+    {
+       if ((r = *w->read++))
+           return r;
+       w->read = 0;
+    }
+
+    r = *w->src++;
+
+    if (FC_UNLIKELY ((r & 0xc0) == 0xc0))
        return FcStrCaseWalkerLong (w, r);
     if ('A' <= r && r <= 'Z')
         r = r - 'A' + 'a';
@@ -164,13 +234,13 @@ FcStrDowncase (const FcChar8 *s)
     FcChar8        *dst, *d;
 
     FcStrCaseWalkerInit (s, &w);
-    while (FcStrCaseWalkerNext (&w, NULL))
+    while (FcStrCaseWalkerNext (&w))
        len++;
     d = dst = malloc (len + 1);
     if (!d)
        return 0;
     FcStrCaseWalkerInit (s, &w);
-    while ((*d++ = FcStrCaseWalkerNext (&w, NULL)));
+    while ((*d++ = FcStrCaseWalkerNext (&w)));
     return dst;
 }
 
@@ -187,8 +257,8 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1, NULL);
-       c2 = FcStrCaseWalkerNext (&w2, NULL);
+       c1 = FcStrCaseWalkerNext (&w1);
+       c2 = FcStrCaseWalkerNext (&w2);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -198,12 +268,6 @@ 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;
 
@@ -214,8 +278,8 @@ FcStrCmpIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
-       c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
+       c1 = FcStrCaseWalkerNextNonBlank (&w1);
+       c2 = FcStrCaseWalkerNextNonBlank (&w2);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -251,7 +315,20 @@ FcStrHashIgnoreCase (const FcChar8 *s)
     FcChar8        c;
 
     FcStrCaseWalkerInit (s, &w);
-    while ((c = FcStrCaseWalkerNext (&w, NULL)))
+    while ((c = FcStrCaseWalkerNext (&w)))
+       h = ((h << 3) ^ (h >> 3)) ^ c;
+    return h;
+}
+
+FcChar32
+FcStrHashIgnoreBlanksAndCase (const FcChar8 *s)
+{
+    FcChar32       h = 0;
+    FcCaseWalker    w;
+    FcChar8        c;
+
+    FcStrCaseWalkerInit (s, &w);
+    while ((c = FcStrCaseWalkerNextNonBlank (&w)))
        h = ((h << 3) ^ (h >> 3)) ^ c;
     return h;
 }
@@ -271,8 +348,8 @@ FcStrIsAtIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1, " ");
-       c2 = FcStrCaseWalkerNext (&w2, " ");
+       c1 = FcStrCaseWalkerNextNonBlank (&w1);
+       c2 = FcStrCaseWalkerNextNonBlank (&w2);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -330,8 +407,8 @@ FcStrIsAtIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1, NULL);
-       c2 = FcStrCaseWalkerNext (&w2, NULL);
+       c1 = FcStrCaseWalkerNext (&w1);
+       c2 = FcStrCaseWalkerNext (&w2);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -364,7 +441,7 @@ FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2)
     FcBool  wordStart = FcTrue;
     int            s1len = strlen ((char *) s1);
     int            s2len = strlen ((char *) s2);
-       
+
     while (s1len >= s2len)
     {
        if (wordStart &&
@@ -383,7 +460,7 @@ FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2)
 }
 
 /*
- * returns the number of strings (ignoring delimitors and case) being matched
+ * returns the number of strings (ignoring delimiters and case) being matched
  */
 
 int
@@ -399,8 +476,8 @@ FcStrMatchIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcCha
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
-       c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
+       c1 = FcStrCaseWalkerNextNonDelim (&w1, (const char *)delims);
+       c2 = FcStrCaseWalkerNextNonDelim (&w2, (const char *)delims);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -467,12 +544,12 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
     FcStrCaseWalkerInit (s1, &w1);
     FcStrCaseWalkerInit (s2, &w2);
 
-    c2 = FcStrCaseWalkerNext (&w2, NULL);
+    c2 = FcStrCaseWalkerNext (&w2);
 
     for (;;)
     {
        cur = w1.src;
-       c1 = FcStrCaseWalkerNext (&w1, NULL);
+       c1 = FcStrCaseWalkerNext (&w1);
        if (!c1)
            break;
        if (c1 == c2)
@@ -483,8 +560,8 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
            for (;;)
            {
-               c1t = FcStrCaseWalkerNext (&w1t, NULL);
-               c2t = FcStrCaseWalkerNext (&w2t, NULL);
+               c1t = FcStrCaseWalkerNext (&w1t);
+               c2t = FcStrCaseWalkerNext (&w2t);
 
                if (!c2t)
                    return cur;
@@ -607,10 +684,10 @@ FcUtf8ToUcs4 (const FcChar8 *src_orig,
     {
        result <<= 6;
        s = *src++;
-       
+
        if ((s & 0xc0) != 0x80)
            return -1;
-       
+
        result |= s & 0x3f;
     }
     *dst = result;
@@ -1014,6 +1091,30 @@ FcStrBasename (const FcChar8 *file)
     return FcStrCopy (slash + 1);
 }
 
+FcChar8 *
+FcStrRealPath (const FcChar8 *path)
+{
+    char       resolved_name[FC_PATH_MAX+1];
+    char       *resolved_ret;
+
+    if (!path)
+       return NULL;
+
+#ifndef _WIN32
+    resolved_ret = realpath((const char *) path, resolved_name);
+#else
+    if (GetFullPathNameA ((LPCSTR) path, FC_PATH_MAX, resolved_name, NULL) == 0)
+    {
+        fprintf (stderr, "Fontconfig warning: GetFullPathNameA failed.\n");
+        return NULL;
+    }
+    resolved_ret = resolved_name;
+#endif
+    if (resolved_ret)
+       path = (FcChar8 *) resolved_ret;
+    return FcStrCopyFilename(path);
+}
+
 static FcChar8 *
 FcStrCanonAbsoluteFilename (const FcChar8 *s)
 {
@@ -1175,7 +1276,7 @@ _FcStrSetGrow (FcStrSet *set, int growElements)
 }
 
 static FcBool
-_FcStrSetAppend (FcStrSet *set, FcChar8 *s)
+_FcStrSetInsert (FcStrSet *set, FcChar8 *s, int pos)
 {
     if (!FcStrSetHasControlBit (set, FCSS_ALLOW_DUPLICATES))
     {
@@ -1191,8 +1292,21 @@ _FcStrSetAppend (FcStrSet *set, FcChar8 *s)
         if (!_FcStrSetGrow(set, growElements))
             return FcFalse;
     }
-    set->strs[set->num++] = s;
-    set->strs[set->num] = 0;
+    if (pos >= set->num)
+    {
+       set->strs[set->num++] = s;
+       set->strs[set->num] = 0;
+    }
+    else
+    {
+       int i;
+
+       set->num++;
+       set->strs[set->num] = 0;
+       for (i = set->num - 1; i > pos; i--)
+           set->strs[i] = set->strs[i - 1];
+       set->strs[pos] = s;
+    }
     return FcTrue;
 }
 
@@ -1207,6 +1321,58 @@ FcStrSetMember (FcStrSet *set, const FcChar8 *s)
     return FcFalse;
 }
 
+static int
+fc_strcmp_r (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 **ret)
+{
+    FcChar8 c1, c2;
+
+    if (s1 == s2)
+    {
+       if (ret)
+           *ret = NULL;
+       return 0;
+    }
+    for (;;)
+    {
+       if (s1)
+           c1 = *s1++;
+       else
+           c1 = 0;
+       if (s2)
+           c2 = *s2++;
+       else
+           c2 = 0;
+       if (!c1 || c1 != c2)
+           break;
+    }
+    if (ret)
+       *ret = s1;
+    return (int) c1  - (int) c2;
+}
+
+FcBool
+FcStrSetMemberAB (FcStrSet *set, const FcChar8 *a, FcChar8 *b, FcChar8 **ret)
+{
+    int i;
+    const FcChar8 *s = NULL;
+
+    for (i = 0; i < set->num; i++)
+    {
+       if (!fc_strcmp_r (set->strs[i], a, &s) && s)
+       {
+           if (!fc_strcmp_r (s, b, NULL))
+           {
+               if (ret)
+                   *ret = set->strs[i];
+               return FcTrue;
+           }
+       }
+    }
+    if (ret)
+       *ret = NULL;
+    return FcFalse;
+}
+
 FcBool
 FcStrSetEqual (FcStrSet *sa, FcStrSet *sb)
 {
@@ -1225,7 +1391,7 @@ FcStrSetAdd (FcStrSet *set, const FcChar8 *s)
     FcChar8 *new = FcStrCopy (s);
     if (!new)
        return FcFalse;
-    if (!_FcStrSetAppend (set, new))
+    if (!_FcStrSetInsert (set, new, set->num))
     {
        FcStrFree (new);
        return FcFalse;
@@ -1234,12 +1400,61 @@ FcStrSetAdd (FcStrSet *set, const FcChar8 *s)
 }
 
 FcBool
+FcStrSetInsert (FcStrSet *set, const FcChar8 *s, int pos)
+{
+    FcChar8 *new = FcStrCopy (s);
+    if (!new)
+       return FcFalse;
+    if (!_FcStrSetInsert (set, new, pos))
+    {
+       FcStrFree (new);
+       return FcFalse;
+    }
+    return FcTrue;
+}
+
+FcBool
+FcStrSetAddTriple (FcStrSet *set, const FcChar8 *a, const FcChar8 *b, const FcChar8 *c)
+{
+    FcChar8 *new = FcStrMakeTriple (a, b, c);
+    if (!new)
+       return FcFalse;
+    if (!_FcStrSetInsert (set, new, set->num))
+    {
+       FcStrFree (new);
+       return FcFalse;
+    }
+    return FcTrue;
+}
+
+const FcChar8 *
+FcStrTripleSecond (FcChar8 *str)
+{
+    FcChar8 *second = str + strlen((char *) str) + 1;
+
+    if (*second == '\0')
+       return 0;
+    return second;
+}
+
+const FcChar8 *
+FcStrTripleThird (FcChar8 *str)
+{
+    FcChar8 *second = str + strlen ((char *) str) + 1;
+    FcChar8 *third = second + strlen ((char *) second) + 1;
+
+    if (*third == '\0')
+       return 0;
+    return third;
+}
+
+FcBool
 FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s)
 {
     FcChar8 *new = FcStrCopyFilename (s);
     if (!new)
        return FcFalse;
-    if (!_FcStrSetAppend (set, new))
+    if (!_FcStrSetInsert (set, new, set->num))
     {
        FcStrFree (new);
        return FcFalse;
@@ -1248,6 +1463,39 @@ FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s)
 }
 
 FcBool
+FcStrSetAddFilenamePairWithSalt (FcStrSet *set, const FcChar8 *a, const FcChar8 *b, const FcChar8 *salt)
+{
+    FcChar8 *new_a = NULL;
+    FcChar8 *new_b = NULL;
+    FcBool  ret;
+
+    if (a)
+    {
+       new_a = FcStrCopyFilename (a);
+       if (!new_a)
+           return FcFalse;
+    }
+    if (b)
+    {
+       new_b = FcStrCopyFilename(b);
+       if (!new_b)
+       {
+           if (new_a)
+               FcStrFree(new_a);
+           return FcFalse;
+       }
+    }
+    /* Override maps with new one if exists */
+    FcStrSetDel (set, new_a);
+    ret = FcStrSetAddTriple (set, new_a, new_b, salt);
+    if (new_a)
+       FcStrFree (new_a);
+    if (new_b)
+       FcStrFree (new_b);
+    return ret;
+}
+
+FcBool
 FcStrSetAddLangs (FcStrSet *strs, const char *languages)
 {
     const char *p = languages, *next;
@@ -1312,6 +1560,22 @@ FcStrSetDel (FcStrSet *set, const FcChar8 *s)
     return FcFalse;
 }
 
+FcBool
+FcStrSetDeleteAll (FcStrSet *set)
+{
+    int i;
+
+    if (FcRefIsConst (&set->ref))
+       return FcFalse;
+
+    for (i = set->num; i > 0; i--)
+    {
+       FcStrFree (set->strs[i - 1]);
+       set->num--;
+    }
+    return FcTrue;
+}
+
 /* TODO Make public */
 static FcStrSet *
 FcStrSetReference (FcStrSet *set)
@@ -1326,20 +1590,23 @@ FcStrSetReference (FcStrSet *set)
 void
 FcStrSetDestroy (FcStrSet *set)
 {
-    int        i;
+    if (set)
+    {
+       int     i;
 
-    /* We rely on this in FcGetDefaultLangs for caching. */
-    if (FcRefIsConst (&set->ref))
-       return;
+       /* We rely on this in FcGetDefaultLangs for caching. */
+       if (FcRefIsConst (&set->ref))
+           return;
 
-    if (FcRefDec (&set->ref) != 1)
-       return;
+       if (FcRefDec (&set->ref) != 1)
+           return;
 
-    for (i = 0; i < set->num; i++)
-       FcStrFree (set->strs[i]);
-    if (set->strs)
-       free (set->strs);
-    free (set);
+       for (i = 0; i < set->num; i++)
+           FcStrFree (set->strs[i]);
+       if (set->strs)
+           free (set->strs);
+       free (set);
+    }
 }
 
 FcStrList *
index 276b467..224299e 100644 (file)
@@ -46,7 +46,7 @@ static double lerp(double 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;
+  return y1 + (x-x1) * dy / dx;
 }
 
 double
index a0eee67..23331f5 100644 (file)
 #  define WIN32_EXTRA_LEAN
 #  define STRICT
 #  include <windows.h>
+#  include <io.h>
+
+#if defined(_MSC_VER)
+#include <BaseTsd.h>
+typedef SSIZE_T ssize_t;
+#endif
+
+#define FC_UINT64_FORMAT       "I64u"
+
+#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
+
+#ifndef S_ISDIR
+#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
 #endif
 
+#ifndef F_OK
+#define F_OK 0
+#endif
+#ifndef X_OK
+#define X_OK 0 /* no execute bit on windows */
+#endif
+#ifndef W_OK
+#define W_OK 2
+#endif
+#ifndef R_OK
+#define R_OK 4
+#endif
+
+/* MingW provides dirent.h / openddir(), but MSVC does not */
+#ifndef HAVE_DIRENT_H
+
+#define HAVE_STRUCT_DIRENT_D_TYPE 1
+
+typedef struct DIR DIR;
+
+typedef enum {
+  DT_UNKNOWN = 0,
+  DT_DIR,
+  DT_REG,
+} DIR_TYPE;
+
+typedef struct dirent {
+    const char *d_name;
+    DIR_TYPE d_type;
+} dirent;
+
+#define opendir(dirname) FcCompatOpendirWin32(dirname)
+#define closedir(d)      FcCompatClosedirWin32(d)
+#define readdir(d)       FcCompatReaddirWin32(d)
+
+DIR * FcCompatOpendirWin32 (const char *dirname);
+
+struct dirent * FcCompatReaddirWin32 (DIR *dir);
+
+int FcCompatClosedirWin32 (DIR *dir);
+
+#endif /* HAVE_DIRENT_H */
+
+#endif /* _WIN32 */
+
 #endif /* _FCWINDOWS_H_ */
index 7797502..c700f64 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include <string.h>
 #include "fcint.h"
+#include <string.h>
 #include <fcntl.h>
 #include <stdarg.h>
+
+#ifdef HAVE_DIRENT_H
 #include <dirent.h>
+#endif
 
 #ifdef ENABLE_LIBXML2
 
 #ifdef _WIN32
 #include <mbstring.h>
 extern FcChar8 fontconfig_instprefix[];
+pfnGetSystemWindowsDirectory pGetSystemWindowsDirectory = NULL;
+pfnSHGetFolderPathA pSHGetFolderPathA = NULL;
+static void
+_ensureWin32GettersReady();
 #endif
 
 static FcChar8  *__fc_userdir = NULL;
@@ -358,7 +365,9 @@ typedef enum _FcElement {
     FcElementMatch,
     FcElementAlias,
     FcElementDescription,
-       
+    FcElementRemapDir,
+    FcElementResetDirs,
+
     FcElementRescan,
 
     FcElementPrefer,
@@ -421,6 +430,8 @@ static const struct {
     { "match",         FcElementMatch },
     { "alias",         FcElementAlias },
     { "description",   FcElementDescription },
+    { "remap-dir",     FcElementRemapDir },
+    { "reset-dirs",    FcElementResetDirs },
 
     { "rescan",                FcElementRescan },
 
@@ -490,6 +501,19 @@ FcElementMap (const XML_Char *name)
     return FcElementUnknown;
 }
 
+static const char *
+FcElementReverseMap (FcElement e)
+{
+    int i;
+
+    for (i = 0; i < NUM_ELEMENT_MAPS; i++)
+       if (fcElementMap[i].element == e)
+           return fcElementMap[i].name;
+
+    return NULL;
+}
+
+
 typedef struct _FcPStack {
     struct _FcPStack   *prev;
     FcElement          element;
@@ -707,7 +731,7 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
            if (o)
                FcTypecheckValue (parse, o->type, type);
        }
-        else
+       else
             FcConfigMessage (parse, FcSevereWarning,
                              "invalid constant used : %s",
                              expr->u.constant);
@@ -770,7 +794,7 @@ FcTestCreate (FcConfigParse *parse,
     if (test)
     {
        const FcObjectType      *o;
-       
+
        test->kind = kind;
        test->qual = qual;
        test->object = FcObjectFromName ((const char *) field);
@@ -1190,7 +1214,7 @@ FcPStackPop (FcConfigParse *parse)
        {
            if (attrs[0][0])
            {
-               FcConfigMessage (parse, FcSevereError, "invalid attribute '%s'", attrs[0]);
+               FcConfigMessage (parse, FcSevereWarning, "invalid attribute '%s'", attrs[0]);
            }
            attrs += 2;
        }
@@ -1265,6 +1289,158 @@ FcConfigGetAttribute (FcConfigParse *parse, const char *attr)
     return 0;
 }
 
+static FcStrSet *
+_get_real_paths_from_prefix(FcConfigParse *parse, const FcChar8 *path, const FcChar8 *prefix)
+{
+#ifdef _WIN32
+    FcChar8 buffer[1000] = { 0 };
+#endif
+    FcChar8 *parent = NULL, *retval = NULL;
+    FcStrSet *e = NULL;
+
+    if (prefix)
+    {
+       if (FcStrCmp (prefix, (const FcChar8 *) "xdg") == 0)
+       {
+           parent = FcConfigXdgDataHome ();
+           if (!parent)
+           {
+               /* Home directory might be disabled */
+               return NULL;
+           }
+           e = FcConfigXdgDataDirs ();
+           if (!e)
+           {
+               FcStrFree (parent);
+               return NULL;
+           }
+       }
+       else if (FcStrCmp (prefix, (const FcChar8 *) "default") == 0 ||
+                FcStrCmp (prefix, (const FcChar8 *) "cwd") == 0)
+       {
+           /* Nothing to do */
+       }
+       else if (FcStrCmp (prefix, (const FcChar8 *) "relative") == 0)
+       {
+           FcChar8 *p = FcStrRealPath (parse->name);
+
+           if (!p)
+               return NULL;
+           parent = FcStrDirname (p);
+           if (!parent)
+           {
+               free (p);
+               return NULL;
+           }
+       }
+    }
+#ifndef _WIN32
+    /* For Win32, check this later for dealing with special cases */
+    else
+    {
+       if (!FcStrIsAbsoluteFilename (path) && path[0] != '~')
+           FcConfigMessage (parse, FcSevereWarning, "Use of ambiguous path in <%s> element. please add prefix=\"cwd\" if current behavior is desired.", FcElementReverseMap (parse->pstack->element));
+    }
+#else
+    if (strcmp ((const char *) path, "CUSTOMFONTDIR") == 0)
+    {
+       FcChar8 *p;
+       path = buffer;
+       if (!GetModuleFileName (NULL, (LPCH) buffer, sizeof (buffer) - 20))
+       {
+           FcConfigMessage (parse, FcSevereError, "GetModuleFileName failed");
+           return NULL;
+       }
+       /*
+        * Must use the multi-byte aware function to search
+        * for backslash because East Asian double-byte code
+        * pages have characters with backslash as the second
+        * byte.
+        */
+       p = _mbsrchr (path, '\\');
+       if (p) *p = '\0';
+       strcat ((char *) path, "\\fonts");
+    }
+    else if (strcmp ((const char *) path, "APPSHAREFONTDIR") == 0)
+    {
+       FcChar8 *p;
+       path = buffer;
+       if (!GetModuleFileName (NULL, (LPCH) buffer, sizeof (buffer) - 20))
+       {
+           FcConfigMessage (parse, FcSevereError, "GetModuleFileName failed");
+           return NULL;
+       }
+       p = _mbsrchr (path, '\\');
+       if (p) *p = '\0';
+       strcat ((char *) path, "\\..\\share\\fonts");
+    }
+    else if (strcmp ((const char *) path, "WINDOWSUSERFONTDIR") == 0)
+    {
+        path = buffer;
+        if (!(pSHGetFolderPathA && SUCCEEDED(pSHGetFolderPathA(NULL, /* CSIDL_LOCAL_APPDATA */ 28, NULL, 0, (char *) buffer))))
+        {
+            FcConfigMessage(parse, FcSevereError, "SHGetFolderPathA failed");
+            return NULL;
+        }
+        strcat((char *) path, "\\Microsoft\\Windows\\Fonts");
+    }
+    else if (strcmp ((const char *) path, "WINDOWSFONTDIR") == 0)
+    {
+       int rc;
+       path = buffer;
+       _ensureWin32GettersReady();
+       rc = pGetSystemWindowsDirectory ((LPSTR) buffer, sizeof (buffer) - 20);
+       if (rc == 0 || rc > sizeof (buffer) - 20)
+       {
+           FcConfigMessage (parse, FcSevereError, "GetSystemWindowsDirectory failed");
+           return NULL;
+       }
+       if (path [strlen ((const char *) path) - 1] != '\\')
+           strcat ((char *) path, "\\");
+       strcat ((char *) path, "fonts");
+    }
+    else
+    {
+       if (!prefix)
+       {
+           if (!FcStrIsAbsoluteFilename (path) && path[0] != '~')
+               FcConfigMessage (parse, FcSevereWarning, "Use of ambiguous path in <%s> element. please add prefix=\"cwd\" if current behavior is desired.", FcElementReverseMap (parse->pstack->element));
+       }
+    }
+#endif
+    if (parent)
+    {
+       retval = FcStrBuildFilename (parent, path, NULL);
+       FcStrFree (parent);
+    }
+    else
+    {
+       retval = FcStrdup (path);
+    }
+    if (!e)
+       e = FcStrSetCreate ();
+    else
+    {
+       FcChar8 *s;
+       int i;
+
+       for (i = 0; i < e->num; i++)
+       {
+           s = FcStrBuildFilename (e->strs[i], path, NULL);
+           FcStrFree (e->strs[i]);
+           e->strs[i] = s;
+       }
+    }
+    if (!FcStrSetInsert (e, retval, 0))
+    {
+       FcStrSetDestroy (e);
+       e = NULL;
+    }
+    FcStrFree (retval);
+
+    return e;
+}
+
 static void
 FcStartElement(void *userData, const XML_Char *name, const XML_Char **attr)
 {
@@ -1357,7 +1533,7 @@ FcStrtod (char *s, char **end)
     {
        char    buf[128];
        int     slen = strlen (s);
-       
+
        if (slen + dlen > (int) sizeof (buf))
        {
            if (end)
@@ -1480,6 +1656,11 @@ FcParseMatrix (FcConfigParse *parse)
     m.xy = FcPopExpr (parse);
     m.xx = FcPopExpr (parse);
 
+    if (!m.yy || !m.yx || !m.xy || !m.xx)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "Missing values in matrix element");
+       return;
+    }
     if (FcPopExpr (parse))
       FcConfigMessage (parse, FcSevereError, "wrong number of matrix elements");
     else
@@ -1926,6 +2107,65 @@ FcParseDescription (FcConfigParse *parse)
     FcStrFree (desc);
 }
 
+static void
+FcParseRemapDir (FcConfigParse *parse)
+{
+    const FcChar8 *path, *attr, *data, *salt;
+    FcStrSet *prefix_dirs = NULL;
+
+    data = FcStrBufDoneStatic (&parse->pstack->str);
+    if (!data)
+    {
+       FcConfigMessage (parse, FcSevereError, "out of memory");
+       return;
+    }
+    if (data[0] == 0)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "empty font directory name for remap ignored");
+       return;
+    }
+    path = FcConfigGetAttribute (parse, "as-path");
+    if (!path)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "Missing as-path in remap-dir");
+       return;
+    }
+    attr = FcConfigGetAttribute (parse, "prefix");
+    salt = FcConfigGetAttribute (parse, "salt");
+    prefix_dirs = _get_real_paths_from_prefix (parse, data, attr);
+    if (prefix_dirs)
+    {
+       FcStrList *l = FcStrListCreate (prefix_dirs);
+       FcChar8 *prefix;
+
+       FcStrSetDestroy (prefix_dirs);
+       while ((prefix = FcStrListNext (l)))
+       {
+           if (!prefix || prefix[0] == 0)
+           {
+               /* nop */
+           }
+           else if (!parse->scanOnly && (!FcStrUsesHome (prefix) || FcConfigHome ()))
+           {
+               if (!FcConfigAddFontDir (parse->config, prefix, path, salt))
+                   FcConfigMessage (parse, FcSevereError, "out of memory; cannot create remap data for %s as %s", prefix, path);
+           }
+           FcStrBufDestroy (&parse->pstack->str);
+       }
+       FcStrListDone (l);
+    }
+}
+
+static void
+FcParseResetDirs (FcConfigParse *parse)
+{
+    if (!parse->scanOnly)
+    {
+       if (!FcConfigResetFontDirs (parse->config))
+           FcConfigMessage (parse, FcSevereError, "Unable to reset fonts dirs");
+    }
+}
+
 static FcExpr *
 FcPopExpr (FcConfigParse *parse)
 {
@@ -2066,106 +2306,44 @@ FcParseUnary (FcConfigParse *parse, FcOp op)
 static void
 FcParseDir (FcConfigParse *parse)
 {
-    const FcChar8 *attr, *data;
-    FcChar8 *prefix = NULL, *p;
-#ifdef _WIN32
-    FcChar8         buffer[1000];
-#endif
+    const FcChar8 *attr, *data, *salt;
+    FcStrSet *prefix_dirs = NULL;
 
-    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)
     {
        FcConfigMessage (parse, FcSevereError, "out of memory");
-       data = prefix;
-       goto bail;
-    }
-    if (prefix)
-    {
-       size_t plen = strlen ((const char *)prefix);
-       size_t dlen = strlen ((const char *)data);
-
-       p = realloc (prefix, plen + 1 + dlen + 1);
-       if (!p)
-       {
-           FcConfigMessage (parse, FcSevereError, "out of memory");
-           goto bail;
-       }
-       prefix = p;
-       prefix[plen] = FC_DIR_SEPARATOR;
-       memcpy (&prefix[plen + 1], data, dlen);
-       prefix[plen + 1 + dlen] = 0;
-       data = prefix;
-    }
-#ifdef _WIN32
-    if (strcmp ((const char *) data, "CUSTOMFONTDIR") == 0)
-    {
-       FcChar8 *p;
-       data = buffer;
-       if (!GetModuleFileName (NULL, (LPCH) buffer, sizeof (buffer) - 20))
-       {
-           FcConfigMessage (parse, FcSevereError, "GetModuleFileName failed");
-           goto bail;
-       }
-       /*
-        * Must use the multi-byte aware function to search
-        * for backslash because East Asian double-byte code
-        * pages have characters with backslash as the second
-        * byte.
-        */
-       p = _mbsrchr (data, '\\');
-       if (p) *p = '\0';
-       strcat ((char *) data, "\\fonts");
+       return;
     }
-    else if (strcmp ((const char *) data, "APPSHAREFONTDIR") == 0)
+    if (data[0] == 0)
     {
-       FcChar8 *p;
-       data = buffer;
-       if (!GetModuleFileName (NULL, (LPCH) buffer, sizeof (buffer) - 20))
-       {
-           FcConfigMessage (parse, FcSevereError, "GetModuleFileName failed");
-           goto bail;
-       }
-       p = _mbsrchr (data, '\\');
-       if (p) *p = '\0';
-       strcat ((char *) data, "\\..\\share\\fonts");
+       FcConfigMessage (parse, FcSevereWarning, "empty font directory name ignored");
+       return;
     }
-    else if (strcmp ((const char *) data, "WINDOWSFONTDIR") == 0)
+    attr = FcConfigGetAttribute (parse, "prefix");
+    salt = FcConfigGetAttribute (parse, "salt");
+    prefix_dirs = _get_real_paths_from_prefix (parse, data, attr);
+    if (prefix_dirs)
     {
-       int rc;
-       data = buffer;
-       rc = pGetSystemWindowsDirectory ((LPSTR) buffer, sizeof (buffer) - 20);
-       if (rc == 0 || rc > sizeof (buffer) - 20)
+       FcStrList *l = FcStrListCreate (prefix_dirs);
+       FcChar8 *prefix;
+
+       FcStrSetDestroy (prefix_dirs);
+       while ((prefix = FcStrListNext (l)))
        {
-           FcConfigMessage (parse, FcSevereError, "GetSystemWindowsDirectory failed");
-           goto bail;
+           if (!prefix || prefix[0] == 0)
+           {
+               /* nop */
+           }
+           else if (!parse->scanOnly && (!FcStrUsesHome (prefix) || FcConfigHome ()))
+           {
+               if (!FcConfigAddFontDir (parse->config, prefix, NULL, salt))
+                   FcConfigMessage (parse, FcSevereError, "out of memory; cannot add directory %s", prefix);
+           }
+           FcStrBufDestroy (&parse->pstack->str);
        }
-       if (data [strlen ((const char *) data) - 1] != '\\')
-           strcat ((char *) data, "\\");
-       strcat ((char *) data, "fonts");
+       FcStrListDone (l);
     }
-#endif
-    if (strlen ((char *) data) == 0)
-       FcConfigMessage (parse, FcSevereWarning, "empty font directory name ignored");
-    else if (!parse->scanOnly && (!FcStrUsesHome (data) || FcConfigHome ()))
-    {
-       if (!FcConfigAddFontDir (parse->config, data))
-           FcConfigMessage (parse, FcSevereError, "out of memory; cannot add directory %s", data);
-    }
-    FcStrBufDestroy (&parse->pstack->str);
-
-  bail:
-    if (prefix)
-       FcStrFree (prefix);
 }
 
 static void
@@ -2191,6 +2369,13 @@ FcParseCacheDir (FcConfigParse *parse)
        data = prefix;
        goto bail;
     }
+    if (data[0] == 0)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "empty cache directory name ignored");
+       FcStrFree (data);
+       data = prefix;
+       goto bail;
+    }
     if (prefix)
     {
        size_t plen = strlen ((const char *)prefix);
@@ -2426,7 +2611,7 @@ FcParseInclude (FcConfigParse *parse)
         FcChar8 *filename;
        static FcBool warn_conf = FcFalse, warn_confd = FcFalse;
 
-        filename = FcConfigFilename(s);
+        filename = FcConfigGetFilename(parse->config, s);
        if (deprecated == FcTrue &&
            filename != NULL &&
            userdir != NULL &&
@@ -2775,7 +2960,10 @@ FcParseAcceptRejectFont (FcConfigParse *parse, FcElement element)
                                                      vstack->u.string,
                                                      element == FcElementAcceptfont))
            {
-               FcConfigMessage (parse, FcSevereError, "out of memory");
+                       if (FcStrUsesHome(vstack->u.string) && FcConfigHome() == NULL)
+                               FcConfigMessage (parse, FcSevereWarning, "Home is disabled");
+                       else
+                               FcConfigMessage (parse, FcSevereError, "out of memory");
            }
            else
            {
@@ -2916,7 +3104,7 @@ FcParsePattern (FcConfigParse *parse)
        FcConfigMessage (parse, FcSevereError, "out of memory");
        return;
     }
-       
+
     while ((vstack = FcVStackPeek (parse)))
     {
        switch ((int) vstack->tag) {
@@ -2981,11 +3169,17 @@ FcEndElement(void *userData, const XML_Char *name FC_UNUSED)
     case FcElementDescription:
        FcParseDescription (parse);
        break;
+    case FcElementRemapDir:
+       FcParseRemapDir (parse);
+       break;
+    case FcElementResetDirs:
+       FcParseResetDirs (parse);
+       break;
 
     case FcElementRescan:
        FcParseRescan (parse);
        break;
-       
+
     case FcElementPrefer:
        FcParseFamilies (parse, FcVStackPrefer);
        break;
@@ -3234,8 +3428,8 @@ FcConfigParseAndLoadDir (FcConfig *config,
        /*
         * Add all files of the form [0-9]*.conf
         */
+       d_len = strlen (e->d_name);
        if ('0' <= e->d_name[0] && e->d_name[0] <= '9' &&
-           (d_len = strlen (e->d_name)) < FC_MAX_FILE_LEN &&
            d_len > TAIL_LEN &&
            strcmp (e->d_name + d_len - TAIL_LEN, TAIL) == 0)
        {
@@ -3265,11 +3459,6 @@ bail0:
     return ret || !complain;
 }
 
-#ifdef _WIN32
-pfnGetSystemWindowsDirectory pGetSystemWindowsDirectory = NULL;
-pfnSHGetFolderPathA pSHGetFolderPathA = NULL;
-#endif
-
 static FcBool
 FcConfigParseAndLoadFromMemoryInternal (FcConfig       *config,
                                        const FcChar8  *filename,
@@ -3326,7 +3515,7 @@ FcConfigParseAndLoadFromMemoryInternal (FcConfig       *config,
     XML_SetDoctypeDeclHandler (p, FcStartDoctypeDecl, FcEndDoctypeDecl);
     XML_SetElementHandler (p, FcStartElement, FcEndElement);
     XML_SetCharacterDataHandler (p, FcCharacterData);
-       
+
 #endif /* ENABLE_LIBXML2 */
 
 #ifndef ENABLE_LIBXML2
@@ -3410,30 +3599,28 @@ _FcConfigParse (FcConfig        *config,
     int                    len;
     FcStrBuf       sbuf;
     char            buf[BUFSIZ];
-    FcBool         ret = FcFalse;
+    FcBool         ret = FcFalse, complain_again = complain;
+    FcStrBuf       reason;
 
+    FcStrBufInit (&reason, NULL, 0);
 #ifdef _WIN32
-    if (!pGetSystemWindowsDirectory)
-    {
-        HMODULE hk32 = GetModuleHandleA("kernel32.dll");
-        if (!(pGetSystemWindowsDirectory = (pfnGetSystemWindowsDirectory) GetProcAddress(hk32, "GetSystemWindowsDirectoryA")))
-            pGetSystemWindowsDirectory = (pfnGetSystemWindowsDirectory) GetWindowsDirectory;
-    }
-    if (!pSHGetFolderPathA)
-    {
-        HMODULE hSh = LoadLibraryA("shfolder.dll");
-        /* the check is done later, because there is no provided fallback */
-        if (hSh)
-            pSHGetFolderPathA = (pfnSHGetFolderPathA) GetProcAddress(hSh, "SHGetFolderPathA");
-    }
+    _ensureWin32GettersReady();
 #endif
 
-    filename = FcConfigFilename (name);
+    filename = FcConfigGetFilename (config, name);
     if (!filename)
+    {
+       FcStrBufString (&reason, (FcChar8 *)"No such file: ");
+       FcStrBufString (&reason, name ? name : (FcChar8 *)"(null)");
        goto bail0;
+    }
     realfilename = FcConfigRealFilename (config, name);
     if (!realfilename)
+    {
+       FcStrBufString (&reason, (FcChar8 *)"No such realfile: ");
+       FcStrBufString (&reason, name ? name : (FcChar8 *)"(null)");
        goto bail0;
+    }
     if (FcStrSetMember (config->availConfigFiles, realfilename))
     {
         FcStrFree (filename);
@@ -3461,7 +3648,11 @@ _FcConfigParse (FcConfig *config,
 
     fd = FcOpen ((char *) realfilename, O_RDONLY);
     if (fd == -1)
+    {
+       FcStrBufString (&reason, (FcChar8 *)"Unable to open ");
+       FcStrBufString (&reason, realfilename);
        goto bail1;
+    }
 
     do {
        len = read (fd, buf, BUFSIZ);
@@ -3475,7 +3666,7 @@ _FcConfigParse (FcConfig  *config,
 #elif HAVE_STRERROR
            char *tmp = strerror (errno_);
            size_t len = strlen (tmp);
-           strncpy (ebuf, tmp, FC_MIN (BUFSIZ, len));
+           memcpy (ebuf, tmp, FC_MIN (BUFSIZ, len));
            ebuf[FC_MIN (BUFSIZ, len)] = 0;
 #else
            ebuf[0] = 0;
@@ -3489,7 +3680,7 @@ _FcConfigParse (FcConfig  *config,
     close (fd);
 
     ret = FcConfigParseAndLoadFromMemoryInternal (config, filename, FcStrBufDoneStatic (&sbuf), complain, load);
-    complain = FcFalse; /* no need to reclaim here */
+    complain_again = FcFalse; /* no need to reclaim here */
 bail1:
     FcStrBufDestroy (&sbuf);
 bail0:
@@ -3497,15 +3688,19 @@ bail0:
        FcStrFree (filename);
     if (realfilename)
        FcStrFree (realfilename);
-    if (!ret && complain)
+    if (!complain)
+       return FcTrue;
+    if (!ret && complain_again)
     {
        if (name)
-           FcConfigMessage (0, FcSevereError, "Cannot %s config file \"%s\"", load ? "load" : "scan", name);
+           FcConfigMessage (0, FcSevereError, "Cannot %s config file \"%s\": %s", load ? "load" : "scan", name, FcStrBufDoneStatic (&reason));
        else
-           FcConfigMessage (0, FcSevereError, "Cannot %s default config file", load ? "load" : "scan");
+           FcConfigMessage (0, FcSevereError, "Cannot %s default config file: %s", load ? "load" : "scan", FcStrBufDoneStatic (&reason));
+       FcStrBufDestroy (&reason);
        return FcFalse;
     }
-    return FcTrue;
+    FcStrBufDestroy (&reason);
+    return ret;
 }
 
 FcBool
@@ -3532,6 +3727,26 @@ FcConfigParseAndLoadFromMemory (FcConfig       *config,
     return FcConfigParseAndLoadFromMemoryInternal (config, (const FcChar8 *)"memory", buffer, complain, FcTrue);
 }
 
+#ifdef _WIN32
+static void
+_ensureWin32GettersReady()
+{
+    if (!pGetSystemWindowsDirectory)
+    {
+        HMODULE hk32 = GetModuleHandleA("kernel32.dll");
+        if (!(pGetSystemWindowsDirectory = (pfnGetSystemWindowsDirectory)GetProcAddress(hk32, "GetSystemWindowsDirectoryA")))
+            pGetSystemWindowsDirectory = (pfnGetSystemWindowsDirectory)GetWindowsDirectory;
+    }
+    if (!pSHGetFolderPathA)
+    {
+        HMODULE hSh = LoadLibraryA("shfolder.dll");
+        /* the check is done later, because there is no provided fallback */
+        if (hSh)
+            pSHGetFolderPathA = (pfnSHGetFolderPathA)GetProcAddress(hSh, "SHGetFolderPathA");
+    }
+}
+#endif // _WIN32
+
 #define __fcxml__
 #include "fcaliastail.h"
 #undef __fcxml__
diff --git a/src/fontconfig.def.in b/src/fontconfig.def.in
new file mode 100644 (file)
index 0000000..9f102be
--- /dev/null
@@ -0,0 +1,234 @@
+EXPORTS
+       FcAtomicCreate
+       FcAtomicDeleteNew
+       FcAtomicDestroy
+       FcAtomicLock
+       FcAtomicNewFile
+       FcAtomicOrigFile
+       FcAtomicReplaceOrig
+       FcAtomicUnlock
+       FcBlanksAdd
+       FcBlanksCreate
+       FcBlanksDestroy
+       FcBlanksIsMember
+       FcCacheCopySet
+       FcCacheCreateTagFile
+       FcCacheDir
+       FcCacheNumFont
+       FcCacheNumSubdir
+       FcCacheSubdir
+       FcCharSetAddChar
+       FcCharSetCopy
+       FcCharSetCount
+       FcCharSetCoverage
+       FcCharSetCreate
+       FcCharSetDelChar
+       FcCharSetDestroy
+       FcCharSetEqual
+       FcCharSetFirstPage
+       FcCharSetHasChar
+       FcCharSetIntersect
+       FcCharSetIntersectCount
+       FcCharSetIsSubset
+       FcCharSetMerge
+       FcCharSetNew
+       FcCharSetNextPage
+       FcCharSetSubtract
+       FcCharSetSubtractCount
+       FcCharSetUnion
+       FcConfigAppFontAddDir
+       FcConfigAppFontAddFile
+       FcConfigAppFontClear
+       FcConfigBuildFonts
+       FcConfigCreate
+       FcConfigDestroy
+       FcConfigEnableHome
+       FcConfigFileInfoIterGet
+       FcConfigFileInfoIterInit
+       FcConfigFileInfoIterNext
+       FcConfigFilename
+       FcConfigGetBlanks
+       FcConfigGetCache
+       FcConfigGetCacheDirs
+       FcConfigGetConfigDirs
+       FcConfigGetConfigFiles
+       FcConfigGetCurrent
+       FcConfigGetFontDirs
+       FcConfigGetFonts
+       FcConfigGetRescanInterval
+       FcConfigGetRescanInverval
+       FcConfigGetSysRoot
+       FcConfigHome
+       FcConfigParseAndLoad
+       FcConfigParseAndLoadFromMemory
+       FcConfigReference
+       FcConfigSetCurrent
+       FcConfigSetRescanInterval
+       FcConfigSetRescanInverval
+       FcConfigSetSysRoot
+       FcConfigSubstitute
+       FcConfigSubstituteWithPat
+       FcConfigUptoDate
+       FcDefaultSubstitute
+       FcDirCacheClean
+       FcDirCacheCreateUUID
+       FcDirCacheDeleteUUID
+       FcDirCacheLoad
+       FcDirCacheLoadFile
+       FcDirCacheRead
+       FcDirCacheRescan
+       FcDirCacheUnlink
+       FcDirCacheUnload
+       FcDirCacheValid
+       FcDirSave
+       FcDirScan
+       FcFileIsDir
+       FcFileScan
+       FcFini
+       FcFontList
+       FcFontMatch
+       FcFontRenderPrepare
+       FcFontSetAdd
+       FcFontSetCreate
+       FcFontSetDestroy
+       FcFontSetList
+       FcFontSetMatch
+       FcFontSetPrint
+       FcFontSetSort
+       FcFontSetSortDestroy
+       FcFontSort
+       FcFreeTypeCharIndex
+       FcFreeTypeCharSet
+       FcFreeTypeCharSetAndSpacing
+       FcFreeTypeQuery
+       FcFreeTypeQueryAll
+       FcFreeTypeQueryFace
+       FcGetDefaultLangs
+       FcGetLangs
+       FcGetVersion
+       FcInit
+       FcInitBringUptoDate
+       FcInitLoadConfig
+       FcInitLoadConfigAndFonts
+       FcInitReinitialize
+       FcLangGetCharSet
+       FcLangNormalize
+       FcLangSetAdd
+       FcLangSetCompare
+       FcLangSetContains
+       FcLangSetCopy
+       FcLangSetCreate
+       FcLangSetDel
+       FcLangSetDestroy
+       FcLangSetEqual
+       FcLangSetGetLangs
+       FcLangSetHash
+       FcLangSetHasLang
+       FcLangSetSubtract
+       FcLangSetUnion
+       FcMatrixCopy
+       FcMatrixEqual
+       FcMatrixMultiply
+       FcMatrixRotate
+       FcMatrixScale
+       FcMatrixShear
+       FcNameConstant
+       FcNameGetConstant
+       FcNameGetObjectType
+       FcNameParse
+       FcNameRegisterConstants
+       FcNameRegisterObjectTypes
+       FcNameUnparse
+       FcNameUnregisterConstants
+       FcNameUnregisterObjectTypes
+       FcObjectSetAdd
+       FcObjectSetBuild
+       FcObjectSetCreate
+       FcObjectSetDestroy
+       FcObjectSetVaBuild
+       FcPatternAdd
+       FcPatternAddBool
+       FcPatternAddCharSet
+       FcPatternAddDouble
+       FcPatternAddFTFace
+       FcPatternAddInteger
+       FcPatternAddLangSet
+       FcPatternAddMatrix
+       FcPatternAddRange
+       FcPatternAddString
+       FcPatternAddWeak
+       FcPatternBuild
+       FcPatternCreate
+       FcPatternDel
+       FcPatternDestroy
+       FcPatternDuplicate
+       FcPatternEqual
+       FcPatternEqualSubset
+       FcPatternFilter
+       FcPatternFindIter
+       FcPatternFormat
+       FcPatternGet
+       FcPatternGetBool
+       FcPatternGetCharSet
+       FcPatternGetDouble
+       FcPatternGetFTFace
+       FcPatternGetInteger
+       FcPatternGetLangSet
+       FcPatternGetMatrix
+       FcPatternGetRange
+       FcPatternGetString
+       FcPatternGetWithBinding
+       FcPatternHash
+       FcPatternIterEqual
+       FcPatternIterGetObject
+       FcPatternIterGetValue
+       FcPatternIterIsValid
+       FcPatternIterNext
+       FcPatternIterStart
+       FcPatternIterValueCount
+       FcPatternObjectCount
+       FcPatternPrint
+       FcPatternReference
+       FcPatternRemove
+       FcPatternVaBuild
+       FcRangeCopy
+       FcRangeCreateDouble
+       FcRangeCreateInteger
+       FcRangeDestroy
+       FcRangeGetDouble
+       FcStrBasename
+       FcStrBuildFilename
+       FcStrCmp
+       FcStrCmpIgnoreCase
+       FcStrCopy
+       FcStrCopyFilename
+       FcStrDirname
+       FcStrDowncase
+       FcStrFree
+       FcStrListCreate
+       FcStrListDone
+       FcStrListFirst
+       FcStrListNext
+       FcStrPlus
+       FcStrSetAdd
+       FcStrSetAddFilename
+       FcStrSetCreate
+       FcStrSetDel
+       FcStrSetDestroy
+       FcStrSetEqual
+       FcStrSetMember
+       FcStrStr
+       FcStrStrIgnoreCase
+       FcUcs4ToUtf8
+       FcUtf16Len
+       FcUtf16ToUcs4
+       FcUtf8Len
+       FcUtf8ToUcs4
+       FcValueDestroy
+       FcValueEqual
+       FcValuePrint
+       FcValueSave
+       FcWeightFromOpenType
+       FcWeightFromOpenTypeDouble
+       FcWeightToOpenType
+       FcWeightToOpenTypeDouble
index 0e02bd2..7490a8c 100644 (file)
@@ -229,13 +229,10 @@ ftglue_face_goto_table( FT_Face    face,
 
     for ( nn = 0; nn < count; nn++ )
     {
-      FT_ULong  tag      = GET_ULong();
-      FT_ULong  checksum = GET_ULong();
-      FT_ULong  start    = GET_ULong();
-      FT_ULong  size     = GET_ULong();
-
-      FT_UNUSED(checksum);
-      FT_UNUSED(size);
+      FT_ULong  tag                = GET_ULong();
+      FT_ULong  checksum FC_UNUSED = GET_ULong();
+      FT_ULong  start              = GET_ULong();
+      FT_ULong  size     FC_UNUSED = GET_ULong();
 
       if ( tag == the_tag )
       {
diff --git a/src/makealias.py b/src/makealias.py
new file mode 100755 (executable)
index 0000000..0d5920c
--- /dev/null
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+import os
+import re
+import sys
+import argparse
+from collections import OrderedDict
+
+# cat fontconfig/fontconfig.h | grep '^Fc[^ ]* *(' | sed -e 's/ *(.*$//'
+
+def extract(fname):
+    with open(fname, 'r', encoding='utf-8') as f:
+        for l in f.readlines():
+            l = l.rstrip()
+            m = re.match(r'^(Fc[^ ]*)[\s\w]*\(.*', l)
+
+            if m and m.group(1) not in ['FcCacheDir', 'FcCacheSubdir']:
+                yield m.group(1)
+
+if __name__=='__main__':
+    parser = argparse.ArgumentParser()
+    parser.add_argument('srcdir')
+    parser.add_argument('head')
+    parser.add_argument('tail')
+    parser.add_argument('headers', nargs='+')
+
+    args = parser.parse_args()
+
+    definitions = {}
+
+    for fname in os.listdir(args.srcdir):
+        define_name, ext = os.path.splitext(fname)
+        if ext != '.c':
+            continue
+
+        define_name = '__%s__' % os.path.basename(define_name)
+
+        for definition in extract(os.path.join(args.srcdir, fname)):
+            definitions[definition] = define_name
+
+    declarations = OrderedDict()
+
+    for fname in args.headers:
+        for declaration in extract(fname):
+            try:
+                define_name = definitions[declaration]
+            except KeyError:
+                print ('error: could not locate %s in src/*.c' % declaration)
+                sys.exit(1)
+
+            declarations[declaration] = define_name
+
+    with open(args.head, 'w') as head:
+        with open(args.tail, 'w') as tail:
+            tail.write('#if HAVE_GNUC_ATTRIBUTE\n')
+            last = None
+            for name, define_name in declarations.items():
+                alias = 'IA__%s' % name
+                hattr = 'FC_ATTRIBUTE_VISIBILITY_HIDDEN'
+                head.write('extern __typeof (%s) %s %s;\n' % (name, alias, hattr))
+                head.write('#define %s %s\n' % (name, alias))
+                if define_name != last:
+                    if last is not None:
+                        tail.write('#endif /* %s */\n' % last)
+                    tail.write('#ifdef %s\n' % define_name)
+                    last = define_name
+                tail.write('# undef %s\n' % name)
+                cattr = '__attribute((alias("%s"))) FC_ATTRIBUTE_VISIBILITY_EXPORT' % alias
+                tail.write('extern __typeof (%s) %s %s;\n' % (name, name, cattr))
+            tail.write('#endif /* %s */\n' % last)
+            tail.write('#endif /* HAVE_GNUC_ATTRIBUTE */\n')
diff --git a/src/meson.build b/src/meson.build
new file mode 100644 (file)
index 0000000..34ccd8c
--- /dev/null
@@ -0,0 +1,93 @@
+fc_sources = [
+  'fcatomic.c',
+  'fccache.c',
+  'fccfg.c',
+  'fccharset.c',
+  'fccompat.c',
+  'fcdbg.c',
+  'fcdefault.c',
+  'fcdir.c',
+  'fcformat.c',
+  'fcfreetype.c',
+  'fcfs.c',
+  'fcptrlist.c',
+  'fchash.c',
+  'fcinit.c',
+  'fclang.c',
+  'fclist.c',
+  'fcmatch.c',
+  'fcmatrix.c',
+  'fcname.c',
+  'fcobjs.c',
+  'fcpat.c',
+  'fcrange.c',
+  'fcserialize.c',
+  'fcstat.c',
+  'fcstr.c',
+  'fcweight.c',
+  'fcxml.c',
+  'ftglue.c',
+]
+
+# FIXME: obviously fragile, cc.preprocess would be sweet
+cpp = cc.cmd_array()
+if cc.get_id() == 'gcc'
+  cpp += ['-E', '-P']
+elif cc.get_id() == 'msvc'
+  cpp += ['/EP']
+elif cc.get_id() == 'clang'
+  cpp += ['-E', '-P']
+else
+  error('FIXME: implement cc.preprocess')
+endif
+
+cpp += ['-I', join_paths(meson.current_source_dir(), '..')]
+
+fcobjshash_gperf = custom_target('fcobjshash.gperf',
+  input: 'fcobjshash.gperf.h',
+  output: 'fcobjshash.gperf',
+  command: [python3, files('cutout.py')[0], '@INPUT@', '@OUTPUT@', '@BUILD_ROOT@', cpp],
+  build_by_default: true,
+)
+
+fcobjshash_h = custom_target('fcobjshash.h',
+  input: fcobjshash_gperf,
+  output: 'fcobjshash.h',
+  command: [gperf, '--pic', '-m', '100', '@INPUT@', '--output-file', '@OUTPUT@']
+)
+
+# Define FcPublic appropriately for exports on windows
+fc_extra_c_args = []
+
+if cc.get_argument_syntax() == 'msvc'
+  fc_extra_c_args += '-DFcPublic=__declspec(dllexport)'
+endif
+
+libfontconfig = library('fontconfig',
+  fc_sources, alias_headers, ft_alias_headers, fclang_h, fccase_h, fcobjshash_h,
+  c_args: c_args + fc_extra_c_args,
+  include_directories: incbase,
+  dependencies: deps,
+  install: true,
+  soversion: soversion,
+  version: libversion,
+  darwin_versions: osxversion,
+)
+
+fontconfig_dep = declare_dependency(link_with: libfontconfig,
+  include_directories: incbase,
+  dependencies: deps,
+)
+
+pkgmod.generate(libfontconfig,
+  description: 'Font configuration and customization library',
+  filebase: 'fontconfig',
+  name: 'Fontconfig',
+  requires: ['freetype2 ' + freetype_req],
+  version: fc_version,
+  variables: [
+    'sysconfdir=@0@'.format(join_paths(prefix, get_option('sysconfdir'))),
+    'localstatedir=@0@'.format(join_paths(prefix, get_option('localstatedir'))),
+    'confdir=@0@'.format(fc_baseconfigdir),
+    'cachedir=@0@'.format(fc_cachedir),
+  ])
diff --git a/subprojects/expat.wrap b/subprojects/expat.wrap
new file mode 100644 (file)
index 0000000..0a605d0
--- /dev/null
@@ -0,0 +1,10 @@
+[wrap-file]
+directory = expat-2.2.6
+
+source_url = https://github.com/libexpat/libexpat/releases/download/R_2_2_6/expat-2.2.6.tar.bz2
+source_filename = expat-2.2.6.tar.bz2
+source_hash = 17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2
+
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/expat/2.2.6/1/get_zip
+patch_filename = expat-2.2.6-1-wrap.zip
+patch_hash = b8312fae757c7bff6f0cb430108104441a3da7a0a333809f5c80b354157eaa4d
diff --git a/subprojects/freetype2.wrap b/subprojects/freetype2.wrap
new file mode 100644 (file)
index 0000000..d86a75e
--- /dev/null
@@ -0,0 +1,5 @@
+[wrap-git]
+directory=freetype2
+url=https://gitlab.freedesktop.org/freetype/freetype.git
+push-url=git@gitlab.freedesktop.org:freetype/freetype.git
+revision=master
diff --git a/subprojects/gperf.wrap b/subprojects/gperf.wrap
new file mode 100644 (file)
index 0000000..d8014e0
--- /dev/null
@@ -0,0 +1,8 @@
+[wrap-git]
+directory=gperf
+url=https://gitlab.freedesktop.org/tpm/gperf.git
+push-url=https://gitlab.freedesktop.org/tpm/gperf.git
+revision=meson
+
+[provide]
+program_names=gperf
diff --git a/subprojects/libpng.wrap b/subprojects/libpng.wrap
new file mode 100644 (file)
index 0000000..b7af909
--- /dev/null
@@ -0,0 +1,10 @@
+[wrap-file]
+directory = libpng-1.6.37
+
+source_url = https://github.com/glennrp/libpng/archive/v1.6.37.tar.gz
+source_filename = libpng-1.6.37.tar.gz
+source_hash = ca74a0dace179a8422187671aee97dd3892b53e168627145271cad5b5ac81307
+
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/libpng/1.6.37/1/get_zip
+patch_filename = libpng-1.6.37-1-wrap.zip
+patch_hash = 9a863ae8a5657315a484c94c51f9f636b1fb9f49a15196cc896b72e5f21d78f0
diff --git a/subprojects/zlib.wrap b/subprojects/zlib.wrap
new file mode 100644 (file)
index 0000000..91c1d4d
--- /dev/null
@@ -0,0 +1,10 @@
+[wrap-file]
+directory = zlib-1.2.11
+
+source_url = http://zlib.net/fossils/zlib-1.2.11.tar.gz
+source_filename = zlib-1.2.11.tar.gz
+source_hash = c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
+
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/zlib/1.2.11/4/get_zip
+patch_filename = zlib-1.2.11-4-wrap.zip
+patch_hash = f733976fbfc59e0bcde01aa9469a24eeb16faf0a4280b17e9eaa60a301d75657
index 79bcede..03f7324 100644 (file)
@@ -1,3 +1,26 @@
+# 
+#  test/Makefile.am
+# 
+#  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.
+
 check_SCRIPTS=run-test.sh
 TEST_EXTENSIONS = \
        .sh \
@@ -6,18 +29,26 @@ TEST_EXTENSIONS = \
 AM_TESTS_ENVIRONMENT= \
        src=${srcdir}; export src; \
        EXEEXT=${EXEEXT}; export EXEEXT; \
+       LOG_COMPILER=${LOG_COMPILER} ; export LOG_COMPILER; \
        $(NULL)
 
 BUILT_SOURCES = $(builddir)/out.expected
 
 SH_LOG_COMPILER = sh
+if OS_WIN32
+LOG_COMPILER = ${srcdir}/wrapper-script.sh
+endif
 TESTS=run-test.sh
 
 TESTDATA =                     \
        4x6.pcf                 \
        8x16.pcf                \
        fonts.conf.in           \
+       test-45-generic.json    \
+       test-60-generic.json    \
        test-90-synthetic.json  \
+       test-issue-286.json     \
+       test-style-match.json   \
        $(NULL)
 
 if FREETYPE_PCF_LONG_FAMILY_NAMES
@@ -37,6 +68,11 @@ 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
+
+check_PROGRAMS += test-crbug1004254
+test_crbug1004254_LDADD = $(top_builddir)/src/libfontconfig.la
+# Disabling this for the same reason as above but trying to run in run-test.sh.
+#TESTS += test-crbug1004254
 endif
 check_PROGRAMS += test-bz89617
 test_bz89617_CFLAGS = \
@@ -68,17 +104,13 @@ if ENABLE_JSONC
 check_PROGRAMS += test-conf
 test_conf_CFLAGS = $(JSONC_CFLAGS)
 test_conf_LDADD = $(top_builddir)/src/libfontconfig.la $(JSONC_LIBS)
-TESTS += run-test-conf.sh
 endif
+TESTS += run-test-conf.sh
 
 check_PROGRAMS += test-bz106618
 test_bz106618_LDADD = $(top_builddir)/src/libfontconfig.la
 
-check_PROGRAMS += test-hash
-test_hash_CFLAGS = -I$(top_builddir) -I$(top_builddir)/src $(UUID_CFLAGS)
-test_hash_LDADD = $(UUID_LIBS)
-TESTS += test-hash
-
+if !OS_WIN32
 check_PROGRAMS += test-bz106632
 test_bz106632_CFLAGS =                                 \
        -I$(top_builddir)                               \
@@ -90,9 +122,70 @@ test_bz106632_CFLAGS =                                      \
        $(NULL)
 test_bz106632_LDADD = $(top_builddir)/src/libfontconfig.la
 TESTS += test-bz106632
+endif
 
-EXTRA_DIST=run-test.sh run-test-conf.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
+check_PROGRAMS += test-issue107
+test_issue107_LDADD =                                  \
+       $(top_builddir)/src/libfontconfig.la            \
+       $(NULL)
+TESTS += test-issue107
 
-CLEANFILES=out out1 out2 fonts.conf out.expected
+if !ENABLE_SHARED
+if !OS_WIN32
+check_PROGRAMS += test-issue110
+test_issue110_CFLAGS =                                 \
+       -I$(top_builddir)                               \
+       -I$(top_builddir)/src                           \
+       -I$(top_srcdir)                                 \
+       -I$(top_srcdir)/src                             \
+       -DHAVE_CONFIG_H                                 \
+       -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
+       $(NULL)
+test_issue110_LDADD =                                  \
+       $(top_builddir)/src/libfontconfig.la            \
+       $(NULL)
+TESTS += test-issue110
+
+check_PROGRAMS += test-d1f48f11
+test_d1f48f11_CFLAGS =                                 \
+       -I$(top_builddir)                               \
+       -I$(top_builddir)/src                           \
+       -I$(top_srcdir)                                 \
+       -I$(top_srcdir)/src                             \
+       -DHAVE_CONFIG_H                                 \
+       -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
+       $(NULL)
+test_d1f48f11_LDADD =                                  \
+       $(top_builddir)/src/libfontconfig.la            \
+       $(NULL)
+TESTS += test-d1f48f11
+endif
+endif
+
+check_PROGRAMS += test-bz1744377
+test_bz1744377_LDADD = $(top_builddir)/src/libfontconfig.la
+TESTS += test-bz1744377
+
+check_PROGRAMS += test-issue180
+test_issue180_LDADD = $(top_builddir)/src/libfontconfig.la
+TESTS += test-issue180
+
+check_PROGRAMS += test-family-matching
+test_family_matching_LDADD = $(top_builddir)/src/libfontconfig.la
+TESTS += test-family-matching
+
+EXTRA_DIST=run-test.sh run-test-conf.sh wrapper-script.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
+
+CLEANFILES =           \
+       fonts.conf      \
+       out             \
+       out1            \
+       out2            \
+       out.expected    \
+       run*.log        \
+       run*.trs        \
+       test*.log       \
+       test*.trs       \
+       $(NULL)
 
 -include $(top_srcdir)/git.mk
index 013abb4..4198e65 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 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@
 
+# 
+#  test/Makefile.am
+# 
+#  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 = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -89,17 +112,28 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 TESTS = run-test.sh test-bz89617$(EXEEXT) test-bz131804$(EXEEXT) \
-       test-bz96676$(EXEEXT) test-name-parse$(EXEEXT) $(am__append_4) \
-       test-hash$(EXEEXT) test-bz106632$(EXEEXT)
+       test-bz96676$(EXEEXT) test-name-parse$(EXEEXT) \
+       run-test-conf.sh $(am__EXEEXT_4) test-issue107$(EXEEXT) \
+       $(am__EXEEXT_5) test-bz1744377$(EXEEXT) test-issue180$(EXEEXT) \
+       test-family-matching$(EXEEXT)
 check_PROGRAMS = $(am__EXEEXT_1) test-bz89617$(EXEEXT) \
        test-bz131804$(EXEEXT) $(am__EXEEXT_2) test-bz96676$(EXEEXT) \
        test-name-parse$(EXEEXT) $(am__EXEEXT_3) \
-       test-bz106618$(EXEEXT) test-hash$(EXEEXT) \
-       test-bz106632$(EXEEXT)
-@HAVE_PTHREAD_TRUE@am__append_1 = test-pthread
+       test-bz106618$(EXEEXT) $(am__EXEEXT_4) test-issue107$(EXEEXT) \
+       $(am__EXEEXT_5) test-bz1744377$(EXEEXT) test-issue180$(EXEEXT) \
+       test-family-matching$(EXEEXT)
+# 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
+@HAVE_PTHREAD_TRUE@am__append_1 = test-pthread test-crbug1004254
 @OS_WIN32_FALSE@am__append_2 = test-migration
 @ENABLE_JSONC_TRUE@am__append_3 = test-conf
-@ENABLE_JSONC_TRUE@am__append_4 = run-test-conf.sh
+@OS_WIN32_FALSE@am__append_4 = test-bz106632
+@OS_WIN32_FALSE@am__append_5 = test-bz106632
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@am__append_6 = test-issue110 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  test-d1f48f11
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@am__append_7 = test-issue110 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  test-d1f48f11
 subdir = test
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
@@ -121,9 +155,14 @@ 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)
+@HAVE_PTHREAD_TRUE@am__EXEEXT_1 = test-pthread$(EXEEXT) \
+@HAVE_PTHREAD_TRUE@    test-crbug1004254$(EXEEXT)
 @OS_WIN32_FALSE@am__EXEEXT_2 = test-migration$(EXEEXT)
 @ENABLE_JSONC_TRUE@am__EXEEXT_3 = test-conf$(EXEEXT)
+@OS_WIN32_FALSE@am__EXEEXT_4 = test-bz106632$(EXEEXT)
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@am__EXEEXT_5 =  \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  test-issue110$(EXEEXT) \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  test-d1f48f11$(EXEEXT)
 PROGRAMS = $(noinst_PROGRAMS)
 test_bz106618_SOURCES = test-bz106618.c
 test_bz106618_OBJECTS = test-bz106618.$(OBJEXT)
@@ -134,13 +173,17 @@ am__v_lt_0 = --silent
 am__v_lt_1 = 
 test_bz106632_SOURCES = test-bz106632.c
 test_bz106632_OBJECTS = test_bz106632-test-bz106632.$(OBJEXT)
-test_bz106632_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
+@OS_WIN32_FALSE@test_bz106632_DEPENDENCIES =  \
+@OS_WIN32_FALSE@       $(top_builddir)/src/libfontconfig.la
 test_bz106632_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
        $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_bz106632_CFLAGS) \
        $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 test_bz131804_SOURCES = test-bz131804.c
 test_bz131804_OBJECTS = test-bz131804.$(OBJEXT)
 test_bz131804_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
+test_bz1744377_SOURCES = test-bz1744377.c
+test_bz1744377_OBJECTS = test-bz1744377.$(OBJEXT)
+test_bz1744377_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
 test_bz89617_SOURCES = test-bz89617.c
 test_bz89617_OBJECTS = test_bz89617-test-bz89617.$(OBJEXT)
 test_bz89617_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
@@ -159,12 +202,32 @@ am__DEPENDENCIES_1 =
 test_conf_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
        $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_conf_CFLAGS) \
        $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-test_hash_SOURCES = test-hash.c
-test_hash_OBJECTS = test_hash-test-hash.$(OBJEXT)
-test_hash_DEPENDENCIES = $(am__DEPENDENCIES_1)
-test_hash_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
-       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_hash_CFLAGS) \
+test_crbug1004254_SOURCES = test-crbug1004254.c
+test_crbug1004254_OBJECTS = test-crbug1004254.$(OBJEXT)
+@HAVE_PTHREAD_TRUE@test_crbug1004254_DEPENDENCIES =  \
+@HAVE_PTHREAD_TRUE@    $(top_builddir)/src/libfontconfig.la
+test_d1f48f11_SOURCES = test-d1f48f11.c
+test_d1f48f11_OBJECTS = test_d1f48f11-test-d1f48f11.$(OBJEXT)
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_d1f48f11_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
+test_d1f48f11_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_d1f48f11_CFLAGS) \
+       $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+test_family_matching_SOURCES = test-family-matching.c
+test_family_matching_OBJECTS = test-family-matching.$(OBJEXT)
+test_family_matching_DEPENDENCIES =  \
+       $(top_builddir)/src/libfontconfig.la
+test_issue107_SOURCES = test-issue107.c
+test_issue107_OBJECTS = test-issue107.$(OBJEXT)
+test_issue107_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
+test_issue110_SOURCES = test-issue110.c
+test_issue110_OBJECTS = test_issue110-test-issue110.$(OBJEXT)
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_issue110_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
+test_issue110_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_issue110_CFLAGS) \
        $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+test_issue180_SOURCES = test-issue180.c
+test_issue180_OBJECTS = test-issue180.$(OBJEXT)
+test_issue180_DEPENDENCIES = $(top_builddir)/src/libfontconfig.la
 test_migration_SOURCES = test-migration.c
 test_migration_OBJECTS = test-migration.$(OBJEXT)
 @OS_WIN32_FALSE@test_migration_DEPENDENCIES =  \
@@ -192,13 +255,17 @@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__maybe_remake_depfiles = depfiles
 am__depfiles_remade = ./$(DEPDIR)/test-bz106618.Po \
-       ./$(DEPDIR)/test-bz131804.Po ./$(DEPDIR)/test-bz96676.Po \
+       ./$(DEPDIR)/test-bz131804.Po ./$(DEPDIR)/test-bz1744377.Po \
+       ./$(DEPDIR)/test-bz96676.Po ./$(DEPDIR)/test-crbug1004254.Po \
+       ./$(DEPDIR)/test-family-matching.Po \
+       ./$(DEPDIR)/test-issue107.Po ./$(DEPDIR)/test-issue180.Po \
        ./$(DEPDIR)/test-migration.Po ./$(DEPDIR)/test-name-parse.Po \
        ./$(DEPDIR)/test-pthread.Po \
        ./$(DEPDIR)/test_bz106632-test-bz106632.Po \
        ./$(DEPDIR)/test_bz89617-test-bz89617.Po \
        ./$(DEPDIR)/test_conf-test-conf.Po \
-       ./$(DEPDIR)/test_hash-test-hash.Po
+       ./$(DEPDIR)/test_d1f48f11-test-d1f48f11.Po \
+       ./$(DEPDIR)/test_issue110-test-issue110.Po
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
        $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -219,10 +286,14 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = test-bz106618.c test-bz106632.c test-bz131804.c \
-       test-bz89617.c test-bz96676.c test-conf.c test-hash.c \
+       test-bz1744377.c test-bz89617.c test-bz96676.c test-conf.c \
+       test-crbug1004254.c test-d1f48f11.c test-family-matching.c \
+       test-issue107.c test-issue110.c test-issue180.c \
        test-migration.c test-name-parse.c test-pthread.c
 DIST_SOURCES = test-bz106618.c test-bz106632.c test-bz131804.c \
-       test-bz89617.c test-bz96676.c test-conf.c test-hash.c \
+       test-bz1744377.c test-bz89617.c test-bz96676.c test-conf.c \
+       test-crbug1004254.c test-d1f48f11.c test-family-matching.c \
+       test-issue107.c test-issue110.c test-issue180.c \
        test-migration.c test-name-parse.c test-pthread.c
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
@@ -246,8 +317,6 @@ am__define_uniq_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
@@ -430,6 +499,7 @@ am__set_TESTS_bases = \
   bases='$(TEST_LOGS)'; \
   bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
   bases=`echo $$bases`
+AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)'
 RECHECK_LOGS = $(TEST_LOGS)
 AM_RECURSIVE_TARGETS = check recheck
 TEST_SUITE_LOG = test-suite.log
@@ -470,6 +540,8 @@ CFLAGS = @CFLAGS@
 CONFIGDIR = @CONFIGDIR@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
@@ -481,6 +553,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
 EXPAT_CFLAGS = @EXPAT_CFLAGS@
@@ -491,6 +564,7 @@ FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
 FC_FONTDATE = @FC_FONTDATE@
 FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
@@ -561,9 +635,15 @@ PKG_EXPAT_CFLAGS = @PKG_EXPAT_CFLAGS@
 PKG_EXPAT_LIBS = @PKG_EXPAT_LIBS@
 POSUB = @POSUB@
 PREFERRED_HINTING = @PREFERRED_HINTING@
+PREFERRED_SUB_PIXEL_RENDERING = @PREFERRED_SUB_PIXEL_RENDERING@
 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@
@@ -572,8 +652,6 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TEMPLATEDIR = @TEMPLATEDIR@
 USE_NLS = @USE_NLS@
-UUID_CFLAGS = @UUID_CFLAGS@
-UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 WARN_CFLAGS = @WARN_CFLAGS@
 XGETTEXT = @XGETTEXT@
@@ -625,9 +703,14 @@ 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@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -644,19 +727,26 @@ TEST_EXTENSIONS = \
 AM_TESTS_ENVIRONMENT = \
        src=${srcdir}; export src; \
        EXEEXT=${EXEEXT}; export EXEEXT; \
+       LOG_COMPILER=${LOG_COMPILER} ; export LOG_COMPILER; \
        $(NULL)
 
 BUILT_SOURCES = $(builddir)/out.expected
 SH_LOG_COMPILER = sh
+@OS_WIN32_TRUE@LOG_COMPILER = ${srcdir}/wrapper-script.sh
 TESTDATA = \
        4x6.pcf                 \
        8x16.pcf                \
        fonts.conf.in           \
+       test-45-generic.json    \
+       test-60-generic.json    \
        test-90-synthetic.json  \
+       test-issue-286.json     \
+       test-style-match.json   \
        $(NULL)
 
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
 @HAVE_PTHREAD_TRUE@test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la
+@HAVE_PTHREAD_TRUE@test_crbug1004254_LDADD = $(top_builddir)/src/libfontconfig.la
 test_bz89617_CFLAGS = \
        -DSRCDIR="\"$(abs_srcdir)\""
 
@@ -669,20 +759,62 @@ test_name_parse_LDADD = $(top_builddir)/src/libfontconfig.la
 @ENABLE_JSONC_TRUE@test_conf_CFLAGS = $(JSONC_CFLAGS)
 @ENABLE_JSONC_TRUE@test_conf_LDADD = $(top_builddir)/src/libfontconfig.la $(JSONC_LIBS)
 test_bz106618_LDADD = $(top_builddir)/src/libfontconfig.la
-test_hash_CFLAGS = -I$(top_builddir) -I$(top_builddir)/src $(UUID_CFLAGS)
-test_hash_LDADD = $(UUID_LIBS)
-test_bz106632_CFLAGS = \
-       -I$(top_builddir)                               \
-       -I$(top_builddir)/src                           \
-       -I$(top_srcdir)                                 \
-       -I$(top_srcdir)/src                             \
-       -DFONTFILE='"$(abs_top_srcdir)/test/4x6.pcf"'   \
-       -DHAVE_CONFIG_H                                 \
+@OS_WIN32_FALSE@test_bz106632_CFLAGS = \
+@OS_WIN32_FALSE@       -I$(top_builddir)                               \
+@OS_WIN32_FALSE@       -I$(top_builddir)/src                           \
+@OS_WIN32_FALSE@       -I$(top_srcdir)                                 \
+@OS_WIN32_FALSE@       -I$(top_srcdir)/src                             \
+@OS_WIN32_FALSE@       -DFONTFILE='"$(abs_top_srcdir)/test/4x6.pcf"'   \
+@OS_WIN32_FALSE@       -DHAVE_CONFIG_H                                 \
+@OS_WIN32_FALSE@       $(NULL)
+
+@OS_WIN32_FALSE@test_bz106632_LDADD = $(top_builddir)/src/libfontconfig.la
+test_issue107_LDADD = \
+       $(top_builddir)/src/libfontconfig.la            \
+       $(NULL)
+
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_issue110_CFLAGS = \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_builddir)                               \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_builddir)/src                           \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_srcdir)                                 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_srcdir)/src                             \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -DHAVE_CONFIG_H                                 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(NULL)
+
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_issue110_LDADD = \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(top_builddir)/src/libfontconfig.la            \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(NULL)
+
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_d1f48f11_CFLAGS = \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_builddir)                               \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_builddir)/src                           \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_srcdir)                                 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -I$(top_srcdir)/src                             \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -DHAVE_CONFIG_H                                 \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  -DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'          \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(NULL)
+
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@test_d1f48f11_LDADD = \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(top_builddir)/src/libfontconfig.la            \
+@ENABLE_SHARED_FALSE@@OS_WIN32_FALSE@  $(NULL)
+
+test_bz1744377_LDADD = $(top_builddir)/src/libfontconfig.la
+test_issue180_LDADD = $(top_builddir)/src/libfontconfig.la
+test_family_matching_LDADD = $(top_builddir)/src/libfontconfig.la
+EXTRA_DIST = run-test.sh run-test-conf.sh wrapper-script.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
+CLEANFILES = \
+       fonts.conf      \
+       out             \
+       out1            \
+       out2            \
+       out.expected    \
+       run*.log        \
+       run*.trs        \
+       test*.log       \
+       test*.trs       \
        $(NULL)
 
-test_bz106632_LDADD = $(top_builddir)/src/libfontconfig.la
-EXTRA_DIST = run-test.sh run-test-conf.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
-CLEANFILES = out out1 out2 fonts.conf out.expected
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -748,6 +880,10 @@ test-bz131804$(EXEEXT): $(test_bz131804_OBJECTS) $(test_bz131804_DEPENDENCIES) $
        @rm -f test-bz131804$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_bz131804_OBJECTS) $(test_bz131804_LDADD) $(LIBS)
 
+test-bz1744377$(EXEEXT): $(test_bz1744377_OBJECTS) $(test_bz1744377_DEPENDENCIES) $(EXTRA_test_bz1744377_DEPENDENCIES) 
+       @rm -f test-bz1744377$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_bz1744377_OBJECTS) $(test_bz1744377_LDADD) $(LIBS)
+
 test-bz89617$(EXEEXT): $(test_bz89617_OBJECTS) $(test_bz89617_DEPENDENCIES) $(EXTRA_test_bz89617_DEPENDENCIES) 
        @rm -f test-bz89617$(EXEEXT)
        $(AM_V_CCLD)$(test_bz89617_LINK) $(test_bz89617_OBJECTS) $(test_bz89617_LDADD) $(LIBS)
@@ -760,9 +896,29 @@ test-conf$(EXEEXT): $(test_conf_OBJECTS) $(test_conf_DEPENDENCIES) $(EXTRA_test_
        @rm -f test-conf$(EXEEXT)
        $(AM_V_CCLD)$(test_conf_LINK) $(test_conf_OBJECTS) $(test_conf_LDADD) $(LIBS)
 
-test-hash$(EXEEXT): $(test_hash_OBJECTS) $(test_hash_DEPENDENCIES) $(EXTRA_test_hash_DEPENDENCIES) 
-       @rm -f test-hash$(EXEEXT)
-       $(AM_V_CCLD)$(test_hash_LINK) $(test_hash_OBJECTS) $(test_hash_LDADD) $(LIBS)
+test-crbug1004254$(EXEEXT): $(test_crbug1004254_OBJECTS) $(test_crbug1004254_DEPENDENCIES) $(EXTRA_test_crbug1004254_DEPENDENCIES) 
+       @rm -f test-crbug1004254$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_crbug1004254_OBJECTS) $(test_crbug1004254_LDADD) $(LIBS)
+
+test-d1f48f11$(EXEEXT): $(test_d1f48f11_OBJECTS) $(test_d1f48f11_DEPENDENCIES) $(EXTRA_test_d1f48f11_DEPENDENCIES) 
+       @rm -f test-d1f48f11$(EXEEXT)
+       $(AM_V_CCLD)$(test_d1f48f11_LINK) $(test_d1f48f11_OBJECTS) $(test_d1f48f11_LDADD) $(LIBS)
+
+test-family-matching$(EXEEXT): $(test_family_matching_OBJECTS) $(test_family_matching_DEPENDENCIES) $(EXTRA_test_family_matching_DEPENDENCIES) 
+       @rm -f test-family-matching$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_family_matching_OBJECTS) $(test_family_matching_LDADD) $(LIBS)
+
+test-issue107$(EXEEXT): $(test_issue107_OBJECTS) $(test_issue107_DEPENDENCIES) $(EXTRA_test_issue107_DEPENDENCIES) 
+       @rm -f test-issue107$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_issue107_OBJECTS) $(test_issue107_LDADD) $(LIBS)
+
+test-issue110$(EXEEXT): $(test_issue110_OBJECTS) $(test_issue110_DEPENDENCIES) $(EXTRA_test_issue110_DEPENDENCIES) 
+       @rm -f test-issue110$(EXEEXT)
+       $(AM_V_CCLD)$(test_issue110_LINK) $(test_issue110_OBJECTS) $(test_issue110_LDADD) $(LIBS)
+
+test-issue180$(EXEEXT): $(test_issue180_OBJECTS) $(test_issue180_DEPENDENCIES) $(EXTRA_test_issue180_DEPENDENCIES) 
+       @rm -f test-issue180$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_issue180_OBJECTS) $(test_issue180_LDADD) $(LIBS)
 
 test-migration$(EXEEXT): $(test_migration_OBJECTS) $(test_migration_DEPENDENCIES) $(EXTRA_test_migration_DEPENDENCIES) 
        @rm -f test-migration$(EXEEXT)
@@ -784,14 +940,20 @@ distclean-compile:
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bz106618.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bz131804.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bz1744377.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bz96676.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-crbug1004254.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-family-matching.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-issue107.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-issue180.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-migration.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-name-parse.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_bz106632-test-bz106632.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_bz89617-test-bz89617.Po@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_conf-test-conf.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_hash-test-hash.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_d1f48f11-test-d1f48f11.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_issue110-test-issue110.Po@am__quote@ # am--include-marker
 
 $(am__depfiles_remade):
        @$(MKDIR_P) $(@D)
@@ -862,19 +1024,33 @@ test_conf-test-conf.obj: test-conf.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_conf_CFLAGS) $(CFLAGS) -c -o test_conf-test-conf.obj `if test -f 'test-conf.c'; then $(CYGPATH_W) 'test-conf.c'; else $(CYGPATH_W) '$(srcdir)/test-conf.c'; fi`
 
-test_hash-test-hash.o: test-hash.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_hash_CFLAGS) $(CFLAGS) -MT test_hash-test-hash.o -MD -MP -MF $(DEPDIR)/test_hash-test-hash.Tpo -c -o test_hash-test-hash.o `test -f 'test-hash.c' || echo '$(srcdir)/'`test-hash.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_hash-test-hash.Tpo $(DEPDIR)/test_hash-test-hash.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-hash.c' object='test_hash-test-hash.o' libtool=no @AMDEPBACKSLASH@
+test_d1f48f11-test-d1f48f11.o: test-d1f48f11.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_d1f48f11_CFLAGS) $(CFLAGS) -MT test_d1f48f11-test-d1f48f11.o -MD -MP -MF $(DEPDIR)/test_d1f48f11-test-d1f48f11.Tpo -c -o test_d1f48f11-test-d1f48f11.o `test -f 'test-d1f48f11.c' || echo '$(srcdir)/'`test-d1f48f11.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_d1f48f11-test-d1f48f11.Tpo $(DEPDIR)/test_d1f48f11-test-d1f48f11.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-d1f48f11.c' object='test_d1f48f11-test-d1f48f11.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_d1f48f11_CFLAGS) $(CFLAGS) -c -o test_d1f48f11-test-d1f48f11.o `test -f 'test-d1f48f11.c' || echo '$(srcdir)/'`test-d1f48f11.c
+
+test_d1f48f11-test-d1f48f11.obj: test-d1f48f11.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_d1f48f11_CFLAGS) $(CFLAGS) -MT test_d1f48f11-test-d1f48f11.obj -MD -MP -MF $(DEPDIR)/test_d1f48f11-test-d1f48f11.Tpo -c -o test_d1f48f11-test-d1f48f11.obj `if test -f 'test-d1f48f11.c'; then $(CYGPATH_W) 'test-d1f48f11.c'; else $(CYGPATH_W) '$(srcdir)/test-d1f48f11.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_d1f48f11-test-d1f48f11.Tpo $(DEPDIR)/test_d1f48f11-test-d1f48f11.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-d1f48f11.c' object='test_d1f48f11-test-d1f48f11.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_hash_CFLAGS) $(CFLAGS) -c -o test_hash-test-hash.o `test -f 'test-hash.c' || echo '$(srcdir)/'`test-hash.c
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_d1f48f11_CFLAGS) $(CFLAGS) -c -o test_d1f48f11-test-d1f48f11.obj `if test -f 'test-d1f48f11.c'; then $(CYGPATH_W) 'test-d1f48f11.c'; else $(CYGPATH_W) '$(srcdir)/test-d1f48f11.c'; fi`
 
-test_hash-test-hash.obj: test-hash.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_hash_CFLAGS) $(CFLAGS) -MT test_hash-test-hash.obj -MD -MP -MF $(DEPDIR)/test_hash-test-hash.Tpo -c -o test_hash-test-hash.obj `if test -f 'test-hash.c'; then $(CYGPATH_W) 'test-hash.c'; else $(CYGPATH_W) '$(srcdir)/test-hash.c'; fi`
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_hash-test-hash.Tpo $(DEPDIR)/test_hash-test-hash.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-hash.c' object='test_hash-test-hash.obj' libtool=no @AMDEPBACKSLASH@
+test_issue110-test-issue110.o: test-issue110.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_issue110_CFLAGS) $(CFLAGS) -MT test_issue110-test-issue110.o -MD -MP -MF $(DEPDIR)/test_issue110-test-issue110.Tpo -c -o test_issue110-test-issue110.o `test -f 'test-issue110.c' || echo '$(srcdir)/'`test-issue110.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_issue110-test-issue110.Tpo $(DEPDIR)/test_issue110-test-issue110.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-issue110.c' object='test_issue110-test-issue110.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_hash_CFLAGS) $(CFLAGS) -c -o test_hash-test-hash.obj `if test -f 'test-hash.c'; then $(CYGPATH_W) 'test-hash.c'; else $(CYGPATH_W) '$(srcdir)/test-hash.c'; fi`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_issue110_CFLAGS) $(CFLAGS) -c -o test_issue110-test-issue110.o `test -f 'test-issue110.c' || echo '$(srcdir)/'`test-issue110.c
+
+test_issue110-test-issue110.obj: test-issue110.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_issue110_CFLAGS) $(CFLAGS) -MT test_issue110-test-issue110.obj -MD -MP -MF $(DEPDIR)/test_issue110-test-issue110.Tpo -c -o test_issue110-test-issue110.obj `if test -f 'test-issue110.c'; then $(CYGPATH_W) 'test-issue110.c'; else $(CYGPATH_W) '$(srcdir)/test-issue110.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/test_issue110-test-issue110.Tpo $(DEPDIR)/test_issue110-test-issue110.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='test-issue110.c' object='test_issue110-test-issue110.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_issue110_CFLAGS) $(CFLAGS) -c -o test_issue110-test-issue110.obj `if test -f 'test-issue110.c'; then $(CYGPATH_W) 'test-issue110.c'; else $(CYGPATH_W) '$(srcdir)/test-issue110.c'; fi`
 
 mostlyclean-libtool:
        -rm -f *.lo
@@ -1041,7 +1217,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
          test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG);               \
        fi;                                                             \
        echo "$${col}$$br$${std}";                                      \
-       echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}";   \
+       echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; \
        echo "$${col}$$br$${std}";                                      \
        create_testsuite_report --maybe-color;                          \
        echo "$$col$$br$$std";                                          \
@@ -1103,16 +1279,51 @@ test-name-parse.log: test-name-parse$(EXEEXT)
        --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-hash.log: test-hash$(EXEEXT)
-       @p='test-hash$(EXEEXT)'; \
-       b='test-hash'; \
+test-bz106632.log: test-bz106632$(EXEEXT)
+       @p='test-bz106632$(EXEEXT)'; \
+       b='test-bz106632'; \
        $(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-bz106632.log: test-bz106632$(EXEEXT)
-       @p='test-bz106632$(EXEEXT)'; \
-       b='test-bz106632'; \
+test-issue107.log: test-issue107$(EXEEXT)
+       @p='test-issue107$(EXEEXT)'; \
+       b='test-issue107'; \
+       $(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-issue110.log: test-issue110$(EXEEXT)
+       @p='test-issue110$(EXEEXT)'; \
+       b='test-issue110'; \
+       $(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-d1f48f11.log: test-d1f48f11$(EXEEXT)
+       @p='test-d1f48f11$(EXEEXT)'; \
+       b='test-d1f48f11'; \
+       $(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-bz1744377.log: test-bz1744377$(EXEEXT)
+       @p='test-bz1744377$(EXEEXT)'; \
+       b='test-bz1744377'; \
+       $(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-issue180.log: test-issue180$(EXEEXT)
+       @p='test-issue180$(EXEEXT)'; \
+       b='test-issue180'; \
+       $(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-family-matching.log: test-family-matching$(EXEEXT)
+       @p='test-family-matching$(EXEEXT)'; \
+       b='test-family-matching'; \
        $(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) \
@@ -1131,7 +1342,6 @@ test-bz106632.log: test-bz106632$(EXEEXT)
 @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: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) distdir-am
 
@@ -1174,7 +1384,8 @@ all-am: Makefile $(PROGRAMS)
 installdirs:
 install: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
+install-exec: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
 
@@ -1216,14 +1427,20 @@ clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
 distclean: distclean-am
                -rm -f ./$(DEPDIR)/test-bz106618.Po
        -rm -f ./$(DEPDIR)/test-bz131804.Po
+       -rm -f ./$(DEPDIR)/test-bz1744377.Po
        -rm -f ./$(DEPDIR)/test-bz96676.Po
+       -rm -f ./$(DEPDIR)/test-crbug1004254.Po
+       -rm -f ./$(DEPDIR)/test-family-matching.Po
+       -rm -f ./$(DEPDIR)/test-issue107.Po
+       -rm -f ./$(DEPDIR)/test-issue180.Po
        -rm -f ./$(DEPDIR)/test-migration.Po
        -rm -f ./$(DEPDIR)/test-name-parse.Po
        -rm -f ./$(DEPDIR)/test-pthread.Po
        -rm -f ./$(DEPDIR)/test_bz106632-test-bz106632.Po
        -rm -f ./$(DEPDIR)/test_bz89617-test-bz89617.Po
        -rm -f ./$(DEPDIR)/test_conf-test-conf.Po
-       -rm -f ./$(DEPDIR)/test_hash-test-hash.Po
+       -rm -f ./$(DEPDIR)/test_d1f48f11-test-d1f48f11.Po
+       -rm -f ./$(DEPDIR)/test_issue110-test-issue110.Po
        -rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
        distclean-tags
@@ -1271,14 +1488,20 @@ installcheck-am:
 maintainer-clean: maintainer-clean-am
                -rm -f ./$(DEPDIR)/test-bz106618.Po
        -rm -f ./$(DEPDIR)/test-bz131804.Po
+       -rm -f ./$(DEPDIR)/test-bz1744377.Po
        -rm -f ./$(DEPDIR)/test-bz96676.Po
+       -rm -f ./$(DEPDIR)/test-crbug1004254.Po
+       -rm -f ./$(DEPDIR)/test-family-matching.Po
+       -rm -f ./$(DEPDIR)/test-issue107.Po
+       -rm -f ./$(DEPDIR)/test-issue180.Po
        -rm -f ./$(DEPDIR)/test-migration.Po
        -rm -f ./$(DEPDIR)/test-name-parse.Po
        -rm -f ./$(DEPDIR)/test-pthread.Po
        -rm -f ./$(DEPDIR)/test_bz106632-test-bz106632.Po
        -rm -f ./$(DEPDIR)/test_bz89617-test-bz89617.Po
        -rm -f ./$(DEPDIR)/test_conf-test-conf.Po
-       -rm -f ./$(DEPDIR)/test_hash-test-hash.Po
+       -rm -f ./$(DEPDIR)/test_d1f48f11-test-d1f48f11.Po
+       -rm -f ./$(DEPDIR)/test_issue110-test-issue110.Po
        -rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -1297,7 +1520,8 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: all check check-am install install-am install-strip
+.MAKE: all check check-am install install-am install-exec \
+       install-strip
 
 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-TESTS \
        check-am clean clean-checkPROGRAMS clean-generic clean-libtool \
index 95def72..12a0b76 100644 (file)
@@ -1,4 +1,5 @@
 <fontconfig>
+@REMAPDIR@
 <dir>@FONTDIR@</dir>
 <cachedir>@CACHEDIR@</cachedir>
 </fontconfig>
diff --git a/test/meson.build b/test/meson.build
new file mode 100644 (file)
index 0000000..59de427
--- /dev/null
@@ -0,0 +1,47 @@
+tests = [
+  ['test-bz89617.c', {'c_args': ['-DSRCDIR="@0@"'.format(meson.current_source_dir())]}],
+  ['test-bz131804.c'],
+  ['test-bz96676.c'],
+  ['test-name-parse.c'],
+  ['test-bz106618.c'],
+  ['test-bz1744377.c'],
+  ['test-issue180.c'],
+  ['test-family-matching.c'],
+]
+
+if host_machine.system() != 'windows'
+  tests += [
+    # FIXME: ['test-migration.c'],
+    ['test-bz106632.c', {'c_args': ['-DFONTFILE="@0@"'.format(join_paths(meson.current_source_dir(), '4x6.pcf'))]}],
+    ['test-issue107.c'], # FIXME: fails on mingw
+    # FIXME: this needs NotoSans-hinted.zip font downloaded and unpacked into test build directory! see run-test.sh
+    ['test-crbug1004254.c', {'dependencies': dependency('threads')}], # for pthread
+  ]
+
+  if get_option('default_library') == 'static'
+    tests += [
+      ['test-issue110.c'],
+      ['test-d1f48f11.c'],
+    ]
+  endif
+endif
+
+foreach test_data : tests
+  fname = test_data[0]
+  opts = test_data.length() > 1 ? test_data[1] : {}
+  extra_c_args = opts.get('c_args', [])
+  extra_deps = opts.get('dependencies', [])
+
+  test_name = fname.split('.')[0].underscorify()
+  exe = executable(test_name, fname,
+    c_args: c_args + extra_c_args,
+    include_directories: incbase,
+    link_with: [libfontconfig],
+    dependencies: extra_deps,
+  )
+
+  test(test_name, exe, timeout: 600)
+endforeach
+
+# FIXME: run-test.sh stuff
+# FIXME: jsonc test-conf
index 4bcc29c..bbb56f4 100644 (file)
@@ -21,7 +21,7 @@
 # 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.
-set -eu
+set -e
 
 case "$OSTYPE" in
     msys ) MyPWD=`pwd -W` ;;  # On Msys/MinGW, returns a MS Windows style path.
@@ -33,4 +33,25 @@ BUILDTESTDIR=${builddir-"$MyPWD"}
 
 RUNNER=../test/test-conf$EXEEXT
 
-$RUNNER $TESTDIR/../conf.d/90-synthetic.conf $TESTDIR/test-90-synthetic.json
+if [ ! -f ${RUNNER} ]; then
+    echo "${RUNNER} not found!\n"
+    echo "Building this test requires libjson-c development files to be available."
+    exit 77 # SKIP
+fi
+
+for i in \
+       45-generic.conf \
+       60-generic.conf \
+       90-synthetic.conf \
+    ; do
+    test_json=$(echo test-$i|sed s'/\.conf/.json/')
+    echo $RUNNER $TESTDIR/../conf.d/$i $TESTDIR/$test_json
+    $RUNNER $TESTDIR/../conf.d/$i $TESTDIR/$test_json
+done
+for i in \
+       test-issue-286.json \
+       test-style-match.json \
+    ; do
+    echo $RUNNER $TESTDIR/$i ...
+    $RUNNER $TESTDIR/../conf.d/10-autohint.conf $TESTDIR/$i
+done
index e76e39b..c3da72a 100644 (file)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 # fontconfig/test/run-test.sh
 #
 # Copyright © 2000 Keith Packard
 # 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.
+set -e
+
+: "${TMPDIR=/tmp}"
+
 case "$OSTYPE" in
-    msys ) MyPWD=`pwd -W` ;;  # On Msys/MinGW, returns a MS Windows style path.
-    *    ) MyPWD=`pwd`    ;;  # On any other platforms, returns a Unix style path.
+    msys ) MyPWD=$(pwd -W) ;;  # On Msys/MinGW, returns a MS Windows style path.
+    *    ) MyPWD=$(pwd)    ;;  # On any other platforms, returns a Unix style path.
 esac
 
 TESTDIR=${srcdir-"$MyPWD"}
 BUILDTESTDIR=${builddir-"$MyPWD"}
 
-FONTDIR="$MyPWD"/fonts
-CACHEDIR="$MyPWD"/cache.dir
+BASEDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+FONTDIR="$BASEDIR"/fonts
+CACHEDIR="$BASEDIR"/cache.dir
 EXPECTED=${EXPECTED-"out.expected"}
 
-ECHO=true
-
-FCLIST=../fc-list/fc-list$EXEEXT
-FCCACHE=../fc-cache/fc-cache$EXEEXT
+FCLIST="$LOG_COMPILER ../fc-list/fc-list$EXEEXT"
+FCCACHE="$LOG_COMPILER ../fc-cache/fc-cache$EXEEXT"
 
-which bwrap > /dev/null 2>&1
-if [ $? -eq 0 ]; then
-    BWRAP=`which bwrap`
+if [ -x "$(command -v bwrap)" ]; then
+    BWRAP="$(command -v bwrap)"
 fi
 
 FONT1=$TESTDIR/4x6.pcf
 FONT2=$TESTDIR/8x16.pcf
+TEST=""
+
+clean_exit() {
+    rc=$?
+    trap - INT TERM ABRT EXIT
+    if [ "x$TEST" != "x" ]; then
+        echo "Aborting from '$TEST' with the exit code $rc"
+    fi
+    exit $rc
+}
+trap clean_exit INT TERM ABRT EXIT
 
 check () {
-  $FCLIST - family pixelsize | sort > out
-  echo "=" >> out
-  $FCLIST - family pixelsize | sort >> out
-  echo "=" >> out
-  $FCLIST - family pixelsize | sort >> out
+    {
+       $FCLIST - family pixelsize | sort;
+       echo "=";
+       $FCLIST - family pixelsize | sort;
+       echo "=";
+       $FCLIST - family pixelsize | sort;
+    } > out
   tr -d '\015' <out >out.tmp; mv out.tmp out
-  if cmp out $BUILDTESTDIR/$EXPECTED > /dev/null ; then : ; else
+  if cmp out "$BUILDTESTDIR"/"$EXPECTED" > /dev/null ; then : ; else
     echo "*** Test failed: $TEST"
     echo "*** output is in 'out', expected output in '$EXPECTED'"
     exit 1
@@ -61,197 +76,402 @@ check () {
 }
 
 prep() {
-  rm -rf $CACHEDIR
-  rm -rf $FONTDIR
-  mkdir $FONTDIR
+  rm -rf "$CACHEDIR"
+  rm -rf "$FONTDIR"
+  mkdir "$FONTDIR"
 }
 
 dotest () {
   TEST=$1
-  test x$VERBOSE = x || echo Running: $TEST
+  test x"$VERBOSE" = x || echo "Running: $TEST"
 }
 
 sed "s!@FONTDIR@!$FONTDIR!
-s!@CACHEDIR@!$CACHEDIR!" < $TESTDIR/fonts.conf.in > fonts.conf
+s!@REMAPDIR@!!
+s!@CACHEDIR@!$CACHEDIR!" < "$TESTDIR"/fonts.conf.in > fonts.conf
 
 FONTCONFIG_FILE="$MyPWD"/fonts.conf
 export FONTCONFIG_FILE
 
 dotest "Basic check"
 prep
-cp $FONT1 $FONT2 $FONTDIR
+cp "$FONT1" "$FONT2" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+fi
 check
 
 dotest "With a subdir"
 prep
-cp $FONT1 $FONT2 $FONTDIR
-$FCCACHE $FONTDIR
+cp "$FONT1" "$FONT2" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+fi
+$FCCACHE "$FONTDIR"
 check
 
 dotest "Subdir with a cache file"
 prep
-mkdir $FONTDIR/a
-cp $FONT1 $FONT2 $FONTDIR/a
-$FCCACHE $FONTDIR/a
+mkdir "$FONTDIR"/a
+cp "$FONT1" "$FONT2" "$FONTDIR"/a
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"/a
+fi
+$FCCACHE "$FONTDIR"/a
 check
 
 dotest "Complicated directory structure"
 prep
-mkdir $FONTDIR/a
-mkdir $FONTDIR/a/a
-mkdir $FONTDIR/b
-mkdir $FONTDIR/b/a
-cp $FONT1 $FONTDIR/a
-cp $FONT2 $FONTDIR/b/a
+mkdir "$FONTDIR"/a
+mkdir "$FONTDIR"/a/a
+mkdir "$FONTDIR"/b
+mkdir "$FONTDIR"/b/a
+cp "$FONT1" "$FONTDIR"/a
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"/a
+fi
+cp "$FONT2" "$FONTDIR"/b/a
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"/b/a
+fi
 check
 
 dotest "Subdir with an out-of-date cache file"
 prep
-mkdir $FONTDIR/a
-$FCCACHE $FONTDIR/a
+mkdir "$FONTDIR"/a
+$FCCACHE "$FONTDIR"/a
 sleep 1
-cp $FONT1 $FONT2 $FONTDIR/a
+cp "$FONT1" "$FONT2" "$FONTDIR"/a
 check
 
 dotest "Dir with an out-of-date cache file"
 prep
-cp $FONT1 $FONTDIR
-$FCCACHE $FONTDIR
+cp "$FONT1" "$FONTDIR"
+$FCCACHE "$FONTDIR"
 sleep 1
-mkdir $FONTDIR/a
-cp $FONT2 $FONTDIR/a
+mkdir "$FONTDIR"/a
+cp "$FONT2" "$FONTDIR"/a
 check
 
-dotest "Re-creating .uuid"
+dotest "Keep mtime of the font directory"
 prep
-cp $FONT1 $FONTDIR
-$FCCACHE $FONTDIR
-cat $FONTDIR/.uuid > out1
-$FCCACHE -f $FONTDIR
-cat $FONTDIR/.uuid > out2
+cp "$FONT1" "$FONTDIR"
+touch -d @0 "$FONTDIR"
+stat -c '%y' "$FONTDIR" > out1
+$FCCACHE "$FONTDIR"
+stat -c '%y' "$FONTDIR" > out2
 if cmp out1 out2 > /dev/null ; then : ; else
-  echo "*** Test failed: $TEST"
-  echo "*** .uuid was modified unexpectedly"
-  exit 1
+    echo "*** Test failed: $TEST"
+    echo "mtime was modified"
+    exit 1
+fi
+
+if [ x"$BWRAP" != "x" ] && [ "x$EXEEXT" = "x" ]; then
+dotest "Basic functionality with the bind-mounted cache dir"
+prep
+cp "$FONT1" "$FONT2" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
 fi
-$FCCACHE -r $FONTDIR
-cat $FONTDIR/.uuid > out2
-if cmp out1 out2 > /dev/null ; then
+$FCCACHE "$FONTDIR"
+sleep 1
+ls -l "$CACHEDIR" > out1
+TESTTMPDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+# Once font dir is remapped, we could use $FONTDIR as different one in theory.
+# but we don't use it here and to avoid duplicate entries, set the non-existing
+# directory here.
+sed "s!@FONTDIR@!$FONTDIR/a!
+s!@REMAPDIR@!<remap-dir as-path="'"'"$FONTDIR"'"'">$TESTTMPDIR/fonts</remap-dir>!
+s!@CACHEDIR@!$TESTTMPDIR/cache.dir!" < "$TESTDIR"/fonts.conf.in > bind-fonts.conf
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/fc-match/fc-match"$EXEEXT" -f "%{file}\n" ":foundry=Misc" > xxx
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/test/test-bz106618"$EXEEXT" | sort > flist1
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev find "$TESTTMPDIR"/fonts/ -type f -name '*.pcf' | sort > flist2
+ls -l "$CACHEDIR" > out2
+if cmp out1 out2 > /dev/null ; then : ; else
   echo "*** Test failed: $TEST"
-  echo "*** .uuid wasn't modified"
+  echo "cache was created/updated."
+  echo "Before:"
+  cat out1
+  echo "After:"
+  cat out2
   exit 1
 fi
-rm -f out1 out2
-
-dotest "Consistency between .uuid and cache name"
-prep
-cp $FONT1 $FONTDIR
-$FCCACHE $FONTDIR
-cat $FONTDIR/.uuid
-$FCCACHE -r $FONTDIR
-uuid=`cat $FONTDIR/.uuid`
-ls $CACHEDIR/$uuid*
-if [ $? != 0 ]; then
+if [ x"$(cat xxx)" != "x$TESTTMPDIR/fonts/4x6.pcf" ]; then
   echo "*** Test failed: $TEST"
-  echo "No cache for $uuid"
-  ls $CACHEDIR
+  echo "file property doesn't point to the new place: $TESTTMPDIR/fonts/4x6.pcf"
   exit 1
 fi
-n=`ls -1 $CACHEDIR/*cache-* | wc -l`
-if [ $n != 1 ]; then
+if cmp flist1 flist2 > /dev/null ; then : ; else
   echo "*** Test failed: $TEST"
-  echo "Unexpected cache was created"
-  ls $CACHEDIR
+  echo "file properties doesn't point to the new places"
+  echo "Expected result:"
+  cat flist2
+  echo "Actual result:"
+  cat flist1
   exit 1
 fi
+rm -rf "$TESTTMPDIR" out1 out2 xxx flist1 flist2 bind-fonts.conf
 
-dotest "Keep mtime of the font directory"
+dotest "Different directory content between host and sandbox"
 prep
-cp $FONT1 $FONTDIR
-touch -d @0 $FONTDIR
-stat $FONTDIR | grep Modify > out1
-$FCCACHE $FONTDIR
-stat $FONTDIR | grep Modify > out2
-if cmp out1 out2 > /dev/null ; then : ; else
-    echo "*** Test failed: $TEST"
-    echo "mtime was modified"
-    exit 1
+cp "$FONT1" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
 fi
-
-if [ x"$BWRAP" != "x" ]; then
-dotest "Basic functionality with the bind-mounted cache dir"
-prep
-cp $FONT1 $FONT2 $FONTDIR
-$FCCACHE $FONTDIR
+$FCCACHE "$FONTDIR"
 sleep 1
-ls -l $CACHEDIR > out1
-TESTTMPDIR=`mktemp -d /tmp/fontconfig.XXXXXXXX`
-sed "s!@FONTDIR@!$TESTTMPDIR/fonts!
-s!@CACHEDIR@!$TESTTMPDIR/cache.dir!" < $TESTDIR/fonts.conf.in > bind-fonts.conf
-$BWRAP --bind / / --bind $CACHEDIR $TESTTMPDIR/cache.dir --bind $FONTDIR $TESTTMPDIR/fonts --bind .. $TESTTMPDIR/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE $TESTTMPDIR/build/test/bind-fonts.conf $TESTTMPDIR/build/fc-match/fc-match$EXEEXT -f "%{file}\n" ":foundry=Misc" > xxx
-$BWRAP --bind / / --bind $CACHEDIR $TESTTMPDIR/cache.dir --bind $FONTDIR $TESTTMPDIR/fonts --bind .. $TESTTMPDIR/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE $TESTTMPDIR/build/test/bind-fonts.conf $TESTTMPDIR/build/test/test-bz106618$EXEEXT | sort > flist1
-$BWRAP --bind / / --bind $CACHEDIR $TESTTMPDIR/cache.dir --bind $FONTDIR $TESTTMPDIR/fonts --bind .. $TESTTMPDIR/build --dev-bind /dev /dev find $TESTTMPDIR/fonts/ -type f -name '*.pcf' | sort > flist2
-ls -l $CACHEDIR > out2
-if cmp out1 out2 > /dev/null ; then : ; else
+ls -1 --color=no "$CACHEDIR"/*cache*> out1
+stat -c '%n %s %y %z' "$(cat out1)" > stat1
+TESTTMPDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+TESTTMP2DIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+cp "$FONT2" "$TESTTMP2DIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$TESTTMP2DIR"
+fi
+sed "s!@FONTDIR@!$TESTTMPDIR/fonts</dir><dir salt="'"'"salt-to-make-different"'"'">$FONTDIR!
+s!@REMAPDIR@!<remap-dir as-path="'"'"$FONTDIR"'"'">$TESTTMPDIR/fonts</remap-dir>!
+s!@CACHEDIR@!$TESTTMPDIR/cache.dir!" < "$TESTDIR"/fonts.conf.in > bind-fonts.conf
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind "$TESTTMP2DIR" "$FONTDIR" --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/fc-match/fc-match"$EXEEXT" -f "%{file}\n" ":foundry=Misc" > xxx
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind "$TESTTMP2DIR" "$FONTDIR" --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/test/test-bz106618"$EXEEXT" | sort > flist1
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind "$TESTTMP2DIR" "$FONTDIR" --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev find "$TESTTMPDIR"/fonts/ -type f -name '*.pcf' | sort > flist2
+ls -1 --color=no "$CACHEDIR"/*cache* > out2
+stat -c '%n %s %y %z' "$(cat out1)" > stat2
+if cmp stat1 stat2 > /dev/null ; then : ; else
   echo "*** Test failed: $TEST"
-  echo "cache was updated."
+  echo "cache was created/updated."
+  cat stat1 stat2
   exit 1
 fi
-if [ x`cat xxx` != "x$TESTTMPDIR/fonts/4x6.pcf" ]; then
+if grep -v -- "$(cat out1)" out2 > /dev/null ; then : ; else
+  echo "*** Test failed: $TEST"
+  echo "cache wasn't created for dir inside sandbox."
+  cat out1 out2
+  exit 1
+fi
+if [ x"$(cat xxx)" != "x$TESTTMPDIR/fonts/4x6.pcf" ]; then
   echo "*** Test failed: $TEST"
   echo "file property doesn't point to the new place: $TESTTMPDIR/fonts/4x6.pcf"
   exit 1
 fi
-if cmp flist1 flist2 > /dev/null ; then : ; else
+if cmp flist1 flist2 > /dev/null ; then
   echo "*** Test failed: $TEST"
-  echo "file properties doesn't point to the new places"
+  echo "Missing fonts should be available on sandbox"
   echo "Expected result:"
   cat flist2
   echo "Actual result:"
   cat flist1
   exit 1
 fi
-rm -rf $TESTTMPDIR out1 out2 xxx flist1 flist2 bind-fonts.conf
+rm -rf "$TESTTMPDIR" "$TESTTMP2DIR" out1 out2 xxx flist1 flist2 stat1 stat2 bind-fonts.conf
+
+dotest "Check consistency of MD5 in cache name"
+prep
+mkdir -p "$FONTDIR"/sub
+cp "$FONT1" "$FONTDIR"/sub
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"/sub
+fi
+$FCCACHE "$FONTDIR"
+sleep 1
+(cd "$CACHEDIR"; ls -1 --color=no ./*cache*) > out1
+TESTTMPDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+mkdir -p "$TESTTMPDIR"/cache.dir
+# Once font dir is remapped, we could use $FONTDIR as different one in theory.
+# but we don't use it here and to avoid duplicate entries, set the non-existing
+# directory here.
+sed "s!@FONTDIR@!$FONTDIR/a!
+s!@REMAPDIR@!<remap-dir as-path="'"'"$FONTDIR"'"'">$TESTTMPDIR/fonts</remap-dir>!
+s!@CACHEDIR@!$TESTTMPDIR/cache.dir!" < "$TESTDIR"/fonts.conf.in > bind-fonts.conf
+$BWRAP --bind / / --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/fc-cache/fc-cache"$EXEEXT" "$TESTTMPDIR"/fonts
+(cd "$TESTTMPDIR"/cache.dir; ls -1 --color=no ./*cache*) > out2
+if cmp out1 out2 > /dev/null ; then : ; else
+    echo "*** Test failed: $TEST"
+    echo "cache was created unexpectedly."
+    echo "Before:"
+    cat out1
+    echo "After:"
+    cat out2
+    exit 1
+fi
+rm -rf "$TESTTMPDIR" out1 out2 bind-fonts.conf
+
+dotest "Fallback to uuid"
+prep
+cp "$FONT1" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+fi
+touch -d @"$(stat -c %Y "$FONTDIR")" "$FONTDIR"
+$FCCACHE "$FONTDIR"
+sleep 1
+_cache=$(ls -1 --color=no "$CACHEDIR"/*cache*)
+_mtime=$(stat -c %Y "$FONTDIR")
+_uuid=$(uuidgen)
+_newcache=$(echo "$_cache" | sed "s/\([0-9a-f]*\)\(\-.*\)/$_uuid\2/")
+mv "$_cache" "$_newcache"
+echo "$_uuid" > "$FONTDIR"/.uuid
+touch -d @"$_mtime" "$FONTDIR"
+(cd "$CACHEDIR"; ls -1 --color=no ./*cache*) > out1
+TESTTMPDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+mkdir -p "$TESTTMPDIR"/cache.dir
+sed "s!@FONTDIR@!$TESTTMPDIR/fonts!
+s!@REMAPDIR@!<remap-dir as-path="'"'"$FONTDIR"'"'">$TESTTMPDIR/fonts</remap-dir>!
+s!@CACHEDIR@!$TESTTMPDIR/cache.dir!" < "$TESTDIR"/fonts.conf.in > bind-fonts.conf
+$BWRAP --bind / / --bind "$CACHEDIR" "$TESTTMPDIR"/cache.dir --bind "$FONTDIR" "$TESTTMPDIR"/fonts --bind .. "$TESTTMPDIR"/build --dev-bind /dev /dev --setenv FONTCONFIG_FILE "$TESTTMPDIR"/build/test/bind-fonts.conf "$TESTTMPDIR"/build/fc-match/fc-match"$EXEEXT" -f ""
+(cd "$CACHEDIR"; ls -1 --color=no ./*cache*) > out2
+if cmp out1 out2 > /dev/null ; then : ; else
+    echo "*** Test failed: $TEST"
+    echo "cache was created unexpectedly."
+    echo "Before:"
+    cat out1
+    echo "After:"
+    cat out2
+    exit 1
 fi
+rm -rf "$TESTTMPDIR" out1 out2 bind-fonts.conf
+
+else
+    echo "No bubblewrap installed. skipping..."
+fi # if [ x"$BWRAP" != "x" -a "x$EXEEXT" = "x" ]
 
+if [ "x$EXEEXT" = "x" ]; then
 dotest "sysroot option"
 prep
-mkdir -p $MyPWD/sysroot/$FONTDIR
-mkdir -p $MyPWD/sysroot/$CACHEDIR
-cp $FONT1 $MyPWD/sysroot/$FONTDIR
-cp $MyPWD/fonts.conf $MyPWD/sysroot/$MyPWD/fonts.conf
-$FCCACHE -y $MyPWD/sysroot
-stat $MyPWD/sysroot/$FONTDIR/.uuid
-if test $? != 0; then
-  echo "*** Test failed: $TEST"
-  exit 1
+mkdir -p "$MyPWD"/sysroot/"$FONTDIR"
+mkdir -p "$MyPWD"/sysroot/"$CACHEDIR"
+mkdir -p "$MyPWD"/sysroot/"$MyPWD"
+cp "$FONT1" "$MyPWD"/sysroot/"$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$MyPWD"/sysroot/"$FONTDIR"
 fi
+cp "$MyPWD"/fonts.conf "$MyPWD"/sysroot/"$MyPWD"/fonts.conf
+$FCCACHE -y "$MyPWD"/sysroot
 
-dotest "creating uuid-based cache file on sysroot"
-uuid=`cat $MyPWD/sysroot/$FONTDIR/.uuid`
-ls $MyPWD/sysroot/$CACHEDIR/$uuid*
-if [ $? != 0 ]; then
+dotest "creating cache file on sysroot"
+md5=$(printf "%s" "$FONTDIR" | md5sum | sed 's/ .*$//')
+echo "checking for cache file $md5"
+if ! ls "$MyPWD/sysroot/$CACHEDIR/$md5"*; then
   echo "*** Test failed: $TEST"
-  echo "No cache for $uuid"
-  ls $MyPWD/sysroot/$CACHEDIR
+  echo "No cache for $FONTDIR ($md5)"
+  ls "$MyPWD"/sysroot/"$CACHEDIR"
   exit 1
 fi
 
-rm -rf $MyPWD/sysroot
+rm -rf "$MyPWD"/sysroot
 
-dotest "deleting .uuid file on empty dir"
+dotest "read newer caches when multiple places are allowed to store"
 prep
-cp $FONT1 $FONT2 $FONTDIR
-$FCCACHE $FONTDIR
+cp "$FONT1" "$FONT2" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+fi
+MYCACHEBASEDIR=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+MYCACHEDIR="$MYCACHEBASEDIR"/cache.dir
+MYOWNCACHEDIR="$MYCACHEBASEDIR"/owncache.dir
+MYCONFIG=$(mktemp "$TMPDIR"/fontconfig.XXXXXXXX)
+
+mkdir -p "$MYCACHEDIR"
+mkdir -p "$MYOWNCACHEDIR"
+
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!!
+s!@CACHEDIR@!$MYCACHEDIR!" < "$TESTDIR"/fonts.conf.in > my-fonts.conf
+
+FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCCACHE "$FONTDIR"
+
 sleep 1
-rm -f $FONTDIR/*pcf
-$FCCACHE $FONTDIR
-rmdir $FONTDIR > /dev/null 2>&1
-if [ $? != 0 ]; then
+cat<<EOF>"$MYCONFIG"
+<fontconfig>
+  <match target="scan">
+    <test name="file"><string>$FONTDIR/4x6.pcf</string></test>
+    <edit name="pixelsize"><int>8</int></edit>
+  </match>
+</fontconfig>
+EOF
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!<include ignore_missing=\"yes\">$MYCONFIG</include>!
+s!@CACHEDIR@!$MYOWNCACHEDIR!" < "$TESTDIR"/fonts.conf.in > my-fonts.conf
+
+if [ -n "${SOURCE_DATE_EPOCH:-}" ]; then
+  old_epoch=${SOURCE_DATE_EPOCH}
+  SOURCE_DATE_EPOCH=$(("$SOURCE_DATE_EPOCH" + 1))
+fi
+FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCCACHE -f "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ]; then
+  SOURCE_DATE_EPOCH=${old_epoch}
+fi
+
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!<include ignore_missing=\"yes\">$MYCONFIG</include>!
+s!@CACHEDIR@!$MYCACHEDIR</cachedir><cachedir>$MYOWNCACHEDIR!" < "$TESTDIR"/fonts.conf.in > my-fonts.conf
+
+{
+    FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCLIST - family pixelsize | sort;
+    echo "=";
+    FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCLIST - family pixelsize | sort;
+    echo "=";
+    FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCLIST - family pixelsize | sort;
+} > my-out
+tr -d '\015' <my-out >my-out.tmp; mv my-out.tmp my-out
+sed -e 's/pixelsize=6/pixelsize=8/g' "$BUILDTESTDIR"/"$EXPECTED" > my-out.expected
+
+if cmp my-out my-out.expected > /dev/null ; then : ; else
+    echo "*** Test failed: $TEST"
+    echo "*** output is in 'my-out', expected output in 'my-out.expected'"
+    echo "Actual Result"
+    cat my-out
+    echo "Expected Result"
+    cat my-out.expected
+    exit 1
+fi
+
+rm -rf "$MYCACHEBASEDIR" "$MYCONFIG" my-fonts.conf my-out my-out.expected
+
+fi # if [ "x$EXEEXT" = "x" ]
+
+if [ -x "$BUILDTESTDIR"/test-crbug1004254 ]; then
+    dotest "MT-safe global config"
+    prep
+    curl -s -o "$FONTDIR"/noto.zip https://noto-website-2.storage.googleapis.com/pkgs/NotoSans-hinted.zip
+    (cd "$FONTDIR"; unzip noto.zip)
+    if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+       touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+    fi
+    "$BUILDTESTDIR"/test-crbug1004254
+else
+    echo "No test-crbug1004254: skipped"
+fi
+
+if [ "x$EXEEXT" = "x" ]; then
+
+dotest "empty XDG_CACHE_HOME"
+prep
+export XDG_CACHE_HOME=""
+export old_HOME="$HOME"
+export temp_HOME=$(mktemp -d "$TMPDIR"/fontconfig.XXXXXXXX)
+export HOME="$temp_HOME"
+cp "$FONT1" "$FONT2" "$FONTDIR"
+if [ -n "${SOURCE_DATE_EPOCH:-}" ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+    touch -m -t "$(date -d @"${SOURCE_DATE_EPOCH}" +%y%m%d%H%M.%S)" "$FONTDIR"
+fi
+echo "<fontconfig><dir>$FONTDIR</dir><cachedir prefix=\"xdg\">fontconfig</cachedir></fontconfig>" > my-fonts.conf
+FONTCONFIG_FILE="$MyPWD"/my-fonts.conf $FCCACHE "$FONTDIR" || :
+if [ -d "$HOME"/.cache ] && [ -d "$HOME"/.cache/fontconfig ]; then : ; else
   echo "*** Test failed: $TEST"
-  echo "$FONTDIR isn't empty"
-  ls -al $FONTDIR
+  echo "No \$HOME/.cache/fontconfig directory"
+  ls -a "$HOME"
+  ls -a "$HOME"/.cache
   exit 1
 fi
 
-rm -rf $FONTDIR $CACHEFILE $CACHEDIR $FONTCONFIG_FILE out
+export HOME="$old_HOME"
+rm -rf "$temp_HOME" my-fonts.conf
+unset XDG_CACHE_HOME
+unset old_HOME
+unset temp_HOME
+
+fi # if [ "x$EXEEXT" = "x" ]
+
+rm -rf "$FONTDIR" "$CACHEFILE" "$CACHEDIR" "$BASEDIR" "$FONTCONFIG_FILE" out
+
+TEST=""
diff --git a/test/test-45-generic.json b/test/test-45-generic.json
new file mode 100644 (file)
index 0000000..fe2374a
--- /dev/null
@@ -0,0 +1,35 @@
+{
+    "fonts": [
+        {
+            "family": "Foo"
+        },
+        {
+            "family": "math"
+        },
+        {
+            "family": "Baz"
+        }
+    ],
+    "tests": [
+        {
+            "method": "match",
+            "query": {
+               "family": "Bar",
+               "lang": "und-zmth"
+            },
+            "result": {
+                "family": "math",
+                "lang": "und-zmth"
+            }
+        },
+        {
+            "method": "match",
+            "query": {
+                "lang": [ "en", "fr" ]
+            },
+            "result": {
+                // Exercise complex value promotion. No ASAN issues.
+            }
+        }
+    ]
+}
diff --git a/test/test-60-generic.json b/test/test-60-generic.json
new file mode 100644 (file)
index 0000000..3c2a114
--- /dev/null
@@ -0,0 +1,34 @@
+{
+    "fonts": [
+        {
+            "family": "Foo",
+            "color": true
+        },
+        {
+            "family": "Bar",
+            "color": false
+        },
+        {
+            "family": "Baz",
+            "color": "DontCare"
+        }
+    ],
+    "tests": [
+        {
+            "method": "list",
+            "query": {
+                "color": true
+            },
+            "result_fs": [
+                {
+                    "family": "Foo",
+                    "color": true
+                },
+                {
+                    "family": "Baz",
+                    "color": "DontCare"
+                }
+            ]
+        }
+    ]
+}
index daa0c1e..c610d73 100644 (file)
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
+#include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include <dirent.h>
+#include <errno.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
 #ifndef HAVE_STRUCT_DIRENT_D_TYPE
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <unistd.h>
 #endif
-#include "fcstr.c"
-#undef FcConfigBuildFonts
-#undef FcConfigCreate
-#undef FcConfigGetCurrent
-#undef FcConfigParseAndLoadFromMemory
-#undef FcConfigUptoDate
-#undef FcFontList
-#undef FcInitReinitialize
-#undef FcPatternCreate
-#undef FcPatternDestroy
 #include <fontconfig/fontconfig.h>
 
+#ifdef _WIN32
+#  define FC_DIR_SEPARATOR         '\\'
+#  define FC_DIR_SEPARATOR_S       "\\"
+#else
+#  define FC_DIR_SEPARATOR         '/'
+#  define FC_DIR_SEPARATOR_S       "/"
+#endif
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+#endif
+
 #ifdef HAVE_MKDTEMP
 #define fc_mkdtemp     mkdtemp
 #else
@@ -154,26 +162,14 @@ unlink_dirs (const char *dir)
     return ret;
 }
 
-FcChar8 *
-FcLangNormalize (const FcChar8 *lang)
-{
-    return NULL;
-}
-
-FcChar8 *
-FcConfigHome (void)
-{
-    return NULL;
-}
-
 int
 main (void)
 {
-    FcChar8 *fontdir = NULL, *cachedir = NULL, *fontname;
+    FcChar8 *fontdir = NULL, *cachedir = NULL;
     char *basedir, template[512] = "/tmp/bz106632-XXXXXX";
     char cmd[512];
     FcConfig *config;
-    const FcChar8 *tconf = "<fontconfig>\n"
+    const FcChar8 *tconf = (const FcChar8 *) "<fontconfig>\n"
        "  <dir>%s</dir>\n"
        "  <cachedir>%s</cachedir>\n"
        "</fontconfig>\n";
@@ -189,21 +185,21 @@ main (void)
        fprintf (stderr, "%s: %s\n", template, strerror (errno));
        goto bail;
     }
-    fontdir = FcStrBuildFilename (basedir, "fonts", NULL);
-    cachedir = FcStrBuildFilename (basedir, "cache", NULL);
+    fontdir = FcStrBuildFilename ((const FcChar8 *) basedir, (const FcChar8 *) "fonts", NULL);
+    cachedir = FcStrBuildFilename ((const FcChar8 *) basedir, (const FcChar8 *) "cache", NULL);
     fprintf (stderr, "D: Creating %s\n", fontdir);
-    mkdir_p (fontdir);
+    mkdir_p ((const char *) fontdir);
     fprintf (stderr, "D: Creating %s\n", cachedir);
-    mkdir_p (cachedir);
+    mkdir_p ((const char *) cachedir);
 
     fprintf (stderr, "D: Copying %s to %s\n", FONTFILE, fontdir);
-    snprintf (cmd, 512, "cp -a %s %s", FONTFILE, fontdir);
-    system (cmd);
+    snprintf (cmd, 512, "sleep 1; cp -a %s %s; sleep 1", FONTFILE, fontdir);
+    (void) system (cmd);
 
     fprintf (stderr, "D: Loading a config\n");
-    snprintf (conf, 1024, tconf, fontdir, cachedir);
+    snprintf (conf, 1024, (const char *) tconf, fontdir, cachedir);
     config = FcConfigCreate ();
-    if (!FcConfigParseAndLoadFromMemory (config, conf, FcTrue))
+    if (!FcConfigParseAndLoadFromMemory (config, (const FcChar8 *) conf, FcTrue))
     {
        printf ("E: Unable to load config\n");
        ret = 1;
@@ -225,24 +221,33 @@ main (void)
        ret = 1;
        goto bail;
     }
+    FcFontSetDestroy (fs);
     fprintf (stderr, "D: Removing %s\n", fontdir);
-    snprintf (cmd, 512, "rm -f %s%s*", fontdir, FC_DIR_SEPARATOR_S);
-    system (cmd);
+    snprintf (cmd, 512, "sleep 1; rm -f %s%s*; sleep 1", fontdir, FC_DIR_SEPARATOR_S);
+    (void) system (cmd);
     fprintf (stderr, "D: Reinitializing\n");
-    if (!FcConfigUptoDate (config) || !FcInitReinitialize ())
+    if (FcConfigUptoDate(config))
     {
-       fprintf (stderr, "E: Unable to reinitialize\n");
+       fprintf (stderr, "E: Config reports up-to-date\n");
        ret = 2;
        goto bail;
     }
+    if (!FcInitReinitialize ())
+    {
+       fprintf (stderr, "E: Unable to reinitialize\n");
+       ret = 3;
+       goto bail;
+    }
     if (FcConfigGetCurrent () == config)
     {
        fprintf (stderr, "E: config wasn't reloaded\n");
        ret = 3;
        goto bail;
     }
+    FcConfigDestroy (config);
+
     config = FcConfigCreate ();
-    if (!FcConfigParseAndLoadFromMemory (config, conf, FcTrue))
+    if (!FcConfigParseAndLoadFromMemory (config, (const FcChar8 *) conf, FcTrue))
     {
        printf ("E: Unable to load config again\n");
        ret = 4;
@@ -264,11 +269,18 @@ main (void)
        ret = 1;
        goto bail;
     }
+    FcFontSetDestroy (fs);
     fprintf (stderr, "D: Copying %s to %s\n", FONTFILE, fontdir);
-    snprintf (cmd, 512, "cp -a %s %s", FONTFILE, fontdir);
-    system (cmd);
+    snprintf (cmd, 512, "sleep 1; cp -a %s %s; sleep 1", FONTFILE, fontdir);
+    (void) system (cmd);
     fprintf (stderr, "D: Reinitializing\n");
-    if (!FcConfigUptoDate (config) || !FcInitReinitialize ())
+    if (FcConfigUptoDate(config))
+    {
+       fprintf (stderr, "E: Config up-to-date after addition\n");
+       ret = 3;
+       goto bail;
+    }
+    if (!FcInitReinitialize ())
     {
        fprintf (stderr, "E: Unable to reinitialize\n");
        ret = 2;
@@ -280,8 +292,10 @@ main (void)
        ret = 3;
        goto bail;
     }
+    FcConfigDestroy (config);
+
     config = FcConfigCreate ();
-    if (!FcConfigParseAndLoadFromMemory (config, conf, FcTrue))
+    if (!FcConfigParseAndLoadFromMemory (config, (const FcChar8 *) conf, FcTrue))
     {
        printf ("E: Unable to load config again\n");
        ret = 4;
@@ -303,10 +317,13 @@ main (void)
        ret = 1;
        goto bail;
     }
+    FcFontSetDestroy (fs);
+    FcConfigDestroy (config);
 
 bail:
     fprintf (stderr, "Cleaning up\n");
-    unlink_dirs (basedir);
+    if (basedir)
+       unlink_dirs (basedir);
     if (fontdir)
        FcStrFree (fontdir);
     if (cachedir)
diff --git a/test/test-bz1744377.c b/test/test-bz1744377.c
new file mode 100644 (file)
index 0000000..addd177
--- /dev/null
@@ -0,0 +1,51 @@
+/*
+ * fontconfig/test/test-bz1744377.c
+ *
+ * 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.
+ */
+#include <fontconfig/fontconfig.h>
+
+int
+main (void)
+{
+    const FcChar8 *doc = (const FcChar8 *) ""
+       "<fontconfig>\n"
+       "  <include ignore_missing=\"yes\">blahblahblah</include>\n"
+       "</fontconfig>\n"
+       "";
+    const FcChar8 *doc2 = (const FcChar8 *) ""
+       "<fontconfig>\n"
+       "  <include ignore_missing=\"no\">blahblahblah</include>\n"
+       "</fontconfig>\n"
+       "";
+    FcConfig *cfg = FcConfigCreate ();
+
+    if (!FcConfigParseAndLoadFromMemory (cfg, doc, FcTrue))
+       return 1;
+    if (FcConfigParseAndLoadFromMemory (cfg, doc2, FcTrue))
+       return 1;
+    if (!FcConfigParseAndLoadFromMemory (cfg, doc2, FcFalse))
+       return 1;
+
+    FcConfigDestroy (cfg);
+
+    return 0;
+}
index 6619ea7..1a52c6e 100644 (file)
@@ -29,6 +29,7 @@
 
 struct _FcConfig {
     FcStrSet   *configDirs;        /* directories to scan for fonts */
+    FcStrSet    *configMapDirs;
     FcStrSet   *fontDirs;
     FcStrSet   *cacheDirs;
     FcStrSet   *configFiles;       /* config files loaded */
@@ -50,6 +51,8 @@ build_pattern (json_object *obj)
     json_object_object_foreachC (obj, iter)
     {
        FcValue v;
+       FcBool destroy_v = FcFalse;
+       FcMatrix matrix;
 
        if (json_object_get_type (iter.val) == json_type_boolean)
        {
@@ -68,29 +71,239 @@ build_pattern (json_object *obj)
        }
        else if (json_object_get_type (iter.val) == json_type_string)
        {
-           v.type = FcTypeString;
-           v.u.s = json_object_get_string (iter.val);
+           const FcObjectType *o = FcNameGetObjectType (iter.key);
+           if (o && (o->type == FcTypeRange || o->type == FcTypeDouble || o->type == FcTypeInteger))
+           {
+               const FcConstant *c = FcNameGetConstant ((const FcChar8 *) json_object_get_string (iter.val));
+               if (!c) {
+                   fprintf (stderr, "E: value is not a known constant\n");
+                   fprintf (stderr, "   key: %s\n", iter.key);
+                   fprintf (stderr, "   val: %s\n", json_object_get_string (iter.val));
+                   continue;
+               }
+               if (strcmp (c->object, iter.key) != 0)
+               {
+                   fprintf (stderr, "E: value is a constant of different object\n");
+                   fprintf (stderr, "   key: %s\n", iter.key);
+                   fprintf (stderr, "   val: %s\n", json_object_get_string (iter.val));
+                   fprintf (stderr, "   key implied by value: %s\n", c->object);
+                   continue;
+               }
+               v.type = FcTypeInteger;
+               v.u.i = c->value;
+           }
+           else if (strcmp (json_object_get_string (iter.val), "DontCare") == 0)
+           {
+               v.type = FcTypeBool;
+               v.u.b = FcDontCare;
+           }
+           else
+           {
+               v.type = FcTypeString;
+               v.u.s = (const FcChar8 *) json_object_get_string (iter.val);
+           }
        }
        else if (json_object_get_type (iter.val) == json_type_null)
        {
            v.type = FcTypeVoid;
        }
+       else if (json_object_get_type (iter.val) == json_type_array)
+       {
+           json_object *o;
+           json_type type;
+           int i, n;
+
+           n = json_object_array_length (iter.val);
+           if (n == 0) {
+               fprintf (stderr, "E: value is an empty array\n");
+               continue;
+           }
+
+           o = json_object_array_get_idx (iter.val, 0);
+           type = json_object_get_type (o);
+           if (type == json_type_string) {
+               const FcObjectType *fc_o = FcNameGetObjectType (iter.key);
+               if (fc_o && fc_o->type == FcTypeCharSet) {
+                   FcCharSet* cs = FcCharSetCreate ();
+                   if (!cs) {
+                       fprintf (stderr, "E: failed to create charset\n");
+                       continue;
+                   }
+                   v.type = FcTypeCharSet;
+                   v.u.c = cs;
+                   destroy_v = FcTrue;
+                   for (i = 0; i < n; i++)
+                   {
+                       const FcChar8 *src;
+                       int len, nchar, wchar;
+                       FcBool valid;
+                       FcChar32 dst;
+
+                       o = json_object_array_get_idx (iter.val, i);
+                       type = json_object_get_type (o);
+                       if (type != json_type_string) {
+                           fprintf (stderr, "E: charset value not string\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                       src = (const FcChar8 *) json_object_get_string (o);
+                       len = json_object_get_string_len (o);
+                       valid = FcUtf8Len (src, len, &nchar, &wchar);
+                       if (valid == FcFalse) {
+                           fprintf (stderr, "E: charset entry not well formed\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                       if (nchar != 1) {
+                           fprintf (stderr, "E: charset entry not not one codepoint\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                       FcUtf8ToUcs4 (src, &dst, len);
+                       if (FcCharSetAddChar (cs, dst) == FcFalse) {
+                           fprintf (stderr, "E: failed to add to charset\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                   }
+               } else if (fc_o && fc_o->type == FcTypeString) {
+                   for (i = 0; i < n; i++)
+                   {
+                       o = json_object_array_get_idx (iter.val, i);
+                       type = json_object_get_type (o);
+                       if (type != json_type_string) {
+                           fprintf (stderr, "E: unable to convert to string\n");
+                           continue;
+                       }
+                       v.type = FcTypeString;
+                       v.u.s = (const FcChar8 *) json_object_get_string (o);
+                       FcPatternAdd (pat, iter.key, v, FcTrue);
+                       v.type = FcTypeVoid;
+                   }
+                   continue;
+               } else {
+                   FcLangSet* ls = FcLangSetCreate ();
+                   if (!ls) {
+                       fprintf (stderr, "E: failed to create langset\n");
+                       continue;
+                   }
+                   v.type = FcTypeLangSet;
+                   v.u.l = ls;
+                   destroy_v = FcTrue;
+                   for (i = 0; i < n; i++)
+                   {
+                       o = json_object_array_get_idx (iter.val, i);
+                       type = json_object_get_type (o);
+                       if (type != json_type_string) {
+                           fprintf (stderr, "E: langset value not string\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                       if (FcLangSetAdd (ls, (const FcChar8 *)json_object_get_string (o)) == FcFalse) {
+                           fprintf (stderr, "E: failed to add to langset\n");
+                           FcValueDestroy (v);
+                           continue;
+                       }
+                   }
+               }
+           } else if (type == json_type_double || type == json_type_int) {
+               const FcObjectType *fc_o = FcNameGetObjectType (iter.key);
+               double values[4];
+
+               if (fc_o && fc_o->type == FcTypeDouble) {
+                   for (i = 0; i < n; i++)
+                   {
+                       o = json_object_array_get_idx (iter.val, i);
+                       type = json_object_get_type (o);
+                       if (type == json_type_double) {
+                           v.type = FcTypeDouble;
+                           v.u.d = json_object_get_double (o);
+                       } else if (type == json_type_int) {
+                           v.type = FcTypeInteger;
+                           v.u.i = json_object_get_int (o);
+                       } else {
+                           fprintf (stderr, "E: unable to convert to double\n");
+                           continue;
+                       }
+                       FcPatternAdd (pat, iter.key, v, FcTrue);
+                       v.type = FcTypeVoid;
+                   }
+                   continue;
+               } else {
+                   if (n != 2 && n != 4) {
+                       fprintf (stderr, "E: array starting with number not range or matrix\n");
+                       continue;
+                   }
+                   for (i = 0; i < n; i++) {
+                       o = json_object_array_get_idx (iter.val, i);
+                       type = json_object_get_type (o);
+                       if (type != json_type_double && type != json_type_int) {
+                           fprintf (stderr, "E: numeric array entry not a number\n");
+                           continue;
+                       }
+                       values[i] = json_object_get_double (o);
+                   }
+                   if (n == 2) {
+                       v.type = FcTypeRange;
+                       v.u.r = FcRangeCreateDouble (values[0], values[1]);
+                       if (!v.u.r) {
+                           fprintf (stderr, "E: failed to create range\n");
+                           continue;
+                       }
+                       destroy_v = FcTrue;
+                   } else {
+                       v.type = FcTypeMatrix;
+                       v.u.m = &matrix;
+                       matrix.xx = values[0];
+                       matrix.xy = values[1];
+                       matrix.yx = values[2];
+                       matrix.yy = values[3];
+                   }
+               }
+           } else {
+               fprintf (stderr, "E: array format not recognized\n");
+               continue;
+           }
+       }
        else
        {
            fprintf (stderr, "W: unexpected object to build a pattern: (%s %s)", iter.key, json_type_to_name (json_object_get_type (iter.val)));
            continue;
        }
-       FcPatternAdd (pat, iter.key, v, FcTrue);
+       if (v.type != FcTypeVoid)
+           FcPatternAdd (pat, iter.key, v, FcTrue);
+       if (destroy_v)
+           FcValueDestroy (v);
     }
     return pat;
 }
 
+static FcFontSet *
+build_fs (json_object *obj)
+{
+    FcFontSet *fs = FcFontSetCreate ();
+    int i, n;
+
+    n = json_object_array_length (obj);
+    for (i = 0; i < n; i++)
+    {
+       json_object *o = json_object_array_get_idx (obj, i);
+       FcPattern *pat;
+
+       if (json_object_get_type (o) != json_type_object)
+           continue;
+       pat = build_pattern (o);
+       FcFontSetAdd (fs, pat);
+    }
+
+    return fs;
+}
+
 static FcBool
 build_fonts (FcConfig *config, json_object *root)
 {
     json_object *fonts;
     FcFontSet *fs;
-    int i, n;
 
     if (!json_object_object_get_ex (root, "fonts", &fonts) ||
        json_object_get_type (fonts) != json_type_array)
@@ -98,18 +311,7 @@ build_fonts (FcConfig *config, json_object *root)
        fprintf (stderr, "W: No fonts defined\n");
        return FcFalse;
     }
-    fs = FcFontSetCreate ();
-    n = json_object_array_length (fonts);
-    for (i = 0; i < n; i++)
-    {
-       json_object *obj = json_object_array_get_idx (fonts, i);
-       FcPattern *pat;
-
-       if (json_object_get_type (obj) != json_type_object)
-           continue;
-       pat = build_pattern (obj);
-       FcFontSetAdd (fs, pat);
-    }
+    fs = build_fs (fonts);
     /* FcConfigSetFonts (config, fs, FcSetSystem); */
     if (config->fonts[FcSetSystem])
        FcFontSetDestroy (config->fonts[FcSetSystem]);
@@ -122,7 +324,6 @@ static FcBool
 run_test (FcConfig *config, json_object *root)
 {
     json_object *tests;
-    FcFontSet *fs;
     int i, n, fail = 0;
 
     if (!json_object_object_get_ex (root, "tests", &tests) ||
@@ -131,14 +332,15 @@ run_test (FcConfig *config, json_object *root)
        fprintf (stderr, "W: No test cases defined\n");
        return FcFalse;
     }
-    fs = FcFontSetCreate ();
     n = json_object_array_length (tests);
     for (i = 0; i < n; i++)
     {
        json_object *obj = json_object_array_get_idx (tests, i);
        json_object_iter iter;
-       FcPattern *query, *result;
-       const char *method;
+       FcPattern *query = NULL;
+       FcPattern *result = NULL;
+       FcFontSet *result_fs = NULL;
+       const char *method = NULL;
 
        if (json_object_get_type (obj) != json_type_object)
            continue;
@@ -160,6 +362,8 @@ run_test (FcConfig *config, json_object *root)
                    fprintf (stderr, "W: invalid type of query: (%s)\n", json_type_to_name (json_object_get_type (iter.val)));
                    continue;
                }
+               if (query)
+                   FcPatternDestroy (query);
                query = build_pattern (iter.val);
            }
            else if (strcmp (iter.key, "result") == 0)
@@ -169,18 +373,43 @@ run_test (FcConfig *config, json_object *root)
                    fprintf (stderr, "W: invalid type of result: (%s)\n", json_type_to_name (json_object_get_type (iter.val)));
                    continue;
                }
+               if (result)
+                   FcPatternDestroy (result);
                result = build_pattern (iter.val);
            }
+           else if (strcmp (iter.key, "result_fs") == 0)
+           {
+               if (json_object_get_type (iter.val) != json_type_array)
+               {
+                   fprintf (stderr, "W: invalid type of result_fs: (%s)\n", json_type_to_name (json_object_get_type (iter.val)));
+                   continue;
+               }
+               if (result_fs)
+                   FcFontSetDestroy (result_fs);
+               result_fs = build_fs (iter.val);
+           }
            else
            {
                fprintf (stderr, "W: unknown object: %s\n", iter.key);
            }
        }
-       if (strcmp (method, "match") == 0)
+       if (method != NULL && strcmp (method, "match") == 0)
        {
            FcPattern *match;
            FcResult res;
 
+           if (!query)
+           {
+               fprintf (stderr, "E: no query defined.\n");
+               fail++;
+               goto bail;
+           }
+           if (!result)
+           {
+               fprintf (stderr, "E: no result defined.\n");
+               fail++;
+               goto bail;
+           }
            FcConfigSubstitute (config, query, FcMatchPattern);
            FcDefaultSubstitute (query);
            match = FcFontMatch (config, query, &res);
@@ -220,7 +449,8 @@ run_test (FcConfig *config, json_object *root)
                        }
                    }
                } while (FcPatternIterNext (result, &iter));
-           bail:;
+           bail:
+               FcPatternDestroy (match);
            }
            else
            {
@@ -228,10 +458,102 @@ run_test (FcConfig *config, json_object *root)
                fail++;
            }
        }
+       else if (method != NULL && strcmp (method, "list") == 0)
+       {
+           FcFontSet *fs;
+
+           if (!query)
+           {
+               fprintf (stderr, "E: no query defined.\n");
+               fail++;
+               goto bail2;
+           }
+           if (!result_fs)
+           {
+               fprintf (stderr, "E: no result_fs defined.\n");
+               fail++;
+               goto bail2;
+           }
+           fs = FcFontList (config, query, NULL);
+           if (!fs)
+           {
+               fprintf (stderr, "E: failed on FcFontList\n");
+               fail++;
+           }
+           else
+           {
+               int i;
+
+               if (fs->nfont != result_fs->nfont)
+               {
+                   printf ("E: The number of results is different:\n");
+                   printf ("   actual result: %d\n", fs->nfont);
+                   printf ("   expected result: %d\n", result_fs->nfont);
+                   fail++;
+                   goto bail2;
+               }
+               for (i = 0; i < fs->nfont; i++)
+               {
+                   FcPatternIter iter;
+                   int x, vc;
+
+                   FcPatternIterStart (result_fs->fonts[i], &iter);
+                   do
+                   {
+                       vc = FcPatternIterValueCount (result_fs->fonts[i], &iter);
+                       for (x = 0; x < vc; x++)
+                       {
+                           FcValue vr, vm;
+
+                           if (FcPatternIterGetValue (result_fs->fonts[i], &iter, x, &vr, NULL) != FcResultMatch)
+                           {
+                               fprintf (stderr, "E: unable to obtain a value from the expected result\n");
+                               fail++;
+                               goto bail2;
+                           }
+                           if (FcPatternGet (fs->fonts[i], FcPatternIterGetObject (result_fs->fonts[i], &iter), x, &vm) != FcResultMatch)
+                           {
+                               vm.type = FcTypeVoid;
+                           }
+                           if (!FcValueEqual (vm, vr))
+                           {
+                               printf ("E: failed to compare %s:\n", FcPatternIterGetObject (result_fs->fonts[i], &iter));
+                               printf ("   actual result:");
+                               FcValuePrint (vm);
+                               printf ("\n   expected result:");
+                               FcValuePrint (vr);
+                               printf ("\n");
+                               fail++;
+                               goto bail2;
+                           }
+                       }
+                   } while (FcPatternIterNext (result_fs->fonts[i], &iter));
+               }
+           bail2:
+               FcFontSetDestroy (fs);
+           }
+       }
        else
        {
            fprintf (stderr, "W: unknown testing method: %s\n", method);
        }
+       if (method)
+           method = NULL;
+       if (result)
+       {
+           FcPatternDestroy (result);
+           result = NULL;
+       }
+       if (result_fs)
+       {
+           FcFontSetDestroy (result_fs);
+           result_fs = NULL;
+       }
+       if (query)
+       {
+           FcPatternDestroy (query);
+           query = NULL;
+       }
     }
 
     return fail == 0;
@@ -288,7 +610,7 @@ load_config (FcConfig *config, char *file)
     fread (buf, (size_t)len, sizeof (char), fp);
     buf[len] = 0;
 
-    ret = FcConfigParseAndLoadFromMemory (config, buf, FcTrue);
+    ret = FcConfigParseAndLoadFromMemory (config, (const FcChar8 *) buf, FcTrue);
 bail1:
     fclose (fp);
     if (buf)
diff --git a/test/test-crbug1004254.c b/test/test-crbug1004254.c
new file mode 100644 (file)
index 0000000..16dd3eb
--- /dev/null
@@ -0,0 +1,116 @@
+/*
+ * 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>
+#include <pthread.h>
+#include <fontconfig/fontconfig.h>
+
+struct thr_arg_s
+{
+    int thr_num;
+};
+
+static void
+run_query (void)
+{
+    FcPattern *pat = FcPatternCreate (), *match;
+    FcResult result;
+
+    FcPatternAddString (pat, FC_FAMILY, (const FcChar8 *) "sans-serif");
+    FcPatternAddBool (pat, FC_SCALABLE, FcTrue);
+    FcConfigSubstitute (NULL, pat, FcMatchPattern);
+    FcDefaultSubstitute (pat);
+    match = FcFontMatch (NULL, pat, &result);
+    if (result != FcResultMatch || !match)
+    {
+       fprintf (stderr, "ERROR: No matches found\n");
+    }
+    if (match)
+       FcPatternDestroy (match);
+    FcPatternDestroy (pat);
+}
+
+static void
+run_reinit (void)
+{
+    if (!FcInitReinitialize ())
+    {
+       fprintf (stderr, "ERROR: Reinitializing failed\n");
+    }
+}
+
+#define NTEST 3000
+
+static void *
+run_test_in_thread (void *arg)
+{
+    struct thr_arg_s *thr_arg = (struct thr_arg_s *) arg;
+    int thread_num = thr_arg->thr_num;
+
+    fprintf (stderr, "Worker %d: started (round %d)\n", thread_num % 2, thread_num / 2);
+    if ((thread_num % 2) == 0)
+    {
+       run_query ();
+    }
+    else
+    {
+       run_reinit ();
+    }
+    fprintf (stderr, "Worker %d: done (round %d)\n", thread_num % 2, thread_num / 2);
+
+    return NULL;
+}
+
+int
+main (int argc, char **argv)
+{
+    pthread_t threads[NTEST];
+    struct thr_arg_s thr_arg[NTEST];
+    int i, j;
+
+    for (i = 0; i < NTEST; i++)
+    {
+       int result;
+
+       fprintf (stderr, "Thread %d (worker %d round %d): creating\n", i, i % 2, i / 2);
+       thr_arg[i].thr_num = i;
+       result = pthread_create (&threads[i], NULL, run_test_in_thread,
+                                (void *) &thr_arg[i]);
+       if (result != 0)
+       {
+           fprintf (stderr, "Cannot create thread %d\n", i);
+           break;
+       }
+    }
+    for (j = 0; j < i; j++)
+    {
+       pthread_join(threads[j], NULL);
+       fprintf (stderr, "Joined thread %d\n", j);
+    }
+    FcFini ();
+
+    return 0;
+}
diff --git a/test/test-d1f48f11.c b/test/test-d1f48f11.c
new file mode 100644 (file)
index 0000000..9237036
--- /dev/null
@@ -0,0 +1,305 @@
+/*
+ * fontconfig/test/test-d1f48f11.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2018 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.
+ */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dirent.h>
+#include <errno.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+#include <sys/types.h>
+#include <sys/stat.h>
+#endif
+#include <fontconfig/fontconfig.h>
+
+#ifdef _WIN32
+#  define FC_DIR_SEPARATOR         '\\'
+#  define FC_DIR_SEPARATOR_S       "\\"
+#else
+#  define FC_DIR_SEPARATOR         '/'
+#  define FC_DIR_SEPARATOR_S       "/"
+#endif
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
+extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
+extern FcChar8 *FcStrCanonFilename (const FcChar8 *);
+
+#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);
+       if (!n)
+       {
+           ret = FcFalse;
+           break;
+       }
+       strcpy (n, dir);
+       n[len] = FC_DIR_SEPARATOR;
+       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;
+}
+
+char template[512] = "/tmp/fc-d1f48f11-XXXXXX";
+char systempl[512] = "/tmp/fc-d1f48f11-XXXXXX";
+char *rootdir, *sysroot;
+
+int
+setup (char *dir)
+{
+    FcChar8 *confdir = NULL, *availdir = NULL, *real = NULL, *link = NULL;
+    FILE *fp;
+    int ret = 1;
+
+    confdir = FcStrBuildFilename (dir, "conf.d", NULL);
+    availdir = FcStrBuildFilename (dir, "conf.avail", NULL);
+    mkdir_p (confdir);
+    mkdir_p (availdir);
+    real = FcStrBuildFilename (availdir, "00-foo.conf", NULL);
+    link = FcStrBuildFilename (confdir, "00-foo.conf", NULL);
+    if (!real || !link)
+    {
+       fprintf (stderr, "E: unable to allocate memory\n");
+       goto bail;
+    }
+    if ((fp = fopen (real, "wb")) == NULL)
+    {
+       fprintf (stderr, "E: unable to open a file\n");
+       goto bail;
+    }
+    fprintf (fp, "%s", real);
+    fclose (fp);
+    if (symlink ("../conf.avail/00-foo.conf", link) != 0)
+    {
+       fprintf (stderr, "%s: %s\n", link, strerror (errno));
+       goto bail;
+    }
+    ret = 0;
+bail:
+    if (real)
+       free (real);
+    if (link)
+       free (link);
+    if (availdir)
+       free (availdir);
+    if (confdir)
+       free (confdir);
+
+    return ret;
+}
+
+void
+teardown (const char *dir)
+{
+    unlink_dirs (dir);
+}
+
+int
+main (void)
+{
+    FcConfig *cfg = NULL;
+    FcChar8 *dc = NULL, *da = NULL, *d = NULL;
+    FcChar8 *ds = NULL, *dsa = NULL, *dsac = NULL;
+    int ret = 1;
+
+    rootdir = fc_mkdtemp (template);
+    if (!rootdir)
+    {
+       fprintf (stderr, "%s: %s\n", template, strerror (errno));
+       return 1;
+    }
+    sysroot = fc_mkdtemp (systempl);
+    if (!sysroot)
+    {
+       fprintf (stderr, "%s: %s\n", systempl, strerror (errno));
+       return 1;
+    }
+    ds = FcStrBuildFilename (sysroot, rootdir, NULL);
+    
+    if (setup (rootdir) != 0)
+       goto bail;
+    if (setup (ds) != 0)
+       goto bail;
+
+    dc = FcStrBuildFilename (rootdir, "conf.d", "00-foo.conf", NULL);
+    da = FcStrBuildFilename (rootdir, "conf.avail", "00-foo.conf", NULL);
+    cfg = FcConfigCreate ();
+    d = FcConfigRealFilename (cfg, dc);
+    if (strcmp ((const char *)d, (const char *)da) != 0)
+    {
+       fprintf (stderr, "E: failed to compare for non-sysroot: %s, %s\n", d, da);
+       goto bail;
+    }
+
+    free (d);
+    FcConfigDestroy (cfg);
+    setenv ("FONTCONFIG_SYSROOT", sysroot, 1);
+    cfg = FcConfigCreate ();
+    dsa = FcStrBuildFilename (sysroot, da, NULL);
+    dsac = FcStrCanonFilename (dsa);
+    d = FcConfigRealFilename (cfg, dc);
+    if (strcmp ((const char *)d, (const char *)dsac) != 0)
+    {
+       fprintf (stderr, "E: failed to compare for sysroot: %s, %s\n", d, dsac);
+       goto bail;
+    }
+
+    ret = 0;
+bail:
+    if (cfg)
+       FcConfigDestroy (cfg);
+    if (ds)
+       free (ds);
+    if (dsa)
+       free (dsa);
+    if (dsac)
+       free (dsac);
+    if (dc)
+       free (dc);
+    if (da)
+       free (da);
+    if (d)
+       free (d);
+    teardown (sysroot);
+    teardown (rootdir);
+
+    return ret;
+}
diff --git a/test/test-family-matching.c b/test/test-family-matching.c
new file mode 100644 (file)
index 0000000..52cdbfc
--- /dev/null
@@ -0,0 +1,235 @@
+/*
+ * fontconfig/test/test-family-matching.c
+ *
+ * Copyright © 2020 Zoltan Vandrus
+ *
+ * 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 <fontconfig/fontconfig.h>
+
+#define FC_TEST_RESULT "testresult"
+
+typedef enum _TestMatchResult {
+    TestMatch,
+    TestNoMatch,
+    TestMatchError
+} TestMatchResult;
+
+typedef enum _TestResult {
+    TestPassed,
+    TestFailed,
+    TestError
+} TestResult;
+
+static TestMatchResult
+TestMatchPattern (const char *test, FcPattern *p)
+{
+    const FcChar8 *xml_pre = (const FcChar8 *) ""
+        "<fontconfig>\n"
+        "  <match>\n"
+        "";
+
+    const FcChar8 *xml_post = (const FcChar8 *) ""
+        "    <edit name=\""FC_TEST_RESULT"\">\n"
+        "      <bool>true</bool>\n"
+        "    </edit>\n"
+        "  </match>\n"
+        "</fontconfig>\n"
+        "";
+
+    FcPattern *pat = NULL;
+    FcChar8 *concat = NULL;
+    FcChar8 *xml = NULL;
+    FcConfig *cfg = NULL;
+    FcResult result;
+    FcBool dummy;
+    TestMatchResult ret = TestMatchError;
+
+    pat = FcPatternDuplicate (p);
+    if (!pat)
+    {
+        fprintf (stderr, "Unable to duplicate pattern.\n");
+        goto bail;
+    }
+
+    concat = FcStrPlus (xml_pre, (const FcChar8 *) test);
+    if (!concat)
+    {
+        fprintf (stderr, "Concatenation failed.\n");
+        goto bail;
+    }
+
+    xml = FcStrPlus (concat, xml_post);
+    if (!xml)
+    {
+        fprintf (stderr, "Concatenation failed.\n");
+        goto bail;
+    }
+
+    cfg = FcConfigCreate ();
+    if (!cfg)
+    {
+        fprintf (stderr, "Unable to create a new empty config.\n");
+        goto bail;
+    }
+
+    if (!FcConfigParseAndLoadFromMemory (cfg, xml, FcTrue))
+    {
+        fprintf (stderr, "Unable to load a config from memory.\n");
+        goto bail;
+    }
+
+    if (!FcConfigSubstitute (cfg, pat, FcMatchPattern))
+    {
+        fprintf (stderr, "Unable to substitute config.\n");
+        goto bail;
+    }
+
+    result = FcPatternGetBool (pat, FC_TEST_RESULT, 0, &dummy);
+    switch (result) {
+    case FcResultMatch:
+        ret = TestMatch;
+        break;
+    case FcResultNoMatch:
+        ret = TestNoMatch;
+        break;
+    default:
+        fprintf (stderr, "Unable to check pattern.\n");
+        break;
+    }
+
+bail:
+    if (cfg)
+       FcConfigDestroy (cfg);
+    if (xml)
+       FcStrFree (xml);
+    if (concat)
+       FcStrFree (concat);
+    if (pat)
+       FcPatternDestroy (pat);
+    return ret;
+}
+
+static TestResult
+TestShouldMatchPattern(const char* test, FcPattern *pat, int negate)
+{
+    switch (TestMatchPattern (test, pat)) {
+    case TestMatch:
+        if (!negate) {
+            return TestPassed;
+        }
+        else
+        {
+            printf ("Following test unexpectedly matched:\n%s", test);
+            printf ("on\n");
+            FcPatternPrint (pat);
+            return TestFailed;
+        }
+        break;
+    case TestNoMatch:
+        if (!negate) {
+            printf ("Following test should have matched:\n%s", test);
+            printf ("on\n");
+            FcPatternPrint (pat);
+            return TestFailed;
+        }
+        else
+        {
+            return TestPassed;
+        }
+        break;
+    case TestMatchError:
+        return TestError;
+        break;
+    default:
+        fprintf (stderr, "This shouldn't have been reached.\n");
+        return TestError;
+    }
+}
+
+#define MAX(a,b) ((a) > (b) ? (a) : (b))
+
+static TestResult
+UpdateResult (TestResult* res, TestResult resNew)
+{
+    *res = MAX(*res, resNew);
+    return *res;
+}
+
+static TestResult
+TestFamily (void)
+{
+    const char *test;
+    TestResult res = TestPassed;
+
+    FcPattern *pat = FcPatternBuild (NULL,
+        FC_FAMILY, FcTypeString, "family1",
+        FC_FAMILY, FcTypeString, "family2",
+        FC_FAMILY, FcTypeString, "family3",
+        NULL);
+
+    if (!pat)
+    {
+        fprintf (stderr, "Unable to build pattern.\n");
+        return TestError;
+    }
+
+    #define SHOULD_MATCH(p,t) \
+        UpdateResult (&res, TestShouldMatchPattern (t, p, 0))
+    #define SHOULD_NOT_MATCH(p,t) \
+        UpdateResult (&res, TestShouldMatchPattern (t, p, 1))
+
+    test = "<test qual=\"all\" name=\"family\" compare=\"not_eq\">\n"
+           "    <string>foo</string>\n"
+           "</test>\n"
+           "";
+    SHOULD_MATCH(pat, test);
+
+    test = ""
+           "<test qual=\"all\" name=\"family\" compare=\"not_eq\">\n"
+           "    <string>family2</string>\n"
+           "</test>\n"
+           "";
+    SHOULD_NOT_MATCH(pat, test);
+
+    test = ""
+           "<test qual=\"any\" name=\"family\" compare=\"eq\">\n"
+           "    <string>family3</string>\n"
+           "</test>\n"
+           "";
+    SHOULD_MATCH(pat, test);
+
+    test = ""
+           "<test qual=\"any\" name=\"family\" compare=\"eq\">\n"
+           "    <string>foo</string>\n"
+           "</test>\n"
+           "";
+    SHOULD_NOT_MATCH(pat, test);
+
+    FcPatternDestroy (pat);
+    return res;
+}
+
+int
+main (void)
+{
+    return (TestFamily ());
+}
diff --git a/test/test-hash.c b/test/test-hash.c
deleted file mode 100644 (file)
index 7530e82..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-#include "../src/fchash.c"
-#include "../src/fcstr.c"
-
-FcChar8 *
-FcLangNormalize (const FcChar8 *lang)
-{
-    return NULL;
-}
-
-FcChar8 *
-FcConfigHome (void)
-{
-    return NULL;
-}
-
-typedef struct _Test
-{
-    FcHashTable *table;
-} Test;
-
-static Test *
-init (void)
-{
-    Test *ret;
-
-    ret = malloc (sizeof (Test));
-    if (ret)
-    {
-       ret->table = FcHashTableCreate ((FcHashFunc) FcStrHashIgnoreCase,
-                                       (FcCompareFunc) FcStrCmp,
-                                       FcHashStrCopy,
-                                       FcHashUuidCopy,
-                                       (FcDestroyFunc) FcStrFree,
-                                       FcHashUuidFree);
-    }
-
-    return ret;
-}
-
-static void
-fini (Test *test)
-{
-    FcHashTableDestroy (test->table);
-    free (test);
-}
-
-static FcBool
-test_add (Test *test, FcChar8 *key, FcBool replace)
-{
-    uuid_t uuid;
-    void *u;
-    FcBool (*hash_add) (FcHashTable *, void *, void *);
-    FcBool ret = FcFalse;
-
-    uuid_generate_random (uuid);
-    if (replace)
-       hash_add = FcHashTableReplace;
-    else
-       hash_add = FcHashTableAdd;
-    if (!hash_add (test->table, key, uuid))
-       return FcFalse;
-    if (!FcHashTableFind (test->table, key, &u))
-       return FcFalse;
-    ret = (uuid_compare (uuid, u) == 0);
-    FcHashUuidFree (u);
-
-    return ret;
-}
-
-static FcBool
-test_remove (Test *test, FcChar8 *key)
-{
-    void *u;
-
-    if (!FcHashTableFind (test->table, key, &u))
-       return FcFalse;
-    FcHashUuidFree (u);
-    if (!FcHashTableRemove (test->table, key))
-       return FcFalse;
-    if (FcHashTableFind (test->table, key, &u))
-       return FcFalse;
-
-    return FcTrue;
-}
-
-int
-main (void)
-{
-    Test *test;
-    uuid_t uuid;
-    int ret = 0;
-
-    test = init ();
-    /* first op to add */
-    if (!test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* second op to add */
-    if (!test_add (test, "bar", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* dup not allowed */
-    if (test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* replacement */
-    if (!test_add (test, "foo", FcTrue))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* removal */
-    if (!test_remove (test, "foo"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* not found to remove */
-    if (test_remove (test, "foo"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* complex op in pointer */
-    if (!test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_remove (test, "foo"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_remove (test, "bar"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* completely remove */
-    if (!test_remove (test, "foo"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    /* completely remove from the last one */
-    if (!test_add (test, "foo", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_add (test, "bar", FcFalse))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_remove (test, "bar"))
-    {
-       ret = 1;
-       goto bail;
-    }
-    if (!test_remove (test, "foo"))
-    {
-       ret = 1;
-       goto bail;
-    }
-bail:
-    fini (test);
-
-    return ret;
-}
diff --git a/test/test-issue-286.json b/test/test-issue-286.json
new file mode 100644 (file)
index 0000000..a3199fa
--- /dev/null
@@ -0,0 +1,35 @@
+{
+    "fonts": [
+        {
+            "family": "Foo",
+            "style": "Italic",
+           "pixelsize": [15, 16, 17, 18],
+            "file": "/path/to/Foo-Italic.ttf",
+            "fontversion": 133365
+        },
+        {
+            "family": "Foo",
+            "style": "Regular",
+           "pixelsize": [11, 12, 13, 14, 15, 16, 17, 18, 22],
+            "file": "/path/to/Foo-Regular.ttf",
+            "fontversion": 133365
+        }
+    ],
+    "tests": [
+        {
+            "method": "match",
+            "query": {
+                "family": "Foo",
+                "style": "Regular",
+               "pixelsize": 16
+            },
+            "result": {
+                "family": "Foo",
+                "style": "Regular",
+               "pixelsize": 16,
+                "file": "/path/to/Foo-Regular.ttf",
+                "fontversion": 133365
+            }
+        }
+    ]
+}
diff --git a/test/test-issue107.c b/test/test-issue107.c
new file mode 100644 (file)
index 0000000..07db3ae
--- /dev/null
@@ -0,0 +1,271 @@
+/*
+ * fontconfig/test/test-issue107.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2018 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.
+ */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dirent.h>
+#include <errno.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+#include <sys/types.h>
+#include <sys/stat.h>
+#endif
+#include <fontconfig/fontconfig.h>
+
+#ifdef _WIN32
+#  define FC_DIR_SEPARATOR         '\\'
+#  define FC_DIR_SEPARATOR_S       "\\"
+#else
+#  define FC_DIR_SEPARATOR         '/'
+#  define FC_DIR_SEPARATOR_S       "/"
+#endif
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
+extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
+
+#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);
+       if (!n)
+       {
+           ret = FcFalse;
+           break;
+       }
+       strcpy (n, dir);
+       n[len] = FC_DIR_SEPARATOR;
+       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)
+{
+    FcConfig *cfg = FcConfigCreate ();
+    char *basedir = NULL, template[512] = "/tmp/fc107-XXXXXX";
+    char *sysroot = NULL, systempl[512] = "/tmp/fc107-XXXXXX";
+    FcChar8 *d = NULL, *dd = NULL;
+    FcCache *c = NULL;
+    const FcChar8 *doc = (const FcChar8 *) ""
+       "<fontconfig>\n"
+       "  <dir>%s</dir>\n"
+       "</fontconfig>\n"
+       "";
+    int retval = 0;
+    size_t len;
+
+    retval++;
+    basedir = fc_mkdtemp (template);
+    if (!basedir)
+    {
+       fprintf (stderr, "%s: %s\n", template, strerror (errno));
+       goto bail;
+    }
+    retval++;
+    sysroot = fc_mkdtemp (systempl);
+    if (!sysroot)
+    {
+       fprintf (stderr, "%s: %s\n", systempl, strerror (errno));
+       goto bail;
+    }
+    retval++;
+    fprintf (stderr, "D: Creating %s\n", basedir);
+    mkdir_p (basedir);
+    len = strlen ((const char *) doc) + strlen (basedir) + 1;
+    dd = malloc (len);
+    snprintf ((char *) dd, len, (char *) doc, basedir);
+    if (!FcConfigParseAndLoadFromMemory (cfg, dd, FcFalse))
+    {
+       fprintf (stderr, "%s: Unable to load a config\n", basedir);
+       goto bail;
+    }
+    sleep (1);
+    c = FcDirCacheRead ((const FcChar8 *) basedir, FcFalse, cfg);
+    FcDirCacheUnload (c);
+    sleep (1);
+    retval++;
+    if (!FcConfigUptoDate (cfg))
+    {
+       fprintf (stderr, "updated. need to reload.\n");
+       goto bail;
+    }
+    setenv ("FONTCONFIG_SYSROOT", sysroot, 1);
+    fprintf (stderr, "D: Creating %s\n", sysroot);
+    mkdir_p (sysroot);
+    retval++;
+    d = FcStrBuildFilename ((const FcChar8 *) sysroot, basedir, NULL);
+    fprintf (stderr, "D: Creating %s\n", d);
+    mkdir_p ((const char *) d);
+    free (d);
+    retval++;
+    free (dd);
+    len = strlen ((const char *) doc) + strlen (basedir) + 1;
+    dd = malloc (len);
+    snprintf ((char *) dd, len, (char *) doc, basedir);
+    if (!FcConfigParseAndLoadFromMemory (cfg, dd, FcFalse))
+    {
+       fprintf (stderr, "%s: Unable to load a config\n", basedir);
+       goto bail;
+    }
+    sleep (1);
+    c = FcDirCacheRead ((const FcChar8 *) basedir, FcFalse, cfg);
+    FcDirCacheUnload (c);
+    sleep (1);
+    retval++;
+    if (!FcConfigUptoDate (cfg))
+    {
+       fprintf (stderr, "updated. need to reload (sysroot)\n");
+       goto bail;
+    }
+    retval = 0;
+bail:
+    fprintf (stderr, "Cleaning up\n");
+    if (basedir)
+       unlink_dirs (basedir);
+    if (sysroot)
+       unlink_dirs (sysroot);
+    if (dd)
+       free (dd);
+    FcConfigDestroy (cfg);
+
+    return retval;
+}
diff --git a/test/test-issue110.c b/test/test-issue110.c
new file mode 100644 (file)
index 0000000..fa20285
--- /dev/null
@@ -0,0 +1,267 @@
+/*
+ * fontconfig/test/test-issue110.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2018 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.
+ */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dirent.h>
+#include <errno.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+#include <sys/types.h>
+#include <sys/stat.h>
+#endif
+#include <fontconfig/fontconfig.h>
+
+#ifdef _WIN32
+#  define FC_DIR_SEPARATOR         '\\'
+#  define FC_DIR_SEPARATOR_S       "\\"
+#else
+#  define FC_DIR_SEPARATOR         '/'
+#  define FC_DIR_SEPARATOR_S       "/"
+#endif
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
+extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
+
+#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);
+       if (!n)
+       {
+           ret = FcFalse;
+           break;
+       }
+       strcpy (n, dir);
+       n[len] = FC_DIR_SEPARATOR;
+       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)
+{
+    FcConfig *cfg = FcConfigCreate ();
+    char *basedir, template[512] = "/tmp/fc110-XXXXXX";
+    char *sysroot, systempl[512] = "/tmp/fc110-XXXXXX";
+    FcChar8 *d = NULL;
+    FcChar8 *ret = NULL;
+    FcChar8 *s = NULL;
+    FILE *fp;
+    int retval = 0;
+
+    retval++;
+    basedir = fc_mkdtemp (template);
+    if (!basedir)
+    {
+       fprintf (stderr, "%s: %s\n", template, strerror (errno));
+       goto bail;
+    }
+    retval++;
+    sysroot = fc_mkdtemp (systempl);
+    if (!sysroot)
+    {
+       fprintf (stderr, "%s: %s\n", systempl, strerror (errno));
+       goto bail;
+    }
+    fprintf (stderr, "D: Creating %s\n", basedir);
+    mkdir_p (basedir);
+    setenv ("HOME", basedir, 1);
+    retval++;
+    s = FcStrBuildFilename (basedir, ".fonts.conf", NULL);
+    if (!s)
+       goto bail;
+    retval++;
+    fprintf (stderr, "D: Creating %s\n", s);
+    if ((fp = fopen (s, "wb")) == NULL)
+       goto bail;
+    fprintf (fp, "%s", s);
+    fclose (fp);
+    retval++;
+    fprintf (stderr, "D: Checking file path\n");
+    ret = FcConfigRealFilename (cfg, "~/.fonts.conf");
+    if (!ret)
+       goto bail;
+    retval++;
+    if (strcmp ((const char *) s, (const char *) ret) != 0)
+       goto bail;
+    free (ret);
+    free (s);
+    FcConfigDestroy (cfg);
+    setenv ("FONTCONFIG_SYSROOT", sysroot, 1);
+    cfg = FcConfigCreate ();
+    fprintf (stderr, "D: Creating %s\n", sysroot);
+    mkdir_p (sysroot);
+    retval++;
+    d = FcStrBuildFilename (sysroot, basedir, NULL);
+    fprintf (stderr, "D: Creating %s\n", d);
+    mkdir_p (d);
+    free (d);
+    s = FcStrBuildFilename (sysroot, basedir, ".fonts.conf", NULL);
+    if (!s)
+       goto bail;
+    retval++;
+    fprintf (stderr, "D: Creating %s\n", s);
+    if ((fp = fopen (s, "wb")) == NULL)
+       goto bail;
+    fprintf (fp, "%s", s);
+    fclose (fp);
+    retval++;
+    fprintf (stderr, "D: Checking file path\n");
+    ret = FcConfigRealFilename (cfg, "~/.fonts.conf");
+    if (!ret)
+       goto bail;
+    retval++;
+    if (strcmp ((const char *) s, (const char *) ret) != 0)
+       goto bail;
+    retval = 0;
+bail:
+    fprintf (stderr, "Cleaning up\n");
+    unlink_dirs (basedir);
+    if (ret)
+       free (ret);
+    if (s)
+       free (s);
+
+    return retval;
+}
+
diff --git a/test/test-issue180.c b/test/test-issue180.c
new file mode 100644 (file)
index 0000000..9d0795e
--- /dev/null
@@ -0,0 +1,75 @@
+/*
+ * fontconfig/test/test-issue180.c
+ *
+ * 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.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <fontconfig/fontconfig.h>
+
+int
+main (void)
+{
+    const FcChar8 *doc = (const FcChar8 *) ""
+       "<fontconfig>\n"
+       "  <cachedir></cachedir>\n"
+       "</fontconfig>\n"
+       "";
+    const FcChar8 *doc2 = (const FcChar8 *) ""
+       "<fontconfig>\n"
+       "  <cachedir prefix=\"xdg\"></cachedir>\n"
+       "</fontconfig>\n"
+       "";
+    FcConfig *cfg = FcConfigCreate ();
+    FcStrList *l;
+    FcChar8 *p;
+
+    if (!FcConfigParseAndLoadFromMemory (cfg, doc, FcTrue))
+    {
+       fprintf (stderr, "Unable to load a config from memory.\n");
+       return 1;
+    }
+    l = FcConfigGetCacheDirs (cfg);
+    if ((p = FcStrListNext (l)) != NULL)
+    {
+       fprintf (stderr, "There was one or more cachedirs\n");
+       return 1;
+    }
+    FcStrListDone (l);
+    FcConfigDestroy (cfg);
+
+    cfg = FcConfigCreate ();
+    if (!FcConfigParseAndLoadFromMemory (cfg, doc2, FcTrue))
+    {
+       fprintf (stderr, "Unable to load a config from memory (with prefix).\n");
+       return 1;
+    }
+    l = FcConfigGetCacheDirs (cfg);
+    if ((p = FcStrListNext (l)) != NULL)
+    {
+       fprintf (stderr, "There was one or more cachedirs (with prefix)\n");
+       return 1;
+    }
+    FcStrListDone (l);
+    FcConfigDestroy (cfg);
+
+    return 0;
+}
index b7d96dc..d3a0e42 100644 (file)
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <unistd.h>
 #include <sys/types.h>
 #include <dirent.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
 #ifndef HAVE_STRUCT_DIRENT_D_TYPE
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <unistd.h>
 #endif
 #include <fontconfig/fontconfig.h>
 
index 7382360..8ee65fe 100644 (file)
@@ -65,13 +65,13 @@ main (void)
            goto bail;
     } END (expect);
     BEGIN (expect) {
-       FcPatternAddInteger (expect, FC_WIDTH, FC_WIDTH_NORMAL);
-       if ((ret = test ((const FcChar8 *)":normal", expect)) != 0)
+       FcPatternAddInteger (expect, FC_WEIGHT, FC_WEIGHT_NORMAL);
+       if ((ret = test ((const FcChar8 *)":weight=normal", expect)) != 0)
            goto bail;
     } END (expect);
     BEGIN (expect) {
        FcPatternAddInteger (expect, FC_WIDTH, FC_WIDTH_NORMAL);
-       if ((ret = test ((const FcChar8 *)":normal", expect)) != 0)
+       if ((ret = test ((const FcChar8 *)":width=normal", expect)) != 0)
            goto bail;
     } END (expect);
     BEGIN (expect) {
index fbf397d..c15c876 100644 (file)
@@ -71,17 +71,17 @@ static void *run_test_in_thread(void *arg)
 int main(int argc,char **argv)
 {
        pthread_t threads[NTHR];
+       struct thr_arg_s thr_args[NTHR];
        int i, j;
 
        printf("Creating %d threads\n",NTHR);
 
        for(i = 0;i<NTHR;i++)
        {
-               struct thr_arg_s thr_arg;
                int result;
-               thr_arg.thr_num=i;
+               thr_args[i].thr_num=i;
                result = pthread_create(&threads[i],NULL,run_test_in_thread,
-                                       (void *)&thr_arg);
+                                       (void *)&thr_args[i]);
                if(result!=0)
                {
                        fprintf(stderr,"Cannot create thread %d\n",i);
diff --git a/test/test-style-match.json b/test/test-style-match.json
new file mode 100644 (file)
index 0000000..bb60d16
--- /dev/null
@@ -0,0 +1,31 @@
+{
+    "fonts": [
+        {
+            "family": [ "Foo", "Foo Caption" ],
+            "style": [ "Caption", "Regular" ],
+            "file": "/path/to/Foo-Capt.ttf",
+            "fontversion": 133365
+        },
+        {
+            "family": "Foo",
+            "style": "Regular",
+            "file": "/path/to/Foo-Regular.ttf",
+            "fontversion": 133365
+        }
+    ],
+    "tests": [
+        {
+            "method": "match",
+            "query": {
+                "family": "Foo",
+                "style": "Regular"
+            },
+            "result": {
+                "family": "Foo",
+                "style": "Regular",
+                "file": "/path/to/Foo-Regular.ttf",
+                "fontversion": 133365
+            }
+        }
+    ]
+}
diff --git a/test/wrapper-script.sh b/test/wrapper-script.sh
new file mode 100755 (executable)
index 0000000..4138e4b
--- /dev/null
@@ -0,0 +1,13 @@
+#! /bin/bash
+
+case "$1" in
+  *.exe)
+    fccwd=`pwd`
+    cd $(IFS=:;for i in $PATH; do echo $i|grep mingw> /dev/null; [ $? -eq 0 ] && echo $i; done)
+    /usr/bin/env wine $fccwd/$@
+    ;;
+  *)
+    $@
+    ;;
+esac
+