summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaeun Choi <jaeun12.choi@samsung.com>2015-10-28 15:45:18 +0900
committerJaeun Choi <jaeun12.choi@samsung.com>2015-10-28 15:49:42 +0900
commitdb1af30227cdcd1e5ea6c83fb96fb06679a58a0a (patch)
tree4e29d9617d38c7563738544546fb2792b61fe4f5
parentf4867815bd0b41d91b95fb623554b60d34c4fbd3 (diff)
downloadfontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.tar.gz
fontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.tar.bz2
fontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.zip
Imported Upstream version 2.11.93upstream/2.11.93
Change-Id: I0625d1bfdedbfcb7cbf279d779d33468e0a775b0
-rw-r--r--ChangeLog1166
-rw-r--r--Makefile.am14
-rw-r--r--Makefile.in284
-rw-r--r--README313
-rw-r--r--Tools.mk4
-rw-r--r--aclocal.m4817
-rwxr-xr-xcompile347
-rw-r--r--conf.d/10-autohint.conf2
-rw-r--r--conf.d/10-no-sub-pixel.conf4
-rw-r--r--conf.d/10-sub-pixel-bgr.conf2
-rw-r--r--conf.d/10-sub-pixel-rgb.conf2
-rw-r--r--conf.d/10-sub-pixel-vbgr.conf2
-rw-r--r--conf.d/10-sub-pixel-vrgb.conf2
-rw-r--r--conf.d/10-unhinted.conf2
-rw-r--r--conf.d/11-lcdfilter-default.conf2
-rw-r--r--conf.d/11-lcdfilter-legacy.conf2
-rw-r--r--conf.d/11-lcdfilter-light.conf2
-rw-r--r--conf.d/30-metric-aliases.conf439
-rw-r--r--conf.d/30-urw-aliases.conf24
-rw-r--r--conf.d/45-latin.conf28
-rw-r--r--conf.d/60-latin.conf3
-rw-r--r--conf.d/Makefile.am13
-rw-r--r--conf.d/Makefile.in144
-rw-r--r--conf.d/README6
-rw-r--r--conf.d/README.in23
-rwxr-xr-xconfig.guess344
-rw-r--r--config.h.in64
-rwxr-xr-xconfig.sub114
-rwxr-xr-xconfigure1739
-rw-r--r--configure.ac119
-rwxr-xr-xdepcomp454
-rw-r--r--doc/FcAtomicCreate.35
-rw-r--r--doc/FcAtomicDeleteNew.35
-rw-r--r--doc/FcAtomicDestroy.35
-rw-r--r--doc/FcAtomicLock.35
-rw-r--r--doc/FcAtomicNewFile.35
-rw-r--r--doc/FcAtomicOrigFile.35
-rw-r--r--doc/FcAtomicReplaceOrig.35
-rw-r--r--doc/FcAtomicUnlock.35
-rw-r--r--doc/FcBlanksAdd.35
-rw-r--r--doc/FcBlanksCreate.35
-rw-r--r--doc/FcBlanksDestroy.35
-rw-r--r--doc/FcBlanksIsMember.35
-rw-r--r--doc/FcCacheCopySet.35
-rw-r--r--doc/FcCacheCreateTagFile.36
-rw-r--r--doc/FcCacheDir.35
-rw-r--r--doc/FcCacheNumFont.35
-rw-r--r--doc/FcCacheNumSubdir.35
-rw-r--r--doc/FcCacheSubdir.35
-rw-r--r--doc/FcCharSetAddChar.35
-rw-r--r--doc/FcCharSetCopy.35
-rw-r--r--doc/FcCharSetCount.35
-rw-r--r--doc/FcCharSetCoverage.35
-rw-r--r--doc/FcCharSetCreate.35
-rw-r--r--doc/FcCharSetDelChar.36
-rw-r--r--doc/FcCharSetDestroy.35
-rw-r--r--doc/FcCharSetEqual.35
-rw-r--r--doc/FcCharSetFirstPage.331
-rw-r--r--doc/FcCharSetHasChar.35
-rw-r--r--doc/FcCharSetIntersect.35
-rw-r--r--doc/FcCharSetIntersectCount.35
-rw-r--r--doc/FcCharSetIsSubset.35
-rw-r--r--doc/FcCharSetMerge.35
-rw-r--r--doc/FcCharSetNew.35
-rw-r--r--doc/FcCharSetNextPage.317
-rw-r--r--doc/FcCharSetSubtract.35
-rw-r--r--doc/FcCharSetSubtractCount.35
-rw-r--r--doc/FcCharSetUnion.35
-rw-r--r--doc/FcConfigAppFontAddDir.310
-rw-r--r--doc/FcConfigAppFontAddFile.310
-rw-r--r--doc/FcConfigAppFontClear.35
-rw-r--r--doc/FcConfigBuildFonts.35
-rw-r--r--doc/FcConfigCreate.35
-rw-r--r--doc/FcConfigDestroy.35
-rw-r--r--doc/FcConfigEnableHome.35
-rw-r--r--doc/FcConfigFilename.35
-rw-r--r--doc/FcConfigGetBlanks.35
-rw-r--r--doc/FcConfigGetCache.35
-rw-r--r--doc/FcConfigGetCacheDirs.35
-rw-r--r--doc/FcConfigGetConfigDirs.35
-rw-r--r--doc/FcConfigGetConfigFiles.35
-rw-r--r--doc/FcConfigGetCurrent.35
-rw-r--r--doc/FcConfigGetFontDirs.35
-rw-r--r--doc/FcConfigGetFonts.35
-rw-r--r--doc/FcConfigGetRescanInterval.35
-rw-r--r--doc/FcConfigGetSysRoot.316
-rw-r--r--doc/FcConfigHome.35
-rw-r--r--doc/FcConfigParseAndLoad.35
-rw-r--r--doc/FcConfigReference.35
-rw-r--r--doc/FcConfigSetCurrent.38
-rw-r--r--doc/FcConfigSetRescanInterval.35
-rw-r--r--doc/FcConfigSetSysRoot.319
-rw-r--r--doc/FcConfigSubstitute.35
-rw-r--r--doc/FcConfigSubstituteWithPat.35
-rw-r--r--doc/FcConfigUptoDate.35
-rw-r--r--doc/FcDefaultSubstitute.35
-rw-r--r--doc/FcDirCacheClean.36
-rw-r--r--doc/FcDirCacheLoad.35
-rw-r--r--doc/FcDirCacheLoadFile.35
-rw-r--r--doc/FcDirCacheRead.35
-rw-r--r--doc/FcDirCacheRescan.317
-rw-r--r--doc/FcDirCacheUnlink.35
-rw-r--r--doc/FcDirCacheUnload.35
-rw-r--r--doc/FcDirCacheValid.35
-rw-r--r--doc/FcDirSave.35
-rw-r--r--doc/FcDirScan.35
-rw-r--r--doc/FcFileIsDir.35
-rw-r--r--doc/FcFileScan.35
-rw-r--r--doc/FcFini.35
-rw-r--r--doc/FcFontList.35
-rw-r--r--doc/FcFontMatch.35
-rw-r--r--doc/FcFontRenderPrepare.35
-rw-r--r--doc/FcFontSetAdd.35
-rw-r--r--doc/FcFontSetCreate.35
-rw-r--r--doc/FcFontSetDestroy.35
-rw-r--r--doc/FcFontSetList.35
-rw-r--r--doc/FcFontSetMatch.35
-rw-r--r--doc/FcFontSetPrint.35
-rw-r--r--doc/FcFontSetSort.35
-rw-r--r--doc/FcFontSetSortDestroy.35
-rw-r--r--doc/FcFontSort.35
-rw-r--r--doc/FcFreeTypeCharIndex.35
-rw-r--r--doc/FcFreeTypeCharSet.35
-rw-r--r--doc/FcFreeTypeCharSetAndSpacing.35
-rw-r--r--doc/FcFreeTypeQuery.35
-rw-r--r--doc/FcFreeTypeQueryFace.35
-rw-r--r--doc/FcGetDefaultLangs.38
-rw-r--r--doc/FcGetLangs.35
-rw-r--r--doc/FcGetVersion.35
-rw-r--r--doc/FcInit.35
-rw-r--r--doc/FcInitBringUptoDate.35
-rw-r--r--doc/FcInitLoadConfig.35
-rw-r--r--doc/FcInitLoadConfigAndFonts.35
-rw-r--r--doc/FcInitReinitialize.35
-rw-r--r--doc/FcIsLower.35
-rw-r--r--doc/FcIsUpper.35
-rw-r--r--doc/FcLangGetCharSet.35
-rw-r--r--doc/FcLangNormalize.36
-rw-r--r--doc/FcLangSetAdd.35
-rw-r--r--doc/FcLangSetCompare.35
-rw-r--r--doc/FcLangSetContains.35
-rw-r--r--doc/FcLangSetCopy.35
-rw-r--r--doc/FcLangSetCreate.35
-rw-r--r--doc/FcLangSetDel.36
-rw-r--r--doc/FcLangSetDestroy.35
-rw-r--r--doc/FcLangSetEqual.35
-rw-r--r--doc/FcLangSetGetLangs.313
-rw-r--r--doc/FcLangSetHasLang.35
-rw-r--r--doc/FcLangSetHash.35
-rw-r--r--doc/FcLangSetSubtract.36
-rw-r--r--doc/FcLangSetUnion.36
-rw-r--r--doc/FcMatrixCopy.35
-rw-r--r--doc/FcMatrixEqual.35
-rw-r--r--doc/FcMatrixInit.35
-rw-r--r--doc/FcMatrixMultiply.35
-rw-r--r--doc/FcMatrixRotate.35
-rw-r--r--doc/FcMatrixScale.35
-rw-r--r--doc/FcMatrixShear.35
-rw-r--r--doc/FcNameConstant.35
-rw-r--r--doc/FcNameGetConstant.35
-rw-r--r--doc/FcNameGetObjectType.35
-rw-r--r--doc/FcNameParse.35
-rw-r--r--doc/FcNameRegisterConstants.35
-rw-r--r--doc/FcNameRegisterObjectTypes.35
-rw-r--r--doc/FcNameUnparse.35
-rw-r--r--doc/FcNameUnregisterConstants.35
-rw-r--r--doc/FcNameUnregisterObjectTypes.35
-rw-r--r--doc/FcObjectSetAdd.35
-rw-r--r--doc/FcObjectSetBuild.35
-rw-r--r--doc/FcObjectSetCreate.35
-rw-r--r--doc/FcObjectSetDestroy.35
-rw-r--r--doc/FcPatternAdd-Type.310
-rw-r--r--doc/FcPatternAdd.35
-rw-r--r--doc/FcPatternAddWeak.35
-rw-r--r--doc/FcPatternBuild.35
-rw-r--r--doc/FcPatternCreate.35
-rw-r--r--doc/FcPatternDel.35
-rw-r--r--doc/FcPatternDestroy.35
-rw-r--r--doc/FcPatternDuplicate.35
-rw-r--r--doc/FcPatternEqual.35
-rw-r--r--doc/FcPatternEqualSubset.35
-rw-r--r--doc/FcPatternFilter.35
-rw-r--r--doc/FcPatternFormat.36
-rw-r--r--doc/FcPatternGet-Type.314
-rw-r--r--doc/FcPatternGet.35
-rw-r--r--doc/FcPatternHash.35
-rw-r--r--doc/FcPatternPrint.35
-rw-r--r--doc/FcPatternReference.35
-rw-r--r--doc/FcPatternRemove.35
-rw-r--r--doc/FcRangeCopy.317
-rw-r--r--doc/FcRangeCreateDouble.317
-rw-r--r--doc/FcRangeCreateInteger.317
-rw-r--r--doc/FcRangeDestroy.317
-rw-r--r--doc/FcRangeGetDouble.316
-rw-r--r--doc/FcStrBasename.35
-rw-r--r--doc/FcStrCmp.35
-rw-r--r--doc/FcStrCmpIgnoreCase.35
-rw-r--r--doc/FcStrCopy.35
-rw-r--r--doc/FcStrCopyFilename.35
-rw-r--r--doc/FcStrDirname.35
-rw-r--r--doc/FcStrDowncase.35
-rw-r--r--doc/FcStrFree.35
-rw-r--r--doc/FcStrListCreate.35
-rw-r--r--doc/FcStrListDone.35
-rw-r--r--doc/FcStrListFirst.316
-rw-r--r--doc/FcStrListNext.37
-rw-r--r--doc/FcStrPlus.35
-rw-r--r--doc/FcStrSetAdd.35
-rw-r--r--doc/FcStrSetAddFilename.35
-rw-r--r--doc/FcStrSetCreate.35
-rw-r--r--doc/FcStrSetDel.35
-rw-r--r--doc/FcStrSetDestroy.35
-rw-r--r--doc/FcStrSetEqual.35
-rw-r--r--doc/FcStrSetMember.35
-rw-r--r--doc/FcStrStr.35
-rw-r--r--doc/FcStrStrIgnoreCase.35
-rw-r--r--doc/FcToLower.35
-rw-r--r--doc/FcUcs4ToUtf8.35
-rw-r--r--doc/FcUtf16Len.35
-rw-r--r--doc/FcUtf16ToUcs4.35
-rw-r--r--doc/FcUtf8Len.35
-rw-r--r--doc/FcUtf8ToUcs4.35
-rw-r--r--doc/FcValueDestroy.35
-rw-r--r--doc/FcValueEqual.35
-rw-r--r--doc/FcValuePrint.35
-rw-r--r--doc/FcValueSave.35
-rw-r--r--doc/FcWeightFromOpenType.322
-rw-r--r--doc/FcWeightToOpenType.319
-rw-r--r--doc/Makefile.am7
-rw-r--r--doc/Makefile.in607
-rw-r--r--doc/fcatomic.sgml48
-rw-r--r--doc/fcblanks.sgml24
-rw-r--r--doc/fccache.fncs2
-rw-r--r--doc/fccache.sgml44
-rw-r--r--doc/fccharset.fncs37
-rw-r--r--doc/fccharset.sgml151
-rw-r--r--doc/fcconfig.fncs36
-rw-r--r--doc/fcconfig.sgml291
-rw-r--r--doc/fcconstant.sgml24
-rw-r--r--doc/fcdircache.fncs11
-rw-r--r--doc/fcdircache.sgml85
-rw-r--r--doc/fcfile.sgml24
-rw-r--r--doc/fcfontset.sgml48
-rw-r--r--doc/fcformat.fncs1
-rw-r--r--doc/fcformat.sgml7
-rw-r--r--doc/fcfreetype.sgml30
-rw-r--r--doc/fcinit.sgml42
-rw-r--r--doc/fclangset.fncs6
-rw-r--r--doc/fclangset.sgml149
-rw-r--r--doc/fcmatrix.sgml42
-rw-r--r--doc/fcobjectset.sgml24
-rw-r--r--doc/fcobjecttype.sgml18
-rw-r--r--doc/fcpattern.fncs27
-rw-r--r--doc/fcpattern.sgml143
-rw-r--r--doc/fcrange.fncs75
-rw-r--r--doc/fcrange.sgml273
-rw-r--r--doc/fcstring.sgml114
-rw-r--r--doc/fcstrset.fncs11
-rw-r--r--doc/fcstrset.sgml109
-rw-r--r--doc/fcvalue.sgml24
-rw-r--r--doc/fcweight.fncs47
-rw-r--r--doc/fcweight.sgml115
-rw-r--r--doc/fontconfig-devel.pdfbin402758 -> 393149 bytes
-rw-r--r--doc/fontconfig-devel.sgml28
-rw-r--r--doc/fontconfig-devel.txt5530
-rw-r--r--doc/fontconfig-devel/fcatomiccreate.html24
-rw-r--r--doc/fontconfig-devel/fcatomicdeletenew.html24
-rw-r--r--doc/fontconfig-devel/fcatomicdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcatomiclock.html24
-rw-r--r--doc/fontconfig-devel/fcatomicnewfile.html24
-rw-r--r--doc/fontconfig-devel/fcatomicorigfile.html24
-rw-r--r--doc/fontconfig-devel/fcatomicreplaceorig.html24
-rw-r--r--doc/fontconfig-devel/fcatomicunlock.html24
-rw-r--r--doc/fontconfig-devel/fcblanksadd.html24
-rw-r--r--doc/fontconfig-devel/fcblankscreate.html24
-rw-r--r--doc/fontconfig-devel/fcblanksdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcblanksismember.html24
-rw-r--r--doc/fontconfig-devel/fccachecopyset.html24
-rw-r--r--doc/fontconfig-devel/fccachecreatetagfile.html20
-rw-r--r--doc/fontconfig-devel/fccachedir.html24
-rw-r--r--doc/fontconfig-devel/fccachenumfont.html24
-rw-r--r--doc/fontconfig-devel/fccachenumsubdir.html24
-rw-r--r--doc/fontconfig-devel/fccachesubdir.html24
-rw-r--r--doc/fontconfig-devel/fccharsetaddchar.html24
-rw-r--r--doc/fontconfig-devel/fccharsetcopy.html24
-rw-r--r--doc/fontconfig-devel/fccharsetcount.html24
-rw-r--r--doc/fontconfig-devel/fccharsetcoverage.html24
-rw-r--r--doc/fontconfig-devel/fccharsetcreate.html24
-rw-r--r--doc/fontconfig-devel/fccharsetdelchar.html20
-rw-r--r--doc/fontconfig-devel/fccharsetdestroy.html24
-rw-r--r--doc/fontconfig-devel/fccharsetequal.html24
-rw-r--r--doc/fontconfig-devel/fccharsetfirstpage.html131
-rw-r--r--doc/fontconfig-devel/fccharsethaschar.html24
-rw-r--r--doc/fontconfig-devel/fccharsetintersect.html24
-rw-r--r--doc/fontconfig-devel/fccharsetintersectcount.html24
-rw-r--r--doc/fontconfig-devel/fccharsetissubset.html24
-rw-r--r--doc/fontconfig-devel/fccharsetmerge.html24
-rw-r--r--doc/fontconfig-devel/fccharsetnew.html24
-rw-r--r--doc/fontconfig-devel/fccharsetnextpage.html68
-rw-r--r--doc/fontconfig-devel/fccharsetsubtract.html24
-rw-r--r--doc/fontconfig-devel/fccharsetsubtractcount.html24
-rw-r--r--doc/fontconfig-devel/fccharsetunion.html24
-rw-r--r--doc/fontconfig-devel/fcconfigappfontadddir.html31
-rw-r--r--doc/fontconfig-devel/fcconfigappfontaddfile.html31
-rw-r--r--doc/fontconfig-devel/fcconfigappfontclear.html24
-rw-r--r--doc/fontconfig-devel/fcconfigbuildfonts.html24
-rw-r--r--doc/fontconfig-devel/fcconfigcreate.html24
-rw-r--r--doc/fontconfig-devel/fcconfigdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcconfigenablehome.html24
-rw-r--r--doc/fontconfig-devel/fcconfigfilename.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetblanks.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetcache.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetcachedirs.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetconfigdirs.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetconfigfiles.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetcurrent.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetfontdirs.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetfonts.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetrescaninterval.html24
-rw-r--r--doc/fontconfig-devel/fcconfiggetsysroot.html214
-rw-r--r--doc/fontconfig-devel/fcconfighome.html24
-rw-r--r--doc/fontconfig-devel/fcconfigparseandload.html43
-rw-r--r--doc/fontconfig-devel/fcconfigreference.html24
-rw-r--r--doc/fontconfig-devel/fcconfigsetcurrent.html32
-rw-r--r--doc/fontconfig-devel/fcconfigsetrescaninterval.html24
-rw-r--r--doc/fontconfig-devel/fcconfigsetsysroot.html211
-rw-r--r--doc/fontconfig-devel/fcconfigsubstitute.html24
-rw-r--r--doc/fontconfig-devel/fcconfigsubstitutewithpat.html24
-rw-r--r--doc/fontconfig-devel/fcconfiguptodate.html24
-rw-r--r--doc/fontconfig-devel/fcdefaultsubstitute.html24
-rw-r--r--doc/fontconfig-devel/fcdircacheclean.html20
-rw-r--r--doc/fontconfig-devel/fcdircacheload.html34
-rw-r--r--doc/fontconfig-devel/fcdircacheloadfile.html24
-rw-r--r--doc/fontconfig-devel/fcdircacheread.html34
-rw-r--r--doc/fontconfig-devel/fcdircacherescan.html225
-rw-r--r--doc/fontconfig-devel/fcdircacheunlink.html24
-rw-r--r--doc/fontconfig-devel/fcdircacheunload.html24
-rw-r--r--doc/fontconfig-devel/fcdircachevalid.html24
-rw-r--r--doc/fontconfig-devel/fcdirsave.html24
-rw-r--r--doc/fontconfig-devel/fcdirscan.html24
-rw-r--r--doc/fontconfig-devel/fcfileisdir.html24
-rw-r--r--doc/fontconfig-devel/fcfilescan.html24
-rw-r--r--doc/fontconfig-devel/fcfini.html20
-rw-r--r--doc/fontconfig-devel/fcfontlist.html24
-rw-r--r--doc/fontconfig-devel/fcfontmatch.html24
-rw-r--r--doc/fontconfig-devel/fcfontrenderprepare.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetadd.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetcreate.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetlist.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetmatch.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetprint.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetsort.html24
-rw-r--r--doc/fontconfig-devel/fcfontsetsortdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcfontsort.html24
-rw-r--r--doc/fontconfig-devel/fcfreetypecharindex.html24
-rw-r--r--doc/fontconfig-devel/fcfreetypecharset.html24
-rw-r--r--doc/fontconfig-devel/fcfreetypecharsetandspacing.html24
-rw-r--r--doc/fontconfig-devel/fcfreetypequery.html24
-rw-r--r--doc/fontconfig-devel/fcfreetypequeryface.html24
-rw-r--r--doc/fontconfig-devel/fcgetdefaultlangs.html32
-rw-r--r--doc/fontconfig-devel/fcgetlangs.html34
-rw-r--r--doc/fontconfig-devel/fcgetversion.html20
-rw-r--r--doc/fontconfig-devel/fcinit.html20
-rw-r--r--doc/fontconfig-devel/fcinitbringuptodate.html20
-rw-r--r--doc/fontconfig-devel/fcinitloadconfig.html20
-rw-r--r--doc/fontconfig-devel/fcinitloadconfigandfonts.html20
-rw-r--r--doc/fontconfig-devel/fcinitreinitialize.html20
-rw-r--r--doc/fontconfig-devel/fcislower.html24
-rw-r--r--doc/fontconfig-devel/fcisupper.html24
-rw-r--r--doc/fontconfig-devel/fclanggetcharset.html24
-rw-r--r--doc/fontconfig-devel/fclangnormalize.html20
-rw-r--r--doc/fontconfig-devel/fclangsetadd.html24
-rw-r--r--doc/fontconfig-devel/fclangsetcompare.html24
-rw-r--r--doc/fontconfig-devel/fclangsetcontains.html24
-rw-r--r--doc/fontconfig-devel/fclangsetcopy.html24
-rw-r--r--doc/fontconfig-devel/fclangsetcreate.html24
-rw-r--r--doc/fontconfig-devel/fclangsetdel.html20
-rw-r--r--doc/fontconfig-devel/fclangsetdestroy.html24
-rw-r--r--doc/fontconfig-devel/fclangsetequal.html24
-rw-r--r--doc/fontconfig-devel/fclangsetgetlangs.html209
-rw-r--r--doc/fontconfig-devel/fclangsethash.html24
-rw-r--r--doc/fontconfig-devel/fclangsethaslang.html24
-rw-r--r--doc/fontconfig-devel/fclangsetsubtract.html20
-rw-r--r--doc/fontconfig-devel/fclangsetunion.html20
-rw-r--r--doc/fontconfig-devel/fcmatrixcopy.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixequal.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixinit.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixmultiply.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixrotate.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixscale.html24
-rw-r--r--doc/fontconfig-devel/fcmatrixshear.html24
-rw-r--r--doc/fontconfig-devel/fcnameconstant.html24
-rw-r--r--doc/fontconfig-devel/fcnamegetconstant.html24
-rw-r--r--doc/fontconfig-devel/fcnamegetobjecttype.html24
-rw-r--r--doc/fontconfig-devel/fcnameparse.html24
-rw-r--r--doc/fontconfig-devel/fcnameregisterconstants.html24
-rw-r--r--doc/fontconfig-devel/fcnameregisterobjecttypes.html24
-rw-r--r--doc/fontconfig-devel/fcnameunparse.html24
-rw-r--r--doc/fontconfig-devel/fcnameunregisterconstants.html24
-rw-r--r--doc/fontconfig-devel/fcnameunregisterobjecttypes.html24
-rw-r--r--doc/fontconfig-devel/fcobjectsetadd.html24
-rw-r--r--doc/fontconfig-devel/fcobjectsetbuild.html24
-rw-r--r--doc/fontconfig-devel/fcobjectsetcreate.html24
-rw-r--r--doc/fontconfig-devel/fcobjectsetdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcpatternadd-type.html54
-rw-r--r--doc/fontconfig-devel/fcpatternadd.html24
-rw-r--r--doc/fontconfig-devel/fcpatternaddweak.html24
-rw-r--r--doc/fontconfig-devel/fcpatternbuild.html24
-rw-r--r--doc/fontconfig-devel/fcpatterncreate.html24
-rw-r--r--doc/fontconfig-devel/fcpatterndel.html24
-rw-r--r--doc/fontconfig-devel/fcpatterndestroy.html24
-rw-r--r--doc/fontconfig-devel/fcpatternduplicate.html24
-rw-r--r--doc/fontconfig-devel/fcpatternequal.html24
-rw-r--r--doc/fontconfig-devel/fcpatternequalsubset.html24
-rw-r--r--doc/fontconfig-devel/fcpatternfilter.html24
-rw-r--r--doc/fontconfig-devel/fcpatternformat.html20
-rw-r--r--doc/fontconfig-devel/fcpatternget-type.html73
-rw-r--r--doc/fontconfig-devel/fcpatternget.html24
-rw-r--r--doc/fontconfig-devel/fcpatternhash.html24
-rw-r--r--doc/fontconfig-devel/fcpatternprint.html24
-rw-r--r--doc/fontconfig-devel/fcpatternreference.html24
-rw-r--r--doc/fontconfig-devel/fcpatternremove.html24
-rw-r--r--doc/fontconfig-devel/fcrangecopy.html223
-rw-r--r--doc/fontconfig-devel/fcrangecreatedouble.html223
-rw-r--r--doc/fontconfig-devel/fcrangecreateinteger.html223
-rw-r--r--doc/fontconfig-devel/fcrangedestroy.html218
-rw-r--r--doc/fontconfig-devel/fcrangegetdouble.html223
-rw-r--r--doc/fontconfig-devel/fcstrbasename.html24
-rw-r--r--doc/fontconfig-devel/fcstrcmp.html24
-rw-r--r--doc/fontconfig-devel/fcstrcmpignorecase.html24
-rw-r--r--doc/fontconfig-devel/fcstrcopy.html24
-rw-r--r--doc/fontconfig-devel/fcstrcopyfilename.html24
-rw-r--r--doc/fontconfig-devel/fcstrdirname.html24
-rw-r--r--doc/fontconfig-devel/fcstrdowncase.html24
-rw-r--r--doc/fontconfig-devel/fcstrfree.html24
-rw-r--r--doc/fontconfig-devel/fcstrlistcreate.html34
-rw-r--r--doc/fontconfig-devel/fcstrlistdone.html24
-rw-r--r--doc/fontconfig-devel/fcstrlistfirst.html219
-rw-r--r--doc/fontconfig-devel/fcstrlistnext.html36
-rw-r--r--doc/fontconfig-devel/fcstrplus.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetadd.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetaddfilename.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetcreate.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetdel.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetdestroy.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetequal.html24
-rw-r--r--doc/fontconfig-devel/fcstrsetmember.html24
-rw-r--r--doc/fontconfig-devel/fcstrstr.html24
-rw-r--r--doc/fontconfig-devel/fcstrstrignorecase.html24
-rw-r--r--doc/fontconfig-devel/fctolower.html24
-rw-r--r--doc/fontconfig-devel/fcucs4toutf8.html24
-rw-r--r--doc/fontconfig-devel/fcutf16len.html24
-rw-r--r--doc/fontconfig-devel/fcutf16toucs4.html24
-rw-r--r--doc/fontconfig-devel/fcutf8len.html24
-rw-r--r--doc/fontconfig-devel/fcutf8toucs4.html24
-rw-r--r--doc/fontconfig-devel/fcvaluedestroy.html24
-rw-r--r--doc/fontconfig-devel/fcvalueequal.html24
-rw-r--r--doc/fontconfig-devel/fcvalueprint.html24
-rw-r--r--doc/fontconfig-devel/fcvaluesave.html24
-rw-r--r--doc/fontconfig-devel/fcweightfromopentype.html223
-rw-r--r--doc/fontconfig-devel/fcweighttoopentype.html212
-rw-r--r--doc/fontconfig-devel/t1.html4
-rw-r--r--doc/fontconfig-devel/x102.html136
-rw-r--r--doc/fontconfig-devel/x19.html14
-rw-r--r--doc/fontconfig-user.html19
-rw-r--r--doc/fontconfig-user.pdfbin129885 -> 130838 bytes
-rw-r--r--doc/fontconfig-user.sgml17
-rw-r--r--doc/fontconfig-user.txt1243
-rw-r--r--doc/fonts-conf.521
-rw-r--r--doc/func.sgml9
-rw-r--r--fc-blanks/Makefile.am41
-rw-r--r--fc-blanks/Makefile.in588
-rwxr-xr-xfc-blanks/fc-blanks.py132
-rw-r--r--fc-blanks/fcblanks.h4223
-rw-r--r--fc-blanks/fcblanks.tmpl.h25
-rw-r--r--fc-cache/Makefile.am2
-rw-r--r--fc-cache/Makefile.in185
-rw-r--r--fc-cache/fc-cache.115
-rw-r--r--fc-cache/fc-cache.c141
-rw-r--r--fc-cache/fc-cache.sgml33
-rw-r--r--fc-case/CaseFolding.txt59
-rw-r--r--fc-case/Makefile.in172
-rw-r--r--fc-case/fccase.h17
-rw-r--r--fc-cat/Makefile.am2
-rw-r--r--fc-cat/Makefile.in185
-rw-r--r--fc-cat/fc-cat.12
-rw-r--r--fc-cat/fc-cat.c9
-rw-r--r--fc-cat/fc-cat.sgml2
-rw-r--r--fc-glyphname/Makefile.in172
-rw-r--r--fc-glyphname/fc-glyphname.c2
-rw-r--r--fc-lang/Makefile.am1
-rw-r--r--fc-lang/Makefile.in173
-rw-r--r--fc-lang/README28
-rw-r--r--fc-lang/fc-lang.c2
-rw-r--r--fc-lang/fclang.h1642
-rw-r--r--fc-lang/ja.orth4234
-rw-r--r--fc-lang/ko.orth1
-rw-r--r--fc-lang/quz.orth36
-rw-r--r--fc-lang/zh_hk.orth2249
-rw-r--r--fc-list/Makefile.am2
-rw-r--r--fc-list/Makefile.in185
-rw-r--r--fc-list/fc-list.15
-rw-r--r--fc-list/fc-list.c5
-rw-r--r--fc-list/fc-list.sgml12
-rw-r--r--fc-match/Makefile.am2
-rw-r--r--fc-match/Makefile.in185
-rw-r--r--fc-match/fc-match.c5
-rw-r--r--fc-pattern/Makefile.am2
-rw-r--r--fc-pattern/Makefile.in185
-rw-r--r--fc-pattern/fc-pattern.c5
-rw-r--r--fc-query/Makefile.am2
-rw-r--r--fc-query/Makefile.in185
-rw-r--r--fc-scan/Makefile.am2
-rw-r--r--fc-scan/Makefile.in185
-rw-r--r--fc-validate/Makefile.am2
-rw-r--r--fc-validate/Makefile.in185
-rw-r--r--fontconfig.pc.in8
-rw-r--r--fontconfig.spec2
-rw-r--r--fontconfig/Makefile.in173
-rw-r--r--fontconfig/fcprivate.h6
-rw-r--r--fontconfig/fontconfig.h67
-rw-r--r--fonts.conf.in66
-rw-r--r--fonts.dtd4
-rw-r--r--m4/ac_check_symbol.m448
-rw-r--r--m4/ax_pthread.m476
-rw-r--r--m4/libtool.m412
-rw-r--r--m4/pkg.m4214
-rwxr-xr-xmissing405
-rw-r--r--src/Makefile.am11
-rw-r--r--src/Makefile.in198
-rw-r--r--src/fcarch.c9
-rw-r--r--src/fcarch.h2
-rw-r--r--src/fcatomic.c2
-rw-r--r--src/fcatomic.h32
-rw-r--r--src/fcblanks.c27
-rw-r--r--src/fccache.c284
-rw-r--r--src/fccfg.c684
-rw-r--r--src/fccharset.c238
-rw-r--r--src/fccompat.c168
-rw-r--r--src/fcdbg.c65
-rw-r--r--src/fcdefault.c151
-rw-r--r--src/fcdir.c152
-rw-r--r--src/fcfreetype.c745
-rw-r--r--src/fcfs.c22
-rw-r--r--src/fcinit.c58
-rw-r--r--src/fcint.h191
-rw-r--r--src/fclang.c31
-rw-r--r--src/fclist.c7
-rw-r--r--src/fcmatch.c345
-rw-r--r--src/fcname.c66
-rw-r--r--src/fcobjs.c4
-rw-r--r--src/fcobjs.h112
-rw-r--r--src/fcobjshash.gperf5
-rw-r--r--src/fcobjshash.gperf.h25
-rw-r--r--src/fcobjshash.h297
-rw-r--r--src/fcpat.c82
-rw-r--r--src/fcrange.c234
-rw-r--r--src/fcstat.c100
-rw-r--r--src/fcstdint.h4
-rw-r--r--src/fcstr.c253
-rw-r--r--src/fcweight.c95
-rw-r--r--src/fcwindows.h7
-rw-r--r--src/fcxml.c404
-rwxr-xr-xtest-driver139
-rw-r--r--test/Makefile.am24
-rw-r--r--test/Makefile.in642
-rw-r--r--test/run-test.sh21
-rw-r--r--test/test-migration.c227
-rw-r--r--test/test-pthread.c26
570 files changed, 26948 insertions, 20590 deletions
diff --git a/ChangeLog b/ChangeLog
index 0be489a4..9a05f9b2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,18 +1,827 @@
+commit f6244d2cf231e1dc756f3e941e61b9bf124879bb
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed May 8 11:57:49 2013 +0900
+
+ Use the glob matching for filename
+
+ Regex is expensive to compare filenames. we already have the glob
+ matching
+ and it works enough in this case.
+
+ Prior to this change, renaming FcConfigGlobMatch() to FcStrGlobMatch()
+ and moving to fcstr.c
+
+ src/fccfg.c | 46 +---------------------------------------------
+ src/fcint.h | 4 ++++
+ src/fcmatch.c | 6 ++----
+ src/fcstr.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 51 insertions(+), 49 deletions(-)
+
+commit 03216ccf4ca0808f9c7b9513efcaeb7f4058b575
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Apr 10 18:41:22 2013 +0900
+
+ Bug 63329 - make check fails: .. contents:: :depth: 2
+
+ Add back FcHashGetSHA256DigestFromFile() and fall back to it
+ when font isn't SFNT-based font because FT_Load_Sfnt_Table
+ fails with FT_Err_Invalid_Face_Handle.
+
+ src/fcfreetype.c | 32 ++++++++++++++++++++---------
+ src/fchash.c | 62
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h | 4 ++++
+ 3 files changed, 88 insertions(+), 10 deletions(-)
+
+commit 77419a4dfdf41ed34dd03e74d0e4e6f89dbc65e1
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Apr 10 11:14:39 2013 +0900
+
+ documented FC_HASH and FC_POSTSCRIPT_NAME
+
+ doc/fontconfig-devel.sgml | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit fc5a589abad0e8285f7d95007ebda76536e8fa7d
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Apr 9 17:18:43 2013 +0900
+
+ Revert the previous change and rework to not export freetype API
+ outside fcfreetype.c
+
+ src/fcfreetype.c | 23 ++++++++++++++++++++---
+ src/fchash.c | 47 ++++++++++++-----------------------------------
+ src/fcint.h | 5 ++---
+ 3 files changed, 34 insertions(+), 41 deletions(-)
+
+commit c93a8b8b54afe33e5ecf9870723543cb4058fa94
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Apr 9 12:46:30 2013 +0900
+
+ Obtain fonts data via FT_Face instead of opening a file directly
+
+ src/fcfreetype.c | 2 +-
+ src/fchash.c | 50 +++++++++++++++++++++++++++++++++-----------------
+ src/fcint.h | 4 +++-
+ 3 files changed, 37 insertions(+), 19 deletions(-)
+
+commit 9299155b5247255d6b6687448173056c3ca8d09b
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Apr 9 11:34:35 2013 +0900
+
+ Ensure closing fp on error
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 18bf57c70aafcad031c0b43756b754dcaf6a756a
+Author: Sebastian Freundt <hroptatyr@fresse.org>
+Date: Sun Apr 7 00:02:58 2013 +0000
+
+ build-chain, replace INCLUDES directive by AM_CPPFLAGS
+
+ As of automake-13.1 the INCLUDES directive is no longer supported.
+ An automake run will return with an error.
+
+ This changeset simply follows automake's advice to replace INCLUDES
+ by AM_CPPFLAGS.
+
+ Tools.mk | 4 ++--
+ fc-cache/Makefile.am | 2 +-
+ fc-cat/Makefile.am | 2 +-
+ fc-list/Makefile.am | 2 +-
+ fc-match/Makefile.am | 2 +-
+ fc-pattern/Makefile.am | 2 +-
+ fc-query/Makefile.am | 2 +-
+ fc-scan/Makefile.am | 2 +-
+ fc-validate/Makefile.am | 2 +-
+ src/Makefile.am | 2 +-
+ 10 files changed, 11 insertions(+), 11 deletions(-)
+
+commit 8fd0ed60a62cb7f36b2ade1bd16a66671eaf79da
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Mon Apr 1 18:16:28 2013 +0900
+
+ Bug 62980 - matching native fonts with even :lang=en
+
+ Fix the matcher modified by 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+ to deal with both strong and weak of FC_LANG as the same location
+ in the score
+
+ src/fcmatch.c | 23 +++++++----------------
+ 1 file changed, 7 insertions(+), 16 deletions(-)
+
+commit 73fa326d1e791b587da93b795f962c3405b7a96d
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 29 16:10:15 2013 +0900
+
+ Bump version to 2.10.92
+
+ README | 65
+ +++++++++++++++++++++++++++++++++++++++++++++++--
+ configure.ac | 2 +-
+ fontconfig/fontconfig.h | 2 +-
+ 3 files changed, 65 insertions(+), 4 deletions(-)
+
+commit c842412c079e781d53f023616d9758223fb68323
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 29 16:07:30 2013 +0900
+
+ Minor fix
+
+ new-version.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit b3b435b87f1aec1b2779fd7edbbff5571c3c61a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 29 16:02:34 2013 +0900
+
+ Bump libtool revision
+
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 3fc22cfe756fcb2d6c5a64aa305957c417c6cecd
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 29 12:46:04 2013 +0900
+
+ Minor cleanup
+
+ Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit b561ff2016ce84eef3c81f16dfb0481be6a13f9b
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Jan 18 11:30:10 2013 +0900
+
+ Bug 38737 - Wishlist: support FC_POSTSCRIPT_NAME
+
+ Add the PostScript name into the cache and the matcher.
+ Scoring the better font against the PostScript name by
+ the forward-matching.
+
+ fontconfig/fontconfig.h | 1 +
+ src/fcfreetype.c | 49 +++++++++++++++++++++++++++-
+ src/fcint.h | 6 ++++
+ src/fcmatch.c | 21 ++++++++++++
+ src/fcobjs.h | 1 +
+ src/fcstr.c | 85
+ ++++++++++++++++++++++++++++---------------------
+ 6 files changed, 125 insertions(+), 38 deletions(-)
+
+commit c758206e8c0e5b572bd34183b184ef4361745333
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Thu Mar 21 11:58:06 2013 +0900
+
+ Fix a SIGSEGV on FcPatternGet* with NULL pattern
+
+ src/fcpat.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit bdf1581e3de5528f397f19bfd4ca9caaf9e7fe4a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Fri Mar 8 05:53:27 2013 -0500
+
+ Fix crash with FcConfigSetCurrent(NULL)
+
+ src/fccfg.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit aad4d6f6c68d06415333f5d0d3e4b4870114f11d
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Thu Mar 7 13:19:50 2013 +0900
+
+ Do not copy FC_*LANG_OBJECT even if it's not available on the pattern
+
+ those objects are linked to the corresponding string objects.
+ this may causes inconsistency that those objects has more values
+ than them.
+
+ src/fcmatch.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit e96d7760886a3781a46b3271c76af99e15cb0146
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Feb 6 19:35:30 2013 +0900
+
+ Bug 59456 - Adding a --sysroot like option to fc-cache
+
+ Add an ability to set the system root to generate the caches.
+ In order to do this, new APIs, FcConfigGetSysRoot() and
+ FcConfigSetSysRoot() is available.
+
+ doc/fcconfig.fncs | 21 +++++++++++
+ fc-cache/fc-cache.c | 38 +++++++++++++------
+ fontconfig/fontconfig.h | 7 ++++
+ src/fccache.c | 99
+ +++++++++++++++++++++++++++++++++----------------
+ src/fccfg.c | 57 ++++++++++++++++++++++++++++
+ src/fcinit.c | 30 ++++++++++-----
+ src/fcint.h | 15 +++++++-
+ src/fcstr.c | 62 ++++++++++++++++++++++++++++++-
+ 8 files changed, 275 insertions(+), 54 deletions(-)
+
+commit 569657a24ca11aedfd3b588984344d7ab97fe09f
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Mar 5 12:46:01 2013 +0900
+
+ Fix a memory leak
+
+ src/fclang.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 612ee2a5c91b8929b2cc5abce4af84d8d7e66bd0
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 1 22:21:25 2013 +0900
+
+ Fix broken sort order with FcFontSort()
+
+ which was introduced by 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+
+ src/fcmatch.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+commit ea4ebd59377d3dff3616bd20381f308a92781ae6
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 1 19:38:21 2013 +0900
+
+ Fix a crash when the object is non-builtin object
+
+ src/fcmatch.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 10230497675fa4fcbb427efe8dd2883839ddaec0
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 1 18:41:27 2013 +0900
+
+ Fix a typo
+
+ conf.d/30-metric-aliases.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit db69bf6ecd0da4d23bdfe38652bb53d2daa655a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Mar 1 18:31:01 2013 +0900
+
+ Bug 60783 - Add Liberation Sans Narrow to 30-metric-aliases.conf
+
+ Add Liberation Sans Narrow as an alias for Arial Narrow
+
+ conf.d/30-metric-aliases.conf | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+commit 2c696255749683e9a084f797eb033d222510a275
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Mon Feb 18 13:17:53 2013 +0900
+
+ Bug 60748 - broken conf.d/10-autohint.conf and conf.d/10-unhinted.conf
+
+ Move the target of recipes to the "pattern" from the "font".
+ This is to ensure the targeted objects is updated by them
+ prior to FcDefaultSubstitute() so that it can adds the default
+ values properly.
+
+ conf.d/10-autohint.conf | 2 +-
+ conf.d/10-no-sub-pixel.conf | 2 +-
+ conf.d/10-sub-pixel-bgr.conf | 2 +-
+ conf.d/10-sub-pixel-rgb.conf | 2 +-
+ conf.d/10-sub-pixel-vbgr.conf | 2 +-
+ conf.d/10-sub-pixel-vrgb.conf | 2 +-
+ conf.d/10-unhinted.conf | 2 +-
+ conf.d/11-lcdfilter-default.conf | 2 +-
+ conf.d/11-lcdfilter-legacy.conf | 2 +-
+ conf.d/11-lcdfilter-light.conf | 2 +-
+ 10 files changed, 10 insertions(+), 10 deletions(-)
+
+commit 83f679ce558de736ef1a095a362397da0ac3417f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Fri Feb 15 09:48:38 2013 -0500
+
+ Accept digits as part of OpenType script tags
+
+ They've been used since 2005.
+
+ src/fcfreetype.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 72b0480a21958f0f8c115d8e0a5bfbd8d358b5c3
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Thu Feb 7 17:56:17 2013 +0900
+
+ Add Culmus foundry to the vendor list
+
+ Maps fonts produced by the Culmus project
+ <http://culmus.sourceforge.net>
+ to the XLFD foundry name culmus.
+
+ For TrueType fonts, maps the vendor code CLM from the TrueType vendor
+ id field.
+
+ For Type1 fonts, which use heuristics to guess mappings to XLFD
+ foundries from
+ words in the copyright notice, add the names of the main contributors
+ to
+ the Culmus product to recognize the fonts under their copyright.
+
+ Patch from Maxim Iorsh
+
+ src/fcfreetype.c | 67
+ +++++++++++++++++++-------------------------------------
+ 1 file changed, 23 insertions(+), 44 deletions(-)
+
+commit 96220a5ed9d1d761b14a7ac516ac6786c132f280
+Author: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date: Sat Feb 2 17:01:07 2013 +0100
+
+ Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
+ TESTS_ENVIRONMENT is deprecated and should be reserved to the user to
+ override the test environment
+
+ <ext>_LOG_COMPILER is meant to contain the program that runs the test
+ with <ext> extension
+ LOG_COMPILER is for extensionless tests
+ AM_TESTS_ENVIRONMENT is meant to set the environment for the tests
+
+ https://bugs.freedesktop.org/show_bug.cgi?id=60192
+
+ Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+
+ Makefile.am | 1 -
+ configure.ac | 2 +-
+ doc/Makefile.am | 5 ++++-
+ test/Makefile.am | 12 +++++++++++-
+ 4 files changed, 16 insertions(+), 4 deletions(-)
+
+commit 62b7d764ce994bb32e7614337fdfa0854445c380
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Feb 6 19:14:51 2013 +0900
+
+ Bump the cache version to 4
+
+ fontconfig/fontconfig.h | 2 +-
+ src/fcint.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Feb 6 19:02:07 2013 +0900
+
+ Update _FcMatchers definition logic
+
+ to make it easier to maintain. also added FC_HASH_OBJECT to be matched
+ in the pattern, prior to FC_FILE_OBJECT.
+
+ src/fcint.h | 2 +-
+ src/fcmatch.c | 184
+ +++++++++++++++++++++++--------------------------
+ src/fcname.c | 2 +-
+ src/fcobjs.h | 90 ++++++++++++------------
+ src/fcobjshash.gperf.h | 2 +-
+ 5 files changed, 134 insertions(+), 146 deletions(-)
+
+commit 52b2b5c99268d5ad28dc0972c5f136720d55f21b
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Feb 5 20:44:18 2013 +0900
+
+ Bug 60312 - DIST_SUBDIRS should never appear in a conditional
+
+ As it is documented like this:
+
+ If SUBDIRS is defined conditionally using Automake conditionals,
+ Automake will define DIST_SUBDIRS automatically from the possible
+ values of SUBDIRS in all conditions.
+
+ So we don't need to re-define DIST_SUBDIRS in Makefile.am unless
+ we use AC_SUBST to define SUBDIRS.
+
+ Patch from Quentin Glidic
+
+ Makefile.am | 3 ---
+ 1 file changed, 3 deletions(-)
+
+commit 95af7447dba7c54ed162b667c0bb2ea6500e8f32
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Mon Feb 4 16:03:29 2013 +0900
+
+ Bug 50733 - Add font-file hash?
+
+ Add "hash" object which contains SHA256 hash value (so far) computed
+ from the font file.
+
+ fontconfig/fontconfig.h | 1 +
+ src/Makefile.am | 1 +
+ src/fcfreetype.c | 9 ++
+ src/fchash.c | 265
+ ++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h | 7 ++
+ src/fcobjs.h | 1 +
+ 6 files changed, 284 insertions(+)
+
+commit d34643894f2dff7eec35345e8e9b32a9a32fa113
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Feb 5 14:17:16 2013 +0900
+
+ Use AM_MISSING_PROG instead of hardcoding missing
+
+ Makefile.am | 2 +-
+ configure.ac | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+commit 241cd53ff62599ecf557c6a4f975fc427dad9700
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Feb 5 11:33:47 2013 +0900
+
+ Revert "test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT"
+
+ This reverts commit 2146b0307a3476892723104481f27f8484451c52.
+
+ That change introduces incompatibility and seems not working with
+ older releases of automake, including automake 1.12.2.
+
+ test/Makefile.am | 12 +-----------
+ 1 file changed, 1 insertion(+), 11 deletions(-)
+
+commit 2146b0307a3476892723104481f27f8484451c52
+Author: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date: Sat Feb 2 17:01:07 2013 +0100
+
+ test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
+ TESTS_ENVIRONMENT is deprecated and should be reserved to the user to
+ override the test environment
+
+ <ext>_LOG_COMPILER is meant to contain the program that runs the test
+ with <ext> extension
+ AM_TESTS_ENVIRONMENT is meant to set the environment for the tests
+
+ https://bugs.freedesktop.org/show_bug.cgi?id=60192
+
+ Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+
+ test/Makefile.am | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+commit da0946721af3ab2dff3cd903065336b93592d067
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Mon Feb 4 17:57:00 2013 +0900
+
+ Use AM_MISSING_PROG instead of hardcoding missing
+
+ configure.ac | 2 ++
+ src/Makefile.am | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+commit 786ead52015573e7b60a53d79abc26d611f1fe93
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Mon Feb 4 17:20:03 2013 +0900
+
+ Modernize configure.ac
+
+ configure.ac | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit 20191810d1fea7c2f49b65ffee3e4d5e2bc0bac3
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Jan 29 20:19:36 2013 +0900
+
+ Bug 23757 - Add mode="delete" to <edit>
+
+ Add two edit mode, "delete" and "delete_all".
+ what values are being deleted depends on <test> as documented.
+ if the target object is same to what is tested, matching value there
+ will be deleted. otherwise all of values in the object will be
+ deleted.
+ so this would means both edit mode will not take any expressions.
+
+ e.g.
+
+ Given that the testing is always true here, the following rules:
+
+ <match>
+ <test name="foo" compare="eq">
+ <string>bar</string>
+ </test>
+ <edit name="foo" mode="delete"/>
+ </match>
+
+ will removes "bar" string from "foo" object. and:
+
+ <match>
+ <test name="foo" compare="eq">
+ <string>foo</string>
+ </test>
+ <edit name="bar" mode="delete"/>
+ </match>
+
+ will removes all of values in "bar" object.
+
+ doc/fontconfig-user.sgml | 2 ++
+ fonts.dtd | 2 +-
+ src/fccfg.c | 10 ++++++++++
+ src/fcdbg.c | 6 ++++--
+ src/fcint.h | 1 +
+ src/fcxml.c | 11 +++++++++++
+ 6 files changed, 29 insertions(+), 3 deletions(-)
+
+commit c1d9588890798e389d0f0ba633b704dee1ea8bf5
+Author: Colin Walters <walters@verbum.org>
+Date: Thu Jan 31 21:32:46 2013 -0500
+
+ build: Only use PKG_INSTALLDIR if available
+
+ It's only in pkg-config 0.27 or newer, but 0.25 at least is still
+ fairly widespread.
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e11f15628cff04c4a742f88abee22f440edcce52
+Author: Christoph J. Thompson <cjsthompson@gmail.com>
+Date: Fri Feb 1 02:27:32 2013 +0100
+
+ Use the PKG_INSTALLDIR macro.
+
+ modified: Makefile.am
+ modified: configure.ac
+
+ Makefile.am | 1 -
+ configure.ac | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+commit d26fb23c41abd87422778bb38eea39f25ba3dc4a
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Fri Jan 25 20:01:24 2013 +0900
+
+ Bug 59385 - Do the right thing for intermixed edit and test elements
+
+ This changes allows to have multiple mathcing rules in one <match>
+ block
+ in the same order.
+ After this changes, the following thing will works as two matching
+ rules:
+
+ <match>
+ <!-- rule 1 -->
+ <test name="family" compare="eq">
+ <string>foo</string>
+ </test>
+ <edit name="foo" mode="append">
+ <string>foo</string>
+ </edit>
+ <!-- rule 2 -->
+ <test name="foo" compare="eq">
+ <string>foo</string>
+ </test>
+ <edit name="foo" mode="append">
+ <string>bar</string>
+ </edit>
+ </match>
+
+ fonts.dtd | 2 +-
+ src/fcxml.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 47 insertions(+), 1 deletion(-)
+
+commit fb3b410998aba8835999e2ca7003a180431cfaf4
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Jan 23 12:37:51 2013 +0900
+
+ remove the unnecessary code
+
+ src/fccompat.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+commit 5400bb4fb43dc811b813f11d5b0c023db727f543
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Jan 23 12:32:37 2013 +0900
+
+ Add another approach to FC_PRGNAME for Solaris 10 or before
+
+ Patch from Raimund Steger
+
+ configure.ac | 2 +-
+ src/fcdefault.c | 5 ++++-
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+commit 000ca9ccb03013a5b151f0d21148ab0ca4c2f2de
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Jan 22 12:11:56 2013 +0900
+
+ Fix installation on MinGW32
+
+ Patch from LRN
+
+ src/Makefile.am | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 6363193a0575cf6f58baf7f0a772ad8f92b7b904
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Jan 22 12:03:28 2013 +0900
+
+ Fix mkstemp absence for some platform
+
+ Patch from LRN and modified to make more generic.
+
+ src/fccache.c | 57 ----------------------------
+ src/fccompat.c | 116
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h | 3 ++
+ 3 files changed, 119 insertions(+), 57 deletions(-)
+
+commit 9dbc282796e9a4d5a2a8cc7d1c8e29b9154e91c0
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Jan 22 10:26:41 2013 +0900
+
+ Add missing file descriptor to F_DUPFD_CLOEXEC
+
+ Patch from Matthieu Herrb
+
+ src/fccompat.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6118781f7f5dba672d19a841cc231661bf5fb59d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Thu Jan 17 19:27:20 2013 -0600
+
+ Fix readlink failure
+
+ As reported by Raimund Steger.
+
+ src/fcdefault.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 671bcb34e23ed03b1f564af35560db81f8b12b96
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Thu Jan 17 12:49:16 2013 +0900
+
+ Better fix for 2fe5ddfd
+
+ Drop realpath() and fix breakage on Win32
+
+ configure.ac | 2 +-
+ src/fcdefault.c | 14 +++++++-------
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+commit 2fe5ddfdae6be80db5b7e622ab6c1ab985377542
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Wed Jan 16 21:01:28 2013 -0600
+
+ Fix FC_PRGNAME default
+
+ As reported by Raimund Steger.
+
+ src/fcdefault.c | 36 +++++++++++++++++++-----------------
+ 1 file changed, 19 insertions(+), 17 deletions(-)
+
+commit 55d39bcad0737e92e1207fabbd8c65fa9e5e0482
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Wed Jan 16 07:30:44 2013 -0600
+
+ Fix fc-cache crash caused by looking up NULL object incorrectly
+
+ We were returning a skiplist node when looking up NULL!
+
+ src/fccache.c | 7 +++++--
+ src/fccfg.c | 4 ++--
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+commit 106c4f73119e00a7804ef79ee556f1111d680e32
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Wed Jan 16 07:05:07 2013 -0600
+
+ Minor
+
+ src/fcfreetype.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 1a5d0daea0173e2cc47d76d2022467f0dbd423f0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Wed Jan 16 04:52:06 2013 -0600
+
+ Remove unused checks for common functions
+
+ The check results of these were never actually used.
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit f9ac4c84c90cbb57afbf1fa3a5c9ff3bfc4f537e
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Wed Jan 16 16:35:28 2013 +0900
+
+ Improve FcGetPrgname() to work on BSD
+
+ configure.ac | 2 +-
+ src/fcdefault.c | 10 ++++++++++
+ 2 files changed, 11 insertions(+), 1 deletion(-)
+
+commit ec5ca08c807585a9230f83c95f7cca6b7065b142
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Tue Jan 15 20:41:26 2013 -0600
+
+ Bug 59379 - FC_PRGNAME
+
+ Can be used for per-application configuration.
+
+ configure.ac | 2 +-
+ doc/fontconfig-devel.sgml | 3 +-
+ doc/fontconfig-user.sgml | 1 +
+ fontconfig/fontconfig.h | 1 +
+ src/fccfg.c | 7 ++++
+ src/fcdefault.c | 85
+ +++++++++++++++++++++++++++++++++++++++++++++--
+ src/fcint.h | 3 ++
+ src/fcobjs.h | 1 +
+ 8 files changed, 99 insertions(+), 4 deletions(-)
+
+commit 3f84695104b169fe25742ba3b91d04467f5debc4
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Sep 4 12:39:48 2012 +0900
+
+ Bug 50497 - RFE: Add OpenType feature tags support
+
+ Add FC_FONT_FEATURES to store the feature tags to be enabled.
+
+ doc/fontconfig-devel.sgml | 2 ++
+ doc/fontconfig-user.sgml | 1 +
+ fontconfig/fontconfig.h | 1 +
+ src/fcobjs.h | 1 +
+ 4 files changed, 5 insertions(+)
+
+commit dffb69ed8c7cf2e707bc692f94b51108b772d9d8
+Author: Akira TAGOH <akira@tagoh.org>
+Date: Tue Jan 15 17:26:27 2013 +0900
+
+ Fix the build fail on MinGW
+
+ Reported at
+ http://lists.freedesktop.org/archives/fontconfig/2013-January/004601.html
+
+ just warn at the runtime instead of the compile time. it somewhat
+ works
+ on even MinGW since FcMakeTempfile() isn't used on Win32 so far.
+
+ src/fccompat.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+commit 8b8f0d21534aa9b82276815c84429ffca8941d2a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Mon Jan 14 14:39:12 2013 -0600
+
+ Minor
+
+ src/fcmatch.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 8828fffd93c6b19bcfd7626ddc472aa8f055d034
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Mon Jan 14 14:36:38 2013 -0600
+
+ Copy all values from pattern to font if the font doesn't have
+ the element
+
+ Bug 59376 - FcFontRenderPrepare enhancement
+
+ src/fcmatch.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 0831c1770e4bac7269a190936bbb0529d747e233
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Thu Jan 10 09:01:52 2013 -0600
+
+ Ensure we find the uninstalled fontconfig header
+
+ Patch from Colin Walters.
+
+ test/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 1527c395cbe0bbab9e66a42213ef3ac5ce1c0383
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Thu Jan 10 09:00:18 2013 -0600
+
+ Resepct $NOCONFIGURE
+
+ Patch from Colin Walters.
+
+ autogen.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
commit fcc3567847949ec422157d331c9640cd0453e169
Author: Akira TAGOH <akira@tagoh.org>
-Date: Thu Jan 10 17:57:12 2013 +0900
+Date: Thu Jan 10 17:57:12 2013 +0900
Bump version to 2.10.91
- README | 105
+ README | 105
+++++++++++++++++++++++++++++++++++++++++++++++-
- configure.ac | 2 +-
+ configure.ac | 2 +-
fontconfig/fontconfig.h | 2 +-
3 files changed, 105 insertions(+), 4 deletions(-)
commit 98352247f2ab01046c330485f73fd26eb15a08a4
Author: Akira TAGOH <akira@tagoh.org>
-Date: Thu Jan 10 17:56:51 2013 +0900
+Date: Thu Jan 10 17:56:51 2013 +0900
Update the date in README properly
@@ -21,7 +830,7 @@ Date: Thu Jan 10 17:56:51 2013 +0900
commit 9066fbe7855674ff51053b78f1d0d179486e22ea
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Jan 10 01:23:07 2013 -0600
+Date: Thu Jan 10 01:23:07 2013 -0600
Make linker happy
@@ -30,39 +839,39 @@ Date: Thu Jan 10 01:23:07 2013 -0600
commit 98efed3bcafc92b573b193b5b38039aa717617d3
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Jan 10 01:17:02 2013 -0600
+Date: Thu Jan 10 01:17:02 2013 -0600
Add atomic ops for Solaris
Patch from Raimund Steger.
- configure.ac | 22 ++++++++++++++++++++--
+ configure.ac | 22 ++++++++++++++++++++--
src/fcatomic.h | 12 ++++++++++++
2 files changed, 32 insertions(+), 2 deletions(-)
commit 8e8a99ae8a1c2e56c42093bee577d6de66248366
Author: Akira TAGOH <akira@tagoh.org>
-Date: Mon Sep 10 16:09:04 2012 +0900
+Date: Mon Sep 10 16:09:04 2012 +0900
Bug 29312 - RFE: feature to indicate which characters are missing
to satisfy the language support
Add fc-validate to check the language coverage in a font.
- Makefile.am | 2 +-
- configure.ac | 1 +
- doc/fclangset.fncs | 8 ++
+ Makefile.am | 2 +-
+ configure.ac | 1 +
+ doc/fclangset.fncs | 8 ++
fc-validate/Makefile.am | 60 +++++++++++
fc-validate/fc-validate.c | 242
+++++++++++++++++++++++++++++++++++++++++++
fc-validate/fc-validate.sgml | 182 ++++++++++++++++++++++++++++++++
fontconfig/fontconfig.h | 3 +
- src/fcint.h | 3 -
+ src/fcint.h | 3 -
8 files changed, 497 insertions(+), 4 deletions(-)
commit 16fd965171808c10f87d097f678ee9e10771be72
Author: Akira TAGOH <akira@tagoh.org>
-Date: Wed Jan 9 11:26:56 2013 +0900
+Date: Wed Jan 9 11:26:56 2013 +0900
Fix a typo in the manpages template
@@ -71,20 +880,20 @@ Date: Wed Jan 9 11:26:56 2013 +0900
commit 7680e9ee891a74f0e428e30604a5d0ff0e2e9383
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 8 14:51:00 2013 -0600
+Date: Tue Jan 8 14:51:00 2013 -0600
Add pthread test
Not enabled by default since it requires config and fonts.
- test/Makefile.am | 9 ++++++
+ test/Makefile.am | 9 ++++++
test/test-pthread.c | 79
+++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 88 insertions(+)
commit dc21ed28d69df279c6068d9cae862e02af72815f
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 8 13:01:48 2013 -0600
+Date: Tue Jan 8 13:01:48 2013 -0600
Fix memory corruption!
@@ -97,22 +906,22 @@ Date: Tue Jan 8 13:01:48 2013 -0600
running to catch:
==4464== Invalid read of size 4
- ==4464== at 0x4E58FF3: FcStrListNext (fcstr.c:1256)
- ==4464== by 0x4E3F11D: FcConfigSubstituteWithPat (fccfg.c:1508)
- ==4464== by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
- ==4464== by 0x4009FA: test_match (simple-pthread-test.c:53)
- ==4464== by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
- ==4464== by 0x507EE99: start_thread (pthread_create.c:308)
+ ==4464== at 0x4E58FF3: FcStrListNext (fcstr.c:1256)
+ ==4464== by 0x4E3F11D: FcConfigSubstituteWithPat (fccfg.c:1508)
+ ==4464== by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
+ ==4464== by 0x4009FA: test_match (simple-pthread-test.c:53)
+ ==4464== by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
+ ==4464== by 0x507EE99: start_thread (pthread_create.c:308)
==4464== Address 0x6bc0b44 is 4 bytes inside a block of size
24 free'd
- ==4464== at 0x4C2A82E: free (in
+ ==4464== at 0x4C2A82E: free (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
- ==4464== by 0x4E58F84: FcStrSetDestroy (fcstr.c:1236)
- ==4464== by 0x4E3F0C6: FcConfigSubstituteWithPat (fccfg.c:1507)
- ==4464== by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
- ==4464== by 0x4009FA: test_match (simple-pthread-test.c:53)
- ==4464== by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
- ==4464== by 0x507EE99: start_thread (pthread_create.c:308)
+ ==4464== by 0x4E58F84: FcStrSetDestroy (fcstr.c:1236)
+ ==4464== by 0x4E3F0C6: FcConfigSubstituteWithPat (fccfg.c:1507)
+ ==4464== by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
+ ==4464== by 0x4009FA: test_match (simple-pthread-test.c:53)
+ ==4464== by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
+ ==4464== by 0x507EE99: start_thread (pthread_create.c:308)
Thread test is running happily now. Will add the test in a moment.
@@ -121,19 +930,19 @@ Date: Tue Jan 8 13:01:48 2013 -0600
commit 4e6c7d0827c5b3b20205521bf9bd2e94e704b36d
Author: Akira TAGOH <akira@tagoh.org>
-Date: Tue Jan 8 16:20:28 2013 +0900
+Date: Tue Jan 8 16:20:28 2013 +0900
Fix a build fail on mingw
Regarding the change of 596931c8b4a7a35cbff9c33437d3cd44395d9c3f
- configure.ac | 2 +-
+ configure.ac | 2 +-
src/fccompat.c | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
commit d837a7a584bc1e908bc4370d337cd10ecc781fad
Author: Akira TAGOH <akira@tagoh.org>
-Date: Tue Jan 8 16:18:32 2013 +0900
+Date: Tue Jan 8 16:18:32 2013 +0900
missing header file to declare _mkdir
@@ -142,24 +951,24 @@ Date: Tue Jan 8 16:18:32 2013 +0900
commit 596931c8b4a7a35cbff9c33437d3cd44395d9c3f
Author: Akira TAGOH <akira@tagoh.org>
-Date: Thu Dec 6 20:01:52 2012 +0900
+Date: Thu Dec 6 20:01:52 2012 +0900
Bug 47705 - Using O_CLOEXEC
- configure.ac | 4 ++-
+ configure.ac | 4 ++-
src/Makefile.am | 1 +
src/fcatomic.c | 3 +-
- src/fccache.c | 6 ++--
+ src/fccache.c | 6 ++--
src/fccompat.c | 103
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h | 7 ++++
- src/fcstat.c | 2 +-
- src/fcxml.c | 2 +-
+ src/fcint.h | 7 ++++
+ src/fcstat.c | 2 +-
+ src/fcxml.c | 2 +-
8 files changed, 120 insertions(+), 8 deletions(-)
commit d7de1b5c6d4b8800825913ac40a9cea00824f2f8
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Jan 7 20:10:14 2013 -0600
+Date: Mon Jan 7 20:10:14 2013 -0600
Fix pthreads setup
@@ -170,7 +979,7 @@ Date: Mon Jan 7 20:10:14 2013 -0600
commit 1c4c4978adb0fa59767ac7d8c7f98a86928b2fdc
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Jan 7 17:59:17 2013 -0600
+Date: Mon Jan 7 17:59:17 2013 -0600
Oops, add the actual file
@@ -180,7 +989,7 @@ Date: Mon Jan 7 17:59:17 2013 -0600
commit dc11dd581f228623f0f14b3a6a1e4beaa659266b
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Jan 7 16:41:29 2013 -0600
+Date: Mon Jan 7 16:41:29 2013 -0600
Add 10-scale-bitmap-fonts.conf and enable by default
@@ -189,7 +998,7 @@ Date: Mon Jan 7 16:41:29 2013 -0600
commit ea3a35306617eec068ed961439cf76cdbcb10c28
Author: Akira TAGOH <akira@tagoh.org>
-Date: Mon Jan 7 17:55:04 2013 +0900
+Date: Mon Jan 7 17:55:04 2013 +0900
Clean up the unused variable
@@ -198,7 +1007,7 @@ Date: Mon Jan 7 17:55:04 2013 +0900
commit 17eda89ed2e24a3fc5f68538dd7fd9ada8efb087
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Jan 3 20:33:34 2013 -0600
+Date: Thu Jan 3 20:33:34 2013 -0600
Remove FcInit() calls from tools
@@ -206,16 +1015,16 @@ Date: Thu Jan 3 20:33:34 2013 -0600
doesn't,
it's a bug.
- fc-list/fc-list.c | 5 -----
- fc-match/fc-match.c | 5 -----
+ fc-list/fc-list.c | 5 -----
+ fc-match/fc-match.c | 5 -----
fc-pattern/fc-pattern.c | 5 -----
- fc-query/fc-query.c | 6 ------
- fc-scan/fc-scan.c | 6 ------
+ fc-query/fc-query.c | 6 ------
+ fc-scan/fc-scan.c | 6 ------
5 files changed, 27 deletions(-)
commit 102a4344dd7f668cf03b9665c718505050e0ae78
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Jan 3 20:31:22 2013 -0600
+Date: Thu Jan 3 20:31:22 2013 -0600
Don't use blanks for fc-query
@@ -226,7 +1035,7 @@ Date: Thu Jan 3 20:31:22 2013 -0600
commit b6b678e71eb0ba2b53335b7df0804058f6bd006d
Author: Akira TAGOH <akira@tagoh.org>
-Date: Fri Jan 4 11:29:50 2013 +0900
+Date: Fri Jan 4 11:29:50 2013 +0900
Missing header file for _mkdir declaration
@@ -235,7 +1044,7 @@ Date: Fri Jan 4 11:29:50 2013 +0900
commit 8e143b4ec447a7ee6c501e7488a3c94db7e6a035
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Jan 3 04:19:12 2013 -0600
+Date: Thu Jan 3 04:19:12 2013 -0600
Minor
@@ -244,7 +1053,7 @@ Date: Thu Jan 3 04:19:12 2013 -0600
commit 16ddb9ff31a7d45ae477f5274c704523b2ec7330
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 22:37:33 2013 -0600
+Date: Wed Jan 2 22:37:33 2013 -0600
Ugh, add Tools.mk
@@ -254,7 +1063,7 @@ Date: Wed Jan 2 22:37:33 2013 -0600
commit 86e3255118e943bcc5c16cf1628ca381470ca34d
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 20:16:55 2013 -0600
+Date: Wed Jan 2 20:16:55 2013 -0600
Second try to make Sun CPP happy
@@ -263,23 +1072,23 @@ Date: Wed Jan 2 20:16:55 2013 -0600
commit bc62c40597c3d95edfdc6a93b39d0bb3837d1d34
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 20:08:40 2013 -0600
+Date: Wed Jan 2 20:08:40 2013 -0600
Really fix cross-compiling and building of tools this time
- configure.ac | 1 +
- fc-case/Makefile.am | 47 +++++----------------------
+ configure.ac | 1 +
+ fc-case/Makefile.am | 47 +++++----------------------
fc-glyphname/Makefile.am | 47 +++++----------------------
- fc-glyphname/fc-glyphname.c | 2 +-
- fc-lang/Makefile.am | 44 +++++---------------------
- fc-lang/fc-lang.c | 8 ++---
- m4/ax_cc_for_build.m4 | 77
+ fc-glyphname/fc-glyphname.c | 2 +-
+ fc-lang/Makefile.am | 44 +++++---------------------
+ fc-lang/fc-lang.c | 8 ++---
+ m4/ax_cc_for_build.m4 | 77
+++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 107 insertions(+), 119 deletions(-)
commit 32c1d32cbd54686804481fedaa1881d4f3043f1b
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 19:04:17 2013 -0600
+Date: Wed Jan 2 19:04:17 2013 -0600
Work around Sun CPP
@@ -338,12 +1147,12 @@ Date: Wed Jan 2 19:04:17 2013 -0600
[...]
fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
- $(AM_V_GEN) $(CPP) -I$(top_srcdir) $< | \
- $(SED) 's/^\s*//;s/\s*,\s*/,/;' | \
- $(GREP) '^[^#]' | \
- $(AWK) '/CUT_OUT_BEGIN/,/CUT_OUT_END/ { next; }; { print; };' \
- > $@.tmp && \
- mv -f $@.tmp $@
+ $(AM_V_GEN) $(CPP) -I$(top_srcdir) $< | \
+ $(SED) 's/^\s*//;s/\s*,\s*/,/;' | \
+ $(GREP) '^[^#]' | \
+ $(AWK) '/CUT_OUT_BEGIN/,/CUT_OUT_END/ { next; }; { print; };' \
+ > $@.tmp && \
+ mv -f $@.tmp $@
[...]
though I'm not sure what kind of guarantee CPP can give us/what
@@ -354,17 +1163,17 @@ Date: Wed Jan 2 19:04:17 2013 -0600
commit b1510145e7a38802bd544de6035fabf9f81f9710
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 18:57:47 2013 -0600
+Date: Wed Jan 2 18:57:47 2013 -0600
Fix build around true/false
src/fcatomic.h | 4 ++--
- src/fcinit.c | 10 ++++++++++
+ src/fcinit.c | 10 ++++++++++
2 files changed, 12 insertions(+), 2 deletions(-)
commit 538f1579e86fdcf471cea58945bf8c674d5b91e7
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 18:07:13 2013 -0600
+Date: Wed Jan 2 18:07:13 2013 -0600
Trying to fix distcheck
@@ -372,26 +1181,26 @@ Date: Wed Jan 2 18:07:13 2013 -0600
At least, if docbook is present, distcheck passes now.
- Makefile.am | 11 +++++++++--
- configure.ac | 4 ----
+ Makefile.am | 11 +++++++++--
+ configure.ac | 4 ----
doc/Makefile.am | 8 ++++++++
3 files changed, 17 insertions(+), 6 deletions(-)
commit 46ab96b8fa029fbc8ccf69a6f2fda89866e3ac9c
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 17:52:00 2013 -0600
+Date: Wed Jan 2 17:52:00 2013 -0600
Fix more warnings.
Linux build and mingw32 cross build warning-free now.
- src/fcobjs.c | 10 ++++++++--
+ src/fcobjs.c | 10 ++++++++--
src/fcobjshash.gperf.h | 2 +-
2 files changed, 9 insertions(+), 3 deletions(-)
commit 558b3c65f91b4b2dd65ce2242e1a21ace621e44b
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 17:49:41 2013 -0600
+Date: Wed Jan 2 17:49:41 2013 -0600
Use CC_FOR_BUILD to generate source files
@@ -401,36 +1210,36 @@ Date: Wed Jan 2 17:49:41 2013 -0600
One caveat: the fix is not fully correct since config.h is being
included in the files built with CC_FOR_BUILD, but config.h has config
- for the host system, not the build system. Should be fine though.
+ for the host system, not the build system. Should be fine though.
- configure.ac | 1 +
- doc/Makefile.am | 6 +-----
- fc-case/Makefile.am | 8 +-------
+ configure.ac | 1 +
+ doc/Makefile.am | 6 +-----
+ fc-case/Makefile.am | 8 +-------
fc-glyphname/Makefile.am | 9 ++++-----
- fc-lang/Makefile.am | 9 +++------
+ fc-lang/Makefile.am | 9 +++------
5 files changed, 10 insertions(+), 23 deletions(-)
commit ec8a40d2381014ad2e72b5da0e6357a85f078f9f
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 17:35:56 2013 -0600
+Date: Wed Jan 2 17:35:56 2013 -0600
Fix build and warnings on win32
src/Makefile.am | 1 +
src/fcatomic.h | 9 +++------
- src/fccache.c | 2 +-
- src/fccfg.c | 17 ++++++-----------
- src/fcint.h | 7 +------
- src/fcmutex.h | 5 ++---
- src/fcstat.c | 3 ---
- src/fcstr.c | 3 ---
+ src/fccache.c | 2 +-
+ src/fccfg.c | 17 ++++++-----------
+ src/fcint.h | 7 +------
+ src/fcmutex.h | 5 ++---
+ src/fcstat.c | 3 ---
+ src/fcstr.c | 3 ---
src/fcwindows.h | 44 ++++++++++++++++++++++++++++++++++++++++++++
- src/fcxml.c | 18 +++++++++---------
+ src/fcxml.c | 18 +++++++++---------
10 files changed, 67 insertions(+), 42 deletions(-)
commit 5c0a4f2726fd1440bf3ec4bb375e5e4d146bd989
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 02:27:57 2013 -0600
+Date: Wed Jan 2 02:27:57 2013 -0600
Minor
@@ -440,7 +1249,7 @@ Date: Wed Jan 2 02:27:57 2013 -0600
commit 766bed901f7f4c648387fb403ef6e253be1c45e9
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 02:19:04 2013 -0600
+Date: Wed Jan 2 02:19:04 2013 -0600
Fix compiler warnings
@@ -449,24 +1258,24 @@ Date: Wed Jan 2 02:19:04 2013 -0600
commit 93fb1d4bab5fefb73393141bb3e96c9dc279e615
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 02:06:15 2013 -0600
+Date: Wed Jan 2 02:06:15 2013 -0600
Remove FcSharedStr*
- src/fccfg.c | 2 +-
+ src/fccfg.c | 2 +-
src/fcdefault.c | 6 +++---
- src/fcint.h | 9 +++------
- src/fclist.c | 6 +++---
- src/fcname.c | 2 +-
- src/fcobjs.c | 2 +-
- src/fcpat.c | 25 +++----------------------
- src/fcstr.c | 11 +----------
- src/fcxml.c | 10 +++++-----
+ src/fcint.h | 9 +++------
+ src/fclist.c | 6 +++---
+ src/fcname.c | 2 +-
+ src/fcobjs.c | 2 +-
+ src/fcpat.c | 25 +++----------------------
+ src/fcstr.c | 11 +----------
+ src/fcxml.c | 10 +++++-----
9 files changed, 21 insertions(+), 52 deletions(-)
commit 6b143781073cf395fd6211c75bbdc9f5b5a54936
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 01:54:38 2013 -0600
+Date: Wed Jan 2 01:54:38 2013 -0600
Fixup fcobjs.c
@@ -477,7 +1286,7 @@ Date: Wed Jan 2 01:54:38 2013 -0600
commit 6047ce7b9fb793da4e693e3777bbd3e1baf3146e
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 01:31:34 2013 -0600
+Date: Wed Jan 2 01:31:34 2013 -0600
Warn about undefined/invalid attributes during config parsing
@@ -486,7 +1295,7 @@ Date: Wed Jan 2 01:31:34 2013 -0600
commit b604f10c0c31a56ae16154dfe6a2f13b795aaabf
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Jan 2 01:09:20 2013 -0600
+Date: Wed Jan 2 01:09:20 2013 -0600
Make fcobjs.c thread-safe
@@ -498,7 +1307,7 @@ Date: Wed Jan 2 01:09:20 2013 -0600
commit 2ae07bbcd2a7650f2711b45e78e65e2ca1c4a17a
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Oct 15 19:35:03 2012 -0500
+Date: Mon Oct 15 19:35:03 2012 -0500
Make FcDirCacheDispose() threadsafe
@@ -507,7 +1316,7 @@ Date: Mon Oct 15 19:35:03 2012 -0500
commit 68b8ae9af8b0f86dade6135b01aaf0b2f2077fb5
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Wed Oct 10 15:24:31 2012 -0400
+Date: Wed Oct 10 15:24:31 2012 -0400
Make cache hash threadsafe
@@ -519,7 +1328,7 @@ Date: Wed Oct 10 15:24:31 2012 -0400
commit adb03b730de5d090855f45bc23b934a65ef2399c
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Oct 8 20:03:35 2012 -0400
+Date: Mon Oct 8 20:03:35 2012 -0400
Make random-state initialization threadsafe
@@ -528,7 +1337,7 @@ Date: Mon Oct 8 20:03:35 2012 -0400
commit 91dd7d28ffc397fb1389f76ac55b397e55da809d
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Oct 8 20:02:05 2012 -0400
+Date: Mon Oct 8 20:02:05 2012 -0400
Add a big cache lock
@@ -539,17 +1348,17 @@ Date: Mon Oct 8 20:02:05 2012 -0400
commit 8d2bbb193ae49ea6abd5a9b4d28d3d88ac97d7a2
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 21:03:58 2012 -0400
+Date: Sun Oct 7 21:03:58 2012 -0400
Make cache refcounting threadsafe
src/fcatomic.h | 1 +
- src/fccache.c | 13 ++++++-------
+ src/fccache.c | 13 ++++++-------
2 files changed, 7 insertions(+), 7 deletions(-)
commit 31ee38e541180db6d7bc58d5abde83136352e7ce
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 17:46:12 2012 -0400
+Date: Sun Oct 7 17:46:12 2012 -0400
Minor
@@ -558,7 +1367,7 @@ Date: Sun Oct 7 17:46:12 2012 -0400
commit b8f238e49d7b7e1cff787c518cd4490b32039cca
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 17:42:18 2012 -0400
+Date: Sun Oct 7 17:42:18 2012 -0400
Make FcCacheIsMmapSafe() threadsafe
@@ -567,7 +1376,7 @@ Date: Sun Oct 7 17:42:18 2012 -0400
commit b27a22aae9902d409c21e5bb19a97dcc5966ea24
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 17:29:45 2012 -0400
+Date: Sun Oct 7 17:29:45 2012 -0400
Minor
@@ -576,18 +1385,18 @@ Date: Sun Oct 7 17:29:45 2012 -0400
commit 0552f26016865b8a76819cf342fa0cf13afdc5e8
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 17:02:50 2012 -0400
+Date: Sun Oct 7 17:02:50 2012 -0400
Make default-FcConfig threadsafe
- src/fccfg.c | 60
+ src/fccfg.c | 60
+++++++++++++++++++++++++++++++++++++--------------------
src/fcdefault.c | 3 +--
2 files changed, 40 insertions(+), 23 deletions(-)
commit e53f5da54f066f73a53eba1f82f54521fa3f7ea2
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 16:42:36 2012 -0400
+Date: Sun Oct 7 16:42:36 2012 -0400
Minor
@@ -596,7 +1405,7 @@ Date: Sun Oct 7 16:42:36 2012 -0400
commit 7ae24b4554a8543d8cd41a83b6114e0143982758
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 16:37:03 2012 -0400
+Date: Sun Oct 7 16:37:03 2012 -0400
Refactor; contain default config in fccfg.c
@@ -608,7 +1417,7 @@ Date: Sun Oct 7 16:37:03 2012 -0400
commit 32b0d88923524c24f4be36733ebef5872b57b95a
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 16:26:53 2012 -0400
+Date: Sun Oct 7 16:26:53 2012 -0400
Make FcDefaultFini() threadsafe
@@ -617,7 +1426,7 @@ Date: Sun Oct 7 16:26:53 2012 -0400
commit 7019896c99872b23d89b1404b02754cbc4ea1456
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 16:09:35 2012 -0400
+Date: Sun Oct 7 16:09:35 2012 -0400
Make FcInitDebug() idempotent
@@ -626,66 +1435,66 @@ Date: Sun Oct 7 16:09:35 2012 -0400
commit b97ab0c94938448dc2b780b8f0f60fb68884899f
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 15:52:25 2012 -0400
+Date: Sun Oct 7 15:52:25 2012 -0400
Make FcGetDefaultLang and FcGetDefaultLangs thread-safe
src/fcdefault.c | 83
+++++++++++++++++++++++++++++++++++++++++----------------
- src/fcinit.c | 1 +
- src/fcint.h | 3 +++
- src/fcstr.c | 4 +++
+ src/fcinit.c | 1 +
+ src/fcint.h | 3 +++
+ src/fcstr.c | 4 +++
4 files changed, 68 insertions(+), 23 deletions(-)
commit 64af9e1917114c789ad74dd28b3248f8c0525f45
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 14:41:38 2012 -0400
+Date: Sun Oct 7 14:41:38 2012 -0400
Make refcounts, patterns, charsets, strings, and FcLang thread-safe
src/fcatomic.h | 18 +++++++++---------
- src/fccfg.c | 29 +++++++++++++++--------------
+ src/fccfg.c | 29 +++++++++++++++--------------
src/fccharset.c | 24 ++++++++++++------------
src/fcdefault.c | 2 +-
- src/fcint.h | 26 ++++++++++++++++++++------
- src/fclang.c | 43 ++++++++++++++++++++++++-------------------
- src/fcmatch.c | 4 ----
- src/fcmutex.h | 2 ++
- src/fcpat.c | 25 ++++++++++++-------------
- src/fcstr.c | 24 +++++++++++++-----------
+ src/fcint.h | 26 ++++++++++++++++++++------
+ src/fclang.c | 43 ++++++++++++++++++++++++-------------------
+ src/fcmatch.c | 4 ----
+ src/fcmutex.h | 2 ++
+ src/fcpat.c | 25 ++++++++++++-------------
+ src/fcstr.c | 24 +++++++++++++-----------
10 files changed, 108 insertions(+), 89 deletions(-)
commit 814871b2aaa3a22ef711ca4656507fb69c952156
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 14:24:28 2012 -0400
+Date: Sun Oct 7 14:24:28 2012 -0400
Add thread-safety primitives
- COPYING | 1 +
+ COPYING | 1 +
src/Makefile.am | 2 +
src/fcatomic.h | 123
++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h | 4 +-
- src/fcmutex.h | 126
+ src/fcint.h | 4 +-
+ src/fcmutex.h | 126
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 254 insertions(+), 2 deletions(-)
commit f6d8306e566dd1a4b8a13f433d2bc1ffbe667db7
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sun Oct 7 13:49:45 2012 -0400
+Date: Sun Oct 7 13:49:45 2012 -0400
Add build stuff for threadsafety primitives
Copied over from HarfBuzz.
- configure.ac | 38 ++++++-
+ configure.ac | 38 ++++++-
m4/ax_pthread.m4 | 309
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 346 insertions(+), 1 deletion(-)
commit b53744383dbefb3f80fb8a7365487669a499ad76
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sat Oct 6 18:15:58 2012 -0400
+Date: Sat Oct 6 18:15:58 2012 -0400
Fix build stuff
@@ -694,11 +1503,11 @@ Date: Sat Oct 6 18:15:58 2012 -0400
commit db6d86a6c1b5bb15511e4e4015af889d4206be1d
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sat Oct 6 18:12:19 2012 -0400
+Date: Sat Oct 6 18:12:19 2012 -0400
Remove shared-str pool
- We used to have a shared-str pool. Removed to make thread-safety
+ We used to have a shared-str pool. Removed to make thread-safety
work easier. My measurements show that the extra overhead is not
significant by any means.
@@ -708,34 +1517,34 @@ Date: Sat Oct 6 18:12:19 2012 -0400
commit ed41b237658ba290d86795904701ace09b46f6c4
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Sat Oct 6 17:52:39 2012 -0400
+Date: Sat Oct 6 17:52:39 2012 -0400
Switch .gitignore to git.mk
- .gitignore | 100 ---------------------
- Makefile.am | 2 +
- conf.d/Makefile.am | 2 +
- doc/Makefile.am | 2 +
- fc-cache/Makefile.am | 2 +
- fc-case/Makefile.am | 2 +
- fc-cat/Makefile.am | 2 +
+ .gitignore | 100 ---------------------
+ Makefile.am | 2 +
+ conf.d/Makefile.am | 2 +
+ doc/Makefile.am | 2 +
+ fc-cache/Makefile.am | 2 +
+ fc-case/Makefile.am | 2 +
+ fc-cat/Makefile.am | 2 +
fc-glyphname/Makefile.am | 2 +
- fc-lang/Makefile.am | 2 +
- fc-list/Makefile.am | 2 +
- fc-match/Makefile.am | 2 +
+ fc-lang/Makefile.am | 2 +
+ fc-list/Makefile.am | 2 +
+ fc-match/Makefile.am | 2 +
fc-pattern/Makefile.am | 2 +
- fc-query/Makefile.am | 2 +
- fc-scan/Makefile.am | 2 +
+ fc-query/Makefile.am | 2 +
+ fc-scan/Makefile.am | 2 +
fontconfig/Makefile.am | 2 +
- git.mk | 227
+ git.mk | 227
+++++++++++++++++++++++++++++++++++++++++++++++
- src/Makefile.am | 2 +
- test/Makefile.am | 2 +
+ src/Makefile.am | 2 +
+ test/Makefile.am | 2 +
18 files changed, 259 insertions(+), 100 deletions(-)
commit d58c31e6dcfd8c5e6fe3ead4a69216b059558223
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Sep 20 14:42:31 2012 -0400
+Date: Thu Sep 20 14:42:31 2012 -0400
Use a static perfect hash table for object-name lookup
@@ -745,19 +1554,19 @@ Date: Thu Sep 20 14:42:31 2012 -0400
A bit clumsy, but I think I got it right.
- src/Makefile.am | 26 +++-
- src/fcinit.c | 1 -
- src/fcint.h | 79 ++++---------
- src/fcname.c | 315
+ src/Makefile.am | 26 +++-
+ src/fcinit.c | 1 -
+ src/fcint.h | 79 ++++---------
+ src/fcname.c | 315
+++++++------------------------------------------
- src/fcobjs.c | 130 ++++++++++++++++++++
- src/fcobjs.h | 44 +++++++
+ src/fcobjs.c | 130 ++++++++++++++++++++
+ src/fcobjs.h | 44 +++++++
src/fcobjshash.gperf.h | 26 ++++
7 files changed, 291 insertions(+), 330 deletions(-)
commit 7c0f79c5fe9db50b55112a1048a8f1c6a80e96fa
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Thu Sep 20 14:01:47 2012 -0400
+Date: Thu Sep 20 14:01:47 2012 -0400
Deprecate FcName(Un)RegisterObjectTypes / FcName(Un)RegisterConstants
@@ -772,16 +1581,16 @@ Date: Thu Sep 20 14:01:47 2012 -0400
One inch closer to thread-safety since we can fix the object-type hash
table at compile time.
- doc/fcconstant.fncs | 8 +---
- doc/fcobjecttype.fncs | 6 +--
+ doc/fcconstant.fncs | 8 +---
+ doc/fcobjecttype.fncs | 6 +--
fontconfig/fontconfig.h | 10 +++--
- src/fcname.c | 100
+ src/fcname.c | 100
++++++------------------------------------------
4 files changed, 23 insertions(+), 101 deletions(-)
commit 1e2c0d70527c39f761c5770d93a5c1f8e87522bc
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:28:08 2013 -0600
+Date: Tue Jan 1 20:28:08 2013 -0600
Whitespace
@@ -790,7 +1599,7 @@ Date: Tue Jan 1 20:28:08 2013 -0600
commit a498f2f717a73c3fff9784dd92173583fb37a596
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:27:54 2013 -0600
+Date: Tue Jan 1 20:27:54 2013 -0600
Minor
@@ -799,7 +1608,7 @@ Date: Tue Jan 1 20:27:54 2013 -0600
commit 8198127b2525084bfe2378b83c185fa0da7f583b
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:20:31 2013 -0600
+Date: Tue Jan 1 20:20:31 2013 -0600
Don't crash in FcPatternFormat() with NULL pattern
@@ -808,7 +1617,7 @@ Date: Tue Jan 1 20:20:31 2013 -0600
commit c9581b47c4409612e8f2d4f67a402c566ba8330e
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:20:12 2013 -0600
+Date: Tue Jan 1 20:20:12 2013 -0600
Don't crash in FcPatternDestroy with NULL pattern
@@ -817,7 +1626,7 @@ Date: Tue Jan 1 20:20:12 2013 -0600
commit e7d3e2163280ffb970b60c6ed18e26325d0241e4
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:10:18 2013 -0600
+Date: Tue Jan 1 20:10:18 2013 -0600
Add NULL check
@@ -826,7 +1635,7 @@ Date: Tue Jan 1 20:10:18 2013 -0600
commit 5bb5da4c4a34ca7c0a7c513e38829f69654f9962
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 20:09:08 2013 -0600
+Date: Tue Jan 1 20:09:08 2013 -0600
Refuse to set value to unsupported types during config too
@@ -835,20 +1644,20 @@ Date: Tue Jan 1 20:09:08 2013 -0600
commit 3878a125410d1dd461aee1e40f9ac00d68be71f2
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Tue Jan 1 19:52:14 2013 -0600
+Date: Tue Jan 1 19:52:14 2013 -0600
Make FC_DBG_OBJTYPES debug messages into warnings
And remove FC_DBG_OBJTYPES since it has no use now.
src/fcdbg.c | 30 +++++++++++++++++++-----------
- src/fcint.h | 5 ++++-
+ src/fcint.h | 5 ++++-
src/fcpat.c | 21 +++++++++------------
3 files changed, 32 insertions(+), 24 deletions(-)
commit 209750a4e0a3e1d7b8c5c971e9e2cbd5770d959f
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Dec 31 20:11:12 2012 -0600
+Date: Mon Dec 31 20:11:12 2012 -0600
Warn if <name target="font"> appears in <match target="pattern">
@@ -857,7 +1666,7 @@ Date: Mon Dec 31 20:11:12 2012 -0600
commit 424cfa1684f8af8bb6ecb01dc83bfc3d0a14f20a
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Dec 31 20:00:17 2012 -0600
+Date: Mon Dec 31 20:00:17 2012 -0600
Adjust docs for recent changes
@@ -866,7 +1675,7 @@ Date: Mon Dec 31 20:00:17 2012 -0600
commit 31ce352bb350a10c6ae08f1415d348458b64bf61
Author: Behdad Esfahbod <behdad@behdad.org>
-Date: Mon Dec 31 19:55:37 2012 -0600
+Date: Mon Dec 31 19:55:37 2012 -0600
Initialize matrix during name parsing
@@ -1353,7 +2162,8 @@ Date: Tue Oct 30 09:56:24 2012 +0900
Keep m4 directory in git.
- 0 files changed
+ m4/.gitkeep | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
commit 038aa930ae2c3b7972eefe334917e7222fe478ec
Author: Akira TAGOH <akira@tagoh.org>
@@ -21540,8 +22350,10 @@ Date: Thu Feb 14 23:34:13 2002 +0000
AUTHORS | 1 +
COPYING | 22 +
+ ChangeLog | 0
INSTALL | 3 +
Imakefile | 25 +
+ NEWS | 0
README | 2 +
acconfig.h | 2 +
configure.in | 202 +++++++
@@ -21583,4 +22395,4 @@ Date: Thu Feb 14 23:34:13 2002 +0000
src/fcstr.c | 188 ++++++
src/fcxml.c | 1032 ++++++++++++++++++++++++++++++++
src/fontconfig.man | 1113 ++++++++++++++++++++++++++++++++++
- 44 files changed, 11349 insertions(+)
+ 46 files changed, 11349 insertions(+)
diff --git a/Makefile.am b/Makefile.am
index 84c91acb..2b4a5b82 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -21,17 +21,13 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
-SUBDIRS=fontconfig fc-case fc-lang fc-glyphname src \
+SUBDIRS=fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
fc-validate conf.d test
if ENABLE_DOCS
SUBDIRS += doc
-DIST_SUBDIRS = $(SUBDIRS)
-else
-DIST_SUBDIRS = $(SUBDIRS) doc
endif
-AUTOMAKE_OPTIONS = dist-bzip2
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = \
@@ -57,9 +53,9 @@ MAINTAINERCLEANFILES = \
$(srcdir)/ltmain.sh \
$(srcdir)/missing \
$(srcdir)/mkinstalldirs \
+ $(srcdir)/test-driver \
`find "$(srcdir)" -type f -name Makefile.in -print`
-pkgconfigdir=$(libdir)/pkgconfig
pkgconfig_DATA = fontconfig.pc
baseconfigdir = $(BASECONFIGDIR)
@@ -81,7 +77,7 @@ EXTRA_DIST += ChangeLog
ChangeLog: $(srcdir)/ChangeLog
$(srcdir)/ChangeLog:
if test -d "$(srcdir)/.git"; then \
- (GIT_DIR=$(top_srcdir)/.git ./missing --run git log --stat) | fmt --split-only > $@.tmp \
+ (GIT_DIR=$(top_srcdir)/.git $(GIT) log --stat) | fmt --split-only > $@.tmp \
&& mv -f $@.tmp $@ \
|| ($(RM) $@.tmp; \
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
@@ -94,12 +90,14 @@ $(srcdir)/ChangeLog:
.PHONY: ChangeLog
+FC_CONFIGDIR = $(subst $(BASECONFIGDIR)/,,$(CONFIGDIR))
+
fonts.conf: fonts.conf.in Makefile
sed \
-e 's,@FC_CACHEDIR\@,$(FC_CACHEDIR),g' \
-e 's,@FC_DEFAULT_FONTS\@,$(FC_DEFAULT_FONTS),g' \
-e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
- -e 's,@CONFIGDIR\@,$(CONFIGDIR),g' \
+ -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
-e 's,@PACKAGE\@,$(PACKAGE),g' \
-e 's,@VERSION\@,$(VERSION),g' \
$(srcdir)/$@.in > $@.tmp && \
diff --git a/Makefile.in b/Makefile.in
index 5c5d1b91..6a278f67 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -75,19 +103,21 @@ build_triplet = @build@
host_triplet = @host@
@ENABLE_DOCS_TRUE@am__append_1 = doc
subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(srcdir)/fontconfig-zip.in $(srcdir)/fontconfig.pc.in \
- $(srcdir)/fontconfig.spec.in $(top_srcdir)/configure AUTHORS \
- COPYING ChangeLog INSTALL NEWS config.guess config.sub depcomp \
- install-sh ltmain.sh missing
+DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
+ $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(srcdir)/fontconfig.spec.in \
+ $(srcdir)/fontconfig.pc.in $(srcdir)/fontconfig-zip.in COPYING \
+ compile config.guess config.sub depcomp install-sh missing \
+ ltmain.sh
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -110,13 +140,14 @@ am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+ ctags-recursive dvi-recursive html-recursive info-recursive \
+ install-data-recursive install-dvi-recursive \
+ install-exec-recursive install-html-recursive \
+ install-info-recursive install-pdf-recursive \
+ install-ps-recursive install-recursive installcheck-recursive \
+ installdirs-recursive pdf-recursive ps-recursive \
+ tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -153,12 +184,36 @@ am__installdirs = "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(xmldir)"
DATA = $(pkgconfig_DATA) $(xml_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+am__recursive_targets = \
+ $(RECURSIVE_TARGETS) \
+ $(RECURSIVE_CLEAN_TARGETS) \
+ $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
+ $(LISP)config.h.in
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
+DIST_SUBDIRS = fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
+ fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
+ fc-validate conf.d test doc
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -241,6 +296,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -282,12 +339,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -311,7 +375,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = $(BASECONFIGDIR)
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -319,7 +382,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = $(CONFIGDIR)
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -344,25 +406,25 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = $(XMLDIR)
-SUBDIRS = fontconfig fc-case fc-lang fc-glyphname src fc-cache fc-cat \
- fc-list fc-match fc-pattern fc-query fc-scan fc-validate \
- conf.d test $(am__append_1)
-@ENABLE_DOCS_FALSE@DIST_SUBDIRS = $(SUBDIRS) doc
-@ENABLE_DOCS_TRUE@DIST_SUBDIRS = $(SUBDIRS)
-AUTOMAKE_OPTIONS = dist-bzip2
+SUBDIRS = fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
+ fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
+ fc-validate conf.d test $(am__append_1)
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = fontconfig.pc.in fonts.conf.in fonts.dtd \
fontconfig.spec.in fontconfig.spec fontconfig-zip.in \
@@ -375,13 +437,17 @@ MAINTAINERCLEANFILES = $(srcdir)/aclocal.m4 $(srcdir)/autoscan.log \
$(srcdir)/compile $(srcdir)/config.guess $(srcdir)/config.h.in \
$(srcdir)/config.sub $(srcdir)/configure.scan \
$(srcdir)/depcomp $(srcdir)/install-sh $(srcdir)/ltmain.sh \
- $(srcdir)/missing $(srcdir)/mkinstalldirs `find "$(srcdir)" \
- -type f -name Makefile.in -print` $(srcdir)/ChangeLog
-pkgconfigdir = $(libdir)/pkgconfig
+ $(srcdir)/missing $(srcdir)/mkinstalldirs \
+ $(srcdir)/test-driver `find "$(srcdir)" -type f -name \
+ Makefile.in -print` $(srcdir)/ChangeLog
pkgconfig_DATA = fontconfig.pc
+baseconfigdir = $(BASECONFIGDIR)
+configdir = $(CONFIGDIR)
+xmldir = $(XMLDIR)
xml_DATA = fonts.dtd
@CROSS_COMPILING_FALSE@RUN_FC_CACHE_TEST = test -z "$(DESTDIR)"
@CROSS_COMPILING_TRUE@RUN_FC_CACHE_TEST = false
+FC_CONFIGDIR = $(subst $(BASECONFIGDIR)/,,$(CONFIGDIR))
DISTCHECK_CONFIGURE_FLAGS =
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -423,8 +489,8 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
$(am__aclocal_m4_deps):
config.h: stamp-h1
- @if test ! -f $@; then rm -f stamp-h1; else :; fi
- @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+ @test -f $@ || rm -f stamp-h1
+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
@@ -500,14 +566,13 @@ uninstall-xmlDATA:
# (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
-$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+$(am__recursive_targets):
+ @fail=; \
+ if $(am__make_keepgoing); then \
+ failcom='fail=yes'; \
+ else \
+ failcom='exit 1'; \
+ fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
@@ -528,31 +593,13 @@ $(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-cscopelist-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
- done
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -568,12 +615,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -585,15 +627,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -602,18 +640,16 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
-
cscope: cscope.files
test ! -s cscope.files \
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
-
clean-cscope:
-rm -f cscope.files
+cscope.files: clean-cscope cscopelist
+cscopelist: cscopelist-recursive
-cscope.files: clean-cscope cscopelist-recursive cscopelist
-
-cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -710,10 +746,16 @@ dist-xz: distdir
$(am__post_remove_distdir)
dist-tarZ: distdir
+ @echo WARNING: "Support for shar distribution archives is" \
+ "deprecated." >&2
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
+ @echo WARNING: "Support for distribution archives compressed with" \
+ "legacy program 'compress' is deprecated." >&2
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
@@ -746,18 +788,19 @@ distcheck: dist
*.zip*) \
unzip $(distdir).zip ;;\
esac
- chmod -R a-w $(distdir); chmod u+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
+ chmod -R a-w $(distdir)
+ chmod u+w $(distdir)
+ mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ && ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
+ --srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
@@ -923,19 +966,16 @@ ps-am:
uninstall-am: uninstall-local uninstall-pkgconfigDATA \
uninstall-xmlDATA
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
- cscopelist-recursive ctags-recursive install-am install-strip \
- tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-cscope \
- clean-generic clean-libtool cscope cscopelist \
- cscopelist-recursive ctags ctags-recursive dist dist-all \
- dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ dist-xz \
- dist-zip distcheck distclean distclean-generic distclean-hdr \
- distclean-libtool distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am \
+.MAKE: $(am__recursive_targets) all install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+ am--refresh check check-am clean clean-cscope clean-generic \
+ clean-libtool cscope cscopelist-am ctags ctags-am dist \
+ dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
+ dist-xz dist-zip distcheck distclean distclean-generic \
+ distclean-hdr distclean-libtool distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am html html-am info \
+ info-am install install-am install-data install-data-am \
install-data-local install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
@@ -943,13 +983,13 @@ uninstall-am: uninstall-local uninstall-pkgconfigDATA \
install-xmlDATA installcheck installcheck-am installdirs \
installdirs-am maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
- ps ps-am tags tags-recursive uninstall uninstall-am \
- uninstall-local uninstall-pkgconfigDATA uninstall-xmlDATA
+ ps ps-am tags tags-am uninstall uninstall-am uninstall-local \
+ uninstall-pkgconfigDATA uninstall-xmlDATA
ChangeLog: $(srcdir)/ChangeLog
$(srcdir)/ChangeLog:
if test -d "$(srcdir)/.git"; then \
- (GIT_DIR=$(top_srcdir)/.git ./missing --run git log --stat) | fmt --split-only > $@.tmp \
+ (GIT_DIR=$(top_srcdir)/.git $(GIT) log --stat) | fmt --split-only > $@.tmp \
&& mv -f $@.tmp $@ \
|| ($(RM) $@.tmp; \
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
@@ -967,7 +1007,7 @@ fonts.conf: fonts.conf.in Makefile
-e 's,@FC_CACHEDIR\@,$(FC_CACHEDIR),g' \
-e 's,@FC_DEFAULT_FONTS\@,$(FC_DEFAULT_FONTS),g' \
-e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
- -e 's,@CONFIGDIR\@,$(CONFIGDIR),g' \
+ -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
-e 's,@PACKAGE\@,$(PACKAGE),g' \
-e 's,@VERSION\@,$(VERSION),g' \
$(srcdir)/$@.in > $@.tmp && \
diff --git a/README b/README
index fcd3ab34..4a4dc307 100644
--- a/README
+++ b/README
@@ -1,12 +1,321 @@
Fontconfig
Font configuration and customization library
- Version 2.10.91 (2.11 RC1)
- 2013-01-10
+ Version 2.11.93 (2.12 RC3)
+ 2015-03-09
Check INSTALL for compilation and installation instructions.
Report bugs to https://bugs.freedesktop.org in the fontconfig module.
+2.11.93 (2.12 RC3)
+
+Akira TAGOH (18):
+ Fix a typo in docs
+ Add pkg.m4 to git
+ Fix a build fail on some non-POSIX platforms
+ ifdef'd the unnecessary code for win32
+ Fix pointer cast warning on win32
+ filter can be null
+ Copy the real size of struct dirent
+ Rework again to copy the struct dirent
+ Hardcode the blanks in the library
+ Update the script to recognize the escaped space
+ Fix a build issue when $(srcdir) != $(builddir)
+ Don't add FC_LANG when it has "und"
+ Fix the array allocation
+ Improve the performance on searching blanks
+ Fix a segfault when OOM happened.
+ Fix a bug in the previous change forFcBlanksIsMember()
+ Fix an infinite loop in FcBlanksIsMember()
+ Fix a trivial bug for dist
+
+Alan Coopersmith (1):
+ Fix configure to work with Solaris Studio compilers
+
+Behdad Esfahbod (3):
+ Fix symbol cmap handling
+ Remove dead code after previous commit
+ Simplify some more
+
+Michael Haubenwallner (1):
+ Ensure config.h is included first, bug#89336.
+
+2.11.92 (2.12 RC2)
+
+Akira TAGOH (1):
+ Add missing docs
+
+2.11.91 (2.12 RC1)
+
+Akira TAGOH (28):
+ Bug 71287 - size specific design selection support in OS/2 table version 5
+ Fix a build issue with freetype <2.5.1
+ Fix missing docs
+ Fix a typo
+ Fix fc-cache fail with -r
+ Rebase ja.orth against Joyo kanji characters
+ Allow the modification on FcTypeVoid with FcTypeLangSet and FcTypeCharSet
+ Workaround another race condition issue
+ Read the config files and fonts on the sysroot when --sysroot is given to fc-cache
+ Fix a segfault
+ Update CaseFolding.txt to Unicode 7.0
+ Don't read/write from/to the XDG dirs if the home directory is disabled
+ Rework for 5004e8e01f5de30ad01904e57ea0eda006ab3a0c
+ Fix a crash when no sysroot is given and failed to load the default fonts.conf
+ Fix a gcc warning
+ Don't add duplicate lang
+ fallback to the another method to lock when link() failed
+ Increase the refcount in FcConfigSetCurrent()
+ Fix the memory leak in fc-cat
+ Note FcConfigSetCurrent() increases the refcount in document
+ Add FcRangeGetDouble()
+ Revert "Bug 73291 - poppler does not show fl ligature"
+ Update aliases for new URW fonts
+ Returns False if no fonts found
+ fc-cache: make a fail if no fonts processed on a given path
+ fc-cache: Add an option to raise an error if no fonts found
+ Bump the cache version to 5
+ Fix a typo
+
+Behdad Esfahbod (39):
+ Remove unused code
+ Simplify hash code
+ Further simplify hash code
+ Rewrite hashing to use FT_Stream directly
+ Allow passing NULL for file to FcFreeTypeQueryFace()
+ [ko.orth] Remove U+3164 HANGUL FILLER
+ Deprecate FC_HASH and don't compute it
+ Remove unused FcHash code now that FC_HASH is deprecated
+ Update list of blanks to Unicode 6.3.0
+ Update blanks to Unicode 7.0
+ Change charset parse/unparse format to be human readable
+ Minor
+ Fix charset unparse after recent changes
+ Comments
+ Remove HASH from matching priorities
+ Fixup previous commit
+ Update mingw32 MemoryBarrier from HarfBuzz
+ More mingw32 MemoryBarrier() fixup
+ Symlinks fix for DESTDIR
+ Revert "Symlinks fix for DESTDIR"
+ Call FcInitDebug from FcFreeTypeQueryFace
+ Decode MacRoman encoding in name table without iconv
+ Ouch, fix buffer
+ Use lang=und instead of lang=xx for "undetermined"
+ Remove unused regex code
+ Improve / cleanup namelang matching
+ Add FC_WEIGHT_DEMILIGHT
+ Change DemiLight from 65 to 55
+ Linearly interpolate weight values
+ Export recently added API
+ Remove unneeded FcPublic
+ Fix assertion failure
+ If OS/2 table says weight is 1 to 9, multiply by 100
+ Trebuchet MS is a sans-serif font, not serif
+ Fix previous commit
+ Revert "[fcmatch] When matching, reserve score 0 for when elements don't exist"
+ Fix buffer overflow in copying PS name
+ Add FC_COLOR
+ Treat color fonts as scalable
+
+Nick Alcock (1):
+ Generate documentation for FcWeight* functions.
+
+2.11.1
+
+Akira TAGOH (31):
+ do not build test-migration for Win32
+ Fix build issue on Debian/kFreeBSD 7.0
+ Update ax_pthread.m4 to the latest version
+ Fix the dynamic loading issue on NetBSD
+ Use stat() if there are no d_type in struct dirent
+ Fix a build issue on Solaris 10
+ Change the default weight on match to FC_WEIGHT_NORMAL
+ Warn if no <test> nor <edit> elements in <match>
+ Correct DTD
+ Re-scan font directories only when it contains subdirs
+ Fix typo
+ Bug 72086 - Check for gperf in autogen.sh
+ Simplify to validate the availability of posix_fadvise
+ Simplify to validate the availability of scandir
+ Fix a typo
+ Fix a build issue on platforms where doesn't support readlink()
+ Improve the performance issue on rescanning directories
+ Bug 73686 - confdir is not set correctly in fontconfig.pc
+ Update zh_hk.orth
+ clean up the unused files
+ Add missing license headers
+ Update the use of autotools' macro
+ Fix a crash issue when empty strings are set to the BDF properties
+ Add a doc for FcDirCacheRescan
+ Add missing #include <sys/statvfs.h> in fcstat.c
+ Fix incompatible API on AIX with random_r and initstate_r
+ Fallback to lstat() in case the filesystem doesn't support d_type in struct dirent
+ Update doc to include the version info of `since when'
+ Bug 73291 - poppler does not show fl ligature
+ Add README describes the criteria to add/modify the orthography files
+ Fix autoconf warning, warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
+
+Alan Coopersmith (3):
+ Leave room for null terminators in arrays
+ Avoid memory leak when NULL path passed to FcStrBuildFilename
+ Avoid null pointer dereference in FcNameParse if malloc fails
+
+Behdad Esfahbod (1):
+ Bug 72380 - Never drop first font when trimming
+
+Frederic Crozat (2):
+ Fix inversion between Tinos and Cousine in the comment
+ Add metric aliases for additional Google ChromeOS fonts
+
+Jehan (1):
+ Defaulting <cachedir> to LOCAL_APPDATA_FONTCONFIG_CACHE for Win32 build
+
+Ross Burton (1):
+ fc-cache: --sysroot option takes an argument
+
+2.11
+
+Akira TAGOH (15):
+ Do not create a config dir for migration when no config files nor dirs
+ Add a test case of the migration for config place
+ Fix memory leaks in FcFreeTypeQueryFace
+ Bug 68955 - Deprecate / remove FC_RASTERIZER
+ Copy all values from the font to the pattern if the pattern doesn't have the element
+ Fix a crash when FcPattern is set to null on FcFontSetList() and FcFontList()
+ Add the description of -q option to the man page
+ avoid reading config.h twice
+ clean up
+ Add the relative path for <include> to fonts.conf if the parent path is same to fonts.conf
+ Workaround the race condition issue on updating cache
+ exit with the error code when FcNameParse() failed
+ Add missing doc for FcStrListFirst and fix a typo
+ Bump libtool revision
+ Update CaseFolding.txt to Unicode 6.3
+
+Jan Alexander Steffens (heftig) (1):
+ Further changes to 30-metric-aliases.conf
+
+W. Trevor King (1):
+ doc/fccharset.fncs: Describe the map format in more detail
+
+2.10.95 (2.11 RC5)
+
+Akira TAGOH (2):
+ Fix a typo
+ Fix a crash
+
+2.10.94 (2.11 RC4)
+
+Akira TAGOH (25):
+ Bug 64906 - FcNameParse() should ignore leading whitespace in parameters
+ Fix a comparison of constant warning with clang
+ Fix a shift count overflow on 32bit box
+ Fix a incompatible pointer warning on NetBSD
+ Add FcTypeUnknown to FcType to avoid comparison of constant -1
+ Fix the behavior of intermixed tests end edits in match
+ Ignore scandir() check on mingw
+ Use INT_MAX instead of unreliable hardcoding value
+ Add FC_UNUSED to FC_ASSERT_STATIC macro to avoid compiler warning
+ Rework to apply the intermixed test and edit elements in one-pass
+ trivial code optimization
+ Correct fontconfig.pc to add certain dependencies for build
+ Correct fontconfig.pc to add certain dependencies for static build
+ Fix wrong edit position
+ Bug 67809 - Invalid read/write with valgrind when assigning something twice
+ warn deprecated only when migration failed
+ Bug 67845 - Match on FC_SCALABLE
+ Bug 16818 - fontformat in match pattern is not respected?
+ Bug 68340 - More metric compat fonts
+ Bug 63399 - Add default aliases for Georgia, Garamond, Palatino Linotype, Trebuchet MS
+ Fix a typo
+ Fix a crash when non-builtin objects are edited
+ Fix a wrong edit position when 'kind' is different
+ Bug 68587 - copy qu.orth to quz.orth
+ Add quz.orth to Makefile.am
+
+Behdad Esfahbod (2):
+ Minor
+ Fix assertion
+
+2.10.93 (2.11 RC3)
+
+Akira TAGOH (10):
+ Bug 62980 - matching native fonts with even :lang=en
+ Ensure closing fp on error
+ Obtain fonts data via FT_Face instead of opening a file directly
+ Revert the previous change and rework to not export freetype API outside fcfreetype.c
+ documented FC_HASH and FC_POSTSCRIPT_NAME
+ Bug 63329 - make check fails: .. contents:: :depth: 2
+ Use the glob matching for filename
+ Bug 63452 - conf.d/README outdated
+ Fix missing OSAtomicCompareAndSwapPtrBarrier() on Mac OS X 10.4
+ Bug 63922 - FcFreeTypeQueryFace fails on postscripts fonts loaded from memory
+
+Sebastian Freundt (1):
+ build-chain, replace INCLUDES directive by AM_CPPFLAGS
+
+2.10.92 (2.11 RC2)
+
+Akira TAGOH (33):
+ Fix the build fail on MinGW
+ Bug 50497 - RFE: Add OpenType feature tags support
+ Improve FcGetPrgname() to work on BSD
+ Better fix for 2fe5ddfd
+ Add missing file descriptor to F_DUPFD_CLOEXEC
+ Fix mkstemp absence for some platform
+ Fix installation on MinGW32
+ Add another approach to FC_PRGNAME for Solaris 10 or before
+ remove the unnecessary code
+ Bug 59385 - Do the right thing for intermixed edit and test elements
+ Bug 23757 - Add mode="delete" to <edit>
+ Modernize configure.ac
+ Use AM_MISSING_PROG instead of hardcoding missing
+ Revert "test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT"
+ Use AM_MISSING_PROG instead of hardcoding missing
+ Bug 50733 - Add font-file hash?
+ Bug 60312 - DIST_SUBDIRS should never appear in a conditional
+ Update _FcMatchers definition logic
+ Bump the cache version to 4
+ Add Culmus foundry to the vendor list
+ Bug 60748 - broken conf.d/10-autohint.conf and conf.d/10-unhinted.conf
+ Bug 60783 - Add Liberation Sans Narrow to 30-metric-aliases.conf
+ Fix a typo
+ Fix a crash when the object is non-builtin object
+ Fix broken sort order with FcFontSort()
+ Fix a memory leak
+ Bug 59456 - Adding a --sysroot like option to fc-cache
+ Do not copy FC_*LANG_OBJECT even if it's not available on the pattern
+ Fix a SIGSEGV on FcPatternGet* with NULL pattern
+ Bug 38737 - Wishlist: support FC_POSTSCRIPT_NAME
+ Minor cleanup
+ Bump libtool revision
+ Minor fix
+
+Behdad Esfahbod (12):
+ Resepct $NOCONFIGURE
+ Ensure we find the uninstalled fontconfig header
+ Copy all values from pattern to font if the font doesn't have the element
+ Minor
+ Bug 59379 - FC_PRGNAME
+ Remove unused checks for common functions
+ Minor
+ Fix fc-cache crash caused by looking up NULL object incorrectly
+ Fix FC_PRGNAME default
+ Fix readlink failure
+ Accept digits as part of OpenType script tags
+ Fix crash with FcConfigSetCurrent(NULL)
+
+Christoph J. Thompson (1):
+ Use the PKG_INSTALLDIR macro.
+
+Colin Walters (1):
+ build: Only use PKG_INSTALLDIR if available
+
+Quentin Glidic (2):
+ test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT
+ Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
2.10.91 (2.11 RC1)
Akira TAGOH (19):
diff --git a/Tools.mk b/Tools.mk
index 56766da0..f0fa0ec5 100644
--- a/Tools.mk
+++ b/Tools.mk
@@ -32,7 +32,7 @@ TOOL=./$(DIR)$(EXEEXT_FOR_BUILD)
EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(builddir) \
-I$(srcdir) \
-I$(top_builddir)/src \
@@ -43,7 +43,7 @@ INCLUDES = \
$(WARN_CFLAGS)
$(TOOL): $(TSRC) $(ALIAS_FILES)
- $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+ $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
$(TARG): $(TMPL) $(TSRC) $(DEPS)
$(AM_V_GEN) $(MAKE) $(TOOL) && \
diff --git a/aclocal.m4 b/aclocal.m4
index 97611031..c0115b22 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.12.2 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -11,6 +11,7 @@
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
+m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
@@ -19,224 +20,22 @@ You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-#
-# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
-AC_DEFUN([PKG_PROG_PKG_CONFIG],
-[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
-m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
-AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
-AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
-
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
- AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
-fi
-if test -n "$PKG_CONFIG"; then
- _pkg_min_version=m4_default([$1], [0.9.0])
- AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- PKG_CONFIG=""
- fi
-fi[]dnl
-])# PKG_PROG_PKG_CONFIG
-
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists. Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_EXISTS],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-if test -n "$PKG_CONFIG" && \
- AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
- m4_default([$2], [:])
-m4_ifvaln([$3], [else
- $3])dnl
-fi])
-
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
-m4_define([_PKG_CONFIG],
-[if test -n "$$1"; then
- pkg_cv_[]$1="$$1"
- elif test -n "$PKG_CONFIG"; then
- PKG_CHECK_EXISTS([$3],
- [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes ],
- [pkg_failed=yes])
- else
- pkg_failed=untried
-fi[]dnl
-])# _PKG_CONFIG
-
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
-AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
-
-
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_MODULES],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
-AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
-
-pkg_failed=no
-AC_MSG_CHECKING([for $1])
-
-_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
-_PKG_CONFIG([$1][_LIBS], [libs], [$2])
-
-m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
-and $1[]_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.])
-
-if test $pkg_failed = yes; then
- AC_MSG_RESULT([no])
- _PKG_SHORT_ERRORS_SUPPORTED
- if test $_pkg_short_errors_supported = yes; then
- $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
- else
- $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
-
- m4_default([$4], [AC_MSG_ERROR(
-[Package requirements ($2) were not met:
-
-$$1_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-_PKG_TEXT])[]dnl
- ])
-elif test $pkg_failed = untried; then
- AC_MSG_RESULT([no])
- m4_default([$4], [AC_MSG_FAILURE(
-[The pkg-config script could not be found or is too old. Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-_PKG_TEXT
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
- ])
-else
- $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
- $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
- AC_MSG_RESULT([yes])
- $3
-fi[]dnl
-])# PKG_CHECK_MODULES
-
-
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
-AC_DEFUN([PKG_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
-m4_pushdef([pkg_description],
- [pkg-config installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([pkgconfigdir],
- [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
- [with_pkgconfigdir=]pkg_default)
-AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
-
-
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
-AC_DEFUN([PKG_NOARCH_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
-m4_pushdef([pkg_description],
- [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([noarch-pkgconfigdir],
- [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
- [with_noarch_pkgconfigdir=]pkg_default)
-AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
-
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 8
-
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# Automake X.Y traces this macro to ensure aclocal.m4 has been
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.12'
+[am__api_version='1.14'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.12.2], [],
+m4_if([$1], [1.14.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -252,21 +51,19 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.12.2])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 2
-
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
@@ -314,14 +111,12 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 10
-
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
@@ -347,13 +142,12 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 17
# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
@@ -539,19 +333,18 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 6
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
[{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
case $CONFIG_FILES in
@@ -580,7 +373,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
+ test -z "$am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
@@ -616,17 +409,21 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 19
-
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
@@ -639,7 +436,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# arguments mandatory, and then we can depend on a new Autoconf
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
+[AC_PREREQ([2.65])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -669,8 +466,7 @@ AC_SUBST([CYGPATH_W])
dnl Distinguish between old-style and new-style calls.
m4_ifval([$2],
[AC_DIAGNOSE([obsolete],
-[$0: two- and three-arguments forms are deprecated. For more info, see:
-http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation])
+ [$0: two- and three-arguments forms are deprecated.])
m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
AC_SUBST([PACKAGE], [$1])dnl
AC_SUBST([VERSION], [$2])],
@@ -724,22 +520,60 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
[_AM_DEPENDENCIES([OBJC])],
[m4_define([AC_PROG_OBJC],
m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
-dnl Support for Objective C++ was only introduced in Autoconf 2.65,
-dnl but we still cater to Autoconf 2.62.
-m4_ifdef([AC_PROG_OBJCXX],
-[AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
+AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
[_AM_DEPENDENCIES([OBJCXX])],
[m4_define([AC_PROG_OBJCXX],
- m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])])dnl
+ m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the
-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_REQUIRE([AM_SILENT_RULES])dnl
+dnl The testsuite driver may need to know about EXEEXT, so add the
+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
+dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
AC_CONFIG_COMMANDS_PRE(dnl
[m4_provide_if([_AM_COMPILER_EXEEXT],
[AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes. So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+ cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present. This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message. This
+can help us improve future automake versions.
+
+END
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+ echo 'Configuration will proceed anyway, since you have set the' >&2
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+ echo >&2
+ else
+ cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+ AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
+ fi
+fi])
dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
@@ -747,7 +581,6 @@ dnl mangled by Autoconf and run in a shell conditional statement.
m4_define([_AC_COMPILER_EXEEXT],
m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
# that is generated. The stamp files are numbered to have different names.
@@ -769,14 +602,12 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 8
-
# AM_PROG_INSTALL_SH
# ------------------
# Define $install_sh.
@@ -792,14 +623,12 @@ if test x"${install_sh}" != xset; then
fi
AC_SUBST([install_sh])])
-# Copyright (C) 2003-2012 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 2
-
# Check whether the underlying file-system supports filenames
# with a leading dot. For instance MS-DOS doesn't.
AC_DEFUN([AM_SET_LEADING_DOT],
@@ -815,14 +644,12 @@ AC_SUBST([am__leading_dot])])
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 5
-
# AM_MAKE_INCLUDE()
# -----------------
# Check to see how make treats includes.
@@ -867,14 +694,12 @@ rm -f confinc confmf
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 7
-
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
AC_DEFUN([AM_MISSING_PROG],
@@ -882,11 +707,10 @@ AC_DEFUN([AM_MISSING_PROG],
$1=${$1-"${am_missing_run}$2"}
AC_SUBST($1)])
-
# AM_MISSING_HAS_RUN
# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
+# Define MISSING if not defined so far and test if it is modern enough.
+# If it is, set am_missing_run to use it, otherwise, to nothing.
AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
@@ -899,8 +723,8 @@ if test x"${MISSING+set}" != xset; then
esac
fi
# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+ am_missing_run="$MISSING "
else
am_missing_run=
AC_MSG_WARN(['missing' script is too old or missing])
@@ -909,14 +733,12 @@ fi
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 6
-
# _AM_MANGLE_OPTION(NAME)
# -----------------------
AC_DEFUN([_AM_MANGLE_OPTION],
@@ -940,15 +762,312 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# _AM_PROG_CC_C_O
+# ---------------
+# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
+# to automatically call this.
+AC_DEFUN([_AM_PROG_CC_C_O],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+AC_LANG_PUSH([C])dnl
+AC_CACHE_CHECK(
+ [whether $CC understands -c and -o together],
+ [am_cv_prog_cc_c_o],
+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i])
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+AC_LANG_POP([C])])
+
+# For backward compatibility.
+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+
+# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# ---------------------------------------------------------------------------
+# Adds support for distributing Python modules and packages. To
+# install modules, copy them to $(pythondir), using the python_PYTHON
+# automake variable. To install a package with the same name as the
+# automake package, install to $(pkgpythondir), or use the
+# pkgpython_PYTHON automake variable.
+#
+# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
+# locations to install python extension modules (shared libraries).
+# Another macro is required to find the appropriate flags to compile
+# extension modules.
+#
+# If your package is configured with a different prefix to python,
+# users will have to add the install directory to the PYTHONPATH
+# environment variable, or create a .pth file (see the python
+# documentation for details).
+#
+# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
+# cause an error if the version of python installed on the system
+# doesn't meet the requirement. MINIMUM-VERSION should consist of
+# numbers and dots only.
+AC_DEFUN([AM_PATH_PYTHON],
+ [
+ dnl Find a Python interpreter. Python versions prior to 2.0 are not
+ dnl supported. (2.0 was released on October 16, 2000).
+ m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
+[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl
+ python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0])
+
+ AC_ARG_VAR([PYTHON], [the Python interpreter])
+
+ m4_if([$1],[],[
+ dnl No version check is needed.
+ # Find any Python interpreter.
+ if test -z "$PYTHON"; then
+ AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
+ fi
+ am_display_PYTHON=python
+ ], [
+ dnl A version check is needed.
+ if test -n "$PYTHON"; then
+ # If the user set $PYTHON, use it and don't search something else.
+ AC_MSG_CHECKING([whether $PYTHON version is >= $1])
+ AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AC_MSG_ERROR([Python interpreter is too old])])
+ am_display_PYTHON=$PYTHON
+ else
+ # Otherwise, try each interpreter until we find one that satisfies
+ # VERSION.
+ AC_CACHE_CHECK([for a Python interpreter with version >= $1],
+ [am_cv_pathless_PYTHON],[
+ for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
+ test "$am_cv_pathless_PYTHON" = none && break
+ AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
+ done])
+ # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
+ if test "$am_cv_pathless_PYTHON" = none; then
+ PYTHON=:
+ else
+ AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
+ fi
+ am_display_PYTHON=$am_cv_pathless_PYTHON
+ fi
+ ])
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+ if test "$PYTHON" = :; then
+ dnl Run any user-specified action, or abort.
+ m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
+ else
+
+ dnl Query Python for its version number. Getting [:3] seems to be
+ dnl the best way to do this; it's what "site.py" does in the standard
+ dnl library.
+
+ AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
+ [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
+ AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
+
+ dnl Use the values of $prefix and $exec_prefix for the corresponding
+ dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made
+ dnl distinct variables so they can be overridden if need be. However,
+ dnl general consensus is that you shouldn't need this ability.
+
+ AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
+ AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
+
+ dnl At times (like when building shared libraries) you may want
+ dnl to know which OS platform Python thinks this is.
+
+ AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
+ [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
+ AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
+
+ # Just factor out some code duplication.
+ am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x. See automake bug#10227.
+try:
+ import sysconfig
+except ImportError:
+ can_use_sysconfig = 0
+else:
+ can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+ from platform import python_implementation
+ if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7':
+ can_use_sysconfig = 0
+except ImportError:
+ pass"
+
+ dnl Set up 4 directories:
+
+ dnl pythondir -- where to install python scripts. This is the
+ dnl site-packages directory, not the python standard library
+ dnl directory like in previous automake betas. This behavior
+ dnl is more consistent with lispdir.m4 for example.
+ dnl Query distutils for this directory.
+ AC_CACHE_CHECK([for $am_display_PYTHON script directory],
+ [am_cv_python_pythondir],
+ [if test "x$prefix" = xNONE
+ then
+ am_py_prefix=$ac_default_prefix
+ else
+ am_py_prefix=$prefix
+ fi
+ am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+ sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+ from distutils import sysconfig
+ sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+ case $am_cv_python_pythondir in
+ $am_py_prefix*)
+ am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+ am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
+ ;;
+ *)
+ case $am_py_prefix in
+ /usr|/System*) ;;
+ *)
+ am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
+ ;;
+ esac
+ ;;
+ esac
+ ])
+ AC_SUBST([pythondir], [$am_cv_python_pythondir])
+
+ dnl pkgpythondir -- $PACKAGE directory under pythondir. Was
+ dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
+ dnl more consistent with the rest of automake.
+
+ AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
+
+ dnl pyexecdir -- directory for installing python extension modules
+ dnl (shared libraries)
+ dnl Query distutils for this directory.
+ AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
+ [am_cv_python_pyexecdir],
+ [if test "x$exec_prefix" = xNONE
+ then
+ am_py_exec_prefix=$am_py_prefix
+ else
+ am_py_exec_prefix=$exec_prefix
+ fi
+ am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+ sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+ from distutils import sysconfig
+ sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+ case $am_cv_python_pyexecdir in
+ $am_py_exec_prefix*)
+ am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+ am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
+ ;;
+ *)
+ case $am_py_exec_prefix in
+ /usr|/System*) ;;
+ *)
+ am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
+ ;;
+ esac
+ ;;
+ esac
+ ])
+ AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
+
+ dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
+
+ AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
+
+ dnl Run any user-specified action.
+ $2
+ fi
+
+])
+
+
+# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
+# ---------------------------------------------------------------------------
+# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
+# Run ACTION-IF-FALSE otherwise.
+# This test uses sys.hexversion instead of the string equivalent (first
+# word of sys.version), in order to cope with versions such as 2.2c1.
+# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
+AC_DEFUN([AM_PYTHON_CHECK_VERSION],
+ [prog="import sys
+# split strings by '.' and convert to numeric. Append some zeros
+# because we need at least 4 digits for the hex conversion.
+# map returns an iterator in Python 3.0 and a list in 2.x
+minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
+minverhex = 0
+# xrange is not present in Python 3.0 and range returns an iterator
+for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
+sys.exit(sys.hexversion < minverhex)"
+ AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 9
+# AM_RUN_LOG(COMMAND)
+# -------------------
+# Run COMMAND, save the exit status in ac_status, and log it.
+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
+AC_DEFUN([AM_RUN_LOG],
+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ (exit $ac_status); }])
+
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
# AM_SANITY_CHECK
# ---------------
@@ -1025,14 +1144,12 @@ AC_CONFIG_COMMANDS_PRE(
rm -f conftest.file
])
-# Copyright (C) 2009-2012 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 3
-
# AM_SILENT_RULES([DEFAULT])
# --------------------------
# Enable less verbose build rules; with the default set to DEFAULT
@@ -1087,14 +1204,12 @@ AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 2
-
# AM_PROG_INSTALL_STRIP
# ---------------------
# One issue with vendor 'install' (even GNU) is that you can't
@@ -1117,14 +1232,12 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2012 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 3
-
# _AM_SUBST_NOTMAKE(VARIABLE)
# ---------------------------
# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
@@ -1138,14 +1251,12 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2012 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 3
-
# _AM_PROG_TAR(FORMAT)
# --------------------
# Check how to create a tarball in format FORMAT.
@@ -1159,80 +1270,119 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Substitute a variable $(am__untar) that extract such
# a tarball read from stdin.
# $(am__untar) < result.tar
+#
AC_DEFUN([_AM_PROG_TAR],
[# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
- [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
+
+# We'll loop over all known methods to create a tar archive until one works.
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
+m4_if([$1], [v7],
+ [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
+
+ [m4_case([$1],
+ [ustar],
+ [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+ # There is notably a 21 bits limit for the UID and the GID. In fact,
+ # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+ # and bug#13588).
+ am_max_uid=2097151 # 2^21 - 1
+ am_max_gid=$am_max_uid
+ # The $UID and $GID variables are not portable, so we need to resort
+ # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
+ # below are definitely unexpected, so allow the users to see them
+ # (that is, avoid stderr redirection).
+ am_uid=`id -u || echo unknown`
+ am_gid=`id -g || echo unknown`
+ AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+ if test $am_uid -le $am_max_uid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi
+ AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+ if test $am_gid -le $am_max_gid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi],
+
+ [pax],
+ [],
+
+ [m4_fatal([Unknown tar format])])
+
+ AC_MSG_CHECKING([how to create a $1 tar archive])
+
+ # Go ahead even if we have the value already cached. We do so because we
+ # need to set the values for the 'am__tar' and 'am__untar' variables.
+ _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+ for _am_tool in $_am_tools; do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar; do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works.
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ AM_RUN_LOG([cat conftest.dir/file])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+ done
rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+ AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+ AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
+m4_include([m4/ac_check_symbol.m4])
m4_include([m4/ax_cc_for_build.m4])
m4_include([m4/ax_create_stdint_h.m4])
m4_include([m4/ax_pthread.m4])
@@ -1241,3 +1391,4 @@ m4_include([m4/ltoptions.m4])
m4_include([m4/ltsugar.m4])
m4_include([m4/ltversion.m4])
m4_include([m4/lt~obsolete.m4])
+m4_include([m4/pkg.m4])
diff --git a/compile b/compile
new file mode 100755
index 00000000..531136b0
--- /dev/null
+++ b/compile
@@ -0,0 +1,347 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand '-c -o'.
+
+scriptversion=2012-10-14.11; # UTC
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Written by Tom Tromey <tromey@cygnus.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+nl='
+'
+
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent tools from complaining about whitespace usage.
+IFS=" "" $nl"
+
+file_conv=
+
+# func_file_conv build_file lazy
+# Convert a $build file to $host form and store it in $file
+# Currently only supports Windows hosts. If the determined conversion
+# type is listed in (the comma separated) LAZY, no conversion will
+# take place.
+func_file_conv ()
+{
+ file=$1
+ case $file in
+ / | /[!/]*) # absolute file, and not a UNC file
+ if test -z "$file_conv"; then
+ # lazily determine how to convert abs files
+ case `uname -s` in
+ MINGW*)
+ file_conv=mingw
+ ;;
+ CYGWIN*)
+ file_conv=cygwin
+ ;;
+ *)
+ file_conv=wine
+ ;;
+ esac
+ fi
+ case $file_conv/,$2, in
+ *,$file_conv,*)
+ ;;
+ mingw/*)
+ file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
+ ;;
+ cygwin/*)
+ file=`cygpath -m "$file" || echo "$file"`
+ ;;
+ wine/*)
+ file=`winepath -w "$file" || echo "$file"`
+ ;;
+ esac
+ ;;
+ esac
+}
+
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+ func_file_conv "$1"
+ if test -z "$lib_path"; then
+ lib_path=$file
+ else
+ lib_path="$lib_path;$file"
+ fi
+ linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+ lib=$1
+ found=no
+ save_IFS=$IFS
+ IFS=';'
+ for dir in $lib_path $LIB
+ do
+ IFS=$save_IFS
+ if $shared && test -f "$dir/$lib.dll.lib"; then
+ found=yes
+ lib=$dir/$lib.dll.lib
+ break
+ fi
+ if test -f "$dir/$lib.lib"; then
+ found=yes
+ lib=$dir/$lib.lib
+ break
+ fi
+ if test -f "$dir/lib$lib.a"; then
+ found=yes
+ lib=$dir/lib$lib.a
+ break
+ fi
+ done
+ IFS=$save_IFS
+
+ if test "$found" != yes; then
+ lib=$lib.lib
+ fi
+}
+
+# func_cl_wrapper cl arg...
+# Adjust compile command to suit cl
+func_cl_wrapper ()
+{
+ # Assume a capable shell
+ lib_path=
+ shared=:
+ linker_opts=
+ for arg
+ do
+ if test -n "$eat"; then
+ eat=
+ else
+ case $1 in
+ -o)
+ # configure might choose to run compile as 'compile cc -o foo foo.c'.
+ eat=1
+ case $2 in
+ *.o | *.[oO][bB][jJ])
+ func_file_conv "$2"
+ set x "$@" -Fo"$file"
+ shift
+ ;;
+ *)
+ func_file_conv "$2"
+ set x "$@" -Fe"$file"
+ shift
+ ;;
+ esac
+ ;;
+ -I)
+ eat=1
+ func_file_conv "$2" mingw
+ set x "$@" -I"$file"
+ shift
+ ;;
+ -I*)
+ func_file_conv "${1#-I}" mingw
+ set x "$@" -I"$file"
+ shift
+ ;;
+ -l)
+ eat=1
+ func_cl_dashl "$2"
+ set x "$@" "$lib"
+ shift
+ ;;
+ -l*)
+ func_cl_dashl "${1#-l}"
+ set x "$@" "$lib"
+ shift
+ ;;
+ -L)
+ eat=1
+ func_cl_dashL "$2"
+ ;;
+ -L*)
+ func_cl_dashL "${1#-L}"
+ ;;
+ -static)
+ shared=false
+ ;;
+ -Wl,*)
+ arg=${1#-Wl,}
+ save_ifs="$IFS"; IFS=','
+ for flag in $arg; do
+ IFS="$save_ifs"
+ linker_opts="$linker_opts $flag"
+ done
+ IFS="$save_ifs"
+ ;;
+ -Xlinker)
+ eat=1
+ linker_opts="$linker_opts $2"
+ ;;
+ -*)
+ set x "$@" "$1"
+ shift
+ ;;
+ *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
+ func_file_conv "$1"
+ set x "$@" -Tp"$file"
+ shift
+ ;;
+ *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
+ func_file_conv "$1" mingw
+ set x "$@" "$file"
+ shift
+ ;;
+ *)
+ set x "$@" "$1"
+ shift
+ ;;
+ esac
+ fi
+ shift
+ done
+ if test -n "$linker_opts"; then
+ linker_opts="-link$linker_opts"
+ fi
+ exec "$@" $linker_opts
+ exit 1
+}
+
+eat=
+
+case $1 in
+ '')
+ echo "$0: No command. Try '$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand '-c -o'.
+Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file 'INSTALL'.
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "compile $scriptversion"
+ exit $?
+ ;;
+ cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+ func_cl_wrapper "$@" # Doesn't return...
+ ;;
+esac
+
+ofile=
+cfile=
+
+for arg
+do
+ if test -n "$eat"; then
+ eat=
+ else
+ case $1 in
+ -o)
+ # configure might choose to run compile as 'compile cc -o foo foo.c'.
+ # So we strip '-o arg' only if arg is an object.
+ eat=1
+ case $2 in
+ *.o | *.obj)
+ ofile=$2
+ ;;
+ *)
+ set x "$@" -o "$2"
+ shift
+ ;;
+ esac
+ ;;
+ *.c)
+ cfile=$1
+ set x "$@" "$1"
+ shift
+ ;;
+ *)
+ set x "$@" "$1"
+ shift
+ ;;
+ esac
+ fi
+ shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+ # If no '-o' option was seen then we might have been invoked from a
+ # pattern rule where we don't need one. That is ok -- this is a
+ # normal compilation that the losing compiler can handle. If no
+ # '.c' file was seen then we are probably linking. That is also
+ # ok.
+ exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use '[/\\:.-]' here to ensure that we don't use the same name
+# that we are using for the .o file. Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
+while true; do
+ if mkdir "$lockdir" >/dev/null 2>&1; then
+ break
+ fi
+ sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+ test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+ test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/conf.d/10-autohint.conf b/conf.d/10-autohint.conf
index bf08de83..f9032ba3 100644
--- a/conf.d/10-autohint.conf
+++ b/conf.d/10-autohint.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Use the Autohinter -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-no-sub-pixel.conf b/conf.d/10-no-sub-pixel.conf
index e650160a..635847c4 100644
--- a/conf.d/10-no-sub-pixel.conf
+++ b/conf.d/10-no-sub-pixel.conf
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
-<!-- Enable sub-pixel rendering -->
- <match target="font">
+<!-- Disable sub-pixel rendering -->
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-sub-pixel-bgr.conf b/conf.d/10-sub-pixel-bgr.conf
index 74574ad3..1378195d 100644
--- a/conf.d/10-sub-pixel-bgr.conf
+++ b/conf.d/10-sub-pixel-bgr.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Enable sub-pixel rendering -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-sub-pixel-rgb.conf b/conf.d/10-sub-pixel-rgb.conf
index 3c558e5d..757c3b6a 100644
--- a/conf.d/10-sub-pixel-rgb.conf
+++ b/conf.d/10-sub-pixel-rgb.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Enable sub-pixel rendering -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-sub-pixel-vbgr.conf b/conf.d/10-sub-pixel-vbgr.conf
index 392634d5..c807e5c0 100644
--- a/conf.d/10-sub-pixel-vbgr.conf
+++ b/conf.d/10-sub-pixel-vbgr.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Enable sub-pixel rendering -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-sub-pixel-vrgb.conf b/conf.d/10-sub-pixel-vrgb.conf
index 1b7b5f6d..b5985e03 100644
--- a/conf.d/10-sub-pixel-vrgb.conf
+++ b/conf.d/10-sub-pixel-vrgb.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Enable sub-pixel rendering -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/10-unhinted.conf b/conf.d/10-unhinted.conf
index 67037b43..a25e3b1d 100644
--- a/conf.d/10-unhinted.conf
+++ b/conf.d/10-unhinted.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Disable hinting -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/11-lcdfilter-default.conf b/conf.d/11-lcdfilter-default.conf
index e251edd4..9d7d11f9 100644
--- a/conf.d/11-lcdfilter-default.conf
+++ b/conf.d/11-lcdfilter-default.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Use lcddefault as default for LCD filter -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/11-lcdfilter-legacy.conf b/conf.d/11-lcdfilter-legacy.conf
index 63a4116e..7e2b2567 100644
--- a/conf.d/11-lcdfilter-legacy.conf
+++ b/conf.d/11-lcdfilter-legacy.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Use lcdlegacy as default for LCD filter -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/11-lcdfilter-light.conf b/conf.d/11-lcdfilter-light.conf
index af50b2c2..0dd0a900 100644
--- a/conf.d/11-lcdfilter-light.conf
+++ b/conf.d/11-lcdfilter-light.conf
@@ -2,7 +2,7 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Use lcdlight as default for LCD filter -->
- <match target="font">
+ <match target="pattern">
<!--
This configuration is available on the major desktop environments.
We shouldn't overwrite it with "assign" unconditionally.
diff --git a/conf.d/30-metric-aliases.conf b/conf.d/30-metric-aliases.conf
index ccc3e246..cd1e9246 100644
--- a/conf.d/30-metric-aliases.conf
+++ b/conf.d/30-metric-aliases.conf
@@ -2,55 +2,49 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
- <!-- Alias similar/metric-compatible families from various sources:
-
- PostScript fonts:
- Helvetica
- Times
- Courier
- URW fonts:
- Nimbus Sans L
- Nimbus Roman No9 L
- Nimbus Mono L
-
- Microsoft fonts:
- Arial
- Times New Roman
- Courier New
- Liberation fonts:
- Liberation Sans
- Liberation Serif
- Liberation Mono
- StarOffice fonts:
- Albany
- Thorndale
- Cumberland
- AMT fonts:
- Albany AMT
- Thorndale AMT
- Cumberland AMT
- Google CrOS Core fonts:
- Arimo
- Cousine
- Tinos
-
- Of these, URW fonts are design compatible with PostScrict fonts,
- and the Liberation, StarOffice, AMT and CrOS Core ones are
- compatible with Microsoft fonts.
-
- We want for each of them to fallback to any of these
- available, but in an order preferring similar designs
- first. We do this in three steps:
-
- 1) Alias each specific to it's generic family.
- eg. Liberation Sans to Arial
-
- 2) Weak alias each generic to the other generic of its family.
- eg. Arial to Helvetica
-
- 3) Alias each generic to its specifics.
- eg. Arial to Liberation Sans, Albany, and Albany AMT
- -->
+<!--
+
+Alias similar/metric-compatible families from various sources:
+
+PostScript fonts: URW fonts: GUST fonts: Windows fonts:
+====================== ====================== ================= ==================
+Helvetica Nimbus Sans TeX Gyre Heros
+Helvetica Condensed Nimbus Sans Narrow TeX Gyre Heros Cn
+Times Nimbus Roman TeX Gyre Termes
+Courier Nimbus Mono TeX Gyre Cursor
+ITC Avant Garde Gothic URW Gothic TeX Gyre Adventor
+ITC Bookman Bookman URW TeX Gyre Bonum Bookman Old Style
+ITC Zapf Chancery Chancery URW TeX Gyre Chorus
+Palatino Palladio URW TeX Gyre Pagella Palatino Linotype
+New Century Schoolbook Century SchoolBook URW TeX Gyre Schola Century Schoolbook
+
+Microsoft fonts: Liberation fonts: Google CrOS core fonts: StarOffice fonts: AMT fonts:
+================ ====================== ======================= ================= ==============
+Arial Liberation Sans Arimo Albany Albany AMT
+Arial Narrow Liberation Sans Narrow
+Times New Roman Liberation Serif Tinos Thorndale Thorndale AMT
+Courier New Liberation Mono Cousine Cumberland Cumberland AMT
+Cambria Caladea
+Calibri Carlito
+Symbol SymbolNeu
+
+Microsoft fonts: Other fonts:
+================ ============
+Georgia Gelasio
+
+We want for each of them to fallback to any of these available,
+but in an order preferring similar designs first. We do this in three steps:
+
+1) Alias each specific to its generic family.
+ e.g. Liberation Sans to Arial
+
+2) Weak alias each generic to the other generic of its family.
+ e.g. Arial to Helvetica
+
+3) Alias each generic to its specifics.
+ e.g. Arial to Liberation Sans, Arimo, Albany, and Albany AMT
+
+-->
<!-- Map specifics to generics -->
@@ -63,6 +57,34 @@
</alias>
<alias binding="same">
+ <family>Nimbus Sans</family>
+ <default>
+ <family>Helvetica</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Heros</family>
+ <default>
+ <family>Helvetica</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Nimbus Sans Narrow</family>
+ <default>
+ <family>Helvetica Condensed</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Heros Cn</family>
+ <default>
+ <family>Helvetica Condensed</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
<family>Nimbus Roman No9 L</family>
<default>
<family>Times</family>
@@ -70,12 +92,187 @@
</alias>
<alias binding="same">
+ <family>Nimbus Roman</family>
+ <default>
+ <family>Times</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Termes</family>
+ <default>
+ <family>Times</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
<family>Nimbus Mono L</family>
<default>
<family>Courier</family>
</default>
</alias>
+ <alias binding="same">
+ <family>Nimbus Mono</family>
+ <default>
+ <family>Courier</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Cursor</family>
+ <default>
+ <family>Courier</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Avant Garde</family>
+ <default>
+ <family>ITC Avant Garde Gothic</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>URW Gothic L</family>
+ <default>
+ <family>ITC Avant Garde Gothic</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>URW Gothic</family>
+ <default>
+ <family>ITC Avant Garde Gothic</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Adventor</family>
+ <default>
+ <family>ITC Avant Garde Gothic</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Bookman</family>
+ <default>
+ <family>ITC Bookman</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>URW Bookman L</family>
+ <default>
+ <family>ITC Bookman</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Bookman URW</family>
+ <default>
+ <family>ITC Bookman</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Bonum</family>
+ <default>
+ <family>ITC Bookman</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Bookman Old Style</family>
+ <default>
+ <family>ITC Bookman</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Zapf Chancery</family>
+ <default>
+ <family>ITC Zapf Chancery</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>URW Chancery L</family>
+ <default>
+ <family>ITC Zapf Chancery</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Chancery URW</family>
+ <default>
+ <family>ITC Zapf Chancery</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Chorus</family>
+ <default>
+ <family>ITC Zapf Chancery</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>URW Palladio L</family>
+ <default>
+ <family>Palatino</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Palladio URW</family>
+ <default>
+ <family>Palatino</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Pagella</family>
+ <default>
+ <family>Palatino</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Palatino Linotype</family>
+ <default>
+ <family>Palatino</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Century Schoolbook L</family>
+ <default>
+ <family>New Century Schoolbook</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Century SchoolBook URW</family>
+ <default>
+ <family>New Century Schoolbook</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>TeX Gyre Schola</family>
+ <default>
+ <family>New Century Schoolbook</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>Century Schoolbook</family>
+ <default>
+ <family>New Century Schoolbook</family>
+ </default>
+ </alias>
+
<!-- Microsoft -->
<alias binding="same">
@@ -93,6 +290,13 @@
</alias>
<alias binding="same">
+ <family>Liberation Sans Narrow</family>
+ <default>
+ <family>Arial Narrow</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
<family>Albany</family>
<default>
<family>Arial</family>
@@ -162,10 +366,35 @@
</default>
</alias>
+ <alias binding="same">
+ <family>Gelasio</family>
+ <default>
+ <family>Georgia</family>
+ </default>
+ </alias>
+ <alias binding="same">
+ <family>Caladea</family>
+ <default>
+ <family>Cambria</family>
+ </default>
+ </alias>
-<!-- Accept the other group as fallback -->
+ <alias binding="same">
+ <family>Carlito</family>
+ <default>
+ <family>Calibri</family>
+ </default>
+ </alias>
+
+ <alias binding="same">
+ <family>SymbolNeu</family>
+ <default>
+ <family>Symbol</family>
+ </default>
+ </alias>
+<!-- Accept the other group as fallback -->
<!-- PostScript -->
<alias>
@@ -176,6 +405,13 @@
</alias>
<alias>
+ <family>Helvetica Condensed</family>
+ <default>
+ <family>Arial Narrow</family>
+ </default>
+ </alias>
+
+ <alias>
<family>Times</family>
<default>
<family>Times New Roman</family>
@@ -199,6 +435,13 @@
</alias>
<alias>
+ <family>Arial Narrow</family>
+ <default>
+ <family>Helvetica Condensed</family>
+ </default>
+ </alias>
+
+ <alias>
<family>Times New Roman</family>
<default>
<family>Times</family>
@@ -216,18 +459,29 @@
<!-- Map generics to specifics -->
-
<!-- PostScript -->
<alias binding="same">
<family>Helvetica</family>
<accept>
+ <family>TeX Gyre Heros</family>
+ <family>Nimbus Sans</family>
<family>Nimbus Sans L</family>
</accept>
</alias>
<alias binding="same">
+ <family>Helvetica Condensed</family>
+ <accept>
+ <family>TeX Gyre Heros Cn</family>
+ <family>Nimbus Sans Narrow</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
<family>Times</family>
<accept>
+ <family>TeX Gyre Termes</family>
+ <family>Nimbus Roman</family>
<family>Nimbus Roman No9 L</family>
</accept>
</alias>
@@ -235,10 +489,59 @@
<alias binding="same">
<family>Courier</family>
<accept>
+ <family>TeX Gyre Cursor</family>
+ <family>Nimbus Mono</family>
<family>Nimbus Mono L</family>
</accept>
</alias>
+ <alias binding="same">
+ <family>ITC Avant Garde Gothic</family>
+ <accept>
+ <family>TeX Gyre Adventor</family>
+ <family>URW Gothic</family>
+ <family>URW Gothic L</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>ITC Bookman</family>
+ <accept>
+ <family>Bookman Old Style</family>
+ <family>TeX Gyre Bonum</family>
+ <family>Bookman URW</family>
+ <family>URW Bookman L</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>ITC Zapf Chancery</family>
+ <accept>
+ <family>TeX Gyre Chorus</family>
+ <family>Chancery URW</family>
+ <family>URW Chancery L</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>Palatino</family>
+ <accept>
+ <family>Palatino Linotype</family>
+ <family>TeX Gyre Pagella</family>
+ <family>Palladio URW</family>
+ <family>URW Palladio L</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>New Century Schoolbook</family>
+ <accept>
+ <family>Century Schoolbook</family>
+ <family>TeX Gyre Schola</family>
+ <family>Century SchoolBook URW</family>
+ <family>Century Schoolbook L</family>
+ </accept>
+ </alias>
<!-- Microsoft -->
<alias binding="same">
@@ -252,6 +555,13 @@
</alias>
<alias binding="same">
+ <family>Arial Narrow</family>
+ <accept>
+ <family>Liberation Sans Narrow</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
<family>Times New Roman</family>
<accept>
<family>Tinos</family>
@@ -271,5 +581,32 @@
</accept>
</alias>
+ <alias binding="same">
+ <family>Georgia</family>
+ <accept>
+ <family>Gelasio</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>Cambria</family>
+ <accept>
+ <family>Caladea</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>Calibri</family>
+ <accept>
+ <family>Carlito</family>
+ </accept>
+ </alias>
+
+ <alias binding="same">
+ <family>Symbol</family>
+ <accept>
+ <family>SymbolNeu</family>
+ </accept>
+ </alias>
</fontconfig>
diff --git a/conf.d/30-urw-aliases.conf b/conf.d/30-urw-aliases.conf
index aae06acd..e0d45da8 100644
--- a/conf.d/30-urw-aliases.conf
+++ b/conf.d/30-urw-aliases.conf
@@ -3,30 +3,14 @@
<fontconfig>
<!--
URW provides metric and shape compatible fonts for some Adobe families.
- Helvetica, Courier, and Times are handled in 30-metric-aliases.conf.
+ Most of these are handled in 30-metric-aliases.conf.
-->
<alias binding="same">
- <family>Avant Garde</family>
- <accept><family>URW Gothic L</family></accept>
- </alias>
- <alias binding="same">
- <family>Bookman</family>
- <accept><family>URW Bookman L</family></accept>
- </alias>
- <alias binding="same">
- <family>New Century Schoolbook</family>
- <accept><family>Century Schoolbook L</family></accept>
- </alias>
- <alias binding="same">
- <family>Palatino</family>
- <accept><family>URW Palladio L</family></accept>
- </alias>
- <alias binding="same">
- <family>Zapf Chancery</family>
- <accept><family>URW Chancery L</family></accept>
+ <family>Zapf Dingbats</family>
+ <accept><family>Dingbats</family></accept>
</alias>
<alias binding="same">
- <family>Zapf Dingbats</family>
+ <family>ITC Zapf Dingbats</family>
<accept><family>Dingbats</family></accept>
</alias>
<match target="pattern">
diff --git a/conf.d/45-latin.conf b/conf.d/45-latin.conf
index 09fd5265..72490f32 100644
--- a/conf.d/45-latin.conf
+++ b/conf.d/45-latin.conf
@@ -34,6 +34,10 @@
<default><family>serif</family></default>
</alias>
<alias>
+ <family>Nimbus Roman</family>
+ <default><family>serif</family></default>
+ </alias>
+ <alias>
<family>Luxi Serif</family>
<default><family>serif</family></default>
</alias>
@@ -45,6 +49,18 @@
<family>Thorndale</family>
<default><family>serif</family></default>
</alias>
+ <alias>
+ <family>Georgia</family>
+ <default><family>serif</family></default>
+ </alias>
+ <alias>
+ <family>Garamond</family>
+ <default><family>serif</family></default>
+ </alias>
+ <alias>
+ <family>Palatino Linotype</family>
+ <default><family>serif</family></default>
+ </alias>
<!--
Sans-serif faces
-->
@@ -85,9 +101,17 @@
<default><family>sans-serif</family></default>
</alias>
<alias>
+ <family>Nimbus Sans</family>
+ <default><family>sans-serif</family></default>
+ </alias>
+ <alias>
<family>Luxi Sans</family>
<default><family>sans-serif</family></default>
</alias>
+ <alias>
+ <family>Trebuchet MS</family>
+ <default><family>sans-serif</family></default>
+ </alias>
<!--
Monospace faces
-->
@@ -135,6 +159,10 @@
<family>Nimbus Mono L</family>
<default><family>monospace</family></default>
</alias>
+ <alias>
+ <family>Nimbus Mono</family>
+ <default><family>monospace</family></default>
+ </alias>
<!--
Fantasy faces
-->
diff --git a/conf.d/60-latin.conf b/conf.d/60-latin.conf
index 2107e31e..35600ea0 100644
--- a/conf.d/60-latin.conf
+++ b/conf.d/60-latin.conf
@@ -10,6 +10,7 @@
<family>Thorndale AMT</family>
<family>Luxi Serif</family>
<family>Nimbus Roman No9 L</family>
+ <family>Nimbus Roman</family>
<family>Times</family>
</prefer>
</alias>
@@ -23,6 +24,7 @@
<family>Albany AMT</family>
<family>Luxi Sans</family>
<family>Nimbus Sans L</family>
+ <family>Nimbus Sans</family>
<family>Helvetica</family>
<family>Lucida Sans Unicode</family>
<family>BPG Glaho International</family> <!-- lat,cyr,arab,geor -->
@@ -40,6 +42,7 @@
<family>Cumberland AMT</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
+ <family>Nimbus Mono</family>
<family>Courier</family>
</prefer>
</alias>
diff --git a/conf.d/Makefile.am b/conf.d/Makefile.am
index 77597e57..d61756b8 100644
--- a/conf.d/Makefile.am
+++ b/conf.d/Makefile.am
@@ -21,8 +21,9 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
-DOC_FILES= \
- README
+BUILT_SOURCES = README
+DOC_SOURCES = README.in
+DOC_FILES = $(DOC_SOURCES:.in=)
CONF_LINKS = \
10-scale-bitmap-fonts.conf \
@@ -41,9 +42,10 @@ CONF_LINKS = \
80-delicious.conf \
90-synthetic.conf
-EXTRA_DIST = $(template_DATA) $(DOC_FILES)
+EXTRA_DIST = $(template_DATA) $(DOC_SOURCES)
+CLEANFILES = $(DOC_FILES)
-configdir=$(CONFIGDIR)
+configdir = $(CONFIGDIR)
config_DATA = $(DOC_FILES)
templatedir = $(TEMPLATEDIR)
@@ -78,6 +80,9 @@ template_DATA = \
80-delicious.conf \
90-synthetic.conf
+README: $(srcdir)/README.in
+ sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
+
install-data-hook:
mkdir -p $(DESTDIR)$(configdir)
@(echo cd $(DESTDIR)$(configdir); \
diff --git a/conf.d/Makefile.in b/conf.d/Makefile.in
index dadefb35..42f12c7d 100644
--- a/conf.d/Makefile.in
+++ b/conf.d/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -74,14 +102,15 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = conf.d
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,7 @@ am__uninstall_files_from_dir = { \
}
am__installdirs = "$(DESTDIR)$(configdir)" "$(DESTDIR)$(templatedir)"
DATA = $(config_DATA) $(template_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -177,6 +207,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -218,12 +250,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -247,7 +286,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -255,7 +293,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = $(CONFIGDIR)
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -280,22 +317,25 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = $(TEMPLATEDIR)
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
-DOC_FILES = \
- README
-
+BUILT_SOURCES = README
+DOC_SOURCES = README.in
+DOC_FILES = $(DOC_SOURCES:.in=)
CONF_LINKS = \
10-scale-bitmap-fonts.conf \
20-unhint-small-vera.conf \
@@ -313,8 +353,11 @@ CONF_LINKS = \
80-delicious.conf \
90-synthetic.conf
-EXTRA_DIST = $(template_DATA) $(DOC_FILES)
+EXTRA_DIST = $(template_DATA) $(DOC_SOURCES)
+CLEANFILES = $(DOC_FILES)
+configdir = $(CONFIGDIR)
config_DATA = $(DOC_FILES)
+templatedir = $(TEMPLATEDIR)
template_DATA = \
10-autohint.conf \
10-no-sub-pixel.conf \
@@ -346,7 +389,8 @@ template_DATA = \
80-delicious.conf \
90-synthetic.conf
-all: all-am
+all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@@ -427,11 +471,9 @@ uninstall-templateDATA:
@list='$(template_DATA)'; test -n "$(templatedir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(templatedir)'; $(am__uninstall_files_from_dir)
-tags: TAGS
-TAGS:
+tags TAGS:
-ctags: CTAGS
-CTAGS:
+ctags CTAGS:
cscope cscopelist:
@@ -467,13 +509,15 @@ distdir: $(DISTFILES)
fi; \
done
check-am: all-am
-check: check-am
+check: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(configdir)" "$(DESTDIR)$(templatedir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
-install: install-am
+install: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
@@ -495,6 +539,7 @@ install-strip:
mostlyclean-generic:
clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@@ -503,6 +548,7 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am
clean-am: clean-generic clean-libtool mostlyclean-am
@@ -571,21 +617,25 @@ ps-am:
uninstall-am: uninstall-configDATA uninstall-local \
uninstall-templateDATA
-.MAKE: install-am install-data-am install-strip
+.MAKE: all check install install-am install-data-am install-strip
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
- distclean distclean-generic distclean-libtool distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-configDATA install-data install-data-am \
- install-data-hook install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip install-templateDATA \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
- uninstall-configDATA uninstall-local uninstall-templateDATA
-
+ cscopelist-am ctags-am distclean distclean-generic \
+ distclean-libtool distdir dvi dvi-am html html-am info info-am \
+ install install-am install-configDATA install-data \
+ install-data-am install-data-hook install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ install-templateDATA installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags-am uninstall uninstall-am uninstall-configDATA \
+ uninstall-local uninstall-templateDATA
+
+
+README: $(srcdir)/README.in
+ sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
install-data-hook:
mkdir -p $(DESTDIR)$(configdir)
diff --git a/conf.d/README b/conf.d/README
index c2fb52c3..6a774c5d 100644
--- a/conf.d/README
+++ b/conf.d/README
@@ -2,9 +2,9 @@ conf.d/README
Each file in this directory is a fontconfig configuration file. Fontconfig
scans this directory, loading all files of the form [0-9][0-9]*.conf.
-These files are normally installed in ../conf.avail and then symlinked here,
-allowing them to be easily installed and then enabled/disabled by adjusting
-the symlinks.
+These files are normally installed in /usr/share/fontconfig/conf.avail
+and then symlinked here, allowing them to be easily installed and then
+enabled/disabled by adjusting the symlinks.
The files are loaded in numeric order, the structure of the configuration
has led to the following conventions in usage:
diff --git a/conf.d/README.in b/conf.d/README.in
new file mode 100644
index 00000000..90c45de5
--- /dev/null
+++ b/conf.d/README.in
@@ -0,0 +1,23 @@
+conf.d/README
+
+Each file in this directory is a fontconfig configuration file. Fontconfig
+scans this directory, loading all files of the form [0-9][0-9]*.conf.
+These files are normally installed in @TEMPLATEDIR@
+and then symlinked here, allowing them to be easily installed and then
+enabled/disabled by adjusting the symlinks.
+
+The files are loaded in numeric order, the structure of the configuration
+has led to the following conventions in usage:
+
+ Files begining with: Contain:
+
+ 00 through 09 Font directories
+ 10 through 19 system rendering defaults (AA, etc)
+ 20 through 29 font rendering options
+ 30 through 39 family substitution
+ 40 through 49 generic identification, map family->generic
+ 50 through 59 alternate config file loading
+ 60 through 69 generic aliases, map generic->family
+ 70 through 79 select font (adjust which fonts are available)
+ 80 through 89 match target="scan" (modify scanned patterns)
+ 90 through 99 font synthesis
diff --git a/config.guess b/config.guess
index c0adba94..1f5c50c0 100755
--- a/config.guess
+++ b/config.guess
@@ -1,14 +1,12 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
+# Copyright 1992-2014 Free Software Foundation, Inc.
-timestamp='2012-06-10'
+timestamp='2014-03-23'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
@@ -22,19 +20,17 @@ timestamp='2012-06-10'
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner. Please send patches (context
-# diff format) to <config-patches@gnu.org> and include a ChangeLog
-# entry.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
+# Originally written by Per Bothner.
#
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+#
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -54,9 +50,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -138,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+case "${UNAME_SYSTEM}" in
+Linux|GNU|GNU/*)
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ LIBC=gnu
+
+ eval $set_cc_for_build
+ cat <<-EOF > $dummy.c
+ #include <features.h>
+ #if defined(__UCLIBC__)
+ LIBC=uclibc
+ #elif defined(__dietlibc__)
+ LIBC=dietlibc
+ #else
+ LIBC=gnu
+ #endif
+ EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+ ;;
+esac
+
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -200,6 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit ;;
+ *:Bitrig:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+ exit ;;
*:OpenBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
@@ -302,7 +321,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
+ arm*:riscos:*:*|arm*:RISCOS:*:*)
echo arm-unknown-riscos
exit ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
@@ -801,10 +820,13 @@ EOF
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
exit ;;
+ *:MINGW64*:*)
+ echo ${UNAME_MACHINE}-pc-mingw64
+ exit ;;
*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
- i*:MSYS*:*)
+ *:MSYS*:*)
echo ${UNAME_MACHINE}-pc-msys
exit ;;
i*:windows32*:*)
@@ -852,21 +874,21 @@ EOF
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -879,59 +901,54 @@ EOF
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
eval $set_cc_for_build
@@ -950,54 +967,63 @@ EOF
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
;;
- or32:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ openrisc*:Linux:*:*)
+ echo or1k-unknown-linux-${LIBC}
+ exit ;;
+ or32:Linux:*:* | or1k*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
+ echo sparc-unknown-linux-${LIBC}
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
+ echo hppa64-unknown-linux-${LIBC}
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+ *) echo hppa-unknown-linux-${LIBC} ;;
esac
exit ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
+ echo powerpc64-unknown-linux-${LIBC}
exit ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
+ echo powerpc-unknown-linux-${LIBC}
+ exit ;;
+ ppc64le:Linux:*:*)
+ echo powerpc64le-unknown-linux-${LIBC}
+ exit ;;
+ ppcle:Linux:*:*)
+ echo powerpcle-unknown-linux-${LIBC}
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1201,6 +1227,9 @@ EOF
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
echo i586-pc-haiku
exit ;;
+ x86_64:Haiku:*:*)
+ echo x86_64-unknown-haiku
+ exit ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit ;;
@@ -1227,19 +1256,31 @@ EOF
exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
+ eval $set_cc_for_build
+ if test "$UNAME_PROCESSOR" = unknown ; then
+ UNAME_PROCESSOR=powerpc
+ fi
+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
+ fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
@@ -1330,157 +1371,6 @@ EOF
exit ;;
esac
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
cat >&2 <<EOF
$0: unable to guess system type
diff --git a/config.h.in b/config.h.in
index 3e7e6683..f05c09be 100644
--- a/config.h.in
+++ b/config.h.in
@@ -6,6 +6,9 @@
/* The normal alignment of `double', in bytes. */
#undef ALIGNOF_DOUBLE
+/* The normal alignment of `void *', in bytes. */
+#undef ALIGNOF_VOID_P
+
/* Use libxml2 instead of Expat */
#undef ENABLE_LIBXML2
@@ -27,9 +30,6 @@
MSVC and with C++ compilers. */
#undef FLEXIBLE_ARRAY_MEMBER
-/* Define to 1 if you have the `chsize' function. */
-#undef HAVE_CHSIZE
-
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#undef HAVE_DIRENT_H
@@ -49,9 +49,6 @@
/* Define to 1 if you have the `fstatvfs' function. */
#undef HAVE_FSTATVFS
-/* Define to 1 if you have the `ftruncate' function. */
-#undef HAVE_FTRUNCATE
-
/* FT_Bitmap_Size structure includes y_ppem field */
#undef HAVE_FT_BITMAP_SIZE_Y_PPEM
@@ -73,8 +70,8 @@
/* Define to 1 if you have the `FT_Select_Size' function. */
#undef HAVE_FT_SELECT_SIZE
-/* Define to 1 if you have the `geteuid' function. */
-#undef HAVE_GETEUID
+/* Define to 1 if you have the `getexecname' function. */
+#undef HAVE_GETEXECNAME
/* Define to 1 if you have the `getopt' function. */
#undef HAVE_GETOPT
@@ -85,8 +82,8 @@
/* Define to 1 if you have the `getpagesize' function. */
#undef HAVE_GETPAGESIZE
-/* Define to 1 if you have the `getuid' function. */
-#undef HAVE_GETUID
+/* Define to 1 if you have the `getprogname' function. */
+#undef HAVE_GETPROGNAME
/* Have Intel __sync_* atomic primitives */
#undef HAVE_INTEL_ATOMIC_PRIMITIVES
@@ -103,14 +100,11 @@
/* Define to 1 if you have the `lstat' function. */
#undef HAVE_LSTAT
-/* Define to 1 if you have the `memmove' function. */
-#undef HAVE_MEMMOVE
-
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
-/* Define to 1 if you have the `memset' function. */
-#undef HAVE_MEMSET
+/* Define to 1 if you have the `mkdtemp' function. */
+#undef HAVE_MKDTEMP
/* Define to 1 if you have the `mkostemp' function. */
#undef HAVE_MKOSTEMP
@@ -145,20 +139,8 @@
/* Define to 1 if you have the `rand_r' function. */
#undef HAVE_RAND_R
-/* Define to 1 if you have the `regcomp' function. */
-#undef HAVE_REGCOMP
-
-/* Define to 1 if you have the `regerror' function. */
-#undef HAVE_REGERROR
-
-/* Define to 1 if you have the `regexec' function. */
-#undef HAVE_REGEXEC
-
-/* Define to 1 if you have the <regex.h> header file. */
-#undef HAVE_REGEX_H
-
-/* Define to 1 if you have the `regfree' function. */
-#undef HAVE_REGFREE
+/* Define to 1 if you have the `readlink' function. */
+#undef HAVE_READLINK
/* Define to 1 if you have the <sched.h> header file. */
#undef HAVE_SCHED_H
@@ -175,21 +157,12 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
-/* Define to 1 if you have the `strchr' function. */
-#undef HAVE_STRCHR
-
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
-/* Define to 1 if you have the `strrchr' function. */
-#undef HAVE_STRRCHR
-
-/* Define to 1 if you have the `strtol' function. */
-#undef HAVE_STRTOL
-
/* Define to 1 if `d_type' is a member of `struct dirent'. */
#undef HAVE_STRUCT_DIRENT_D_TYPE
@@ -205,9 +178,6 @@
/* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */
#undef HAVE_STRUCT_STATVFS_F_FSTYPENAME
-/* Define to 1 if you have the `sysconf' function. */
-#undef HAVE_SYSCONF
-
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_DIR_H
@@ -225,6 +195,9 @@
/* Define to 1 if you have the <sys/statfs.h> header file. */
#undef HAVE_SYS_STATFS_H
+/* Define to 1 if you have the <sys/statvfs.h> header file. */
+#undef HAVE_SYS_STATVFS_H
+
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
@@ -234,6 +207,12 @@
/* Define to 1 if you have the <sys/vfs.h> header file. */
#undef HAVE_SYS_VFS_H
+/* Define to 1 if `usLowerOpticalPointSize' is a member of `TT_OS2'. */
+#undef HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE
+
+/* Define to 1 if `usUpperOpticalPointSize' is a member of `TT_OS2'. */
+#undef HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE
+
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
@@ -305,9 +284,6 @@
/* Use iconv. */
#undef USE_ICONV
-/* Use regex */
-#undef USE_REGEX
-
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
diff --git a/config.sub b/config.sub
index 6205f842..66c50743 100755
--- a/config.sub
+++ b/config.sub
@@ -1,24 +1,18 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
+# Copyright 1992-2014 Free Software Foundation, Inc.
-timestamp='2012-04-18'
+timestamp='2014-07-28'
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
@@ -26,11 +20,12 @@ timestamp='2012-04-18'
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
@@ -73,9 +68,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -123,7 +116,7 @@ esac
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | \
kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*)
@@ -156,7 +149,7 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze)
+ -apple | -axis | -knuth | -cray | -microblaze*)
os=
basic_machine=$1
;;
@@ -259,10 +252,12 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | be32 | be64 \
+ | arc | arceb \
+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+ | avr | avr32 \
+ | be32 | be64 \
| bfin \
- | c4x | clipper \
+ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
| epiphany \
| fido | fr30 | frv \
@@ -270,10 +265,11 @@ case $basic_machine in
| hexagon \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
+ | k1om \
| le32 | le64 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
@@ -287,20 +283,22 @@ case $basic_machine in
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
+ | mipsr5900 | mipsr5900el \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| moxie \
| mt \
| msp430 \
| nds32 | nds32le | nds32be \
- | nios | nios2 \
+ | nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
- | open8 \
- | or32 \
+ | open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \
@@ -328,7 +326,7 @@ case $basic_machine in
c6x)
basic_machine=tic6x-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
@@ -370,13 +368,13 @@ case $basic_machine in
| aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
| be32-* | be64-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* \
- | clipper-* | craynv-* | cydra-* \
+ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -385,11 +383,13 @@ case $basic_machine in
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
+ | k1om-* \
| le32-* | le64-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+ | microblaze-* | microblazeel-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
@@ -403,18 +403,22 @@ case $basic_machine in
| mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipsr5900-* | mipsr5900el-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
| mt-* \
| msp430-* \
| nds32-* | nds32le-* | nds32be-* \
- | nios-* | nios2-* \
+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| open8-* \
+ | or1k*-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
@@ -788,11 +792,15 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
- microblaze)
+ microblaze*)
basic_machine=microblaze-xilinx
;;
+ mingw64)
+ basic_machine=x86_64-pc
+ os=-mingw64
+ ;;
mingw32)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-mingw32
;;
mingw32ce)
@@ -820,6 +828,10 @@ case $basic_machine in
basic_machine=powerpc-unknown
os=-morphos
;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ os=-moxiebox
+ ;;
msdos)
basic_machine=i386-pc
os=-msdos
@@ -828,7 +840,7 @@ case $basic_machine in
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
msys)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-msys
;;
mvs)
@@ -1004,7 +1016,7 @@ case $basic_machine in
;;
ppc64) basic_machine=powerpc64-unknown
;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
@@ -1019,7 +1031,11 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
- rdos)
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ os=-rdos
+ ;;
+ rdos32)
basic_machine=i386-pc
os=-rdos
;;
@@ -1346,29 +1362,29 @@ case $os in
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* \
+ | -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* | -aros* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
+ | -bitrig* | -openbsd* | -solidbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-android* \
- | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
+ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1492,9 +1508,6 @@ case $os in
-aros*)
os=-aros
;;
- -kaos*)
- os=-kaos
- ;;
-zvmoe)
os=-zvmoe
;;
@@ -1543,6 +1556,9 @@ case $basic_machine in
c4x-* | tic4x-*)
os=-coff
;;
+ c8051-*)
+ os=-elf
+ ;;
hexagon-*)
os=-elf
;;
diff --git a/configure b/configure
index cc5da944..775eb80f 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,8 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69.
+# Generated by GNU Autoconf 2.69 for fontconfig 2.11.93.
+#
+# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -272,10 +274,12 @@ fi
$as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
- $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
+ $as_echo "$0: Please tell bug-autoconf@gnu.org and
+$0: https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig
+$0: about your system, including any error possibly output
+$0: before this message. Then install a modern shell, or
+$0: manually run the script under such a shell if you do
+$0: have one."
fi
exit 1
fi
@@ -585,14 +589,13 @@ MFLAGS=
MAKEFLAGS=
# Identity of this package.
-PACKAGE_NAME=
-PACKAGE_TARNAME=
-PACKAGE_VERSION=
-PACKAGE_STRING=
-PACKAGE_BUGREPORT=
-PACKAGE_URL=
-
-ac_unique_file="fonts.dtd"
+PACKAGE_NAME='fontconfig'
+PACKAGE_TARNAME='fontconfig'
+PACKAGE_VERSION='2.11.93'
+PACKAGE_STRING='fontconfig 2.11.93'
+PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig'
+PACKAGE_URL=''
+
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
@@ -634,6 +637,8 @@ ac_subst_vars='am__EXEEXT_FALSE
am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
+PKGCONFIG_REQUIRES_PRIVATELY
+PKGCONFIG_REQUIRES
DOCMAN3
ENABLE_DOCS_FALSE
ENABLE_DOCS_TRUE
@@ -647,13 +652,9 @@ PTHREAD_LIBS
PTHREAD_CC
ax_pthread_config
XMLDIR
-xmldir
CONFIGDIR
-configdir
BASECONFIGDIR
-baseconfigdir
TEMPLATEDIR
-templatedir
FC_FONTDATE
FC_CACHEDIR
fc_cachedir
@@ -681,10 +682,10 @@ MS_LIB_AVAILABLE_TRUE
ms_librarian
OS_WIN32_FALSE
OS_WIN32_TRUE
-RM
-PKG_CONFIG_LIBDIR
-PKG_CONFIG_PATH
-PKG_CONFIG
+LIBT_CURRENT_MINUS_AGE
+LIBT_VERSION_INFO
+LIBT_REVISION
+LIBT_CURRENT
OTOOL64
OTOOL
LIPO
@@ -700,10 +701,6 @@ DUMPBIN
LD
FGREP
SED
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
host_os
host_vendor
host_cpu
@@ -712,6 +709,26 @@ build_os
build_vendor
build_cpu
build
+LIBTOOL
+OBJDUMP
+DLLTOOL
+AS
+RM
+pkgpyexecdir
+pyexecdir
+pkgpythondir
+pythondir
+PYTHON_PLATFORM
+PYTHON_EXEC_PREFIX
+PYTHON_PREFIX
+PYTHON_VERSION
+PYTHON
+GPERF
+GIT
+pkgconfigdir
+PKG_CONFIG_LIBDIR
+PKG_CONFIG_PATH
+PKG_CONFIG
LN_S
EGREP
GREP
@@ -733,10 +750,6 @@ CPPFLAGS
LDFLAGS
CFLAGS
CC
-LIBT_CURRENT_MINUS_AGE
-LIBT_VERSION_INFO
-LIBT_REVISION
-LIBT_CURRENT
AM_BACKSLASH
AM_DEFAULT_VERBOSITY
AM_DEFAULT_V
@@ -808,8 +821,9 @@ enable_option_checking
enable_silent_rules
enable_dependency_tracking
enable_largefile
-enable_shared
+with_pkgconfigdir
enable_static
+enable_shared
with_pic
enable_fast_install
with_gnu_ld
@@ -845,6 +859,7 @@ CPP
PKG_CONFIG
PKG_CONFIG_PATH
PKG_CONFIG_LIBDIR
+PYTHON
CC_FOR_BUILD
FREETYPE_CFLAGS
FREETYPE_LIBS
@@ -892,7 +907,7 @@ sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE}'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
infodir='${datarootdir}/info'
htmldir='${docdir}'
dvidir='${docdir}'
@@ -1392,7 +1407,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures this package to adapt to many kinds of systems.
+\`configure' configures fontconfig 2.11.93 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1440,7 +1455,7 @@ Fine tuning of the installation directories:
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/fontconfig]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
@@ -1461,7 +1476,9 @@ _ACEOF
fi
if test -n "$ac_init_help"; then
-
+ case $ac_init_help in
+ short | recursive ) echo "Configuration of fontconfig 2.11.93:";;
+ esac
cat <<\_ACEOF
Optional Features:
@@ -1475,8 +1492,8 @@ Optional Features:
--disable-dependency-tracking
speeds up one-time build
--disable-largefile omit support for large files
+ --enable-static[=PKGS] build static libraries [default=no]
--enable-shared[=PKGS] build shared libraries [default=yes]
- --enable-static[=PKGS] build static libraries [default=yes]
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds)
@@ -1487,6 +1504,8 @@ Optional Features:
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-pkgconfigdir pkg-config installation directory
+ ['${libdir}/pkgconfig']
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -1531,6 +1550,7 @@ Some influential environment variables:
directories to add to pkg-config's search path
PKG_CONFIG_LIBDIR
path overriding pkg-config's built-in search path
+ PYTHON the Python interpreter
CC_FOR_BUILD
build system C compiler
FREETYPE_CFLAGS
@@ -1548,7 +1568,7 @@ Some influential environment variables:
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
-Report bugs to the package provider.
+Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>.
_ACEOF
ac_status=$?
fi
@@ -1611,7 +1631,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-configure
+fontconfig configure 2.11.93
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1770,6 +1790,10 @@ $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( $as_echo "## ---------------------------------------------------------------------------- ##
+## Report this to https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig ##
+## ---------------------------------------------------------------------------- ##"
+ ) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
@@ -1973,6 +1997,52 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_c_check_func
+# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
+# ---------------------------------------------
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
+# accordingly.
+ac_fn_c_check_decl ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ as_decl_name=`echo $2|sed 's/ *(.*//'`
+ as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+#ifndef $as_decl_name
+#ifdef __cplusplus
+ (void) $as_decl_use;
+#else
+ (void) $as_decl_name;
+#endif
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_decl
+
# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
# -------------------------------------------
# Tests whether TYPE exists after having included INCLUDES, setting cache
@@ -2270,7 +2340,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by $as_me, which was
+It was created by fontconfig $as_me 2.11.93, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2621,9 +2691,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-am__api_version='1.12'
+am__api_version='1.14'
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -2836,8 +2904,8 @@ if test x"${MISSING+set}" != xset; then
esac
fi
# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+ am_missing_run="$MISSING "
else
am_missing_run=
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
@@ -3077,6 +3145,45 @@ else
fi
rmdir .tst 2>/dev/null
+# Check whether --enable-silent-rules was given.
+if test "${enable_silent_rules+set}" = set; then :
+ enableval=$enable_silent_rules;
+fi
+
+case $enable_silent_rules in # (((
+ yes) AM_DEFAULT_VERBOSITY=0;;
+ no) AM_DEFAULT_VERBOSITY=1;;
+ *) AM_DEFAULT_VERBOSITY=1;;
+esac
+am_make=${MAKE-make}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+if ${am_cv_make_support_nested_variables+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if $as_echo 'TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+ @$(TRUE)
+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+ am_cv_make_support_nested_variables=yes
+else
+ am_cv_make_support_nested_variables=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+if test $am_cv_make_support_nested_variables = yes; then
+ AM_V='$(V)'
+ AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+ AM_V=$AM_DEFAULT_VERBOSITY
+ AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AM_BACKSLASH='\'
+
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
@@ -3098,9 +3205,8 @@ fi
# Define the identity of the package.
-
- PACKAGE=fontconfig
- VERSION=2.10.91
+ PACKAGE='fontconfig'
+ VERSION='2.11.93'
cat >>confdefs.h <<_ACEOF
@@ -3140,12 +3246,58 @@ mkdir_p='$(MKDIR_P)'
# in the wild :-( We should find a proper way to deprecate it ...
AMTAR='$${TAR-tar}'
+
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar pax cpio none'
+
am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes. So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+ cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present. This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message. This
+can help us improve future automake versions.
+
+END
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+ echo 'Configuration will proceed anyway, since you have set the' >&2
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+ echo >&2
+ else
+ cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+ as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+ fi
+fi
# Check whether --enable-silent-rules was given.
if test "${enable_silent_rules+set}" = set; then :
enableval=$enable_silent_rules;
@@ -3187,19 +3339,6 @@ AM_BACKSLASH='\'
-LIBT_CURRENT=7
-LIBT_REVISION=2
-
-
-LIBT_AGE=6
-
-LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
-
-
-LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
-
-
-
ac_config_headers="$ac_config_headers config.h"
@@ -3992,6 +4131,65 @@ ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
+if ${am_cv_prog_cc_c_o+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+ ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+$as_echo "$am_cv_prog_cc_c_o" >&6; }
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
DEPDIR="${am__leading_dot}deps"
ac_config_commands="$ac_config_commands depfiles"
@@ -4855,100 +5053,66 @@ else
$as_echo "no, using $LN_S" >&6; }
fi
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
$as_echo_n "(cached) " >&6
else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+ cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
+rm -f conftest.make
+fi
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ SET_MAKE=
else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ SET_MAKE="MAKE=${MAKE-make}"
fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-enable_win32_dll=yes
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
+
+
+
+
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AS+:} false; then :
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ case $PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
+ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
@@ -4956,12 +5120,13 @@ done
done
IFS=$as_save_IFS
+ ;;
+esac
fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+$as_echo "$PKG_CONFIG" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
@@ -4969,26 +5134,28 @@ fi
fi
-if test -z "$ac_cv_prog_AS"; then
- ac_ct_AS=$AS
- # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
+if test -z "$ac_cv_path_PKG_CONFIG"; then
+ ac_pt_PKG_CONFIG=$PKG_CONFIG
+ # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AS+:} false; then :
+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -n "$ac_ct_AS"; then
- ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ case $ac_pt_PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AS="as"
+ ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
@@ -4996,19 +5163,20 @@ done
done
IFS=$as_save_IFS
+ ;;
+esac
fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
+if test -n "$ac_pt_PKG_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+$as_echo "$ac_pt_PKG_CONFIG" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
- if test "x$ac_ct_AS" = x; then
- AS="false"
+ if test "x$ac_pt_PKG_CONFIG" = x; then
+ PKG_CONFIG=""
else
case $cross_compiling:$ac_tool_warned in
yes:)
@@ -5016,71 +5184,78 @@ yes:)
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
- AS=$ac_ct_AS
+ PKG_CONFIG=$ac_pt_PKG_CONFIG
fi
else
- AS="$ac_cv_prog_AS"
+ PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
fi
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $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
- if test -n "$DLLTOOL"; then
- ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+if test -n "$PKG_CONFIG"; then
+ _pkg_min_version=0.9.0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
+ if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
+ PKG_CONFIG=""
+ fi
fi
+
+# Check whether --with-pkgconfigdir was given.
+if test "${with_pkgconfigdir+set}" = set; then :
+ withval=$with_pkgconfigdir;
+else
+ with_pkgconfigdir='${libdir}/pkgconfig'
fi
-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
+
+pkgconfigdir=$with_pkgconfigdir
+
+
+
+
+
+
+GIT=${GIT-"${am_missing_run}git"}
+
+
+GPERF=${GPERF-"${am_missing_run}gperf"}
+
+
+
+
+
+
+
+ # Find any Python interpreter.
+ if test -z "$PYTHON"; then
+ for ac_prog in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+if ${ac_cv_path_PYTHON+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -n "$ac_ct_DLLTOOL"; then
- ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ case $PYTHON in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
@@ -5088,82 +5263,192 @@ done
done
IFS=$as_save_IFS
+ ;;
+esac
fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+PYTHON=$ac_cv_path_PYTHON
+if test -n "$PYTHON"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+$as_echo "$PYTHON" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
- if test "x$ac_ct_DLLTOOL" = x; then
- DLLTOOL="false"
+
+ test -n "$PYTHON" && break
+done
+test -n "$PYTHON" || PYTHON=":"
+
+ fi
+ am_display_PYTHON=python
+
+
+ if test "$PYTHON" = :; then
+ as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DLLTOOL=$ac_ct_DLLTOOL
- fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
+$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
+if ${am_cv_python_version+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- DLLTOOL="$ac_cv_prog_DLLTOOL"
+ am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
+$as_echo "$am_cv_python_version" >&6; }
+ PYTHON_VERSION=$am_cv_python_version
- 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 :
+
+
+ PYTHON_PREFIX='${prefix}'
+
+ PYTHON_EXEC_PREFIX='${exec_prefix}'
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
+$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
+if ${am_cv_python_platform+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+ am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
+$as_echo "$am_cv_python_platform" >&6; }
+ PYTHON_PLATFORM=$am_cv_python_platform
+
+
+ # Just factor out some code duplication.
+ am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x. See automake bug#10227.
+try:
+ import sysconfig
+except ImportError:
+ can_use_sysconfig = 0
+else:
+ can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+ from platform import python_implementation
+ if python_implementation() == 'CPython' and sys.version[:3] == '2.7':
+ can_use_sysconfig = 0
+except ImportError:
+ pass"
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
+$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
+if ${am_cv_python_pythondir+:} false; then :
+ $as_echo_n "(cached) " >&6
else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
+ if test "x$prefix" = xNONE
+ then
+ am_py_prefix=$ac_default_prefix
+ else
+ am_py_prefix=$prefix
+ fi
+ am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+ sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+ from distutils import sysconfig
+ sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+ case $am_cv_python_pythondir in
+ $am_py_prefix*)
+ am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+ am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
+ ;;
+ *)
+ case $am_py_prefix in
+ /usr|/System*) ;;
+ *)
+ am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
+ ;;
+ esac
+ ;;
+ esac
fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
+$as_echo "$am_cv_python_pythondir" >&6; }
+ pythondir=$am_cv_python_pythondir
+
+
+
+ pkgpythondir=\${pythondir}/$PACKAGE
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
+$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
+if ${am_cv_python_pyexecdir+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ if test "x$exec_prefix" = xNONE
+ then
+ am_py_exec_prefix=$am_py_prefix
+ else
+ am_py_exec_prefix=$exec_prefix
+ fi
+ am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+ sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+ from distutils import sysconfig
+ sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+ case $am_cv_python_pyexecdir in
+ $am_py_exec_prefix*)
+ am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+ am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
+ ;;
+ *)
+ case $am_py_exec_prefix in
+ /usr|/System*) ;;
+ *)
+ am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
+ ;;
+ esac
+ ;;
+ esac
+
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
+$as_echo "$am_cv_python_pyexecdir" >&6; }
+ pyexecdir=$am_cv_python_pyexecdir
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
+
+ pkgpyexecdir=\${pyexecdir}/$PACKAGE
+
+
+
+ fi
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
+$as_echo_n "checking for RM macro... " >&6; }
+_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
+if test "x$_predefined_rm" = "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no predefined RM" >&5
+$as_echo "no predefined RM" >&6; }
+ # Extract the first word of "rm", so it can be a program name with args.
+set dummy rm; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
+if ${ac_cv_prog_RM+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+ if test -n "$RM"; then
+ ac_cv_prog_RM="$RM" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
@@ -5172,7 +5457,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
+ ac_cv_prog_RM="rm -f"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
@@ -5182,52 +5467,21 @@ IFS=$as_save_IFS
fi
fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
+RM=$ac_cv_prog_RM
+if test -n "$RM"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5
+$as_echo "$RM" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
+
else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
+$as_echo "$_predefined_rm" >&6; }
fi
- ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
case `pwd` in
*\ * | *\ *)
@@ -5254,6 +5508,77 @@ macro_revision='1.3337'
ltmain="$ac_aux_dir/ltmain.sh"
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+ as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if ${ac_cv_build+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+ as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if ${ac_cv_host+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
# Backslashify metacharacters that are still active within
# double-quoted strings.
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
@@ -7420,7 +7745,7 @@ ia64-*-hpux*)
rm -rf conftest*
;;
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
@@ -7438,7 +7763,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
x86_64-*linux*)
LD="${LD-ld} -m elf_i386"
;;
- ppc64-*linux*|powerpc64-*linux*)
+ powerpc64le-*linux*)
+ LD="${LD-ld} -m elf32lppclinux"
+ ;;
+ powerpc64-*linux*)
LD="${LD-ld} -m elf32ppclinux"
;;
s390x-*linux*)
@@ -7457,7 +7785,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
x86_64-*linux*)
LD="${LD-ld} -m elf_x86_64"
;;
- ppc*-*linux*|powerpc*-*linux*)
+ powerpcle-*linux*)
+ LD="${LD-ld} -m elf64lppc"
+ ;;
+ powerpc-*linux*)
LD="${LD-ld} -m elf64ppc"
;;
s390*-*linux*|s390*-*tpf*)
@@ -8322,34 +8653,27 @@ done
# Set options
-
-
-
- enable_dlopen=no
-
-
-
- # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
- enableval=$enable_shared; p=${PACKAGE-default}
+# Check whether --enable-static was given.
+if test "${enable_static+set}" = set; then :
+ enableval=$enable_static; p=${PACKAGE-default}
case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
*)
- enable_shared=no
+ enable_static=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
- enable_shared=yes
+ enable_static=yes
fi
done
IFS="$lt_save_ifs"
;;
esac
else
- enable_shared=yes
+ enable_static=no
fi
@@ -8358,29 +8682,334 @@ fi
+enable_win32_dll=yes
+case $host in
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
+set dummy ${ac_tool_prefix}as; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_AS+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AS"; then
+ ac_cv_prog_AS="$AS" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_AS="${ac_tool_prefix}as"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
- # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
- enableval=$enable_static; p=${PACKAGE-default}
+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; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_AS"; then
+ ac_ct_AS=$AS
+ # Extract the first word of "as", so it can be a program name with args.
+set dummy as; ac_word=$2
+{ $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
+ if test -n "$ac_ct_AS"; then
+ ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_AS="as"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AS=$ac_cv_prog_ac_ct_AS
+if test -n "$ac_ct_AS"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
+$as_echo "$ac_ct_AS" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_AS" = x; then
+ AS="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AS=$ac_ct_AS
+ fi
+else
+ AS="$ac_cv_prog_AS"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $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
+ if test -n "$DLLTOOL"; then
+ ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+DLLTOOL=$ac_cv_prog_DLLTOOL
+if test -n "$DLLTOOL"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+$as_echo "$DLLTOOL" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_DLLTOOL"; then
+ ac_ct_DLLTOOL=$DLLTOOL
+ # Extract the first word of "dlltool", so it can be a program name with args.
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
+ ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+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; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_DLLTOOL" = x; then
+ DLLTOOL="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ DLLTOOL=$ac_ct_DLLTOOL
+ fi
+else
+ DLLTOOL="$ac_cv_prog_DLLTOOL"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_OBJDUMP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OBJDUMP"; then
+ ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+$as_echo "$OBJDUMP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+ ac_ct_OBJDUMP=$OBJDUMP
+ # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OBJDUMP"; then
+ ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_OBJDUMP="objdump"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+$as_echo "$ac_ct_OBJDUMP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OBJDUMP" = x; then
+ OBJDUMP="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OBJDUMP=$ac_ct_OBJDUMP
+ fi
+else
+ OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+ ;;
+esac
+
+test -z "$AS" && AS=as
+
+
+
+
+
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+
+
+
+
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+ enable_dlopen=no
+
+
+
+ # Check whether --enable-shared was given.
+if test "${enable_shared+set}" = set; then :
+ enableval=$enable_shared; p=${PACKAGE-default}
case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
*)
- enable_static=no
+ enable_shared=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
- enable_static=yes
+ enable_shared=yes
fi
done
IFS="$lt_save_ifs"
;;
esac
else
- enable_static=yes
+ enable_shared=yes
fi
@@ -8392,6 +9021,7 @@ fi
+
# Check whether --with-pic was given.
if test "${with_pic+set}" = set; then :
withval=$with_pic; lt_p=${PACKAGE-default}
@@ -12327,205 +12957,22 @@ CC="$lt_save_CC"
# Only expand once:
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-
-
-
-
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKG_CONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $PKG_CONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
+LIBT_CURRENT=10
+LIBT_REVISION=0
- ;;
-esac
-fi
-PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-if test -n "$PKG_CONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-$as_echo "$PKG_CONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
+LIBT_AGE=9
-fi
-if test -z "$ac_cv_path_PKG_CONFIG"; then
- ac_pt_PKG_CONFIG=$PKG_CONFIG
- # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $ac_pt_PKG_CONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-if test -n "$ac_pt_PKG_CONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
-$as_echo "$ac_pt_PKG_CONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_pt_PKG_CONFIG" = x; then
- PKG_CONFIG=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- PKG_CONFIG=$ac_pt_PKG_CONFIG
- fi
-else
- PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
-fi
-
-fi
-if test -n "$PKG_CONFIG"; then
- _pkg_min_version=0.9.0
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
-$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- PKG_CONFIG=""
- fi
-fi
+LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
-$as_echo_n "checking for RM macro... " >&6; }
-_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
-if test "x$_predefined_rm" = "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no predefined RM" >&5
-$as_echo "no predefined RM" >&6; }
- # Extract the first word of "rm", so it can be a program name with args.
-set dummy rm; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RM+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RM"; then
- ac_cv_prog_RM="$RM" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_RM="rm -f"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-fi
-fi
-RM=$ac_cv_prog_RM
-if test -n "$RM"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5
-$as_echo "$RM" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
+LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
-$as_echo "$_predefined_rm" >&6; }
-fi
+PKGCONFIG_REQUIRES=
+PKGCONFIG_REQUIRES_PRIVATELY=
case "$host" in
@@ -12593,11 +13040,25 @@ else
fi
+ac_fn_c_check_decl "$LINENO" "__SUNPRO_C" "ac_cv_have_decl___SUNPRO_C" "$ac_includes_default"
+if test "x$ac_cv_have_decl___SUNPRO_C" = xyes; then :
+ SUNCC="yes"
+else
+ SUNCC="no"
+fi
+
WARN_CFLAGS=""
+WARNING_CPP_DIRECTIVE="no"
if test "x$GCC" = "xyes"; then
WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \
-Wmissing-prototypes -Wmissing-declarations \
-Wnested-externs -fno-strict-aliasing"
+ WARNING_CPP_DIRECTIVE="yes"
+elif test "x$SUNCC" = "xyes"; then
+ WARN_CFLAGS="-v -fd"
+ WARNING_CPP_DIRECTIVE="yes"
+fi
+if test "x$WARNING_CPP_DIRECTIVE" = "xyes"; then
cat >>confdefs.h <<_ACEOF
#define HAVE_WARNING_CPP_DIRECTIVE 1
@@ -12954,7 +13415,7 @@ $as_echo "#define STDC_HEADERS 1" >>confdefs.h
fi
-for ac_header in fcntl.h regex.h stdlib.h string.h unistd.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h
+for ac_header in fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -13829,7 +14290,7 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h
fi
rm -f conftest.mmap conftest.txt
-for ac_func in geteuid getuid link memmove memset mkstemp mkostemp _mktemp_s strchr strrchr strtol getopt getopt_long sysconf ftruncate chsize rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat
+for ac_func in link mkstemp mkostemp _mktemp_s mkdtemp getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r readlink fstatvfs fstatfs lstat
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -13842,34 +14303,48 @@ fi
done
-fc_saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for posix_fadvise" >&5
-$as_echo_n "checking for posix_fadvise... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for posix_fadvise in fcntl.h" >&5
+$as_echo_n "checking for posix_fadvise in fcntl.h... " >&6; }
+if ${ac_cv_func_posix_fadvise+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ symbol="[^a-zA-Z_0-9]posix_fadvise[^a-zA-Z_0-9]"
+ac_found=no
+for ac_header in fcntl.h ; do
+ ac_safe=`echo "$ac_header" | sed 'y%./+-%__p_%' `
+ if test $ac_found != "yes" ; then
+ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
- #include <fcntl.h>
- int main(void) {
- return posix_fadvise(0, 0, 0, 0);
- }
+#include <$ac_header>
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_POSIX_FADVISE 1" >>confdefs.h
-
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "$symbol" >/dev/null 2>&1; then :
+ ac_found="$ac_header"
+fi
+rm -f conftest*
+ fi
+ fi
+done
+if test "$ac_found" != "no" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_found" >&5
+$as_echo "$ac_found" >&6; }
+ fc_func_posix_fadvise=1
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
+ fc_func_posix_fadvise=0
+fi
+
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-CFLAGS="$fc_saved_CFLAGS"
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_POSIX_FADVISE $fc_func_posix_fadvise
+_ACEOF
+
#
if test "x$ac_cv_func_fstatvfs" = "xyes"; then
@@ -13953,14 +14428,6 @@ _ACEOF
fi
-#
-# regex
-#
-if test "x$ac_cv_func_regcomp" = "xyes" -a "x$ac_cv_func_regerror" = "xyes" -a "x$ac_cv_func_regexec" = "xyes" -a "x$ac_cv_func_regfree"; then
-
-$as_echo "#define USE_REGEX /**/" >>confdefs.h
-
-fi
#
# Checks for iconv
@@ -14045,6 +14512,9 @@ _ACEOF
if ac_fn_c_try_link "$LINENO"; then :
iconv_type="libiconv"
use_iconv=1
+ ICONV_CFLAGS="$libiconv_cflags"
+ ICONV_LIBS="$libiconv_libs"
+
else
use_iconv=0
fi
@@ -14053,8 +14523,6 @@ rm -f core conftest.err conftest.$ac_objext \
CFLAGS="$iconvsaved_CFLAGS"
LIBS="$iconvsaved_LIBS"
- ICONV_CFLAGS="$libiconv_cflags"
- ICONV_LIBS="$libiconv_libs"
fi
if test "x$use_iconv" = "x0"; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14183,6 +14651,7 @@ else
$as_echo "yes" >&6; }
fi
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2"
@@ -14217,6 +14686,33 @@ cat >>confdefs.h <<_ACEOF
#define HAVE_FT_BITMAP_SIZE_Y_PPEM $HAVE_FT_BITMAP_SIZE_Y_PPEM
_ACEOF
+ac_fn_c_check_member "$LINENO" "TT_OS2" "usLowerOpticalPointSize" "ac_cv_member_TT_OS2_usLowerOpticalPointSize" "
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H
+"
+if test "x$ac_cv_member_TT_OS2_usLowerOpticalPointSize" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "TT_OS2" "usUpperOpticalPointSize" "ac_cv_member_TT_OS2_usUpperOpticalPointSize" "
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H
+"
+if test "x$ac_cv_member_TT_OS2_usUpperOpticalPointSize" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE 1
+_ACEOF
+
+
+fi
+
CFLAGS="$fontconfig_save_cflags"
LIBS="$fontconfig_save_libs"
@@ -14340,6 +14836,8 @@ fi
else
EXPAT_LIBS="-lexpat"
fi
+ else
+ PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY expat"
fi
expatsaved_CPPFLAGS="$CPPFLAGS"
@@ -14496,6 +14994,7 @@ else
$as_echo "yes" >&6; }
fi
+ PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0"
cat >>confdefs.h <<_ACEOF
#define ENABLE_LIBXML2 1
@@ -14655,7 +15154,7 @@ fi
case $fc_cachedir in
no|yes)
if test "$os_win32" = "yes"; then
- fc_cachedir="WINDOWSTEMPDIR_FONTCONFIG_CACHE"
+ fc_cachedir="LOCAL_APPDATA_FONTCONFIG_CACHE"
else
fc_cachedir='${localstatedir}/cache/${PACKAGE}'
fi
@@ -14724,7 +15223,7 @@ no|yes)
esac
case "$configdir" in
no|yes)
- configdir='${baseconfigdir}'/conf.d
+ configdir='${BASECONFIGDIR}'/conf.d
;;
*)
;;
@@ -14748,10 +15247,6 @@ XMLDIR=${xmldir}
-
-
-
-
#
# Thread-safety primitives
#
@@ -15017,8 +15512,44 @@ case ${host_os} in
darwin*)
ax_pthread_flags="-pthread $ax_pthread_flags"
;;
+ netbsd*)
+ # use libc stubs, don't link against libpthread, to allow
+ # dynamic loading
+ ax_pthread_flags=""
+ ;;
esac
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5
+$as_echo_n "checking if compiler needs -Werror to reject unknown flags... " >&6; }
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+int foo(void);
+int
+main ()
+{
+foo()
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ ax_pthread_extra_flags=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+CFLAGS="$save_CFLAGS"
+
if test x"$ax_pthread_ok" = xno; then
for flag in $ax_pthread_flags; do
@@ -15088,7 +15619,7 @@ $as_echo_n "checking for the pthreads library -l$flag... " >&6; }
save_LIBS="$LIBS"
save_CFLAGS="$CFLAGS"
LIBS="$PTHREAD_LIBS $LIBS"
- CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
# Check for various functions. We must include pthread.h,
# since some functions may be macros. (On the Sequent, we
@@ -15186,12 +15717,13 @@ $as_echo_n "checking if more special flags are required for pthreads... " >&6; }
if test "$GCC" = "yes"; then
flag="-D_REENTRANT"
else
+ # TODO: What about Clang on Solaris?
flag="-mt -D_REENTRANT"
fi
;;
esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5
-$as_echo "${flag}" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5
+$as_echo "$flag" >&6; }
if test "x$flag" != xno; then
PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
fi
@@ -15204,8 +15736,7 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
- #include <pthread.h>
+#include <pthread.h>
int
main ()
{
@@ -15234,9 +15765,20 @@ fi
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
- # More AIX lossage: must compile with xlc_r or cc_r
- if test x"$GCC" != xyes; then
- for ac_prog in xlc_r cc_r
+ # More AIX lossage: compile with *_r variant
+ if test "x$GCC" != xyes; then
+ case $host_os in
+ aix*)
+ case "x/$CC" in #(
+ x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) :
+ #handle absolute path differently from PATH based program lookup
+ case "x$CC" in #(
+ x/*) :
+ if as_fn_executable_p ${CC}_r; then :
+ PTHREAD_CC="${CC}_r"
+fi ;; #(
+ *) :
+ for ac_prog in ${CC}_r
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
@@ -15277,15 +15819,19 @@ fi
test -n "$PTHREAD_CC" && break
done
-test -n "$PTHREAD_CC" || PTHREAD_CC="${CC}"
-
- else
- PTHREAD_CC=$CC
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+ ;;
+esac ;; #(
+ *) :
+ ;;
+esac
+ ;;
+ esac
fi
-else
- PTHREAD_CC="$CC"
fi
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
@@ -15713,10 +16259,48 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
+# The cast to long int works around a bug in the HP C Compiler,
+# see AC_CHECK_SIZEOF for more information.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking alignment of void *" >&5
+$as_echo_n "checking alignment of void *... " >&6; }
+if ${ac_cv_alignof_void_p+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) offsetof (ac__type_alignof_, y)" "ac_cv_alignof_void_p" "$ac_includes_default
+#ifndef offsetof
+# define offsetof(type, member) ((char *) &((type *) 0)->member - (char *) 0)
+#endif
+typedef struct { char x; void * y; } ac__type_alignof_;"; then :
+
+else
+ if test "$ac_cv_type_void_p" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute alignment of void *
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_alignof_void_p=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_void_p" >&5
+$as_echo "$ac_cv_alignof_void_p" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define ALIGNOF_VOID_P $ac_cv_alignof_void_p
+_ACEOF
+
+
+
+
+
-ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-glyphname/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml test/Makefile fontconfig.spec fontconfig.pc fontconfig-zip"
+ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-glyphname/Makefile fc-blanks/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml test/Makefile fontconfig.spec fontconfig.pc fontconfig-zip"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -16277,7 +16861,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by $as_me, which was
+This file was extended by fontconfig $as_me 2.11.93, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -16337,13 +16921,13 @@ $config_headers
Configuration commands:
$config_commands
-Report bugs to the package provider."
+Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-config.status
+fontconfig config.status 2.11.93
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@@ -16472,13 +17056,13 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
sed_quote_subst='$sed_quote_subst'
double_quote_subst='$double_quote_subst'
delay_variable_subst='$delay_variable_subst'
+macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
+macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
+enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`'
DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
-macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
-enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
@@ -16777,6 +17361,7 @@ do
"fontconfig/Makefile") CONFIG_FILES="$CONFIG_FILES fontconfig/Makefile" ;;
"fc-lang/Makefile") CONFIG_FILES="$CONFIG_FILES fc-lang/Makefile" ;;
"fc-glyphname/Makefile") CONFIG_FILES="$CONFIG_FILES fc-glyphname/Makefile" ;;
+ "fc-blanks/Makefile") CONFIG_FILES="$CONFIG_FILES fc-blanks/Makefile" ;;
"fc-case/Makefile") CONFIG_FILES="$CONFIG_FILES fc-case/Makefile" ;;
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"conf.d/Makefile") CONFIG_FILES="$CONFIG_FILES conf.d/Makefile" ;;
@@ -17390,7 +17975,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
case $ac_file$ac_mode in
"depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
case $CONFIG_FILES in
@@ -17441,7 +18026,7 @@ $as_echo X"$mf" |
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
+ test -z "$am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
@@ -17536,6 +18121,13 @@ available_tags=""
# ### BEGIN LIBTOOL CONFIG
+# Which release of libtool.m4 was used?
+macro_version=$macro_version
+macro_revision=$macro_revision
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
# Assembler program.
AS=$lt_AS
@@ -17545,16 +18137,9 @@ DLLTOOL=$lt_DLLTOOL
# Object dumper program.
OBJDUMP=$lt_OBJDUMP
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
# Whether or not to build shared libraries.
build_libtool_libs=$enable_shared
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
# What type of objects to build.
pic_mode=$pic_mode
diff --git a/configure.ac b/configure.ac
index 06ac8a2e..bb988048 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,7 +24,6 @@ dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ(2.61)
-AC_INIT(fonts.dtd)
dnl ==========================================================================
dnl Versioning
@@ -34,26 +33,10 @@ dnl This is the package version number, not the shared library
dnl version. This same version number must appear in fontconfig/fontconfig.h
dnl Yes, it is a pain to synchronize version numbers. Unfortunately, it's
dnl not possible to extract the version number here from fontconfig.h
-AM_INIT_AUTOMAKE(fontconfig, 2.10.91)
+AC_INIT([fontconfig], [2.11.93], [https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig])
+AM_INIT_AUTOMAKE([1.11 parallel-tests dist-bzip2])
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
-dnl libtool versioning
-
-dnl bump revision when fixing bugs
-dnl bump current and age, reset revision to zero when adding APIs
-dnl bump current, leave age, reset revision to zero when changing/removing APIS
-LIBT_CURRENT=7
-LIBT_REVISION=2
-AC_SUBST(LIBT_CURRENT)
-AC_SUBST(LIBT_REVISION)
-LIBT_AGE=6
-
-LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
-AC_SUBST(LIBT_VERSION_INFO)
-
-LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
-AC_SUBST(LIBT_CURRENT_MINUS_AGE)
-
dnl ==========================================================================
AC_CONFIG_HEADERS(config.h)
@@ -64,10 +47,13 @@ AC_USE_SYSTEM_EXTENSIONS
AC_SYS_LARGEFILE
AC_PROG_INSTALL
AC_PROG_LN_S
-AC_LIBTOOL_WIN32_DLL
-AM_PROG_LIBTOOL
AC_PROG_MAKE_SET
PKG_PROG_PKG_CONFIG
+m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], AC_SUBST([pkgconfigdir], ${libdir}/pkgconfig))
+
+AM_MISSING_PROG([GIT], [git])
+AM_MISSING_PROG([GPERF], [gperf])
+AM_PATH_PYTHON
AC_MSG_CHECKING([for RM macro])
_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
@@ -78,6 +64,30 @@ else
AC_MSG_RESULT($_predefined_rm)
fi
+dnl Initialize libtool
+LT_PREREQ([2.2])
+LT_INIT([disable-static win32-dll])
+
+dnl libtool versioning
+
+dnl bump revision when fixing bugs
+dnl bump current and age, reset revision to zero when adding APIs
+dnl bump current, leave age, reset revision to zero when changing/removing APIS
+LIBT_CURRENT=10
+LIBT_REVISION=0
+AC_SUBST(LIBT_CURRENT)
+AC_SUBST(LIBT_REVISION)
+LIBT_AGE=9
+
+LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
+AC_SUBST(LIBT_VERSION_INFO)
+
+LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
+AC_SUBST(LIBT_CURRENT_MINUS_AGE)
+
+PKGCONFIG_REQUIRES=
+PKGCONFIG_REQUIRES_PRIVATELY=
+
dnl ==========================================================================
case "$host" in
@@ -94,11 +104,19 @@ if test "$os_win32" = "yes"; then
fi
AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
+AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
WARN_CFLAGS=""
+WARNING_CPP_DIRECTIVE="no"
if test "x$GCC" = "xyes"; then
WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \
-Wmissing-prototypes -Wmissing-declarations \
-Wnested-externs -fno-strict-aliasing"
+ WARNING_CPP_DIRECTIVE="yes"
+elif test "x$SUNCC" = "xyes"; then
+ WARN_CFLAGS="-v -fd"
+ WARNING_CPP_DIRECTIVE="yes"
+fi
+if test "x$WARNING_CPP_DIRECTIVE" = "xyes"; then
AC_DEFINE_UNQUOTED(HAVE_WARNING_CPP_DIRECTIVE,1,
[Can use #warning in C files])
fi
@@ -129,7 +147,7 @@ dnl ==========================================================================
# Checks for header files.
AC_HEADER_DIRENT
AC_HEADER_STDC
-AC_CHECK_HEADERS([fcntl.h regex.h stdlib.h string.h unistd.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
+AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
AX_CREATE_STDINT_H([src/fcstdint.h])
# Checks for typedefs, structures, and compiler characteristics.
@@ -141,23 +159,12 @@ AC_TYPE_PID_T
# Checks for library functions.
AC_FUNC_VPRINTF
AC_FUNC_MMAP
-AC_CHECK_FUNCS([geteuid getuid link memmove memset mkstemp mkostemp _mktemp_s strchr strrchr strtol getopt getopt_long sysconf ftruncate chsize rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat])
+AC_CHECK_FUNCS([link mkstemp mkostemp _mktemp_s mkdtemp getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r readlink fstatvfs fstatfs lstat])
dnl AC_CHECK_FUNCS doesn't check for header files.
dnl posix_fadvise() may be not available in older libc.
-fc_saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
-AC_MSG_CHECKING([for posix_fadvise])
-AC_LINK_IFELSE([AC_LANG_SOURCE([[
- #include <fcntl.h>
- int main(void) {
- return posix_fadvise(0, 0, 0, 0);
- }
- ]])],[
- AC_MSG_RESULT([yes])
- AC_DEFINE([HAVE_POSIX_FADVISE], [1], [Define to 1 if you have the 'posix_fadvise' function.])
- ],[AC_MSG_RESULT([no])])
-CFLAGS="$fc_saved_CFLAGS"
+AC_CHECK_SYMBOL([posix_fadvise], [fcntl.h], [fc_func_posix_fadvise=1], [fc_func_posix_fadvise=0])
+AC_DEFINE_UNQUOTED([HAVE_POSIX_FADVISE], [$fc_func_posix_fadvise], [Define to 1 if you have the 'posix_fadvise' function.])
#
if test "x$ac_cv_func_fstatvfs" = "xyes"; then
@@ -181,12 +188,6 @@ if test "x$ac_cv_func_fstatfs" = "xyes"; then
fi
AC_CHECK_MEMBERS([struct dirent.d_type],,,
[#include <dirent.h>])
-#
-# regex
-#
-if test "x$ac_cv_func_regcomp" = "xyes" -a "x$ac_cv_func_regerror" = "xyes" -a "x$ac_cv_func_regexec" = "xyes" -a "x$ac_cv_func_regfree"; then
- AC_DEFINE(USE_REGEX,,[Use regex])
-fi
#
# Checks for iconv
@@ -247,13 +248,14 @@ if test "x$enable_iconv" != "xno"; then
AC_TRY_LINK([#include <iconv.h>],
[iconv_open ("from", "to");],
[iconv_type="libiconv"
- use_iconv=1],
+ use_iconv=1
+ ICONV_CFLAGS="$libiconv_cflags"
+ ICONV_LIBS="$libiconv_libs"
+ ],
[use_iconv=0])
CFLAGS="$iconvsaved_CFLAGS"
LIBS="$iconvsaved_LIBS"
- ICONV_CFLAGS="$libiconv_cflags"
- ICONV_LIBS="$libiconv_libs"
fi
if test "x$use_iconv" = "x0"; then
AC_TRY_LINK([#include <iconv.h>],
@@ -273,6 +275,7 @@ AC_DEFINE_UNQUOTED(USE_ICONV,$use_iconv,[Use iconv.])
# Checks for FreeType
#
PKG_CHECK_MODULES(FREETYPE, freetype2)
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2"
AC_SUBST(FREETYPE_LIBS)
AC_SUBST(FREETYPE_CFLAGS)
@@ -289,6 +292,10 @@ AC_CHECK_MEMBER(FT_Bitmap_Size.y_ppem,
#include FT_FREETYPE_H])
AC_DEFINE_UNQUOTED(HAVE_FT_BITMAP_SIZE_Y_PPEM,$HAVE_FT_BITMAP_SIZE_Y_PPEM,
[FT_Bitmap_Size structure includes y_ppem field])
+AC_CHECK_MEMBERS([TT_OS2.usLowerOpticalPointSize, TT_OS2.usUpperOpticalPointSize], [], [], [[
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H]])
CFLAGS="$fontconfig_save_cflags"
LIBS="$fontconfig_save_libs"
@@ -332,6 +339,8 @@ if test "$enable_libxml2" != "yes"; then
else
EXPAT_LIBS="-lexpat"
fi
+ else
+ PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY expat"
fi
expatsaved_CPPFLAGS="$CPPFLAGS"
@@ -373,6 +382,7 @@ AC_ARG_ENABLE(libxml2,
if test "$enable_libxml2" = "yes"; then
PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6])
+ PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0"
AC_DEFINE_UNQUOTED(ENABLE_LIBXML2,1,[Use libxml2 instead of Expat])
AC_SUBST(LIBXML2_CFLAGS)
@@ -488,7 +498,7 @@ AC_ARG_WITH(cache-dir,
case $fc_cachedir in
no|yes)
if test "$os_win32" = "yes"; then
- fc_cachedir="WINDOWSTEMPDIR_FONTCONFIG_CACHE"
+ fc_cachedir="LOCAL_APPDATA_FONTCONFIG_CACHE"
else
fc_cachedir='${localstatedir}/cache/${PACKAGE}'
fi
@@ -545,7 +555,7 @@ no|yes)
esac
case "$configdir" in
no|yes)
- configdir='${baseconfigdir}'/conf.d
+ configdir='${BASECONFIGDIR}'/conf.d
;;
*)
;;
@@ -562,13 +572,9 @@ TEMPLATEDIR=${templatedir}
BASECONFIGDIR=${baseconfigdir}
CONFIGDIR=${configdir}
XMLDIR=${xmldir}
-AC_SUBST(templatedir)
AC_SUBST(TEMPLATEDIR)
-AC_SUBST(baseconfigdir)
AC_SUBST(BASECONFIGDIR)
-AC_SUBST(configdir)
AC_SUBST(CONFIGDIR)
-AC_SUBST(xmldir)
AC_SUBST(XMLDIR)
@@ -675,16 +681,24 @@ dnl Figure out what cache format suffix to use for this architecture
AC_C_BIGENDIAN
AC_CHECK_SIZEOF([void *])
AC_CHECK_ALIGNOF([double])
+AC_CHECK_ALIGNOF([void *])
dnl include the header file for workaround of miscalculating size on autoconf
dnl particularly for fat binaries
AH_BOTTOM([#include "config-fixups.h"])
-AC_OUTPUT([
+dnl
+dnl
+AC_SUBST(PKGCONFIG_REQUIRES)
+AC_SUBST(PKGCONFIG_REQUIRES_PRIVATELY)
+
+dnl
+AC_CONFIG_FILES([
Makefile
fontconfig/Makefile
fc-lang/Makefile
fc-glyphname/Makefile
+fc-blanks/Makefile
fc-case/Makefile
src/Makefile
conf.d/Makefile
@@ -703,3 +717,4 @@ fontconfig.spec
fontconfig.pc
fontconfig-zip
])
+AC_OUTPUT
diff --git a/depcomp b/depcomp
index debb6ffa..4ebd5b3a 100755
--- a/depcomp
+++ b/depcomp
@@ -1,9 +1,9 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2012-03-27.16; # UTC
+scriptversion=2013-05-30.07; # UTC
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -27,9 +27,9 @@ scriptversion=2012-03-27.16; # UTC
case $1 in
'')
- echo "$0: No command. Try '$0 --help' for more information." 1>&2
- exit 1;
- ;;
+ echo "$0: No command. Try '$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
@@ -56,11 +56,65 @@ EOF
;;
esac
+# Get the directory component of the given path, and save it in the
+# global variables '$dir'. Note that this directory component will
+# be either empty or ending with a '/' character. This is deliberate.
+set_dir_from ()
+{
+ case $1 in
+ */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
+ *) dir=;;
+ esac
+}
+
+# Get the suffix-stripped basename of the given path, and save it the
+# global variable '$base'.
+set_base_from ()
+{
+ base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
+}
+
+# If no dependency file was actually created by the compiler invocation,
+# we still have to create a dummy depfile, to avoid errors with the
+# Makefile "include basename.Plo" scheme.
+make_dummy_depfile ()
+{
+ echo "#dummy" > "$depfile"
+}
+
+# Factor out some common post-processing of the generated depfile.
+# Requires the auxiliary global variable '$tmpdepfile' to be set.
+aix_post_process_depfile ()
+{
+ # If the compiler actually managed to produce a dependency file,
+ # post-process it.
+ if test -f "$tmpdepfile"; then
+ # Each line is of the form 'foo.o: dependency.h'.
+ # Do two passes, one to just change these to
+ # $object: dependency.h
+ # and one to simply output
+ # dependency.h:
+ # which is needed to avoid the deleted-header problem.
+ { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
+ sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
+ } > "$depfile"
+ rm -f "$tmpdepfile"
+ else
+ make_dummy_depfile
+ fi
+}
+
# A tabulation character.
tab=' '
# A newline character.
nl='
'
+# Character ranges might be problematic outside the C locale.
+# These definitions help.
+upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
+lower=abcdefghijklmnopqrstuvwxyz
+digits=0123456789
+alpha=${upper}${lower}
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
@@ -74,6 +128,9 @@ tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
+# Avoid interferences from the environment.
+gccflag= dashmflag=
+
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
@@ -85,32 +142,32 @@ if test "$depmode" = hp; then
fi
if test "$depmode" = dashXmstdout; then
- # This is just like dashmstdout with a different argument.
- dashmflag=-xM
- depmode=dashmstdout
+ # This is just like dashmstdout with a different argument.
+ dashmflag=-xM
+ depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
- # This is just like msvisualcpp but w/o cygpath translation.
- # Just convert the backslash-escaped backslashes to single forward
- # slashes to satisfy depend.m4
- cygpath_u='sed s,\\\\,/,g'
- depmode=msvisualcpp
+ # This is just like msvisualcpp but w/o cygpath translation.
+ # Just convert the backslash-escaped backslashes to single forward
+ # slashes to satisfy depend.m4
+ cygpath_u='sed s,\\\\,/,g'
+ depmode=msvisualcpp
fi
if test "$depmode" = msvc7msys; then
- # This is just like msvc7 but w/o cygpath translation.
- # Just convert the backslash-escaped backslashes to single forward
- # slashes to satisfy depend.m4
- cygpath_u='sed s,\\\\,/,g'
- depmode=msvc7
+ # This is just like msvc7 but w/o cygpath translation.
+ # Just convert the backslash-escaped backslashes to single forward
+ # slashes to satisfy depend.m4
+ cygpath_u='sed s,\\\\,/,g'
+ depmode=msvc7
fi
if test "$depmode" = xlc; then
- # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
- gccflag=-qmakedep=gcc,-MF
- depmode=gcc
+ # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
+ gccflag=-qmakedep=gcc,-MF
+ depmode=gcc
fi
case "$depmode" in
@@ -133,8 +190,7 @@ gcc3)
done
"$@"
stat=$?
- if test $stat -eq 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
@@ -142,13 +198,17 @@ gcc3)
;;
gcc)
+## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
+## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
+## (see the conditional assignment to $gccflag above).
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-## -MM, not -M (despite what the docs say).
+## -MM, not -M (despite what the docs say). Also, it might not be
+## supported by the other compilers which use the 'gcc' depmode.
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
@@ -156,15 +216,14 @@ gcc)
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
- if test $stat -eq 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
+ # The second -e expression handles DOS-style file names with drive
+ # letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the "deleted header file" problem.
@@ -173,15 +232,15 @@ gcc)
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
- tr ' ' "$nl" < "$tmpdepfile" |
## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
- | sed -e 's/$/ :/' >> "$depfile"
+ tr ' ' "$nl" < "$tmpdepfile" \
+ | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
+ | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
@@ -199,8 +258,7 @@ sgi)
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
- if test $stat -eq 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
@@ -208,7 +266,6 @@ sgi)
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
-
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
@@ -216,19 +273,15 @@ sgi)
# the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
tr ' ' "$nl" < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr "$nl" ' ' >> "$depfile"
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
+ | tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
-
# The second pass generates a dummy entry for each header file.
tr ' ' "$nl" < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> "$depfile"
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+ >> "$depfile"
else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
+ make_dummy_depfile
fi
rm -f "$tmpdepfile"
;;
@@ -246,9 +299,8 @@ aix)
# current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+ set_dir_from "$object"
+ set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.u
tmpdepfile2=$base.u
@@ -261,9 +313,7 @@ aix)
"$@" -M
fi
stat=$?
-
- if test $stat -eq 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
@@ -272,65 +322,113 @@ aix)
do
test -f "$tmpdepfile" && break
done
- if test -f "$tmpdepfile"; then
- # Each line is of the form 'foo.o: dependent.h'.
- # Do two passes, one to just change these to
- # '$object: dependent.h' and one to simply 'dependent.h:'.
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
+ aix_post_process_depfile
+ ;;
+
+tcc)
+ # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
+ # FIXME: That version still under development at the moment of writing.
+ # Make that this statement remains true also for stable, released
+ # versions.
+ # It will wrap lines (doesn't matter whether long or short) with a
+ # trailing '\', as in:
+ #
+ # foo.o : \
+ # foo.c \
+ # foo.h \
+ #
+ # It will put a trailing '\' even on the last line, and will use leading
+ # spaces rather than leading tabs (at least since its commit 0394caf7
+ # "Emit spaces for -MD").
+ "$@" -MD -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -ne 0; then
+ rm -f "$tmpdepfile"
+ exit $stat
fi
+ rm -f "$depfile"
+ # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
+ # We have to change lines of the first kind to '$object: \'.
+ sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
+ # And for each line of the second kind, we have to emit a 'dep.h:'
+ # dummy dependency, to avoid the deleted-header problem.
+ sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
rm -f "$tmpdepfile"
;;
-icc)
- # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
- # However on
- # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
- # ICC 7.0 will fill foo.d with something like
- # foo.o: sub/foo.c
- # foo.o: sub/foo.h
- # which is wrong. We want
- # sub/foo.o: sub/foo.c
- # sub/foo.o: sub/foo.h
- # sub/foo.c:
- # sub/foo.h:
- # ICC 7.1 will output
+## The order of this option in the case statement is important, since the
+## shell code in configure will try each of these formats in the order
+## listed in this file. A plain '-MD' option would be understood by many
+## compilers, so we must ensure this comes after the gcc and icc options.
+pgcc)
+ # Portland's C compiler understands '-MD'.
+ # Will always output deps to 'file.d' where file is the root name of the
+ # source file under compilation, even if file resides in a subdirectory.
+ # The object file name does not affect the name of the '.d' file.
+ # pgcc 10.2 will output
# foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using '\':
+ # and will wrap long lines using '\' :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
- # tcc 0.9.26 (FIXME still under development at the moment of writing)
- # will emit a similar output, but also prepend the continuation lines
- # with horizontal tabulation characters.
- "$@" -MD -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
+ set_dir_from "$object"
+ # Use the source, not the object, to determine the base name, since
+ # that's sadly what pgcc will do too.
+ set_base_from "$source"
+ tmpdepfile=$base.d
+
+ # For projects that build the same source file twice into different object
+ # files, the pgcc approach of using the *source* file root name can cause
+ # problems in parallel builds. Use a locking strategy to avoid stomping on
+ # the same $tmpdepfile.
+ lockdir=$base.d-lock
+ trap "
+ echo '$0: caught signal, cleaning up...' >&2
+ rmdir '$lockdir'
+ exit 1
+ " 1 2 13 15
+ numtries=100
+ i=$numtries
+ while test $i -gt 0; do
+ # mkdir is a portable test-and-set.
+ if mkdir "$lockdir" 2>/dev/null; then
+ # This process acquired the lock.
+ "$@" -MD
+ stat=$?
+ # Release the lock.
+ rmdir "$lockdir"
+ break
+ else
+ # If the lock is being held by a different process, wait
+ # until the winning process is done or we timeout.
+ while test -d "$lockdir" && test $i -gt 0; do
+ sleep 1
+ i=`expr $i - 1`
+ done
+ fi
+ i=`expr $i - 1`
+ done
+ trap - 1 2 13 15
+ if test $i -le 0; then
+ echo "$0: failed to acquire lock after $numtries attempts" >&2
+ echo "$0: check lockdir '$lockdir'" >&2
+ exit 1
+ fi
+
+ if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
- # Each line is of the form 'foo.o: dependent.h',
- # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
+ # Each line is of the form `foo.o: dependent.h',
+ # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
- # '$object: dependent.h' and one to simply 'dependent.h:'.
- sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \
- < "$tmpdepfile" > "$depfile"
- sed '
- s/[ '"$tab"'][ '"$tab"']*/ /g
- s/^ *//
- s/ *\\*$//
- s/^[^:]*: *//
- /^$/d
- /:$/d
- s/$/ :/
- ' < "$tmpdepfile" >> "$depfile"
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process this invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
+ | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
@@ -341,9 +439,8 @@ hp2)
# 'foo.d', which lands next to the object file, wherever that
# happens to be.
# Much of this is similar to the tru64 case; see comments there.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+ set_dir_from "$object"
+ set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir.libs/$base.d
@@ -354,8 +451,7 @@ hp2)
"$@" +Maked
fi
stat=$?
- if test $stat -eq 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2"
exit $stat
fi
@@ -365,76 +461,61 @@ hp2)
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+ sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
# Add 'dependent.h:' lines.
sed -ne '2,${
- s/^ *//
- s/ \\*$//
- s/$/:/
- p
- }' "$tmpdepfile" >> "$depfile"
+ s/^ *//
+ s/ \\*$//
+ s/$/:/
+ p
+ }' "$tmpdepfile" >> "$depfile"
else
- echo "#dummy" > "$depfile"
+ make_dummy_depfile
fi
rm -f "$tmpdepfile" "$tmpdepfile2"
;;
tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in 'foo.d' instead, so we check for that too.
- # Subdirectories are respected.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
- if test "$libtool" = yes; then
- # With Tru64 cc, shared objects can also be used to make a
- # static library. This mechanism is used in libtool 1.4 series to
- # handle both shared and static libraries in a single compilation.
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
- #
- # With libtool 1.5 this exception was removed, and libtool now
- # generates 2 separate objects for the 2 libraries. These two
- # compilations output dependencies in $dir.libs/$base.o.d and
- # in $dir$base.o.d. We have to check for both files, because
- # one of the two compilations can be disabled. We should prefer
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
- # automatically cleaned when .libs/ is deleted, while ignoring
- # the former would cause a distcleancheck panic.
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
- tmpdepfile2=$dir$base.o.d # libtool 1.5
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
- "$@" -Wc,-MD
- else
- tmpdepfile1=$dir$base.o.d
- tmpdepfile2=$dir$base.d
- tmpdepfile3=$dir$base.d
- tmpdepfile4=$dir$base.d
- "$@" -MD
- fi
-
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
+ # The Tru64 compiler uses -MD to generate dependencies as a side
+ # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
+ # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+ # dependencies in 'foo.d' instead, so we check for that too.
+ # Subdirectories are respected.
+ set_dir_from "$object"
+ set_base_from "$object"
+
+ if test "$libtool" = yes; then
+ # Libtool generates 2 separate objects for the 2 libraries. These
+ # two compilations output dependencies in $dir.libs/$base.o.d and
+ # in $dir$base.o.d. We have to check for both files, because
+ # one of the two compilations can be disabled. We should prefer
+ # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+ # automatically cleaned when .libs/ is deleted, while ignoring
+ # the former would cause a distcleancheck panic.
+ tmpdepfile1=$dir$base.o.d # libtool 1.5
+ tmpdepfile2=$dir.libs/$base.o.d # Likewise.
+ tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
+ "$@" -Wc,-MD
+ else
+ tmpdepfile1=$dir$base.d
+ tmpdepfile2=$dir$base.d
+ tmpdepfile3=$dir$base.d
+ "$@" -MD
+ fi
+
+ stat=$?
+ if test $stat -ne 0; then
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ # Same post-processing that is required for AIX mode.
+ aix_post_process_depfile
+ ;;
msvc7)
if test "$libtool" = yes; then
@@ -445,8 +526,7 @@ msvc7)
"$@" $showIncludes > "$tmpdepfile"
stat=$?
grep -v '^Note: including file: ' "$tmpdepfile"
- if test "$stat" = 0; then :
- else
+ if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
@@ -472,6 +552,7 @@ $ {
G
p
}' >> "$depfile"
+ echo >> "$depfile" # make sure the fragment doesn't end with a backslash
rm -f "$tmpdepfile"
;;
@@ -523,13 +604,14 @@ dashmstdout)
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
"$@" $dashmflag |
- sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
+ sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
- tr ' ' "$nl" < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process this sed invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ tr ' ' "$nl" < "$tmpdepfile" \
+ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+ | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
@@ -582,10 +664,12 @@ makedepend)
# makedepend may prepend the VPATH from the source file name to the object.
# No need to regex-escape $object, excess matching of '.' is harmless.
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process the last invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ sed '1,2d' "$tmpdepfile" \
+ | tr ' ' "$nl" \
+ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+ | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
@@ -621,10 +705,10 @@ cpp)
esac
done
- "$@" -E |
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
- sed '$ s: \\$::' > "$tmpdepfile"
+ "$@" -E \
+ | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+ | sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
@@ -656,15 +740,15 @@ msvisualcpp)
shift
;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
- set fnord "$@"
- shift
- shift
- ;;
+ set fnord "$@"
+ shift
+ shift
+ ;;
*)
- set fnord "$@" "$arg"
- shift
- shift
- ;;
+ set fnord "$@" "$arg"
+ shift
+ shift
+ ;;
esac
done
"$@" -E 2>/dev/null |
diff --git a/doc/FcAtomicCreate.3 b/doc/FcAtomicCreate.3
index 90254583..e5d12e8e 100644
--- a/doc/FcAtomicCreate.3
+++ b/doc/FcAtomicCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicCreate" "3" "10 1月 2013" "" ""
+.TH "FcAtomicCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicCreate \- create an FcAtomic object
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Creates a data structure containing data needed to control access to \fIfile\fR\
Writing is done to a separate file. Once that file is complete, the original
configuration file is atomically replaced so that reading process always see
a consistent and complete file without the need to lock for reading.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicDeleteNew.3 b/doc/FcAtomicDeleteNew.3
index f322d51f..bb1a1f46 100644
--- a/doc/FcAtomicDeleteNew.3
+++ b/doc/FcAtomicDeleteNew.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDeleteNew" "3" "10 1月 2013" "" ""
+.TH "FcAtomicDeleteNew" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicDeleteNew \- delete new file
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicDeleteNew (FcAtomic *\fIatomic\fB);
.SH "DESCRIPTION"
.PP
Deletes the new file. Used in error recovery to back out changes.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicDestroy.3 b/doc/FcAtomicDestroy.3
index b6c5b990..c2fff80c 100644
--- a/doc/FcAtomicDestroy.3
+++ b/doc/FcAtomicDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDestroy" "3" "10 1月 2013" "" ""
+.TH "FcAtomicDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicDestroy \- destroy an FcAtomic object
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicDestroy (FcAtomic *\fIatomic\fB);
.SH "DESCRIPTION"
.PP
Destroys \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicLock.3 b/doc/FcAtomicLock.3
index 3eb4307d..0d4a94cf 100644
--- a/doc/FcAtomicLock.3
+++ b/doc/FcAtomicLock.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicLock" "3" "10 1月 2013" "" ""
+.TH "FcAtomicLock" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicLock \- lock a file
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcAtomicLock (FcAtomic *\fIatomic\fB);
Attempts to lock the file referenced by \fIatomic\fR\&.
Returns FcFalse if the file is already locked, else returns FcTrue and
leaves the file locked.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicNewFile.3 b/doc/FcAtomicNewFile.3
index 21f286f6..2c1fc6bb 100644
--- a/doc/FcAtomicNewFile.3
+++ b/doc/FcAtomicNewFile.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicNewFile" "3" "10 1月 2013" "" ""
+.TH "FcAtomicNewFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicNewFile \- return new temporary file name
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcAtomicNewFile (FcAtomic *\fIatomic\fB);
.PP
Returns the filename for writing a new version of the file referenced
by \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicOrigFile.3 b/doc/FcAtomicOrigFile.3
index 8c9efeec..2aafacab 100644
--- a/doc/FcAtomicOrigFile.3
+++ b/doc/FcAtomicOrigFile.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicOrigFile" "3" "10 1月 2013" "" ""
+.TH "FcAtomicOrigFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicOrigFile \- return original file name
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar8 * FcAtomicOrigFile (FcAtomic *\fIatomic\fB);
.SH "DESCRIPTION"
.PP
Returns the file referenced by \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicReplaceOrig.3 b/doc/FcAtomicReplaceOrig.3
index e93831f5..1ff4285c 100644
--- a/doc/FcAtomicReplaceOrig.3
+++ b/doc/FcAtomicReplaceOrig.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicReplaceOrig" "3" "10 1月 2013" "" ""
+.TH "FcAtomicReplaceOrig" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicReplaceOrig \- replace original with new
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcAtomicReplaceOrig (FcAtomic *\fIatomic\fB);
Replaces the original file referenced by \fIatomic\fR with
the new file. Returns FcFalse if the file cannot be replaced due to
permission issues in the filesystem. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcAtomicUnlock.3 b/doc/FcAtomicUnlock.3
index da83dc56..54b33740 100644
--- a/doc/FcAtomicUnlock.3
+++ b/doc/FcAtomicUnlock.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicUnlock" "3" "10 1月 2013" "" ""
+.TH "FcAtomicUnlock" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcAtomicUnlock \- unlock a file
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicUnlock (FcAtomic *\fIatomic\fB);
.SH "DESCRIPTION"
.PP
Unlocks the file.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcBlanksAdd.3 b/doc/FcBlanksAdd.3
index 506b2ec0..982347cc 100644
--- a/doc/FcBlanksAdd.3
+++ b/doc/FcBlanksAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksAdd" "3" "10 1月 2013" "" ""
+.TH "FcBlanksAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcBlanksAdd \- Add a character to an FcBlanks
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcBlanksAdd (FcBlanks *\fIb\fB, FcChar32 \fIucs4\fB);
.PP
Adds a single character to an FcBlanks object, returning FcFalse
if this process ran out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcBlanksCreate.3 b/doc/FcBlanksCreate.3
index 773ac158..38dac0a8 100644
--- a/doc/FcBlanksCreate.3
+++ b/doc/FcBlanksCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksCreate" "3" "10 1月 2013" "" ""
+.TH "FcBlanksCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcBlanksCreate \- Create an FcBlanks
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBlanks * FcBlanksCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Creates an empty FcBlanks object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcBlanksDestroy.3 b/doc/FcBlanksDestroy.3
index 035bcf90..220cd64b 100644
--- a/doc/FcBlanksDestroy.3
+++ b/doc/FcBlanksDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksDestroy" "3" "10 1月 2013" "" ""
+.TH "FcBlanksDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcBlanksDestroy \- Destroy and FcBlanks
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcBlanksDestroy (FcBlanks *\fIb\fB);
.SH "DESCRIPTION"
.PP
Destroys an FcBlanks object, freeing any associated memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcBlanksIsMember.3 b/doc/FcBlanksIsMember.3
index fbeaedef..afa8e56b 100644
--- a/doc/FcBlanksIsMember.3
+++ b/doc/FcBlanksIsMember.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksIsMember" "3" "10 1月 2013" "" ""
+.TH "FcBlanksIsMember" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcBlanksIsMember \- Query membership in an FcBlanks
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcBlanksIsMember (FcBlanks *\fIb\fB, FcChar32 \fIucs4\fB);
.PP
Returns whether the specified FcBlanks object contains the indicated Unicode
value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCacheCopySet.3 b/doc/FcCacheCopySet.3
index 84e983b3..20ecb226 100644
--- a/doc/FcCacheCopySet.3
+++ b/doc/FcCacheCopySet.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCopySet" "3" "10 1月 2013" "" ""
+.TH "FcCacheCopySet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheCopySet \- Returns a copy of the fontset from cache
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcFontSet * FcCacheCopySet (const FcCache *\fIcache\fB);
The returned fontset contains each of the font patterns from
\fIcache\fR\&. This fontset may be modified, but the patterns
from the cache are read-only.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCacheCreateTagFile.3 b/doc/FcCacheCreateTagFile.3
index f5e317de..b0dc4b16 100644
--- a/doc/FcCacheCreateTagFile.3
+++ b/doc/FcCacheCreateTagFile.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCreateTagFile" "3" "10 1月 2013" "" ""
+.TH "FcCacheCreateTagFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheCreateTagFile \- Create CACHEDIR.TAG at cache directory.
.SH SYNOPSIS
@@ -12,6 +12,6 @@ void FcCacheCreateTagFile (const FcConfig *\fIconfig\fB);
.PP
This tries to create CACHEDIR.TAG file at the cache directory registered
to \fIconfig\fR\&.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.91
diff --git a/doc/FcCacheDir.3 b/doc/FcCacheDir.3
index bdb29019..dcf8756b 100644
--- a/doc/FcCacheDir.3
+++ b/doc/FcCacheDir.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheDir" "3" "10 1月 2013" "" ""
+.TH "FcCacheDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheDir \- Return directory of cache
.SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcChar8 * FcCacheDir (const FcCache *\fIcache\fB);
.SH "DESCRIPTION"
.PP
This function returns the directory from which the cache was constructed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCacheNumFont.3 b/doc/FcCacheNumFont.3
index 65b8c87d..4e170a34 100644
--- a/doc/FcCacheNumFont.3
+++ b/doc/FcCacheNumFont.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumFont" "3" "10 1月 2013" "" ""
+.TH "FcCacheNumFont" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheNumFont \- Returns the number of fonts in cache.
.SH SYNOPSIS
@@ -12,6 +12,3 @@ int FcCacheNumFont (const FcCache *\fIcache\fB);
.PP
This returns the number of fonts which would be included in the return from
FcCacheCopySet.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCacheNumSubdir.3 b/doc/FcCacheNumSubdir.3
index 7b78412b..23ec4a27 100644
--- a/doc/FcCacheNumSubdir.3
+++ b/doc/FcCacheNumSubdir.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumSubdir" "3" "10 1月 2013" "" ""
+.TH "FcCacheNumSubdir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheNumSubdir \- Return the number of subdirectories in cache.
.SH SYNOPSIS
@@ -11,6 +11,3 @@ int FcCacheNumSubdir (const FcCache *\fIcache\fB);
.SH "DESCRIPTION"
.PP
This returns the total number of subdirectories in the cache.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCacheSubdir.3 b/doc/FcCacheSubdir.3
index 73cabd24..5a191dc7 100644
--- a/doc/FcCacheSubdir.3
+++ b/doc/FcCacheSubdir.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheSubdir" "3" "10 1月 2013" "" ""
+.TH "FcCacheSubdir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCacheSubdir \- Return the i'th subdirectory.
.SH SYNOPSIS
@@ -14,6 +14,3 @@ The set of subdirectories stored in a cache file are indexed by this
function, \fIi\fR should range from 0 to
\fIn\fR-1, where \fIn\fR is the return
value from FcCacheNumSubdir.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetAddChar.3 b/doc/FcCharSetAddChar.3
index ff08dfeb..bdebc13b 100644
--- a/doc/FcCharSetAddChar.3
+++ b/doc/FcCharSetAddChar.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetAddChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetAddChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetAddChar \- Add a character to a charset
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcCharSetAddChar (FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
\fBFcCharSetAddChar\fR adds a single Unicode char to the set,
returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetCopy.3 b/doc/FcCharSetCopy.3
index 37548c46..b1923107 100644
--- a/doc/FcCharSetCopy.3
+++ b/doc/FcCharSetCopy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCopy" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetCopy \- Copy a charset
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetCopy (FcCharSet *\fIsrc\fB);
.PP
Makes a copy of \fIsrc\fR; note that this may not actually do anything more
than increment the reference count on \fIsrc\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetCount.3 b/doc/FcCharSetCount.3
index 2236a521..fda0f8f1 100644
--- a/doc/FcCharSetCount.3
+++ b/doc/FcCharSetCount.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetCount \- Count entries in a charset
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetCount (const FcCharSet *\fIa\fB);
.SH "DESCRIPTION"
.PP
Returns the total number of Unicode chars in \fIa\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetCoverage.3 b/doc/FcCharSetCoverage.3
index cfaf2e62..0697e517 100644
--- a/doc/FcCharSetCoverage.3
+++ b/doc/FcCharSetCoverage.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCoverage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCoverage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetCoverage \- DEPRECATED return coverage for a Unicode page
.SH SYNOPSIS
@@ -16,6 +16,3 @@ indicates which code points in
\fIpage\fR are included in \fIa\fR\&.
\fBFcCharSetCoverage\fR returns the next page in the charset which has any
coverage.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetCreate.3 b/doc/FcCharSetCreate.3
index 9fe664c6..985e06a4 100644
--- a/doc/FcCharSetCreate.3
+++ b/doc/FcCharSetCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetCreate \- Create an empty character set
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetCreate (void\fI\fB);
.PP
\fBFcCharSetCreate\fR allocates and initializes a new empty
character set object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetDelChar.3 b/doc/FcCharSetDelChar.3
index c3e45b45..da456d74 100644
--- a/doc/FcCharSetDelChar.3
+++ b/doc/FcCharSetDelChar.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDelChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetDelChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetDelChar \- Add a character to a charset
.SH SYNOPSIS
@@ -13,6 +13,6 @@ FcBool FcCharSetDelChar (FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
\fBFcCharSetDelChar\fR deletes a single Unicode char from the set,
returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.0
diff --git a/doc/FcCharSetDestroy.3 b/doc/FcCharSetDestroy.3
index 21c04b35..25ed7dcd 100644
--- a/doc/FcCharSetDestroy.3
+++ b/doc/FcCharSetDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcCharSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetDestroy \- Destroy a character set
.SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcCharSetDestroy (FcCharSet *\fIfcs\fB);
\fBFcCharSetDestroy\fR decrements the reference count
\fIfcs\fR\&. If the reference count becomes zero, all
memory referenced is freed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetEqual.3 b/doc/FcCharSetEqual.3
index 89a725f1..e333f601 100644
--- a/doc/FcCharSetEqual.3
+++ b/doc/FcCharSetEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcCharSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetEqual \- Compare two charsets
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcCharSetEqual (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
.PP
Returns whether \fIa\fR and \fIb\fR
contain the same set of Unicode chars.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetFirstPage.3 b/doc/FcCharSetFirstPage.3
index 74f7775b..c4fdba8f 100644
--- a/doc/FcCharSetFirstPage.3
+++ b/doc/FcCharSetFirstPage.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetFirstPage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetFirstPage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetFirstPage \- Start enumerating charset contents
.SH SYNOPSIS
@@ -10,9 +10,26 @@ FcChar32 FcCharSetFirstPage (const FcCharSet *\fIa\fB, FcChar32[FC_CHARSET_MAP_S
.fi\fR
.SH "DESCRIPTION"
.PP
-Builds an array of bits marking the first page of Unicode coverage of
-\fIa\fR\&. Returns the base of the array. \fInext\fR contains the next page in the
-font.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Builds an array of bits in \fImap\fR marking the
+first page of Unicode coverage of \fIa\fR\&.
+\fI*next\fR is set to contains the base code point
+for the next page in \fIa\fR\&. Returns the base code
+point for the page, or FC_CHARSET_DONE if
+\fIa\fR contains no pages. As an example, if
+\fBFcCharSetFirstPage\fR returns
+0x300 and fills \fImap\fR with
+.sp
+.nf
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+.sp
+.fi
+Then the page contains code points 0x300 through
+0x33f (the first 64 code points on the page)
+because \fImap[0]\fR and
+\fImap[1]\fR both have all their bits set. It also
+contains code points 0x343 (\fI0x300 + 32*2
++ (4-1)\fR) and 0x35e (\fI0x300 +
+32*2 + (31-1)\fR) because \fImap[2]\fR has
+the 4th and 31st bits set. The code points represented by
+map[3] and later are left as an excercise for the
+reader ;).
diff --git a/doc/FcCharSetHasChar.3 b/doc/FcCharSetHasChar.3
index cc28185b..e2392d45 100644
--- a/doc/FcCharSetHasChar.3
+++ b/doc/FcCharSetHasChar.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetHasChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetHasChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetHasChar \- Check a charset for a char
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcCharSetHasChar (const FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
.SH "DESCRIPTION"
.PP
Returns whether \fIfcs\fR contains the char \fIucs4\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetIntersect.3 b/doc/FcCharSetIntersect.3
index 4a59a21f..a0c23310 100644
--- a/doc/FcCharSetIntersect.3
+++ b/doc/FcCharSetIntersect.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersect" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIntersect" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetIntersect \- Intersect charsets
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetIntersect (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\
.PP
Returns a set including only those chars found in both
\fIa\fR and \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetIntersectCount.3 b/doc/FcCharSetIntersectCount.3
index aceb7a72..6c0fb9e8 100644
--- a/doc/FcCharSetIntersectCount.3
+++ b/doc/FcCharSetIntersectCount.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersectCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIntersectCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetIntersectCount \- Intersect and count charsets
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetIntersectCount (const FcCharSet *\fIa\fB, const FcCharSet *\fI
.SH "DESCRIPTION"
.PP
Returns the number of chars that are in both \fIa\fR and \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetIsSubset.3 b/doc/FcCharSetIsSubset.3
index 02cf8cf4..27980ac3 100644
--- a/doc/FcCharSetIsSubset.3
+++ b/doc/FcCharSetIsSubset.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIsSubset" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIsSubset" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetIsSubset \- Test for charset inclusion
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcCharSetIsSubset (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
.SH "DESCRIPTION"
.PP
Returns whether \fIa\fR is a subset of \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetMerge.3 b/doc/FcCharSetMerge.3
index 3521b2bb..540a1bc3 100644
--- a/doc/FcCharSetMerge.3
+++ b/doc/FcCharSetMerge.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetMerge" "3" "10 1月 2013" "" ""
+.TH "FcCharSetMerge" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetMerge \- Merge charsets
.SH SYNOPSIS
@@ -16,6 +16,3 @@ If \fIchanged\fR is not NULL, then it returns whether any new
chars from \fIb\fR were added to \fIa\fR\&.
Returns FcFalse on failure, either when \fIa\fR is a constant
set or from running out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetNew.3 b/doc/FcCharSetNew.3
index e516a106..5b6165b2 100644
--- a/doc/FcCharSetNew.3
+++ b/doc/FcCharSetNew.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNew" "3" "10 1月 2013" "" ""
+.TH "FcCharSetNew" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetNew \- DEPRECATED alias for FcCharSetCreate
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetNew (void\fI\fB);
.SH "DESCRIPTION"
.PP
\fBFcCharSetNew\fR is a DEPRECATED alias for FcCharSetCreate.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetNextPage.3 b/doc/FcCharSetNextPage.3
index bc8904ce..48e08e59 100644
--- a/doc/FcCharSetNextPage.3
+++ b/doc/FcCharSetNextPage.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNextPage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetNextPage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetNextPage \- Continue enumerating charset contents
.SH SYNOPSIS
@@ -10,9 +10,12 @@ FcChar32 FcCharSetNextPage (const FcCharSet *\fIa\fB, FcChar32[FC_CHARSET_MAP_SI
.fi\fR
.SH "DESCRIPTION"
.PP
-Builds an array of bits marking the Unicode coverage of \fIa\fR for page
-\fI*next\fR\&. Returns the base of the array. \fInext\fR contains the next page in
-the font.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Builds an array of bits in \fImap\fR marking the
+Unicode coverage of \fIa\fR for page containing
+\fI*next\fR (see the
+\fBFcCharSetFirstPage\fR description for details).
+\fI*next\fR is set to contains the base code point
+for the next page in \fIa\fR\&. Returns the base of
+code point for the page, or FC_CHARSET_DONE if
+\fIa\fR does not contain
+\fI*next\fR\&.
diff --git a/doc/FcCharSetSubtract.3 b/doc/FcCharSetSubtract.3
index 413cde24..7e28ab87 100644
--- a/doc/FcCharSetSubtract.3
+++ b/doc/FcCharSetSubtract.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtract" "3" "10 1月 2013" "" ""
+.TH "FcCharSetSubtract" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetSubtract \- Subtract charsets
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetSubtract (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\f
.SH "DESCRIPTION"
.PP
Returns a set including only those chars found in \fIa\fR but not \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetSubtractCount.3 b/doc/FcCharSetSubtractCount.3
index 12659b1d..33643529 100644
--- a/doc/FcCharSetSubtractCount.3
+++ b/doc/FcCharSetSubtractCount.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtractCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetSubtractCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetSubtractCount \- Subtract and count charsets
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetSubtractCount (const FcCharSet *\fIa\fB, const FcCharSet *\fIb
.SH "DESCRIPTION"
.PP
Returns the number of chars that are in \fIa\fR but not in \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcCharSetUnion.3 b/doc/FcCharSetUnion.3
index a2e8269a..fbfdff3a 100644
--- a/doc/FcCharSetUnion.3
+++ b/doc/FcCharSetUnion.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetUnion" "3" "10 1月 2013" "" ""
+.TH "FcCharSetUnion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcCharSetUnion \- Add charsets
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetUnion (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
.SH "DESCRIPTION"
.PP
Returns a set including only those chars found in either \fIa\fR or \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigAppFontAddDir.3 b/doc/FcConfigAppFontAddDir.3
index 94adebb5..706ed65b 100644
--- a/doc/FcConfigAppFontAddDir.3
+++ b/doc/FcConfigAppFontAddDir.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddDir" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontAddDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigAppFontAddDir \- Add fonts from directory to font database
.SH SYNOPSIS
@@ -12,8 +12,6 @@ FcBool FcConfigAppFontAddDir (FcConfig *\fIconfig\fB, const FcChar8 *\fIdir\fB);
.PP
Scans the specified directory for fonts, adding each one found to the
application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If \fIconfig\fR is NULL,
+the current configuration is used.
diff --git a/doc/FcConfigAppFontAddFile.3 b/doc/FcConfigAppFontAddFile.3
index 8d4614bc..b77a3d1c 100644
--- a/doc/FcConfigAppFontAddFile.3
+++ b/doc/FcConfigAppFontAddFile.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddFile" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontAddFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigAppFontAddFile \- Add font file to font database
.SH SYNOPSIS
@@ -11,8 +11,6 @@ FcBool FcConfigAppFontAddFile (FcConfig *\fIconfig\fB, const FcChar8 *\fIfile\fB
.SH "DESCRIPTION"
.PP
Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If \fIconfig\fR is NULL,
+the current configuration is used.
diff --git a/doc/FcConfigAppFontClear.3 b/doc/FcConfigAppFontClear.3
index 2b3fb82f..36f804b5 100644
--- a/doc/FcConfigAppFontClear.3
+++ b/doc/FcConfigAppFontClear.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontClear" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontClear" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigAppFontClear \- Remove all app fonts from font database
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcConfigAppFontClear (FcConfig *\fIconfig\fB);
.PP
Clears the set of application-specific fonts.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigBuildFonts.3 b/doc/FcConfigBuildFonts.3
index 17294f35..212d686c 100644
--- a/doc/FcConfigBuildFonts.3
+++ b/doc/FcConfigBuildFonts.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigBuildFonts" "3" "10 1月 2013" "" ""
+.TH "FcConfigBuildFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigBuildFonts \- Build font database
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Builds the set of available fonts for the given configuration. Note that
any changes to the configuration after this call have indeterminate effects.
Returns FcFalse if this operation runs out of memory.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigCreate.3 b/doc/FcConfigCreate.3
index ea27c101..978faf7b 100644
--- a/doc/FcConfigCreate.3
+++ b/doc/FcConfigCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigCreate" "3" "10 1月 2013" "" ""
+.TH "FcConfigCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigCreate \- Create a configuration
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcConfig * FcConfigCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Creates an empty configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigDestroy.3 b/doc/FcConfigDestroy.3
index 31f5f01b..3369340d 100644
--- a/doc/FcConfigDestroy.3
+++ b/doc/FcConfigDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigDestroy" "3" "10 1月 2013" "" ""
+.TH "FcConfigDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigDestroy \- Destroy a configuration
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Decrements the config reference count. If all references are gone, destroys
the configuration and any data associated with it.
Note that calling this function with the return from FcConfigGetCurrent will
cause a new configuration to be created for use as current configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigEnableHome.3 b/doc/FcConfigEnableHome.3
index fec12bb7..c0711dda 100644
--- a/doc/FcConfigEnableHome.3
+++ b/doc/FcConfigEnableHome.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigEnableHome" "3" "10 1月 2013" "" ""
+.TH "FcConfigEnableHome" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigEnableHome \- controls use of the home directory.
.SH SYNOPSIS
@@ -15,6 +15,3 @@ files which are specified relative to the user's home directory (using the ~
notation in the configuration). When \fIenable\fR is
FcFalse, then all use of the home directory in these contexts will be
disabled. The previous setting of the value is returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigFilename.3 b/doc/FcConfigFilename.3
index da06ed81..c48dc34b 100644
--- a/doc/FcConfigFilename.3
+++ b/doc/FcConfigFilename.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFilename" "3" "10 1月 2013" "" ""
+.TH "FcConfigFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigFilename \- Find a config file
.SH SYNOPSIS
@@ -21,6 +21,3 @@ refers to a file in the current users home directory. Otherwise if the name
doesn't start with '/', it refers to a file in the default configuration
directory; the built-in default directory can be overridden with the
FONTCONFIG_PATH environment variable.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetBlanks.3 b/doc/FcConfigGetBlanks.3
index 08e619b1..6065e41c 100644
--- a/doc/FcConfigGetBlanks.3
+++ b/doc/FcConfigGetBlanks.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetBlanks" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetBlanks" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetBlanks \- Get config blanks
.SH SYNOPSIS
@@ -15,6 +15,3 @@ blanks were present in the configuration, this function will return 0.
The returned FcBlanks object if not NULL, is valid as long as the owning
FcConfig is alive.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetCache.3 b/doc/FcConfigGetCache.3
index 4409973c..bb3c9311 100644
--- a/doc/FcConfigGetCache.3
+++ b/doc/FcConfigGetCache.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCache" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCache" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetCache \- DEPRECATED used to return per-user cache filename
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcConfigGetCache (FcConfig *\fIconfig\fB);
.PP
With fontconfig no longer using per-user cache files, this function now
simply returns NULL to indicate that no per-user file exists.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetCacheDirs.3 b/doc/FcConfigGetCacheDirs.3
index a58f37e6..7a98be54 100644
--- a/doc/FcConfigGetCacheDirs.3
+++ b/doc/FcConfigGetCacheDirs.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCacheDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCacheDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetCacheDirs \- return the list of directories searched for cache files
.SH SYNOPSIS
@@ -14,6 +14,3 @@ FcStrList * FcConfigGetCacheDirs (const FcConfig *\fIconfig\fB);
all of the directories that fontconfig will search when attempting to load a
cache file for a font directory.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetConfigDirs.3 b/doc/FcConfigGetConfigDirs.3
index e9b3a978..0eba41d6 100644
--- a/doc/FcConfigGetConfigDirs.3
+++ b/doc/FcConfigGetConfigDirs.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetConfigDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetConfigDirs \- Get config directories
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcStrList * FcConfigGetConfigDirs (FcConfig *\fIconfig\fB);
Returns the list of font directories specified in the configuration files
for \fIconfig\fR\&. Does not include any subdirectories.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetConfigFiles.3 b/doc/FcConfigGetConfigFiles.3
index 7bbe9d32..6e8f2ad1 100644
--- a/doc/FcConfigGetConfigFiles.3
+++ b/doc/FcConfigGetConfigFiles.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigFiles" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetConfigFiles" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetConfigFiles \- Get config files
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcStrList * FcConfigGetConfigFiles (FcConfig *\fIconfig\fB);
.PP
Returns the list of known configuration files used to generate \fIconfig\fR\&.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetCurrent.3 b/doc/FcConfigGetCurrent.3
index ac223da7..9fef8fd1 100644
--- a/doc/FcConfigGetCurrent.3
+++ b/doc/FcConfigGetCurrent.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCurrent" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCurrent" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetCurrent \- Return current configuration
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcConfig * FcConfigGetCurrent (void\fI\fB);
.SH "DESCRIPTION"
.PP
Returns the current default configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetFontDirs.3 b/doc/FcConfigGetFontDirs.3
index 91d1d0b1..46393d9f 100644
--- a/doc/FcConfigGetFontDirs.3
+++ b/doc/FcConfigGetFontDirs.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFontDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetFontDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetFontDirs \- Get font directories
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the list of font directories in \fIconfig\fR\&. This includes the
configured font directories along with any directories below those in the
filesystem.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetFonts.3 b/doc/FcConfigGetFonts.3
index c34b5b82..db360e9c 100644
--- a/doc/FcConfigGetFonts.3
+++ b/doc/FcConfigGetFonts.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFonts" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetFonts \- Get config font set
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns one of the two sets of fonts from the configuration as specified
by \fIset\fR\&. This font set is owned by the library and must
not be modified or freed.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetRescanInterval.3 b/doc/FcConfigGetRescanInterval.3
index 40acf027..2e403617 100644
--- a/doc/FcConfigGetRescanInterval.3
+++ b/doc/FcConfigGetRescanInterval.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetRescanInterval" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetRescanInterval" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigGetRescanInterval \- Get config rescan interval
.SH SYNOPSIS
@@ -15,6 +15,3 @@ seconds) specified in \fIconfig\fR\&. The configuration is checked during
a call to FcFontList when this interval has passed since the last check.
An interval setting of zero disables automatic checks.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetSysRoot.3 b/doc/FcConfigGetSysRoot.3
new file mode 100644
index 00000000..45b7a15b
--- /dev/null
+++ b/doc/FcConfigGetSysRoot.3
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcConfigGetSysRoot" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcConfigGetSysRoot \- Obtain the system root directory
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+const FcChar8 * FcConfigGetSysRoot (const FcConfig *\fIconfig\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Obtrains the system root directory in 'config' if available.
+.SH "SINCE"
+.PP
+version 2.10.92
diff --git a/doc/FcConfigHome.3 b/doc/FcConfigHome.3
index 3aa6620d..153218a4 100644
--- a/doc/FcConfigHome.3
+++ b/doc/FcConfigHome.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigHome" "3" "10 1月 2013" "" ""
+.TH "FcConfigHome" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigHome \- return the current home directory.
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcConfigHome (void\fI\fB);
Return the current user's home directory, if it is available, and if using it
is enabled, and NULL otherwise.
See also \fBFcConfigEnableHome\fR).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigParseAndLoad.3 b/doc/FcConfigParseAndLoad.3
index be015f54..0c16ea09 100644
--- a/doc/FcConfigParseAndLoad.3
+++ b/doc/FcConfigParseAndLoad.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigParseAndLoad" "3" "10 1月 2013" "" ""
+.TH "FcConfigParseAndLoad" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigParseAndLoad \- load a configuration file
.SH SYNOPSIS
@@ -16,6 +16,3 @@ and parsed. If 'complain' is FcFalse, no warning will be displayed if
\&'file' does not exist. Error and warning messages will be output to stderr.
Returns FcFalse if some error occurred while loading the file, either a
parse error, semantic error or allocation failure. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigReference.3 b/doc/FcConfigReference.3
index 49bf72d4..34215ab8 100644
--- a/doc/FcConfigReference.3
+++ b/doc/FcConfigReference.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigReference" "3" "10 1月 2013" "" ""
+.TH "FcConfigReference" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigReference \- Increment config reference count
.SH SYNOPSIS
@@ -16,6 +16,3 @@ If \fIconfig\fR is NULL, the current configuration is used.
In that case this function will be similar to FcConfigGetCurrent() except that
it increments the reference count before returning and the user is responsible
for destroying the configuration when not needed anymore.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigSetCurrent.3 b/doc/FcConfigSetCurrent.3
index abe00924..56be29f7 100644
--- a/doc/FcConfigSetCurrent.3
+++ b/doc/FcConfigSetCurrent.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetCurrent" "3" "10 1月 2013" "" ""
+.TH "FcConfigSetCurrent" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigSetCurrent \- Set configuration as default
.SH SYNOPSIS
@@ -11,7 +11,5 @@ FcBool FcConfigSetCurrent (FcConfig *\fIconfig\fB);
.SH "DESCRIPTION"
.PP
Sets the current default configuration to \fIconfig\fR\&. Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in \fIconfig\fR since 2.12.0, returning FcFalse if that call fails.
diff --git a/doc/FcConfigSetRescanInterval.3 b/doc/FcConfigSetRescanInterval.3
index eb4823a5..7dbf59f2 100644
--- a/doc/FcConfigSetRescanInterval.3
+++ b/doc/FcConfigSetRescanInterval.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetRescanInterval" "3" "10 1月 2013" "" ""
+.TH "FcConfigSetRescanInterval" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigSetRescanInterval \- Set config rescan interval
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Sets the rescan interval. Returns FcFalse if the interval cannot be set (due
to allocation failure). Otherwise returns FcTrue.
An interval setting of zero disables automatic checks.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigSetSysRoot.3 b/doc/FcConfigSetSysRoot.3
new file mode 100644
index 00000000..fb1efa6f
--- /dev/null
+++ b/doc/FcConfigSetSysRoot.3
@@ -0,0 +1,19 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcConfigSetSysRoot" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcConfigSetSysRoot \- Set the system root directory
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcConfigSetSysRoot (FcConfig *\fIconfig\fB, const FcChar8 *\fIsysroot\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+.SH "SINCE"
+.PP
+version 2.10.92
diff --git a/doc/FcConfigSubstitute.3 b/doc/FcConfigSubstitute.3
index 25eef9ce..1818595c 100644
--- a/doc/FcConfigSubstitute.3
+++ b/doc/FcConfigSubstitute.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstitute" "3" "10 1月 2013" "" ""
+.TH "FcConfigSubstitute" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigSubstitute \- Execute substitutions
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcConfigSubstitute (FcConfig *\fIconfig\fB, FcPattern *\fIp\fB, FcMatchKi
Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse
if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigSubstituteWithPat.3 b/doc/FcConfigSubstituteWithPat.3
index 667b70c0..2324b87b 100644
--- a/doc/FcConfigSubstituteWithPat.3
+++ b/doc/FcConfigSubstituteWithPat.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstituteWithPat" "3" "10 1月 2013" "" ""
+.TH "FcConfigSubstituteWithPat" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigSubstituteWithPat \- Execute substitutions
.SH SYNOPSIS
@@ -16,6 +16,3 @@ if \fIkind\fR is FcMatchFont, those tagged as font operations are applied and
p_pat is used for <test> elements with target=pattern. Returns FcFalse
if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigUptoDate.3 b/doc/FcConfigUptoDate.3
index 9fe3b548..4ee810fe 100644
--- a/doc/FcConfigUptoDate.3
+++ b/doc/FcConfigUptoDate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigUptoDate" "3" "10 1月 2013" "" ""
+.TH "FcConfigUptoDate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcConfigUptoDate \- Check timestamps on config files
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcConfigUptoDate (FcConfig *\fIconfig\fB);
Checks all of the files related to \fIconfig\fR and returns
whether any of them has been modified since the configuration was created.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDefaultSubstitute.3 b/doc/FcDefaultSubstitute.3
index 3945a715..ce767644 100644
--- a/doc/FcDefaultSubstitute.3
+++ b/doc/FcDefaultSubstitute.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDefaultSubstitute" "3" "10 1月 2013" "" ""
+.TH "FcDefaultSubstitute" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDefaultSubstitute \- Perform default substitutions in a pattern
.SH SYNOPSIS
@@ -22,6 +22,3 @@ Patterns without a specified style or slant are set to Roman
Patterns without a specified pixel size are given one computed from any
specified point size (default 12), dpi (default 75) and scale (default 1).
.PP
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheClean.3 b/doc/FcDirCacheClean.3
index cc9040d8..600b815d 100644
--- a/doc/FcDirCacheClean.3
+++ b/doc/FcDirCacheClean.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheClean" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheClean" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheClean \- This tries to clean up the cache directory of cache_dir.This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
.SH SYNOPSIS
@@ -10,6 +10,6 @@ FcBool FcDirCacheClean (const FcChar8 *\fIcache_dir\fB, FcBool\fIverbose\fB);
.fi\fR
.SH "DESCRIPTION"
.PP
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.91
diff --git a/doc/FcDirCacheLoad.3 b/doc/FcDirCacheLoad.3
index b003d846..c10d00b1 100644
--- a/doc/FcDirCacheLoad.3
+++ b/doc/FcDirCacheLoad.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoad" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheLoad" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheLoad \- load a directory cache
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Loads the cache related to \fIdir\fR\&. If no cache file
exists, returns NULL. The name of the cache file is returned in
\fIcache_file\fR, unless that is NULL. See also
FcDirCacheRead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheLoadFile.3 b/doc/FcDirCacheLoadFile.3
index 19ebf76d..86b8f65d 100644
--- a/doc/FcDirCacheLoadFile.3
+++ b/doc/FcDirCacheLoadFile.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoadFile" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheLoadFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheLoadFile \- load a cache file
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcCache * FcDirCacheLoadFile (const FcChar8 *\fIcache_file\fB, struct stat *\fIf
This function loads a directory cache from
\fIcache_file\fR\&. If \fIfile_stat\fR is
non-NULL, it will be filled with the results of stat(2) on the cache file.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheRead.3 b/doc/FcDirCacheRead.3
index a16213d8..74c81122 100644
--- a/doc/FcDirCacheRead.3
+++ b/doc/FcDirCacheRead.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheRead" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheRead" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheRead \- read or construct a directory cache
.SH SYNOPSIS
@@ -14,6 +14,3 @@ This returns a cache for \fIdir\fR\&. If
\fIforce\fR is FcFalse, then an existing, valid cache file
will be used. Otherwise, a new cache will be created by scanning the
directory and that returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheRescan.3 b/doc/FcDirCacheRescan.3
new file mode 100644
index 00000000..280ecdd9
--- /dev/null
+++ b/doc/FcDirCacheRescan.3
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcDirCacheRescan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcDirCacheRescan \- Re-scan a directory cache
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcCache * FcDirCacheRescan (const FcChar8 *\fIdir\fB, FcConfig *\fIconfig\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Re-scan directories only at \fIdir\fR and update the cache.
+returns NULL if failed.
+.SH "SINCE"
+.PP
+version 2.11.1
diff --git a/doc/FcDirCacheUnlink.3 b/doc/FcDirCacheUnlink.3
index 980481ed..0e1911a2 100644
--- a/doc/FcDirCacheUnlink.3
+++ b/doc/FcDirCacheUnlink.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnlink" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheUnlink" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheUnlink \- Remove all caches related to dir
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Scans the cache directories in \fIconfig\fR, removing any
instances of the cache file for \fIdir\fR\&. Returns FcFalse
when some internal error occurs (out of memory, etc). Errors actually
unlinking any files are ignored.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheUnload.3 b/doc/FcDirCacheUnload.3
index 109f4758..02e638f6 100644
--- a/doc/FcDirCacheUnload.3
+++ b/doc/FcDirCacheUnload.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnload" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheUnload" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheUnload \- unload a cache file
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcDirCacheUnload (FcCache *\fIcache\fB);
.PP
This function dereferences \fIcache\fR\&. When no other
references to it remain, all memory associated with the cache will be freed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheValid.3 b/doc/FcDirCacheValid.3
index 35a4c422..a60a8c86 100644
--- a/doc/FcDirCacheValid.3
+++ b/doc/FcDirCacheValid.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheValid" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheValid" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirCacheValid \- check directory cache
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcDirCacheValid (const FcChar8 *\fIdir\fB);
.PP
Returns FcTrue if \fIdir\fR has an associated valid cache
file, else returns FcFalse
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirSave.3 b/doc/FcDirSave.3
index 3a56763c..3e95f5e9 100644
--- a/doc/FcDirSave.3
+++ b/doc/FcDirSave.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirSave" "3" "10 1月 2013" "" ""
+.TH "FcDirSave" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirSave \- DEPRECATED: formerly used to save a directory cache
.SH SYNOPSIS
@@ -15,6 +15,3 @@ per-directory cache file for \fIdir\fR and populates it
with the fonts in \fIset\fR and subdirectories in
\fIdirs\fR\&. All of this functionality is now automatically
managed by FcDirCacheLoad and FcDirCacheRead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirScan.3 b/doc/FcDirScan.3
index 4c91e1c6..a91a928a 100644
--- a/doc/FcDirScan.3
+++ b/doc/FcDirScan.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirScan" "3" "10 1月 2013" "" ""
+.TH "FcDirScan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcDirScan \- scan a font directory without caching it
.SH SYNOPSIS
@@ -16,6 +16,3 @@ entire directory and adds all fonts found to \fIset\fR\&.
Any subdirectories found are added to \fIdirs\fR\&. Calling
this function does not create any cache files. Use FcDirCacheRead() if
caching is desired.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFileIsDir.3 b/doc/FcFileIsDir.3
index acb01ef9..a5cd70ab 100644
--- a/doc/FcFileIsDir.3
+++ b/doc/FcFileIsDir.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileIsDir" "3" "10 1月 2013" "" ""
+.TH "FcFileIsDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFileIsDir \- check whether a file is a directory
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcFileIsDir (const FcChar8 *\fIfile\fB);
.PP
Returns FcTrue if \fIfile\fR is a directory, otherwise
returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFileScan.3 b/doc/FcFileScan.3
index ce06acc5..7a8f8340 100644
--- a/doc/FcFileScan.3
+++ b/doc/FcFileScan.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileScan" "3" "10 1月 2013" "" ""
+.TH "FcFileScan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFileScan \- scan a font file
.SH SYNOPSIS
@@ -21,6 +21,3 @@ equivalent ISO Latin-1) encoding as those are not usable by Unicode-based
applications. The configuration can ignore fonts based on filename or
contents of the font file itself. Returns FcFalse if any of the fonts cannot be
added (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFini.3 b/doc/FcFini.3
index 76d39027..19c960b9 100644
--- a/doc/FcFini.3
+++ b/doc/FcFini.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFini" "3" "10 1月 2013" "" ""
+.TH "FcFini" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFini \- finalize fontconfig library
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Frees all data structures allocated by previous calls to fontconfig
functions. Fontconfig returns to an uninitialized state, requiring a
new call to one of the FcInit functions before any other fontconfig
function may be called.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontList.3 b/doc/FcFontList.3
index 5ecafefa..78f08a3c 100644
--- a/doc/FcFontList.3
+++ b/doc/FcFontList.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontList" "3" "10 1月 2013" "" ""
+.TH "FcFontList" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontList \- List fonts
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Selects fonts matching \fIp\fR, creates patterns from those fonts containing
only the objects in \fIos\fR and returns the set of unique such patterns.
If \fIconfig\fR is NULL, the default configuration is checked
to be up to date, and used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontMatch.3 b/doc/FcFontMatch.3
index 8aa9451f..9f31b492 100644
--- a/doc/FcFontMatch.3
+++ b/doc/FcFontMatch.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontMatch" "3" "10 1月 2013" "" ""
+.TH "FcFontMatch" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontMatch \- Return best font
.SH SYNOPSIS
@@ -18,6 +18,3 @@ pattern. This function should be called only after
\fBFcDefaultSubstitute\fR have been called for
\fIp\fR; otherwise the results will not be correct.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontRenderPrepare.3 b/doc/FcFontRenderPrepare.3
index 30720e02..6b4282fb 100644
--- a/doc/FcFontRenderPrepare.3
+++ b/doc/FcFontRenderPrepare.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontRenderPrepare" "3" "10 1月 2013" "" ""
+.TH "FcFontRenderPrepare" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontRenderPrepare \- Prepare pattern for loading font file
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Creates a new pattern consisting of elements of \fIfont\fR not appearing
in \fIpat\fR, elements of \fIpat\fR not appearing in \fIfont\fR and the best matching
value from \fIpat\fR for elements appearing in both. The result is passed to
FcConfigSubstituteWithPat with \fIkind\fR FcMatchFont and then returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetAdd.3 b/doc/FcFontSetAdd.3
index f254ae6e..f9722fe2 100644
--- a/doc/FcFontSetAdd.3
+++ b/doc/FcFontSetAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcFontSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetAdd \- Add to a font set
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcFontSetAdd (FcFontSet *\fIs\fB, FcPattern *\fIfont\fB);
Adds a pattern to a font set. Note that the pattern is not copied before
being inserted into the set. Returns FcFalse if the pattern cannot be
inserted into the set (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetCreate.3 b/doc/FcFontSetCreate.3
index 0672914d..83bd5912 100644
--- a/doc/FcFontSetCreate.3
+++ b/doc/FcFontSetCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcFontSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetCreate \- Create a font set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcFontSet * FcFontSetCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Creates an empty font set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetDestroy.3 b/doc/FcFontSetDestroy.3
index 32e6a70d..37f08f77 100644
--- a/doc/FcFontSetDestroy.3
+++ b/doc/FcFontSetDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcFontSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetDestroy \- Destroy a font set
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcFontSetDestroy (FcFontSet *\fIs\fB);
.PP
Destroys a font set. Note that this destroys any referenced patterns as
well.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetList.3 b/doc/FcFontSetList.3
index 37b7d4e5..31ae257b 100644
--- a/doc/FcFontSetList.3
+++ b/doc/FcFontSetList.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetList" "3" "10 1月 2013" "" ""
+.TH "FcFontSetList" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetList \- List fonts from a set of font sets
.SH SYNOPSIS
@@ -16,6 +16,3 @@ fonts containing only the objects in \fIobject_set\fR and returns
the set of unique such patterns.
If \fIconfig\fR is NULL, the default configuration is checked
to be up to date, and used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetMatch.3 b/doc/FcFontSetMatch.3
index 93c3efa5..8494f86b 100644
--- a/doc/FcFontSetMatch.3
+++ b/doc/FcFontSetMatch.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetMatch" "3" "10 1月 2013" "" ""
+.TH "FcFontSetMatch" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetMatch \- Return the best font from a set of font sets
.SH SYNOPSIS
@@ -19,6 +19,3 @@ pattern. This function should be called only after
\fIpattern\fR; otherwise the results will not be correct.
If \fIconfig\fR is NULL, the current configuration is used.
Returns NULL if an error occurs during this process.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetPrint.3 b/doc/FcFontSetPrint.3
index 98419fcc..36ee13fb 100644
--- a/doc/FcFontSetPrint.3
+++ b/doc/FcFontSetPrint.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetPrint" "3" "10 1月 2013" "" ""
+.TH "FcFontSetPrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetPrint \- Print a set of patterns to stdout
.SH SYNOPSIS
@@ -14,6 +14,3 @@ This function is useful for diagnosing font related issues, printing the
complete contents of every pattern in \fIset\fR\&. The format
of the output is designed to be of help to users and developers, and may
change at any time.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetSort.3 b/doc/FcFontSetSort.3
index 1734c238..41b83f1f 100644
--- a/doc/FcFontSetSort.3
+++ b/doc/FcFontSetSort.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSort" "3" "10 1月 2013" "" ""
+.TH "FcFontSetSort" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetSort \- Add to a font set
.SH SYNOPSIS
@@ -28,6 +28,3 @@ modify these patterns. Instead, they should be passed, along with
\fBFcFontRenderPrepare\fR which combines them into a complete pattern.
.PP
The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSetSortDestroy.3 b/doc/FcFontSetSortDestroy.3
index bd8eacad..d54c97aa 100644
--- a/doc/FcFontSetSortDestroy.3
+++ b/doc/FcFontSetSortDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSortDestroy" "3" "10 1月 2013" "" ""
+.TH "FcFontSetSortDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSetSortDestroy \- DEPRECATED destroy a font set
.SH SYNOPSIS
@@ -14,6 +14,3 @@ This function is DEPRECATED. \fBFcFontSetSortDestroy\fR
destroys \fIset\fR by calling
\fBFcFontSetDestroy\fR\&. Applications should use
\fBFcFontSetDestroy\fR directly instead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFontSort.3 b/doc/FcFontSort.3
index 376a67ca..2541608e 100644
--- a/doc/FcFontSort.3
+++ b/doc/FcFontSort.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSort" "3" "10 1月 2013" "" ""
+.TH "FcFontSort" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFontSort \- Return list of matching fonts
.SH SYNOPSIS
@@ -24,6 +24,3 @@ modify these patterns. Instead, they should be passed, along with \fIp\fR to
.PP
The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFreeTypeCharIndex.3 b/doc/FcFreeTypeCharIndex.3
index 007a48d4..7e139cd3 100644
--- a/doc/FcFreeTypeCharIndex.3
+++ b/doc/FcFreeTypeCharIndex.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharIndex" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharIndex" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFreeTypeCharIndex \- map Unicode to glyph id
.SH SYNOPSIS
@@ -16,6 +16,3 @@ several possible underlying encoding tables to work around broken fonts.
As a result, this function isn't designed to be used in performance
sensitive areas; results from this function are intended to be cached by
higher level functions.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFreeTypeCharSet.3 b/doc/FcFreeTypeCharSet.3
index 64237f54..1afde0c8 100644
--- a/doc/FcFreeTypeCharSet.3
+++ b/doc/FcFreeTypeCharSet.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSet" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharSet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFreeTypeCharSet \- compute Unicode coverage
.SH SYNOPSIS
@@ -15,6 +15,3 @@ Scans a FreeType face and returns the set of encoded Unicode chars. This scans
several encoding tables to build as complete a list as possible.
If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
not in 'blanks' are not placed in the returned FcCharSet.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFreeTypeCharSetAndSpacing.3 b/doc/FcFreeTypeCharSetAndSpacing.3
index 354daee3..7853432d 100644
--- a/doc/FcFreeTypeCharSetAndSpacing.3
+++ b/doc/FcFreeTypeCharSetAndSpacing.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSetAndSpacing" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharSetAndSpacing" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFreeTypeCharSetAndSpacing \- compute Unicode coverage and spacing type
.SH SYNOPSIS
@@ -21,6 +21,3 @@ font, one of FC_MONO for a font where all glyphs have the same width,
FC_DUAL, where the font has glyphs in precisely two widths, one twice as
wide as the other, or FC_PROPORTIONAL where the font has glyphs of many
widths.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFreeTypeQuery.3 b/doc/FcFreeTypeQuery.3
index c09c7b10..b633df73 100644
--- a/doc/FcFreeTypeQuery.3
+++ b/doc/FcFreeTypeQuery.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQuery" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeQuery" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFreeTypeQuery \- compute pattern from font file (and index)
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcFreeTypeQuery (const FcChar8 *\fIfile\fB, int \fIid\fB, FcBlanks *
.PP
Constructs a pattern representing the 'id'th font in 'file'. The number
of fonts in 'file' is returned in 'count'.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcFreeTypeQueryFace.3 b/doc/FcFreeTypeQueryFace.3
index 95945d9b..74355277 100644
--- a/doc/FcFreeTypeQueryFace.3
+++ b/doc/FcFreeTypeQueryFace.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQueryFace" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeQueryFace" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcFreeTypeQueryFace \- compute pattern from FT_Face
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcFreeTypeQueryFace (const FT_Face \fIface\fB, const FcChar8 *\fIfil
.PP
Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcGetDefaultLangs.3 b/doc/FcGetDefaultLangs.3
index ac264587..65d11cdb 100644
--- a/doc/FcGetDefaultLangs.3
+++ b/doc/FcGetDefaultLangs.3
@@ -1,18 +1,18 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetDefaultLangs" "3" "10 1月 2013" "" ""
+.TH "FcGetDefaultLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcGetDefaultLangs \- Get the default languages list
.SH SYNOPSIS
.nf
\fB#include <fontconfig/fontconfig.h>
.sp
-FcStrSet * FcGetDefaultLangs (void\fIls\fB);
+FcStrSet * FcGetDefaultLangs (void\fI\fB);
.fi\fR
.SH "DESCRIPTION"
.PP
Returns a string set of the default languages according to the environment variables on the system.
This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then.
If there are no valid values in those environment variables, "en" will be set as fallback.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.91
diff --git a/doc/FcGetLangs.3 b/doc/FcGetLangs.3
index 4de2e0a6..1fbd5163 100644
--- a/doc/FcGetLangs.3
+++ b/doc/FcGetLangs.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetLangs" "3" "10 1月 2013" "" ""
+.TH "FcGetLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcGetLangs \- Get list of languages
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrSet * FcGetLangs (void\fI\fB);
.SH "DESCRIPTION"
.PP
Returns a string set of all known languages.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcGetVersion.3 b/doc/FcGetVersion.3
index d8d31295..a4bbf002 100644
--- a/doc/FcGetVersion.3
+++ b/doc/FcGetVersion.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetVersion" "3" "10 1月 2013" "" ""
+.TH "FcGetVersion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcGetVersion \- library version number
.SH SYNOPSIS
@@ -11,6 +11,3 @@ int FcGetVersion (void\fI\fB);
.SH "DESCRIPTION"
.PP
Returns the version number of the library.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcInit.3 b/doc/FcInit.3
index 65d1d5de..8d68d7ae 100644
--- a/doc/FcInit.3
+++ b/doc/FcInit.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInit" "3" "10 1月 2013" "" ""
+.TH "FcInit" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcInit \- initialize fontconfig library
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Loads the default configuration file and the fonts referenced therein and
sets the default configuration to that result. Returns whether this
process succeeded or not. If the default configuration has already
been loaded, this routine does nothing and returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcInitBringUptoDate.3 b/doc/FcInitBringUptoDate.3
index ccf6e7fe..adbe2bf8 100644
--- a/doc/FcInitBringUptoDate.3
+++ b/doc/FcInitBringUptoDate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitBringUptoDate" "3" "10 1月 2013" "" ""
+.TH "FcInitBringUptoDate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcInitBringUptoDate \- reload configuration files if needed
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Checks the rescan interval in the default configuration, checking the
configuration if the interval has passed and reloading the configuration if
when any changes are detected. Returns FcFalse if the configuration cannot
be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcInitLoadConfig.3 b/doc/FcInitLoadConfig.3
index a0c39566..64915a86 100644
--- a/doc/FcInitLoadConfig.3
+++ b/doc/FcInitLoadConfig.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfig" "3" "10 1月 2013" "" ""
+.TH "FcInitLoadConfig" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcInitLoadConfig \- load configuration
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcConfig * FcInitLoadConfig (void\fI\fB);
.PP
Loads the default configuration file and returns the resulting configuration.
Does not load any font information.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcInitLoadConfigAndFonts.3 b/doc/FcInitLoadConfigAndFonts.3
index 39549c54..a8c51c28 100644
--- a/doc/FcInitLoadConfigAndFonts.3
+++ b/doc/FcInitLoadConfigAndFonts.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfigAndFonts" "3" "10 1月 2013" "" ""
+.TH "FcInitLoadConfigAndFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcInitLoadConfigAndFonts \- load configuration and font data
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcConfig * FcInitLoadConfigAndFonts (void\fI\fB);
.PP
Loads the default configuration file and builds information about the
available fonts. Returns the resulting configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcInitReinitialize.3 b/doc/FcInitReinitialize.3
index 92a5fc42..c02fb115 100644
--- a/doc/FcInitReinitialize.3
+++ b/doc/FcInitReinitialize.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitReinitialize" "3" "10 1月 2013" "" ""
+.TH "FcInitReinitialize" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcInitReinitialize \- re-initialize library
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Forces the default configuration file to be reloaded and resets the default
configuration. Returns FcFalse if the configuration cannot be reloaded (due
to configuration file errors, allocation failures or other issues) and leaves the
existing configuration unchanged. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcIsLower.3 b/doc/FcIsLower.3
index ecc028f8..c75046b4 100644
--- a/doc/FcIsLower.3
+++ b/doc/FcIsLower.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsLower" "3" "10 1月 2013" "" ""
+.TH "FcIsLower" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcIsLower \- check for lower case ASCII character
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcIsLower (FcChar8\fIc\fB);
.PP
This macro checks whether \fIc\fR is an lower case ASCII
letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcIsUpper.3 b/doc/FcIsUpper.3
index 19761b2b..3482228a 100644
--- a/doc/FcIsUpper.3
+++ b/doc/FcIsUpper.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsUpper" "3" "10 1月 2013" "" ""
+.TH "FcIsUpper" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcIsUpper \- check for upper case ASCII character
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcIsUpper (FcChar8\fIc\fB);
.PP
This macro checks whether \fIc\fR is a upper case ASCII
letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangGetCharSet.3 b/doc/FcLangGetCharSet.3
index 35c8c378..8d798327 100644
--- a/doc/FcLangGetCharSet.3
+++ b/doc/FcLangGetCharSet.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangGetCharSet" "3" "10 1月 2013" "" ""
+.TH "FcLangGetCharSet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangGetCharSet \- Get character map for a language
.SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcCharSet * FcLangGetCharSet (const FcChar8 *\fIlang\fB);
.SH "DESCRIPTION"
.PP
Returns the FcCharMap for a language.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangNormalize.3 b/doc/FcLangNormalize.3
index 092c1fc7..0963cb3d 100644
--- a/doc/FcLangNormalize.3
+++ b/doc/FcLangNormalize.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangNormalize" "3" "10 1月 2013" "" ""
+.TH "FcLangNormalize" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangNormalize \- Normalize the language string
.SH SYNOPSIS
@@ -11,6 +11,6 @@ FcChar8 * FcLangNormalize (const FcChar8 *\fIlang\fB);
.SH "DESCRIPTION"
.PP
Returns a string to make \fIlang\fR suitable on fontconfig.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.10.91
diff --git a/doc/FcLangSetAdd.3 b/doc/FcLangSetAdd.3
index aca8430b..e12c4ce4 100644
--- a/doc/FcLangSetAdd.3
+++ b/doc/FcLangSetAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcLangSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetAdd \- add a language to a langset
.SH SYNOPSIS
@@ -14,6 +14,3 @@ FcBool FcLangSetAdd (FcLangSet *\fIls\fB, const FcChar8 *\fIlang\fB);
\fIlang\fR should be of the form Ll-Tt where Ll is a
two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetCompare.3 b/doc/FcLangSetCompare.3
index 6dcd788b..193fa010 100644
--- a/doc/FcLangSetCompare.3
+++ b/doc/FcLangSetCompare.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCompare" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCompare" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetCompare \- compare language sets
.SH SYNOPSIS
@@ -16,6 +16,3 @@ any language and territory pair, this function returns FcLangEqual. If they
share a language but differ in which territory that language is for, this
function returns FcLangDifferentTerritory. If they share no languages in
common, this function returns FcLangDifferentLang.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetContains.3 b/doc/FcLangSetContains.3
index 4236d841..294d08d4 100644
--- a/doc/FcLangSetContains.3
+++ b/doc/FcLangSetContains.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetContains" "3" "10 1月 2013" "" ""
+.TH "FcLangSetContains" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetContains \- check langset subset relation
.SH SYNOPSIS
@@ -16,6 +16,3 @@ FcBool FcLangSetContains (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_b\
language from \fIls_b\fR if \fIls_a\fR
has exactly the language, or either the language or
\fIls_a\fR has no territory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetCopy.3 b/doc/FcLangSetCopy.3
index 40ae9622..a67b9902 100644
--- a/doc/FcLangSetCopy.3
+++ b/doc/FcLangSetCopy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCopy" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetCopy \- copy a langset object
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcLangSet * FcLangSetCopy (const FcLangSet *\fIls\fB);
.PP
\fBFcLangSetCopy\fR creates a new FcLangSet object and
populates it with the contents of \fIls\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetCreate.3 b/doc/FcLangSetCreate.3
index e6c6bda7..72d1ab6b 100644
--- a/doc/FcLangSetCreate.3
+++ b/doc/FcLangSetCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetCreate \- create a langset object
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcLangSet * FcLangSetCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
\fBFcLangSetCreate\fR creates a new FcLangSet object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetDel.3 b/doc/FcLangSetDel.3
index 70297f7d..0d1830b1 100644
--- a/doc/FcLangSetDel.3
+++ b/doc/FcLangSetDel.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDel" "3" "10 1月 2013" "" ""
+.TH "FcLangSetDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetDel \- delete a language from a langset
.SH SYNOPSIS
@@ -14,6 +14,6 @@ FcBool FcLangSetDel (FcLangSet *\fIls\fB, const FcChar8 *\fIlang\fB);
\fIlang\fR should be of the form Ll-Tt where Ll is a
two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.0
diff --git a/doc/FcLangSetDestroy.3 b/doc/FcLangSetDestroy.3
index 6ad9ed1c..b6d5d853 100644
--- a/doc/FcLangSetDestroy.3
+++ b/doc/FcLangSetDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcLangSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetDestroy \- destroy a langset object
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcLangSetDestroy (FcLangSet *\fIls\fB);
.PP
\fBFcLangSetDestroy\fR destroys a FcLangSet object, freeing
all memory associated with it.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetEqual.3 b/doc/FcLangSetEqual.3
index a2771aa1..379406f2 100644
--- a/doc/FcLangSetEqual.3
+++ b/doc/FcLangSetEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcLangSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetEqual \- test for matching langsets
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcLangSetEqual (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_b\fB)
.PP
Returns FcTrue if and only if \fIls_a\fR supports precisely
the same language and territory combinations as \fIls_b\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetGetLangs.3 b/doc/FcLangSetGetLangs.3
new file mode 100644
index 00000000..8f201f5e
--- /dev/null
+++ b/doc/FcLangSetGetLangs.3
@@ -0,0 +1,13 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcLangSetGetLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcLangSetGetLangs \- get the list of languages in the langset
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcStrSet * FcLangSetGetLangs (const FcLangSet *\fIls\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns a string set of all languages in \fIlangset\fR\&.
diff --git a/doc/FcLangSetHasLang.3 b/doc/FcLangSetHasLang.3
index 0aef116d..96e00968 100644
--- a/doc/FcLangSetHasLang.3
+++ b/doc/FcLangSetHasLang.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHasLang" "3" "10 1月 2013" "" ""
+.TH "FcLangSetHasLang" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetHasLang \- test langset for language support
.SH SYNOPSIS
@@ -17,6 +17,3 @@ this function returns FcLangEqual. If \fIls\fR has
a matching language but differs in which territory that language is for, this
function returns FcLangDifferentTerritory. If \fIls\fR
has no matching language, this function returns FcLangDifferentLang.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetHash.3 b/doc/FcLangSetHash.3
index de30b7fb..38cd577f 100644
--- a/doc/FcLangSetHash.3
+++ b/doc/FcLangSetHash.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHash" "3" "10 1月 2013" "" ""
+.TH "FcLangSetHash" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetHash \- return a hash value for a langset
.SH SYNOPSIS
@@ -15,6 +15,3 @@ supported by \fIls\fR\&. Any language which equals
\fIls\fR will have the same result from
\fBFcLangSetHash\fR\&. However, two langsets with the same hash
value may not be equal.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetSubtract.3 b/doc/FcLangSetSubtract.3
index 1b7a37f8..afa14ec1 100644
--- a/doc/FcLangSetSubtract.3
+++ b/doc/FcLangSetSubtract.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetSubtract" "3" "10 1月 2013" "" ""
+.TH "FcLangSetSubtract" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetSubtract \- Subtract langsets
.SH SYNOPSIS
@@ -11,6 +11,6 @@ FcLangSet * FcLangSetSubtract (const FcLangSet *\fIls_a\fB, const FcLangSet *\fI
.SH "DESCRIPTION"
.PP
Returns a set including only those languages found in \fIls_a\fR but not in \fIls_b\fR\&.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.0
diff --git a/doc/FcLangSetUnion.3 b/doc/FcLangSetUnion.3
index cc42e7f1..a67f8d35 100644
--- a/doc/FcLangSetUnion.3
+++ b/doc/FcLangSetUnion.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetUnion" "3" "10 1月 2013" "" ""
+.TH "FcLangSetUnion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcLangSetUnion \- Add langsets
.SH SYNOPSIS
@@ -11,6 +11,6 @@ FcLangSet * FcLangSetUnion (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_
.SH "DESCRIPTION"
.PP
Returns a set including only those languages found in either \fIls_a\fR or \fIls_b\fR\&.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.0
diff --git a/doc/FcMatrixCopy.3 b/doc/FcMatrixCopy.3
index 61f769b2..a396ada8 100644
--- a/doc/FcMatrixCopy.3
+++ b/doc/FcMatrixCopy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixCopy" "3" "10 1月 2013" "" ""
+.TH "FcMatrixCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixCopy \- Copy a matrix
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcMatrixCopy (const FcMatrix *\fImatrix\fB);
.PP
\fBFcMatrixCopy\fR allocates a new FcMatrix
and copies \fImat\fR into it.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixEqual.3 b/doc/FcMatrixEqual.3
index fe401276..e7576364 100644
--- a/doc/FcMatrixEqual.3
+++ b/doc/FcMatrixEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixEqual" "3" "10 1月 2013" "" ""
+.TH "FcMatrixEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixEqual \- Compare two matrices
.SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcMatrixEqual (const FcMatrix *\fImatrix1\fB, const FcMatrix *\fImatrix2\fB
\fBFcMatrixEqual\fR compares \fImatrix1\fR
and \fImatrix2\fR returning FcTrue when they are equal and
FcFalse when they are not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixInit.3 b/doc/FcMatrixInit.3
index 76a134a2..dd2dea1b 100644
--- a/doc/FcMatrixInit.3
+++ b/doc/FcMatrixInit.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixInit" "3" "10 1月 2013" "" ""
+.TH "FcMatrixInit" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixInit \- initialize an FcMatrix structure
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcMatrixInit (FcMatrix *\fImatrix\fB);
.PP
\fBFcMatrixInit\fR initializes \fImatrix\fR
to the identity matrix.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixMultiply.3 b/doc/FcMatrixMultiply.3
index 896f4a66..4b2754d8 100644
--- a/doc/FcMatrixMultiply.3
+++ b/doc/FcMatrixMultiply.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixMultiply" "3" "10 1月 2013" "" ""
+.TH "FcMatrixMultiply" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixMultiply \- Multiply matrices
.SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcMatrixMultiply (FcMatrix *\fIresult\fB, const FcMatrix *\fImatrix1\fB, co
\fBFcMatrixMultiply\fR multiplies
\fImatrix1\fR and \fImatrix2\fR storing
the result in \fIresult\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixRotate.3 b/doc/FcMatrixRotate.3
index 7f6c7301..cceb1a2e 100644
--- a/doc/FcMatrixRotate.3
+++ b/doc/FcMatrixRotate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixRotate" "3" "10 1月 2013" "" ""
+.TH "FcMatrixRotate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixRotate \- Rotate a matrix
.SH SYNOPSIS
@@ -20,6 +20,3 @@ matrix:
sin cos
.sp
.fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixScale.3 b/doc/FcMatrixScale.3
index d7963f75..6d2cb9ce 100644
--- a/doc/FcMatrixScale.3
+++ b/doc/FcMatrixScale.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixScale" "3" "10 1月 2013" "" ""
+.TH "FcMatrixScale" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixScale \- Scale a matrix
.SH SYNOPSIS
@@ -20,6 +20,3 @@ the matrix:
0 dy
.sp
.fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcMatrixShear.3 b/doc/FcMatrixShear.3
index 70263b5b..b3efd51c 100644
--- a/doc/FcMatrixShear.3
+++ b/doc/FcMatrixShear.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixShear" "3" "10 1月 2013" "" ""
+.TH "FcMatrixShear" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcMatrixShear \- Shear a matrix
.SH SYNOPSIS
@@ -20,6 +20,3 @@ the matrix:
sv 1
.sp
.fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameConstant.3 b/doc/FcNameConstant.3
index 5f1a1277..d84f25f9 100644
--- a/doc/FcNameConstant.3
+++ b/doc/FcNameConstant.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameConstant" "3" "10 1月 2013" "" ""
+.TH "FcNameConstant" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameConstant \- Get the value for a symbolic constant
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcNameConstant (FcChar8 *\fIstring\fB, int *\fIresult\fB);
.PP
Returns whether a symbolic constant with name \fIstring\fR is registered,
placing the value of the constant in \fIresult\fR if present.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameGetConstant.3 b/doc/FcNameGetConstant.3
index b2832f61..ea3da7a3 100644
--- a/doc/FcNameGetConstant.3
+++ b/doc/FcNameGetConstant.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetConstant" "3" "10 1月 2013" "" ""
+.TH "FcNameGetConstant" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameGetConstant \- Lookup symbolic constant
.SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcConstant * FcNameGetConstant (FcChar8 *\fIstring\fB);
.SH "DESCRIPTION"
.PP
Return the FcConstant structure related to symbolic constant \fIstring\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameGetObjectType.3 b/doc/FcNameGetObjectType.3
index ef01b417..2308ee1c 100644
--- a/doc/FcNameGetObjectType.3
+++ b/doc/FcNameGetObjectType.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetObjectType" "3" "10 1月 2013" "" ""
+.TH "FcNameGetObjectType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameGetObjectType \- Lookup an object type
.SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcObjectType * FcNameGetObjectType (const char *\fIobject\fB);
.SH "DESCRIPTION"
.PP
Return the object type for the pattern element named \fIobject\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameParse.3 b/doc/FcNameParse.3
index aac6da77..215c5db4 100644
--- a/doc/FcNameParse.3
+++ b/doc/FcNameParse.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameParse" "3" "10 1月 2013" "" ""
+.TH "FcNameParse" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameParse \- Parse a pattern string
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcPattern * FcNameParse (const FcChar8 *\fIname\fB);
.SH "DESCRIPTION"
.PP
Converts \fIname\fR from the standard text format described above into a pattern.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameRegisterConstants.3 b/doc/FcNameRegisterConstants.3
index 98ec6d47..a84ea671 100644
--- a/doc/FcNameRegisterConstants.3
+++ b/doc/FcNameRegisterConstants.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterConstants" "3" "10 1月 2013" "" ""
+.TH "FcNameRegisterConstants" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameRegisterConstants \- Register symbolic constants
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameRegisterConstants (const FcConstant *\fIconsts\fB, int \fInconsts\f
.SH "DESCRIPTION"
.PP
Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameRegisterObjectTypes.3 b/doc/FcNameRegisterObjectTypes.3
index 44b1a5a7..df23c61d 100644
--- a/doc/FcNameRegisterObjectTypes.3
+++ b/doc/FcNameRegisterObjectTypes.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterObjectTypes" "3" "10 1月 2013" "" ""
+.TH "FcNameRegisterObjectTypes" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameRegisterObjectTypes \- Register object types
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameRegisterObjectTypes (const FcObjectType *\fItypes\fB, int \fIntype\
.SH "DESCRIPTION"
.PP
Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameUnparse.3 b/doc/FcNameUnparse.3
index f3223b5d..a477e21f 100644
--- a/doc/FcNameUnparse.3
+++ b/doc/FcNameUnparse.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnparse" "3" "10 1月 2013" "" ""
+.TH "FcNameUnparse" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameUnparse \- Convert a pattern back into a string that can be parsed
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcNameUnparse (FcPattern *\fIpat\fB);
Converts the given pattern into the standard text format described above.
The return value is not static, but instead refers to newly allocated memory
which should be freed by the caller using free().
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameUnregisterConstants.3 b/doc/FcNameUnregisterConstants.3
index 4b06be84..654714d5 100644
--- a/doc/FcNameUnregisterConstants.3
+++ b/doc/FcNameUnregisterConstants.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterConstants" "3" "10 1月 2013" "" ""
+.TH "FcNameUnregisterConstants" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameUnregisterConstants \- Unregister symbolic constants
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameUnregisterConstants (const FcConstant *\fIconsts\fB, int \fInconsts
.SH "DESCRIPTION"
.PP
Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcNameUnregisterObjectTypes.3 b/doc/FcNameUnregisterObjectTypes.3
index 6fec3673..adef4dd2 100644
--- a/doc/FcNameUnregisterObjectTypes.3
+++ b/doc/FcNameUnregisterObjectTypes.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterObjectTypes" "3" "10 1月 2013" "" ""
+.TH "FcNameUnregisterObjectTypes" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcNameUnregisterObjectTypes \- Unregister object types
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameUnregisterObjectTypes (const FcObjectType *\fItypes\fB, int \fIntyp
.SH "DESCRIPTION"
.PP
Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcObjectSetAdd.3 b/doc/FcObjectSetAdd.3
index 9c13a8a5..2ba055e2 100644
--- a/doc/FcObjectSetAdd.3
+++ b/doc/FcObjectSetAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcObjectSetAdd \- Add to an object set
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcObjectSetAdd (FcObjectSet *\fIos\fB, const char *\fIobject\fB);
.PP
Adds a property name to the set. Returns FcFalse if the property name cannot be
inserted into the set (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcObjectSetBuild.3 b/doc/FcObjectSetBuild.3
index e8277129..184372d1 100644
--- a/doc/FcObjectSetBuild.3
+++ b/doc/FcObjectSetBuild.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetBuild" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetBuild" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild \- Build object set from args
.SH SYNOPSIS
@@ -17,6 +17,3 @@ void FcObjectSetVapBuild (FcObjectSet *\fIresult\fB, const char *\fIfirst\fB, va
These build an object set from a null-terminated list of property names.
FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
the result in the \fIresult\fR variable directly.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcObjectSetCreate.3 b/doc/FcObjectSetCreate.3
index cea29af6..dee57390 100644
--- a/doc/FcObjectSetCreate.3
+++ b/doc/FcObjectSetCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcObjectSetCreate \- Create an object set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcObjectSet * FcObjectSetCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Creates an empty set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcObjectSetDestroy.3 b/doc/FcObjectSetDestroy.3
index 6245c237..b9a91aa3 100644
--- a/doc/FcObjectSetDestroy.3
+++ b/doc/FcObjectSetDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcObjectSetDestroy \- Destroy an object set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcObjectSetDestroy (FcObjectSet *\fIos\fB);
.SH "DESCRIPTION"
.PP
Destroys an object set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternAdd-Type.3 b/doc/FcPatternAdd-Type.3
index 59de521c..a4e49354 100644
--- a/doc/FcPatternAdd-Type.3
+++ b/doc/FcPatternAdd-Type.3
@@ -1,7 +1,7 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd-Type" "3" "10 1月 2013" "" ""
+.TH "FcPatternAdd-Type" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
-FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet \- Add a typed value to a pattern
+FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange \- Add a typed value to a pattern
.SH SYNOPSIS
.nf
\fB#include <fontconfig/fontconfig.h>
@@ -21,6 +21,8 @@ FcBool FcPatternAddBool (FcPattern *\fIp\fB, const char *\fIobject\fB, FcBool \f
FcBool FcPatternAddFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, const FT_Face\fIf\fB);
.sp
FcBool FcPatternAddLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, const FcLangSet *\fIl\fB);
+.sp
+FcBool FcPatternAddRange (FcPattern *\fIp\fB, const char *\fIobject\fB, const FcRange *\fIr\fB);
.fi\fR
.SH "DESCRIPTION"
.PP
@@ -28,6 +30,4 @@ These are all convenience functions that insert objects of the specified
type into the pattern. Use these in preference to FcPatternAdd as they
will provide compile-time typechecking. These all append values to
any existing list of values.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+\fBFcPatternAddRange\fR are available since 2.11.91.
diff --git a/doc/FcPatternAdd.3 b/doc/FcPatternAdd.3
index 4798aff9..d0a6b70d 100644
--- a/doc/FcPatternAdd.3
+++ b/doc/FcPatternAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd" "3" "10 1月 2013" "" ""
+.TH "FcPatternAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternAdd \- Add a value to a pattern
.SH SYNOPSIS
@@ -15,6 +15,3 @@ Adds a single value to the list of values associated with the property named
existing list, otherwise it is inserted at the beginning. `value' is saved
(with FcValueSave) when inserted into the pattern so that the library
retains no reference to any application-supplied data structure.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternAddWeak.3 b/doc/FcPatternAddWeak.3
index c6d08133..9e8bc427 100644
--- a/doc/FcPatternAddWeak.3
+++ b/doc/FcPatternAddWeak.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAddWeak" "3" "10 1月 2013" "" ""
+.TH "FcPatternAddWeak" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternAddWeak \- Add a value to a pattern with weak binding
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternAddWeak (FcPattern *\fIp\fB, const char *\fIobject\fB, FcValue \
.PP
FcPatternAddWeak is essentially the same as FcPatternAdd except that any
values added to the list have binding \fIweak\fR instead of \fIstrong\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternBuild.3 b/doc/FcPatternBuild.3
index 4ccc300e..4a5abc9e 100644
--- a/doc/FcPatternBuild.3
+++ b/doc/FcPatternBuild.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternBuild" "3" "10 1月 2013" "" ""
+.TH "FcPatternBuild" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild \- Create patterns from arguments
.SH SYNOPSIS
@@ -41,6 +41,3 @@ varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
which returns its result directly in the \fIresult\fR
variable.
.PP
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternCreate.3 b/doc/FcPatternCreate.3
index 3707754b..ad3d6f68 100644
--- a/doc/FcPatternCreate.3
+++ b/doc/FcPatternCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternCreate" "3" "10 1月 2013" "" ""
+.TH "FcPatternCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternCreate \- Create a pattern
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcPattern * FcPatternCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Creates a pattern with no properties; used to build patterns from scratch.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternDel.3 b/doc/FcPatternDel.3
index b44deeb6..5934dd8b 100644
--- a/doc/FcPatternDel.3
+++ b/doc/FcPatternDel.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDel" "3" "10 1月 2013" "" ""
+.TH "FcPatternDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternDel \- Delete a property from a pattern
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternDel (FcPattern *\fIp\fB, const char *\fIobject\fB);
.PP
Deletes all values associated with the property `object', returning
whether the property existed or not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternDestroy.3 b/doc/FcPatternDestroy.3
index be2f5b30..525c6c56 100644
--- a/doc/FcPatternDestroy.3
+++ b/doc/FcPatternDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDestroy" "3" "10 1月 2013" "" ""
+.TH "FcPatternDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternDestroy \- Destroy a pattern
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcPatternDestroy (FcPattern *\fIp\fB);
.PP
Decrement the pattern reference count. If all references are gone, destroys
the pattern, in the process destroying all related values.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternDuplicate.3 b/doc/FcPatternDuplicate.3
index 6c6cb841..b9d61abb 100644
--- a/doc/FcPatternDuplicate.3
+++ b/doc/FcPatternDuplicate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDuplicate" "3" "10 1月 2013" "" ""
+.TH "FcPatternDuplicate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternDuplicate \- Copy a pattern
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcPatternDuplicate (const FcPattern *\fIp\fB);
Copy a pattern, returning a new pattern that matches
\fIp\fR\&. Each pattern may be modified without affecting the
other.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternEqual.3 b/doc/FcPatternEqual.3
index 156feb72..5cb658bb 100644
--- a/doc/FcPatternEqual.3
+++ b/doc/FcPatternEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqual" "3" "10 1月 2013" "" ""
+.TH "FcPatternEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternEqual \- Compare patterns
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcPatternEqual (const FcPattern *\fIpa\fB, const FcPattern *\fIpb\fB);
.SH "DESCRIPTION"
.PP
Returns whether \fIpa\fR and \fIpb\fR are exactly alike.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternEqualSubset.3 b/doc/FcPatternEqualSubset.3
index c87ac442..ef68066c 100644
--- a/doc/FcPatternEqualSubset.3
+++ b/doc/FcPatternEqualSubset.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqualSubset" "3" "10 1月 2013" "" ""
+.TH "FcPatternEqualSubset" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternEqualSubset \- Compare portions of patterns
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternEqualSubset (const FcPattern *\fIpa\fB, const FcPattern *\fIpb\f
.PP
Returns whether \fIpa\fR and \fIpb\fR have exactly the same values for all of the
objects in \fIos\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternFilter.3 b/doc/FcPatternFilter.3
index 59b371e3..5bdd593d 100644
--- a/doc/FcPatternFilter.3
+++ b/doc/FcPatternFilter.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFilter" "3" "10 1月 2013" "" ""
+.TH "FcPatternFilter" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternFilter \- Filter the objects of pattern
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns a new pattern that only has those objects from
\fIp\fR that are in \fIos\fR\&.
If \fIos\fR is NULL, a duplicate of
\fIp\fR is returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternFormat.3 b/doc/FcPatternFormat.3
index 064de005..70401914 100644
--- a/doc/FcPatternFormat.3
+++ b/doc/FcPatternFormat.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFormat" "3" "10 1月 2013" "" ""
+.TH "FcPatternFormat" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternFormat \- Format a pattern into a string according to a format specifier
.SH SYNOPSIS
@@ -203,6 +203,6 @@ FIXME: This converter is not UTF-8 aware yet.
For example, the format "%{family|downcase|delete( )}\\n" will expand
to the values of the family element in \fIpattern\fR,
lower-cased and with spaces removed.
-.SH "VERSION"
+.SH "SINCE"
.PP
-Fontconfig version 2.10.91
+version 2.9.0
diff --git a/doc/FcPatternGet-Type.3 b/doc/FcPatternGet-Type.3
index a1fa07f6..d23a3aed 100644
--- a/doc/FcPatternGet-Type.3
+++ b/doc/FcPatternGet-Type.3
@@ -1,7 +1,7 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet-Type" "3" "10 1月 2013" "" ""
+.TH "FcPatternGet-Type" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
-FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet \- Return a typed value from a pattern
+FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange \- Return a typed value from a pattern
.SH SYNOPSIS
.nf
\fB#include <fontconfig/fontconfig.h>
@@ -18,9 +18,11 @@ FcResult FcPatternGetCharSet (FcPattern *\fIp\fB, const char *\fIobject\fB, int
.sp
FcResult FcPatternGetBool (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcBool *\fIb\fB);
.sp
-FcResult FcPatternGetFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB);
+FcResult FcPatternGetFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FT_Face *\fIf\fB);
.sp
-FcResult FcPatternGetLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, FT_Face *\fIf\fB);
+FcResult FcPatternGetLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcLangSet **\fIl\fB);
+.sp
+FcResult FcPatternGetRange (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcRange **\fIr\fB);
.fi\fR
.SH "DESCRIPTION"
.PP
@@ -29,6 +31,4 @@ returned data is of the expected type. They return FcResultTypeMismatch if
this is not the case. Note that these (like FcPatternGet) do not make a
copy of any data structure referenced by the return value. Use these
in preference to FcPatternGet to provide compile-time typechecking.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+\fBFcPatternGetRange\fR are available since 2.11.91.
diff --git a/doc/FcPatternGet.3 b/doc/FcPatternGet.3
index a96ef21d..4cd50ac0 100644
--- a/doc/FcPatternGet.3
+++ b/doc/FcPatternGet.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet" "3" "10 1月 2013" "" ""
+.TH "FcPatternGet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternGet \- Return a value from a pattern
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns in \fIv\fR the \fIid\fR\&'th value
associated with the property \fIobject\fR\&.
The value returned is not a copy, but rather refers to the data stored
within the pattern directly. Applications must not free this value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternHash.3 b/doc/FcPatternHash.3
index 99595cc2..24da8138 100644
--- a/doc/FcPatternHash.3
+++ b/doc/FcPatternHash.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternHash" "3" "10 1月 2013" "" ""
+.TH "FcPatternHash" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternHash \- Compute a pattern hash value
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar32 FcPatternHash (const FcPattern *\fIp\fB);
.PP
Returns a 32-bit number which is the same for any two patterns which are
equal.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternPrint.3 b/doc/FcPatternPrint.3
index f4197eff..3d0c6242 100644
--- a/doc/FcPatternPrint.3
+++ b/doc/FcPatternPrint.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternPrint" "3" "10 1月 2013" "" ""
+.TH "FcPatternPrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternPrint \- Print a pattern for debugging
.SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcPatternPrint (const FcPattern *\fIp\fB);
Prints an easily readable version of the pattern to stdout. There is
no provision for reparsing data in this format, it's just for diagnostics
and debugging.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternReference.3 b/doc/FcPatternReference.3
index 9028bee2..036df2b7 100644
--- a/doc/FcPatternReference.3
+++ b/doc/FcPatternReference.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternReference" "3" "10 1月 2013" "" ""
+.TH "FcPatternReference" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternReference \- Increment pattern reference count
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcPatternReference (FcPattern *\fIp\fB);
.PP
Add another reference to \fIp\fR\&. Patterns are freed only
when the reference count reaches zero.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcPatternRemove.3 b/doc/FcPatternRemove.3
index f56f4c54..50007e91 100644
--- a/doc/FcPatternRemove.3
+++ b/doc/FcPatternRemove.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternRemove" "3" "10 1月 2013" "" ""
+.TH "FcPatternRemove" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcPatternRemove \- Remove one object of the specified type from the pattern
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternRemove (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIid\
.PP
Removes the value associated with the property `object' at position `id', returning
whether the property existed and had a value at that position or not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcRangeCopy.3 b/doc/FcRangeCopy.3
new file mode 100644
index 00000000..7b6acc1b
--- /dev/null
+++ b/doc/FcRangeCopy.3
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCopy \- Copy a range object
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCopy (const FcRange *\fIrange\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCopy\fR creates a new FcRange object and
+populates it with the contents of \fIrange\fR\&.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeCreateDouble.3 b/doc/FcRangeCreateDouble.3
new file mode 100644
index 00000000..554f7560
--- /dev/null
+++ b/doc/FcRangeCreateDouble.3
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCreateDouble" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCreateDouble \- create a range object for double
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCreateDouble (double\fIbegin\fB, double\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCreateDouble\fR creates a new FcRange object with
+double sized value.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeCreateInteger.3 b/doc/FcRangeCreateInteger.3
new file mode 100644
index 00000000..8ab4f605
--- /dev/null
+++ b/doc/FcRangeCreateInteger.3
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCreateInteger" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCreateInteger \- create a range object for integer
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCreateInteger (int\fIbegin\fB, int\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCreateInteger\fR creates a new FcRange object with
+integer sized value.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeDestroy.3 b/doc/FcRangeDestroy.3
new file mode 100644
index 00000000..201de2a7
--- /dev/null
+++ b/doc/FcRangeDestroy.3
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeDestroy \- destroy a range object
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcRangeDestroy (FcRange *\fIrange\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeDestroy\fR destroys a FcRange object, freeing
+all memory associated with it.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeGetDouble.3 b/doc/FcRangeGetDouble.3
new file mode 100644
index 00000000..a39d55f6
--- /dev/null
+++ b/doc/FcRangeGetDouble.3
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeGetDouble" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeGetDouble \- Get the range in double
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcBool FcRangeGetDouble (const FcRange *\fIrange\fB, double *\fIbegin\fB, double *\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns in \fIbegin\fR and \fIend\fR as the range.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcStrBasename.3 b/doc/FcStrBasename.3
index a183a90f..81f8ccbf 100644
--- a/doc/FcStrBasename.3
+++ b/doc/FcStrBasename.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrBasename" "3" "10 1月 2013" "" ""
+.TH "FcStrBasename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrBasename \- last component of filename
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrBasename (const FcChar8 *\fIfile\fB);
Returns the filename of \fIfile\fR stripped of any leading
directory names. This is returned in newly allocated storage which should
be freed when no longer needed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrCmp.3 b/doc/FcStrCmp.3
index 2bc0b2b4..82f4b139 100644
--- a/doc/FcStrCmp.3
+++ b/doc/FcStrCmp.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmp" "3" "10 1月 2013" "" ""
+.TH "FcStrCmp" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrCmp \- compare UTF-8 strings
.SH SYNOPSIS
@@ -12,6 +12,3 @@ int FcStrCmp (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
.PP
Returns the usual <0, 0, >0 result of comparing
\fIs1\fR and \fIs2\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrCmpIgnoreCase.3 b/doc/FcStrCmpIgnoreCase.3
index c27c6450..9800fd2e 100644
--- a/doc/FcStrCmpIgnoreCase.3
+++ b/doc/FcStrCmpIgnoreCase.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmpIgnoreCase" "3" "10 1月 2013" "" ""
+.TH "FcStrCmpIgnoreCase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrCmpIgnoreCase \- compare UTF-8 strings ignoring case
.SH SYNOPSIS
@@ -13,6 +13,3 @@ int FcStrCmpIgnoreCase (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
Returns the usual <0, 0, >0 result of comparing
\fIs1\fR and \fIs2\fR\&. This test is
case-insensitive for all proper UTF-8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrCopy.3 b/doc/FcStrCopy.3
index 731e9bcd..e1aa71f3 100644
--- a/doc/FcStrCopy.3
+++ b/doc/FcStrCopy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopy" "3" "10 1月 2013" "" ""
+.TH "FcStrCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrCopy \- duplicate a string
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrCopy (const FcChar8 *\fIs\fB);
Allocates memory, copies \fIs\fR and returns the resulting
buffer. Yes, this is \fBstrdup\fR, but that function isn't
available on every platform.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrCopyFilename.3 b/doc/FcStrCopyFilename.3
index 996a7bce..c88b4117 100644
--- a/doc/FcStrCopyFilename.3
+++ b/doc/FcStrCopyFilename.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopyFilename" "3" "10 1月 2013" "" ""
+.TH "FcStrCopyFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrCopyFilename \- create a complete path from a filename
.SH SYNOPSIS
@@ -18,6 +18,3 @@ of '/' characters are converted to a single '/', and names containing the
current directory '.' or parent directory '..' are correctly reconstructed.
Returns NULL if '~' is the leading character and HOME is unset or disabled
(see \fBFcConfigEnableHome\fR).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrDirname.3 b/doc/FcStrDirname.3
index 8a6f6959..9d039203 100644
--- a/doc/FcStrDirname.3
+++ b/doc/FcStrDirname.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDirname" "3" "10 1月 2013" "" ""
+.TH "FcStrDirname" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrDirname \- directory part of filename
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrDirname (const FcChar8 *\fIfile\fB);
Returns the directory containing \fIfile\fR\&. This
is returned in newly allocated storage which should be freed when no longer
needed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrDowncase.3 b/doc/FcStrDowncase.3
index 9b834572..7db42c92 100644
--- a/doc/FcStrDowncase.3
+++ b/doc/FcStrDowncase.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDowncase" "3" "10 1月 2013" "" ""
+.TH "FcStrDowncase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrDowncase \- create a lower case translation of a string
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcStrDowncase (const FcChar8 *\fIs\fB);
.PP
Allocates memory, copies \fIs\fR, converting upper case
letters to lower case and returns the allocated buffer.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrFree.3 b/doc/FcStrFree.3
index 910c7902..8a02e587 100644
--- a/doc/FcStrFree.3
+++ b/doc/FcStrFree.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrFree" "3" "10 1月 2013" "" ""
+.TH "FcStrFree" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrFree \- free a string
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcStrFree (FcChar8 *\fIs\fB);
.PP
This is just a wrapper around free(3) which helps track memory usage of
strings within the fontconfig library.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrListCreate.3 b/doc/FcStrListCreate.3
index df3cc9e5..de4a25ad 100644
--- a/doc/FcStrListCreate.3
+++ b/doc/FcStrListCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListCreate" "3" "10 1月 2013" "" ""
+.TH "FcStrListCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrListCreate \- create a string iterator
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrList * FcStrListCreate (FcStrSet *\fIset\fB);
.SH "DESCRIPTION"
.PP
Creates an iterator to list the strings in \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrListDone.3 b/doc/FcStrListDone.3
index 4da2bb22..ebcebf00 100644
--- a/doc/FcStrListDone.3
+++ b/doc/FcStrListDone.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListDone" "3" "10 1月 2013" "" ""
+.TH "FcStrListDone" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrListDone \- destroy a string iterator
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcStrListDone (FcStrList *\fIlist\fB);
.SH "DESCRIPTION"
.PP
Destroys the enumerator \fIlist\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrListFirst.3 b/doc/FcStrListFirst.3
new file mode 100644
index 00000000..78b7567f
--- /dev/null
+++ b/doc/FcStrListFirst.3
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcStrListFirst" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcStrListFirst \- get first string in iteration
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcStrListFirst (FcStrList *\fIlist\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns the first string in \fIlist\fR\&.
+.SH "SINCE"
+.PP
+version 2.11.0
diff --git a/doc/FcStrListNext.3 b/doc/FcStrListNext.3
index ea3ff481..bd69ae4e 100644
--- a/doc/FcStrListNext.3
+++ b/doc/FcStrListNext.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListNext" "3" "10 1月 2013" "" ""
+.TH "FcStrListNext" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrListNext \- get next string in iteration
.SH SYNOPSIS
@@ -10,7 +10,4 @@ FcChar8 * FcStrListNext (FcStrList *\fIlist\fB);
.fi\fR
.SH "DESCRIPTION"
.PP
-Returns the next string in \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Returns the next string in \fIlist\fR\&.
diff --git a/doc/FcStrPlus.3 b/doc/FcStrPlus.3
index bbf1321a..e499ba6f 100644
--- a/doc/FcStrPlus.3
+++ b/doc/FcStrPlus.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrPlus" "3" "10 1月 2013" "" ""
+.TH "FcStrPlus" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrPlus \- concatenate two strings
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrPlus (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
This function allocates new storage and places the concatenation of
\fIs1\fR and \fIs2\fR there, returning the
new string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetAdd.3 b/doc/FcStrSetAdd.3
index 94983f52..ff4ccffc 100644
--- a/doc/FcStrSetAdd.3
+++ b/doc/FcStrSetAdd.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcStrSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetAdd \- add to a string set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcStrSetAdd (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
.SH "DESCRIPTION"
.PP
Adds a copy of \fIs\fR to \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetAddFilename.3 b/doc/FcStrSetAddFilename.3
index ec13180e..eb2d874e 100644
--- a/doc/FcStrSetAddFilename.3
+++ b/doc/FcStrSetAddFilename.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAddFilename" "3" "10 1月 2013" "" ""
+.TH "FcStrSetAddFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetAddFilename \- add a filename to a string set
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcStrSetAddFilename (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
Adds a copy \fIs\fR to \fIset\fR, The copy
is created with FcStrCopyFilename so that leading '~' values are replaced
with the value of the HOME environment variable.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetCreate.3 b/doc/FcStrSetCreate.3
index 6ff59ed9..a88e3288 100644
--- a/doc/FcStrSetCreate.3
+++ b/doc/FcStrSetCreate.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcStrSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetCreate \- create a string set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrSet * FcStrSetCreate (void\fI\fB);
.SH "DESCRIPTION"
.PP
Create an empty set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetDel.3 b/doc/FcStrSetDel.3
index ffb22ebf..8480f4d6 100644
--- a/doc/FcStrSetDel.3
+++ b/doc/FcStrSetDel.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDel" "3" "10 1月 2013" "" ""
+.TH "FcStrSetDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetDel \- delete from a string set
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcStrSetDel (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
.PP
Removes \fIs\fR from \fIset\fR, returning
FcTrue if \fIs\fR was a member else FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetDestroy.3 b/doc/FcStrSetDestroy.3
index 428a0afa..ccc62400 100644
--- a/doc/FcStrSetDestroy.3
+++ b/doc/FcStrSetDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcStrSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetDestroy \- destroy a string set
.SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcStrSetDestroy (FcStrSet *\fIset\fB);
.SH "DESCRIPTION"
.PP
Destroys \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetEqual.3 b/doc/FcStrSetEqual.3
index fd7055fb..0ff09603 100644
--- a/doc/FcStrSetEqual.3
+++ b/doc/FcStrSetEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcStrSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetEqual \- check sets for equality
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcStrSetEqual (FcStrSet *\fIset_a\fB, FcStrSet *\fIset_b\fB);
Returns whether \fIset_a\fR contains precisely the same
strings as \fIset_b\fR\&. Ordering of strings within the two
sets is not considered.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrSetMember.3 b/doc/FcStrSetMember.3
index ec8178d4..7b465799 100644
--- a/doc/FcStrSetMember.3
+++ b/doc/FcStrSetMember.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetMember" "3" "10 1月 2013" "" ""
+.TH "FcStrSetMember" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrSetMember \- check set for membership
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcStrSetMember (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
.PP
Returns whether \fIs\fR is a member of
\fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrStr.3 b/doc/FcStrStr.3
index 7ec35ff2..2c8de6ce 100644
--- a/doc/FcStrStr.3
+++ b/doc/FcStrStr.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStr" "3" "10 1月 2013" "" ""
+.TH "FcStrStr" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrStr \- locate UTF-8 substring
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the location of \fIs2\fR in
\fIs1\fR\&. Returns NULL if \fIs2\fR
is not present in \fIs1\fR\&. This test will operate properly
with UTF8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrStrIgnoreCase.3 b/doc/FcStrStrIgnoreCase.3
index c4ff122a..1e252cd0 100644
--- a/doc/FcStrStrIgnoreCase.3
+++ b/doc/FcStrStrIgnoreCase.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStrIgnoreCase" "3" "10 1月 2013" "" ""
+.TH "FcStrStrIgnoreCase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcStrStrIgnoreCase \- locate UTF-8 substring ignoring ASCII case
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the location of \fIs2\fR in
\fIs1\fR, ignoring case. Returns NULL if
\fIs2\fR is not present in \fIs1\fR\&.
This test is case-insensitive for all proper UTF-8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcToLower.3 b/doc/FcToLower.3
index e14d0855..b67a656a 100644
--- a/doc/FcToLower.3
+++ b/doc/FcToLower.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcToLower" "3" "10 1月 2013" "" ""
+.TH "FcToLower" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcToLower \- convert upper case ASCII to lower case
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 FcToLower (FcChar8\fIc\fB);
.PP
This macro converts upper case ASCII \fIc\fR to the
equivalent lower case letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcUcs4ToUtf8.3 b/doc/FcUcs4ToUtf8.3
index 32a55a42..7431381d 100644
--- a/doc/FcUcs4ToUtf8.3
+++ b/doc/FcUcs4ToUtf8.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUcs4ToUtf8" "3" "10 1月 2013" "" ""
+.TH "FcUcs4ToUtf8" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcUcs4ToUtf8 \- convert UCS4 to UTF-8
.SH SYNOPSIS
@@ -13,6 +13,3 @@ int FcUcs4ToUtf8 (FcChar32 \fIsrc\fB, FcChar8 \fIdst[FC_UTF8_MAX_LEN]\fB);
Converts the Unicode char from \fIsrc\fR into
\fIdst\fR and returns the number of bytes needed to encode
the char.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcUtf16Len.3 b/doc/FcUtf16Len.3
index d5db3a17..c5e2cc0a 100644
--- a/doc/FcUtf16Len.3
+++ b/doc/FcUtf16Len.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16Len" "3" "10 1月 2013" "" ""
+.TH "FcUtf16Len" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcUtf16Len \- count UTF-16 encoded chars
.SH SYNOPSIS
@@ -18,6 +18,3 @@ Places that count in \fInchar\fR\&.
bytes needed to hold the largest Unicode char counted. The return value
indicates whether \fIstring\fR is a well-formed UTF16
string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcUtf16ToUcs4.3 b/doc/FcUtf16ToUcs4.3
index c88bee8a..87814ab5 100644
--- a/doc/FcUtf16ToUcs4.3
+++ b/doc/FcUtf16ToUcs4.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16ToUcs4" "3" "10 1月 2013" "" ""
+.TH "FcUtf16ToUcs4" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcUtf16ToUcs4 \- convert UTF-16 to UCS4
.SH SYNOPSIS
@@ -15,6 +15,3 @@ Converts the next Unicode char from \fIsrc\fR into
char. \fIsrc\fR must be at least \fIlen\fR
bytes long. Bytes of \fIsrc\fR are combined into 16-bit
units according to \fIendian\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcUtf8Len.3 b/doc/FcUtf8Len.3
index bda55f47..6d9d348b 100644
--- a/doc/FcUtf8Len.3
+++ b/doc/FcUtf8Len.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8Len" "3" "10 1月 2013" "" ""
+.TH "FcUtf8Len" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcUtf8Len \- count UTF-8 encoded chars
.SH SYNOPSIS
@@ -16,6 +16,3 @@ Counts the number of Unicode chars in \fIlen\fR bytes of
4 depending on the number of bytes needed to hold the largest Unicode char
counted. The return value indicates whether \fIsrc\fR is a
well-formed UTF8 string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcUtf8ToUcs4.3 b/doc/FcUtf8ToUcs4.3
index 4592a80c..488c1b68 100644
--- a/doc/FcUtf8ToUcs4.3
+++ b/doc/FcUtf8ToUcs4.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8ToUcs4" "3" "10 1月 2013" "" ""
+.TH "FcUtf8ToUcs4" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcUtf8ToUcs4 \- convert UTF-8 to UCS4
.SH SYNOPSIS
@@ -14,6 +14,3 @@ Converts the next Unicode char from \fIsrc\fR into
\fIdst\fR and returns the number of bytes containing the
char. \fIsrc\fR must be at least
\fIlen\fR bytes long.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcValueDestroy.3 b/doc/FcValueDestroy.3
index e6264501..6310cf6b 100644
--- a/doc/FcValueDestroy.3
+++ b/doc/FcValueDestroy.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueDestroy" "3" "10 1月 2013" "" ""
+.TH "FcValueDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcValueDestroy \- Free a value
.SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcValueDestroy (FcValue \fIv\fB);
.PP
Frees any memory referenced by \fIv\fR\&. Values of type FcTypeString,
FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcValueEqual.3 b/doc/FcValueEqual.3
index f80e9b73..ccdfa4c3 100644
--- a/doc/FcValueEqual.3
+++ b/doc/FcValueEqual.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueEqual" "3" "10 1月 2013" "" ""
+.TH "FcValueEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcValueEqual \- Test two values for equality
.SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcValueEqual (FcValue \fIv_a\fB, FcValue \fIv_b\fB);
Compares two values. Integers and Doubles are compared as numbers; otherwise
the two values have to be the same type to be considered equal. Strings are
compared ignoring case.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcValuePrint.3 b/doc/FcValuePrint.3
index 5131ea59..9f67ec15 100644
--- a/doc/FcValuePrint.3
+++ b/doc/FcValuePrint.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValuePrint" "3" "10 1月 2013" "" ""
+.TH "FcValuePrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcValuePrint \- Print a value to stdout
.SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcValuePrint (FcValue \fIv\fB);
Prints a human-readable representation of \fIv\fR to
stdout. The format should not be considered part of the library
specification as it may change in the future.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcValueSave.3 b/doc/FcValueSave.3
index ed13cce6..58b15b28 100644
--- a/doc/FcValueSave.3
+++ b/doc/FcValueSave.3
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueSave" "3" "10 1月 2013" "" ""
+.TH "FcValueSave" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
.SH NAME
FcValueSave \- Copy a value
.SH SYNOPSIS
@@ -12,6 +12,3 @@ FcValue FcValueSave (FcValue \fIv\fB);
.PP
Returns a copy of \fIv\fR duplicating any object referenced by it so that \fIv\fR
may be safely destroyed without harming the new value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcWeightFromOpenType.3 b/doc/FcWeightFromOpenType.3
new file mode 100644
index 00000000..371e261f
--- /dev/null
+++ b/doc/FcWeightFromOpenType.3
@@ -0,0 +1,22 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcWeightFromOpenType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcWeightFromOpenType \- Convert from OpenType weight values to fontconfig ones
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+int FcWeightFromOpenType (int\fIot_weight\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcWeightFromOpenType\fR returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers. If input is negative,
+zero, or greater than 1000, returns -1. This function linearly interpolates
+between various FC_WEIGHT_* constants. As such, the returned value does not
+necessarily match any of the predefined constants.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcWeightToOpenType.3 b/doc/FcWeightToOpenType.3
new file mode 100644
index 00000000..94775943
--- /dev/null
+++ b/doc/FcWeightToOpenType.3
@@ -0,0 +1,19 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcWeightToOpenType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcWeightToOpenType \- Convert from fontconfig weight values to OpenType ones
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+int FcWeightToOpenType (int\fIot_weight\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcWeightToOpenType\fR is the inverse of
+\fBFcWeightFromOpenType\fR\&. If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1. Otherwise
+returns a number in the range 1 to 1000.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/Makefile.am b/doc/Makefile.am
index c6b095c8..9141ab23 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -53,7 +53,10 @@ SUFFIXES = \
TESTS = \
check-missing-doc \
$(NULL)
-TESTS_ENVIRONMENT=top_srcdir=${top_srcdir} sh
+TESTS_ENVIRONMENT = \
+ top_srcdir=${top_srcdir}; export top_srcdir; \
+ $(NULL)
+LOG_COMPILER = sh
#
DOC2HTML = docbook2html
DOC2TXT = docbook2txt
@@ -78,9 +81,11 @@ DOC_FUNCS_FNCS = \
fcobjectset.fncs \
fcobjecttype.fncs \
fcpattern.fncs \
+ fcrange.fncs \
fcstring.fncs \
fcstrset.fncs \
fcvalue.fncs \
+ fcweight.fncs \
$(NULL)
SGML_FILES = \
fontconfig-user.sgml \
diff --git a/doc/Makefile.in b/doc/Makefile.in
index e725ad10..1f38d782 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -40,23 +40,51 @@
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -88,15 +116,17 @@ noinst_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
@USEDOCBOOK_TRUE@am__append_3 = $(HTML_DIR)/*
@USEDOCBOOK_FALSE@am__append_4 = $(srcdir)/$(HTML_DIR)/*
subdir = doc
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/version.sgml.in $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(srcdir)/version.sgml.in $(top_srcdir)/depcomp \
+ $(top_srcdir)/test-driver
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -189,12 +219,202 @@ man5dir = $(mandir)/man5
NROFF = nroff
MANS = $(man3_MANS) $(man5_MANS)
DATA = $(doc_DATA) $(htmldoc_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__tty_colors_dummy = \
mgn= red= grn= lgn= blu= brg= std=; \
am__color_tests=no
-am__tty_colors = $(am__tty_colors_dummy)
+am__tty_colors = { \
+ $(am__tty_colors_dummy); \
+ if test "X$(AM_COLOR_TESTS)" = Xno; then \
+ am__color_tests=no; \
+ elif test "X$(AM_COLOR_TESTS)" = Xalways; then \
+ am__color_tests=yes; \
+ elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \
+ am__color_tests=yes; \
+ fi; \
+ if test $$am__color_tests = yes; then \
+ red=''; \
+ grn=''; \
+ lgn=''; \
+ blu=''; \
+ mgn=''; \
+ brg=''; \
+ std=''; \
+ fi; \
+}
+am__recheck_rx = ^[ ]*:recheck:[ ]*
+am__global_test_result_rx = ^[ ]*:global-test-result:[ ]*
+am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]*
+# A command that, given a newline-separated list of test names on the
+# standard input, print the name of the tests that are to be re-run
+# upon "make recheck".
+am__list_recheck_tests = $(AWK) '{ \
+ recheck = 1; \
+ while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+ { \
+ if (rc < 0) \
+ { \
+ if ((getline line2 < ($$0 ".log")) < 0) \
+ recheck = 0; \
+ break; \
+ } \
+ else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \
+ { \
+ recheck = 0; \
+ break; \
+ } \
+ else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \
+ { \
+ break; \
+ } \
+ }; \
+ if (recheck) \
+ print $$0; \
+ close ($$0 ".trs"); \
+ close ($$0 ".log"); \
+}'
+# A command that, given a newline-separated list of test names on the
+# standard input, create the global log from their .trs and .log files.
+am__create_global_log = $(AWK) ' \
+function fatal(msg) \
+{ \
+ print "fatal: making $@: " msg | "cat >&2"; \
+ exit 1; \
+} \
+function rst_section(header) \
+{ \
+ print header; \
+ len = length(header); \
+ for (i = 1; i <= len; i = i + 1) \
+ printf "="; \
+ printf "\n\n"; \
+} \
+{ \
+ copy_in_global_log = 1; \
+ global_test_result = "RUN"; \
+ while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+ { \
+ if (rc < 0) \
+ fatal("failed to read from " $$0 ".trs"); \
+ if (line ~ /$(am__global_test_result_rx)/) \
+ { \
+ sub("$(am__global_test_result_rx)", "", line); \
+ sub("[ ]*$$", "", line); \
+ global_test_result = line; \
+ } \
+ else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \
+ copy_in_global_log = 0; \
+ }; \
+ if (copy_in_global_log) \
+ { \
+ rst_section(global_test_result ": " $$0); \
+ while ((rc = (getline line < ($$0 ".log"))) != 0) \
+ { \
+ if (rc < 0) \
+ fatal("failed to read from " $$0 ".log"); \
+ print line; \
+ }; \
+ printf "\n"; \
+ }; \
+ close ($$0 ".trs"); \
+ close ($$0 ".log"); \
+}'
+# Restructured Text title.
+am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; }
+# Solaris 10 'make', and several other traditional 'make' implementations,
+# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it
+# by disabling -e (using the XSI extension "set +e") if it's set.
+am__sh_e_setup = case $$- in *e*) set +e;; esac
+# Default flags passed to test drivers.
+am__common_driver_flags = \
+ --color-tests "$$am__color_tests" \
+ --enable-hard-errors "$$am__enable_hard_errors" \
+ --expect-failure "$$am__expect_failure"
+# To be inserted before the command running the test. Creates the
+# directory for the log if needed. Stores in $dir the directory
+# containing $f, in $tst the test, in $log the log. Executes the
+# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and
+# passes TESTS_ENVIRONMENT. Set up options for the wrapper that
+# will run the test scripts (or their associated LOG_COMPILER, if
+# thy have one).
+am__check_pre = \
+$(am__sh_e_setup); \
+$(am__vpath_adj_setup) $(am__vpath_adj) \
+$(am__tty_colors); \
+srcdir=$(srcdir); export srcdir; \
+case "$@" in \
+ */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \
+ *) am__odir=.;; \
+esac; \
+test "x$$am__odir" = x"." || test -d "$$am__odir" \
+ || $(MKDIR_P) "$$am__odir" || exit $$?; \
+if test -f "./$$f"; then dir=./; \
+elif test -f "$$f"; then dir=; \
+else dir="$(srcdir)/"; fi; \
+tst=$$dir$$f; log='$@'; \
+if test -n '$(DISABLE_HARD_ERRORS)'; then \
+ am__enable_hard_errors=no; \
+else \
+ am__enable_hard_errors=yes; \
+fi; \
+case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \
+ am__expect_failure=yes;; \
+ *) \
+ am__expect_failure=no;; \
+esac; \
+$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT)
+# A shell command to get the names of the tests scripts with any registered
+# extension removed (i.e., equivalently, the names of the test logs, with
+# the '.log' extension removed). The result is saved in the shell variable
+# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly,
+# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
+# since that might cause problem with VPATH rewrites for suffix-less tests.
+# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
+am__set_TESTS_bases = \
+ bases='$(TEST_LOGS)'; \
+ bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
+ bases=`echo $$bases`
+RECHECK_LOGS = $(TEST_LOGS)
+AM_RECURSIVE_TARGETS = check recheck
+TEST_SUITE_LOG = test-suite.log
+TEST_EXTENSIONS = @EXEEXT@ .test
+LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS)
+am__set_b = \
+ case '$@' in \
+ */*) \
+ case '$*' in \
+ */*) b='$*';; \
+ *) b=`echo '$@' | sed 's/\.log$$//'`; \
+ esac;; \
+ *) \
+ b='$*';; \
+ esac
+am__test_logs1 = $(TESTS:=.log)
+am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log)
+TEST_LOGS = $(am__test_logs2:.test.log=.log)
+TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
+ $(TEST_LOG_FLAGS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -236,6 +456,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -277,12 +499,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -306,7 +535,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -314,7 +542,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -339,19 +566,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
NULL =
EXTRA_DIST = \
$(BUILT_DOCS) \
@@ -383,7 +613,11 @@ SUFFIXES = \
.html \
$(NULL)
-TESTS_ENVIRONMENT = top_srcdir=${top_srcdir} sh
+TESTS_ENVIRONMENT = \
+ top_srcdir=${top_srcdir}; export top_srcdir; \
+ $(NULL)
+
+LOG_COMPILER = sh
#
DOC2HTML = docbook2html
DOC2TXT = docbook2txt
@@ -407,9 +641,11 @@ DOC_FUNCS_FNCS = \
fcobjectset.fncs \
fcobjecttype.fncs \
fcpattern.fncs \
+ fcrange.fncs \
fcstring.fncs \
fcstrset.fncs \
fcvalue.fncs \
+ fcweight.fncs \
$(NULL)
SGML_FILES = \
@@ -477,7 +713,7 @@ all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
-.SUFFIXES: .fncs .sgml .txt .html .c .lo .o .obj .pdf
+.SUFFIXES: .fncs .sgml .txt .html .c .lo .log .o .obj .pdf .test .test$(EXEEXT) .trs
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -519,6 +755,7 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
edit-sgml$(EXEEXT): $(edit_sgml_OBJECTS) $(edit_sgml_DEPENDENCIES) $(EXTRA_edit_sgml_DEPENDENCIES)
@rm -f edit-sgml$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(edit_sgml_OBJECTS) $(edit_sgml_LDADD) $(LIBS)
@@ -536,14 +773,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -682,26 +919,15 @@ uninstall-htmldocDATA:
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(htmldocdir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -713,15 +939,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -730,9 +952,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -748,113 +971,170 @@ cscopelist: $(HEADERS) $(SOURCES) $(LISP)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-check-TESTS: $(TESTS)
- @failed=0; all=0; xfail=0; xpass=0; skip=0; \
- srcdir=$(srcdir); export srcdir; \
- list=' $(TESTS) '; \
- $(am__tty_colors); \
- if test -n "$$list"; then \
- for tst in $$list; do \
- if test -f ./$$tst; then dir=./; \
- elif test -f $$tst; then dir=; \
- else dir="$(srcdir)/"; fi; \
- if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \
- all=`expr $$all + 1`; \
- case " $(XFAIL_TESTS) " in \
- *[\ \ ]$$tst[\ \ ]*) \
- xpass=`expr $$xpass + 1`; \
- failed=`expr $$failed + 1`; \
- col=$$red; res=XPASS; \
- ;; \
- *) \
- col=$$grn; res=PASS; \
- ;; \
- esac; \
- elif test $$? -ne 77; then \
- all=`expr $$all + 1`; \
- case " $(XFAIL_TESTS) " in \
- *[\ \ ]$$tst[\ \ ]*) \
- xfail=`expr $$xfail + 1`; \
- col=$$lgn; res=XFAIL; \
- ;; \
- *) \
- failed=`expr $$failed + 1`; \
- col=$$red; res=FAIL; \
- ;; \
- esac; \
- else \
- skip=`expr $$skip + 1`; \
- col=$$blu; res=SKIP; \
- fi; \
- echo "$${col}$$res$${std}: $$tst"; \
- done; \
- if test "$$all" -eq 1; then \
- tests="test"; \
- All=""; \
- else \
- tests="tests"; \
- All="All "; \
+# Recover from deleted '.trs' file; this should ensure that
+# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
+# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells
+# to avoid problems with "make -n".
+.log.trs:
+ rm -f $< $@
+ $(MAKE) $(AM_MAKEFLAGS) $<
+
+# Leading 'am--fnord' is there to ensure the list of targets does not
+# expand to empty, as could happen e.g. with make check TESTS=''.
+am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
+am--force-recheck:
+ @:
+
+$(TEST_SUITE_LOG): $(TEST_LOGS)
+ @$(am__set_TESTS_bases); \
+ am__f_ok () { test -f "$$1" && test -r "$$1"; }; \
+ redo_bases=`for i in $$bases; do \
+ am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \
+ done`; \
+ if test -n "$$redo_bases"; then \
+ redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \
+ redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \
+ if $(am__make_dryrun); then :; else \
+ rm -f $$redo_logs && rm -f $$redo_results || exit 1; \
fi; \
- if test "$$failed" -eq 0; then \
- if test "$$xfail" -eq 0; then \
- banner="$$All$$all $$tests passed"; \
- else \
- if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
- banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
- fi; \
- else \
- if test "$$xpass" -eq 0; then \
- banner="$$failed of $$all $$tests failed"; \
+ fi; \
+ if test -n "$$am__remaking_logs"; then \
+ echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
+ "recursion detected" >&2; \
+ else \
+ am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
+ fi; \
+ if $(am__make_dryrun); then :; else \
+ st=0; \
+ errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \
+ for i in $$redo_bases; do \
+ test -f $$i.trs && test -r $$i.trs \
+ || { echo "$$errmsg $$i.trs" >&2; st=1; }; \
+ test -f $$i.log && test -r $$i.log \
+ || { echo "$$errmsg $$i.log" >&2; st=1; }; \
+ done; \
+ test $$st -eq 0 || exit 1; \
+ fi
+ @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
+ ws='[ ]'; \
+ results=`for b in $$bases; do echo $$b.trs; done`; \
+ test -n "$$results" || results=/dev/null; \
+ all=` grep "^$$ws*:test-result:" $$results | wc -l`; \
+ pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \
+ fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \
+ skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \
+ xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \
+ xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \
+ error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \
+ if test `expr $$fail + $$xpass + $$error` -eq 0; then \
+ success=true; \
+ else \
+ success=false; \
+ fi; \
+ br='==================='; br=$$br$$br$$br$$br; \
+ result_count () \
+ { \
+ if test x"$$1" = x"--maybe-color"; then \
+ maybe_colorize=yes; \
+ elif test x"$$1" = x"--no-color"; then \
+ maybe_colorize=no; \
else \
- if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
- banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ echo "$@: invalid 'result_count' usage" >&2; exit 4; \
fi; \
- fi; \
- dashes="$$banner"; \
- skipped=""; \
- if test "$$skip" -ne 0; then \
- if test "$$skip" -eq 1; then \
- skipped="($$skip test was not run)"; \
+ shift; \
+ desc=$$1 count=$$2; \
+ if test $$maybe_colorize = yes && test $$count -gt 0; then \
+ color_start=$$3 color_end=$$std; \
else \
- skipped="($$skip tests were not run)"; \
+ color_start= color_end=; \
fi; \
- test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
- dashes="$$skipped"; \
- fi; \
- report=""; \
- if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
- report="Please report to $(PACKAGE_BUGREPORT)"; \
- test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
- dashes="$$report"; \
- fi; \
- dashes=`echo "$$dashes" | sed s/./=/g`; \
- if test "$$failed" -eq 0; then \
- col="$$grn"; \
- else \
- col="$$red"; \
- fi; \
- echo "$${col}$$dashes$${std}"; \
- echo "$${col}$$banner$${std}"; \
- test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
- test -z "$$report" || echo "$${col}$$report$${std}"; \
- echo "$${col}$$dashes$${std}"; \
- test "$$failed" -eq 0; \
- else :; fi
+ echo "$${color_start}# $$desc $$count$${color_end}"; \
+ }; \
+ create_testsuite_report () \
+ { \
+ result_count $$1 "TOTAL:" $$all "$$brg"; \
+ result_count $$1 "PASS: " $$pass "$$grn"; \
+ result_count $$1 "SKIP: " $$skip "$$blu"; \
+ result_count $$1 "XFAIL:" $$xfail "$$lgn"; \
+ result_count $$1 "FAIL: " $$fail "$$red"; \
+ result_count $$1 "XPASS:" $$xpass "$$red"; \
+ result_count $$1 "ERROR:" $$error "$$mgn"; \
+ }; \
+ { \
+ echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \
+ $(am__rst_title); \
+ create_testsuite_report --no-color; \
+ echo; \
+ echo ".. contents:: :depth: 2"; \
+ echo; \
+ for b in $$bases; do echo $$b; done \
+ | $(am__create_global_log); \
+ } >$(TEST_SUITE_LOG).tmp || exit 1; \
+ mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \
+ if $$success; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \
+ fi; \
+ echo "$${col}$$br$${std}"; \
+ echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \
+ echo "$${col}$$br$${std}"; \
+ create_testsuite_report --maybe-color; \
+ echo "$$col$$br$$std"; \
+ if $$success; then :; else \
+ echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \
+ if test -n "$(PACKAGE_BUGREPORT)"; then \
+ echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \
+ fi; \
+ echo "$$col$$br$$std"; \
+ fi; \
+ $$success || exit 1
+
+check-TESTS:
+ @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
+ @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
+ @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+ @set +e; $(am__set_TESTS_bases); \
+ log_list=`for i in $$bases; do echo $$i.log; done`; \
+ trs_list=`for i in $$bases; do echo $$i.trs; done`; \
+ log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
+ exit $$?;
+recheck: all $(check_SCRIPTS)
+ @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+ @set +e; $(am__set_TESTS_bases); \
+ bases=`for i in $$bases; do echo $$i; done \
+ | $(am__list_recheck_tests)` || exit 1; \
+ log_list=`for i in $$bases; do echo $$i.log; done`; \
+ log_list=`echo $$log_list`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
+ am__force_recheck=am--force-recheck \
+ TEST_LOGS="$$log_list"; \
+ exit $$?
+check-missing-doc.log: check-missing-doc
+ @p='check-missing-doc'; \
+ b='check-missing-doc'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+.test.log:
+ @p='$<'; \
+ $(am__set_b); \
+ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+@am__EXEEXT_TRUE@.test$(EXEEXT).log:
+@am__EXEEXT_TRUE@ @p='$<'; \
+@am__EXEEXT_TRUE@ $(am__set_b); \
+@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
+@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \
+@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
+@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -915,6 +1195,9 @@ install-strip:
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
+ -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS)
+ -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs)
+ -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
@@ -1003,9 +1286,9 @@ uninstall-man: uninstall-man3 uninstall-man5
.MAKE: all check check-am install install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-TESTS check-am \
- clean clean-generic clean-libtool clean-local \
- clean-noinstPROGRAMS cscopelist ctags distclean \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-TESTS \
+ check-am clean clean-generic clean-libtool clean-local \
+ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
@@ -1017,7 +1300,7 @@ uninstall-man: uninstall-man3 uninstall-man5
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-docDATA \
+ recheck tags tags-am uninstall uninstall-am uninstall-docDATA \
uninstall-htmldocDATA uninstall-man uninstall-man3 \
uninstall-man5
diff --git a/doc/fcatomic.sgml b/doc/fcatomic.sgml
index 33f81f0b..65c8fd3a 100644
--- a/doc/fcatomic.sgml
+++ b/doc/fcatomic.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcAtomicCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicCreate</refname>
@@ -49,11 +50,6 @@ configuration file is atomically replaced so that reading process always see
a consistent and complete file without the need to lock for reading.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -82,6 +78,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicLock</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicLock</refname>
@@ -105,11 +102,6 @@ Returns FcFalse if the file is already locked, else returns FcTrue and
leaves the file locked.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicNewFile</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicNewFile</refname>
@@ -160,11 +153,6 @@ Returns the filename for writing a new version of the file referenced
by <parameter>atomic</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicOrigFile</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicOrigFile</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
Returns the file referenced by <parameter>atomic</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicReplaceOrig</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicReplaceOrig</refname>
@@ -270,11 +255,6 @@ the new file. Returns FcFalse if the file cannot be replaced due to
permission issues in the filesystem. Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -303,6 +283,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicDeleteNew</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicDeleteNew</refname>
@@ -324,11 +305,6 @@ Fontconfig version &version;
Deletes the new file. Used in error recovery to back out changes.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -357,6 +333,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicUnlock</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicUnlock</refname>
@@ -378,11 +355,6 @@ Fontconfig version &version;
Unlocks the file.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -411,6 +383,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcAtomicDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcAtomicDestroy</refname>
@@ -432,9 +405,4 @@ Fontconfig version &version;
Destroys <parameter>atomic</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcblanks.sgml b/doc/fcblanks.sgml
index dd1a5824..25dfdc18 100644
--- a/doc/fcblanks.sgml
+++ b/doc/fcblanks.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcBlanksCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcBlanksCreate</refname>
@@ -46,11 +47,6 @@
Creates an empty FcBlanks object.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcBlanksDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcBlanksDestroy</refname>
@@ -100,11 +97,6 @@ Fontconfig version &version;
Destroys an FcBlanks object, freeing any associated memory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -133,6 +125,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcBlanksAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcBlanksAdd</refname>
@@ -156,11 +149,6 @@ Adds a single character to an FcBlanks object, returning FcFalse
if this process ran out of memory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcBlanksIsMember</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcBlanksIsMember</refname>
@@ -212,9 +201,4 @@ Returns whether the specified FcBlanks object contains the indicated Unicode
value.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fccache.fncs b/doc/fccache.fncs
index ca8ffa03..34ce63f2 100644
--- a/doc/fccache.fncs
+++ b/doc/fccache.fncs
@@ -74,6 +74,7 @@ FcCacheCopySet.
@PURPOSE@
This tries to clean up the cache directory of <parameter>cache_dir</parameter>.
This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
+@SINCE@ 2.9.91
@@
@RET@ void
@@ -83,4 +84,5 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
@DESC@
This tries to create CACHEDIR.TAG file at the cache directory registered
to <parameter>config</parameter>.
+@SINCE@ 2.9.91
@@
diff --git a/doc/fccache.sgml b/doc/fccache.sgml
index 251ddf5d..8cc68308 100644
--- a/doc/fccache.sgml
+++ b/doc/fccache.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcCacheDir</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheDir</refname>
@@ -46,11 +47,6 @@
This function returns the directory from which the cache was constructed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCacheCopySet</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheCopySet</refname>
@@ -102,11 +99,6 @@ The returned fontset contains each of the font patterns from
from the cache are read-only.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCacheSubdir</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheSubdir</refname>
@@ -160,11 +153,6 @@ function, <parameter>i</parameter> should range from 0 to
value from FcCacheNumSubdir.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCacheNumSubdir</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheNumSubdir</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
This returns the total number of subdirectories in the cache.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCacheNumFont</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheNumFont</refname>
@@ -269,11 +254,6 @@ This returns the number of fonts which would be included in the return from
FcCacheCopySet.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -302,6 +282,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheClean</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheClean</refname>
@@ -325,10 +306,8 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.91</para>
</refsect1>
</refentry>
<!--
@@ -358,6 +337,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCacheCreateTagFile</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCacheCreateTagFile</refname>
@@ -380,9 +360,7 @@ This tries to create CACHEDIR.TAG file at the cache directory registered
to <parameter>config</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.91</para>
</refsect1>
</refentry>
diff --git a/doc/fccharset.fncs b/doc/fccharset.fncs
index 036870d3..7245a2a0 100644
--- a/doc/fccharset.fncs
+++ b/doc/fccharset.fncs
@@ -60,6 +60,7 @@ running out of memory.
<function>FcCharSetDelChar</function> deletes a single Unicode char from the set,
returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
+@SINCE@ 2.9.0
@@
@RET@ FcCharSet *
@@ -175,9 +176,27 @@ Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>
@TYPE3@ FcChar32 * @ARG3@ next
@PURPOSE@ Start enumerating charset contents
@DESC@
-Builds an array of bits marking the first page of Unicode coverage of
-<parameter>a</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in the
-font.
+Builds an array of bits in <parameter>map</parameter> marking the
+first page of Unicode coverage of <parameter>a</parameter>.
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>. Returns the base code
+point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> contains no pages. As an example, if
+<function>FcCharSetFirstPage</function> returns
+<literal>0x300</literal> and fills <parameter>map</parameter> with
+<literallayout class="monospaced">
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+</literallayout>
+Then the page contains code points <literal>0x300</literal> through
+<literal>0x33f</literal> (the first 64 code points on the page)
+because <parameter>map[0]</parameter> and
+<parameter>map[1]</parameter> both have all their bits set. It also
+contains code points <literal>0x343</literal> (<parameter>0x300 + 32*2
++ (4-1)</parameter>) and <literal>0x35e</literal> (<parameter>0x300 +
+32*2 + (31-1)</parameter>) because <parameter>map[2]</parameter> has
+the 4th and 31st bits set. The code points represented by
+<literal>map[3]</literal> and later are left as an excercise for the
+reader ;).
@@
@RET@ FcChar32
@@ -187,9 +206,15 @@ font.
@TYPE3@ FcChar32 * @ARG3@ next
@PURPOSE@ Continue enumerating charset contents
@DESC@
-Builds an array of bits marking the Unicode coverage of <parameter>a</parameter> for page
-<parameter>*next</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in
-the font.
+Builds an array of bits in <parameter>map</parameter> marking the
+Unicode coverage of <parameter>a</parameter> for page containing
+<parameter>*next</parameter> (see the
+<function>FcCharSetFirstPage</function> description for details).
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>. Returns the base of
+code point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> does not contain
+<parameter>*next</parameter>.
@@
@RET@ FcChar32
diff --git a/doc/fccharset.sgml b/doc/fccharset.sgml
index 4619a003..dd426cbb 100644
--- a/doc/fccharset.sgml
+++ b/doc/fccharset.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcCharSetCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetCreate</refname>
@@ -47,11 +48,6 @@
character set object.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetDestroy</refname>
@@ -103,11 +100,6 @@ Fontconfig version &version;
memory referenced is freed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -136,6 +128,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetAddChar</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetAddChar</refname>
@@ -160,11 +153,6 @@ returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetDelChar</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetDelChar</refname>
@@ -217,10 +206,8 @@ returning FcFalse on failure, either as a result of a constant set or from
running out of memory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.0</para>
</refsect1>
</refentry>
<!--
@@ -250,6 +237,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetCopy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetCopy</refname>
@@ -272,11 +260,6 @@ Makes a copy of <parameter>src</parameter>; note that this may not actually do a
than increment the reference count on <parameter>src</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -305,6 +288,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetEqual</refname>
@@ -328,11 +312,6 @@ Returns whether <parameter>a</parameter> and <parameter>b</parameter>
contain the same set of Unicode chars.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -361,6 +340,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetIntersect</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetIntersect</refname>
@@ -384,11 +364,6 @@ Returns a set including only those chars found in both
<parameter>a</parameter> and <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -417,6 +392,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetUnion</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetUnion</refname>
@@ -439,11 +415,6 @@ Fontconfig version &version;
Returns a set including only those chars found in either <parameter>a</parameter> or <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -472,6 +443,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetSubtract</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetSubtract</refname>
@@ -494,11 +466,6 @@ Fontconfig version &version;
Returns a set including only those chars found in <parameter>a</parameter> but not <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -527,6 +494,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetMerge</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetMerge</refname>
@@ -555,11 +523,6 @@ Returns FcFalse on failure, either when <parameter>a</parameter> is a constant
set or from running out of memory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -588,6 +551,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetHasChar</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetHasChar</refname>
@@ -610,11 +574,6 @@ Fontconfig version &version;
Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -643,6 +602,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetCount</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetCount</refname>
@@ -664,11 +624,6 @@ Fontconfig version &version;
Returns the total number of Unicode chars in <parameter>a</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -697,6 +652,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetIntersectCount</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetIntersectCount</refname>
@@ -719,11 +675,6 @@ Fontconfig version &version;
Returns the number of chars that are in both <parameter>a</parameter> and <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -752,6 +703,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetSubtractCount</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetSubtractCount</refname>
@@ -774,11 +726,6 @@ Fontconfig version &version;
Returns the number of chars that are in <parameter>a</parameter> but not in <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -807,6 +754,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetIsSubset</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetIsSubset</refname>
@@ -829,11 +777,6 @@ Fontconfig version &version;
Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -862,6 +805,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetFirstPage</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetFirstPage</refname>
@@ -882,14 +826,27 @@ Fontconfig version &version;
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
-Builds an array of bits marking the first page of Unicode coverage of
-<parameter>a</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in the
-font.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+Builds an array of bits in <parameter>map</parameter> marking the
+first page of Unicode coverage of <parameter>a</parameter>.
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>. Returns the base code
+point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> contains no pages. As an example, if
+<function>FcCharSetFirstPage</function> returns
+<literal>0x300</literal> and fills <parameter>map</parameter> with
+<literallayout class="monospaced">
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+</literallayout>
+Then the page contains code points <literal>0x300</literal> through
+<literal>0x33f</literal> (the first 64 code points on the page)
+because <parameter>map[0]</parameter> and
+<parameter>map[1]</parameter> both have all their bits set. It also
+contains code points <literal>0x343</literal> (<parameter>0x300 + 32*2
++ (4-1)</parameter>) and <literal>0x35e</literal> (<parameter>0x300 +
+32*2 + (31-1)</parameter>) because <parameter>map[2]</parameter> has
+the 4th and 31st bits set. The code points represented by
+<literal>map[3]</literal> and later are left as an excercise for the
+reader ;).
</para>
</refsect1>
</refentry>
@@ -920,6 +877,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetNextPage</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetNextPage</refname>
@@ -940,14 +898,15 @@ Fontconfig version &version;
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
-Builds an array of bits marking the Unicode coverage of <parameter>a</parameter> for page
-<parameter>*next</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in
-the font.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+Builds an array of bits in <parameter>map</parameter> marking the
+Unicode coverage of <parameter>a</parameter> for page containing
+<parameter>*next</parameter> (see the
+<function>FcCharSetFirstPage</function> description for details).
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>. Returns the base of
+code point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> does not contain
+<parameter>*next</parameter>.
</para>
</refsect1>
</refentry>
@@ -978,6 +937,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetCoverage</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetCoverage</refname>
@@ -1006,11 +966,6 @@ indicates which code points in
coverage.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1039,6 +994,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcCharSetNew</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcCharSetNew</refname>
@@ -1060,9 +1016,4 @@ Fontconfig version &version;
<function>FcCharSetNew</function> is a DEPRECATED alias for FcCharSetCreate.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcconfig.fncs b/doc/fcconfig.fncs
index 10028b46..af328fc7 100644
--- a/doc/fcconfig.fncs
+++ b/doc/fcconfig.fncs
@@ -59,7 +59,8 @@ cause a new configuration to be created for use as current configuration.
@PURPOSE@ Set configuration as default
@DESC@
Sets the current default configuration to <parameter>config</parameter>. Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <parameter>config</parameter> since 2.12.0, returning FcFalse if that call fails.
@@
@RET@ FcConfig *
@@ -218,8 +219,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
@PURPOSE@ Add font file to font database
@DESC@
Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
@@
@RET@ FcBool
@@ -230,8 +232,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
@DESC@
Scans the specified directory for fonts, adding each one found to the
application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
@@
@RET@ void
@@ -371,3 +374,26 @@ and parsed. If 'complain' is FcFalse, no warning will be displayed if
Returns FcFalse if some error occurred while loading the file, either a
parse error, semantic error or allocation failure. Otherwise returns FcTrue.
@@
+
+@RET@ const FcChar8 *
+@FUNC@ FcConfigGetSysRoot
+@TYPE1@ const FcConfig * @ARG1@ config
+@PURPOSE@ Obtain the system root directory
+@DESC@
+Obtrains the system root directory in 'config' if available.
+@SINCE@ 2.10.92
+@@
+
+@RET@ void
+@FUNC@ FcConfigSetSysRoot
+@TYPE1@ FcConfig * @ARG1@ config
+@TYPE2@ const FcChar8 * @ARG2@ sysroot
+@PURPOSE@ Set the system root directory
+@DESC@
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+@SINCE@ 2.10.92
+@@
+
diff --git a/doc/fcconfig.sgml b/doc/fcconfig.sgml
index 4159a798..448c5018 100644
--- a/doc/fcconfig.sgml
+++ b/doc/fcconfig.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcConfigCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigCreate</refname>
@@ -46,11 +47,6 @@
Creates an empty configuration.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigReference</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigReference</refname>
@@ -105,11 +102,6 @@ it increments the reference count before returning and the user is responsible
for destroying the configuration when not needed anymore.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigDestroy</refname>
@@ -162,11 +155,6 @@ Note that calling this function with the return from FcConfigGetCurrent will
cause a new configuration to be created for use as current configuration.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -195,6 +183,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigSetCurrent</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigSetCurrent</refname>
@@ -214,12 +203,8 @@ Fontconfig version &version;
<refsect1><title>Description</title>
<para>
Sets the current default configuration to <parameter>config</parameter>. Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <parameter>config</parameter> since 2.12.0, returning FcFalse if that call fails.
</para>
</refsect1>
</refentry>
@@ -250,6 +235,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetCurrent</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetCurrent</refname>
@@ -271,11 +257,6 @@ Fontconfig version &version;
Returns the current default configuration.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -304,6 +285,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigUptoDate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigUptoDate</refname>
@@ -327,11 +309,6 @@ whether any of them has been modified since the configuration was created.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -360,6 +337,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigHome</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigHome</refname>
@@ -383,11 +361,6 @@ is enabled, and NULL otherwise.
See also <function>FcConfigEnableHome</function>).
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -416,6 +389,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigEnableHome</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigEnableHome</refname>
@@ -441,11 +415,6 @@ FcFalse, then all use of the home directory in these contexts will be
disabled. The previous setting of the value is returned.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -474,6 +443,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigBuildFonts</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigBuildFonts</refname>
@@ -498,11 +468,6 @@ Returns FcFalse if this operation runs out of memory.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -531,6 +496,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetConfigDirs</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetConfigDirs</refname>
@@ -554,11 +520,6 @@ for <parameter>config</parameter>. Does not include any subdirectories.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -587,6 +548,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetFontDirs</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetFontDirs</refname>
@@ -611,11 +573,6 @@ filesystem.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -644,6 +601,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetConfigFiles</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetConfigFiles</refname>
@@ -666,11 +624,6 @@ Returns the list of known configuration files used to generate <parameter>config
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -699,6 +652,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetCache</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetCache</refname>
@@ -721,11 +675,6 @@ With fontconfig no longer using per-user cache files, this function now
simply returns NULL to indicate that no per-user file exists.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -754,6 +703,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetCacheDirs</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetCacheDirs</refname>
@@ -778,11 +728,6 @@ cache file for a font directory.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -811,6 +756,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetFonts</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetFonts</refname>
@@ -836,11 +782,6 @@ not be modified or freed.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -869,6 +810,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetBlanks</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetBlanks</refname>
@@ -894,11 +836,6 @@ FcConfig is alive.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -927,6 +864,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigGetRescanInterval</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigGetRescanInterval</refname>
@@ -952,11 +890,6 @@ An interval setting of zero disables automatic checks.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -985,6 +918,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigSetRescanInterval</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigSetRescanInterval</refname>
@@ -1010,11 +944,6 @@ An interval setting of zero disables automatic checks.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1043,6 +972,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigAppFontAddFile</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigAppFontAddFile</refname>
@@ -1063,13 +993,9 @@ Fontconfig version &version;
<refsect1><title>Description</title>
<para>
Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
</para>
</refsect1>
</refentry>
@@ -1100,6 +1026,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigAppFontAddDir</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigAppFontAddDir</refname>
@@ -1121,13 +1048,9 @@ Fontconfig version &version;
<para>
Scans the specified directory for fonts, adding each one found to the
application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
</para>
</refsect1>
</refentry>
@@ -1158,6 +1081,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigAppFontClear</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigAppFontClear</refname>
@@ -1180,11 +1104,6 @@ Clears the set of application-specific fonts.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1213,6 +1132,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigSubstituteWithPat</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigSubstituteWithPat</refname>
@@ -1242,11 +1162,6 @@ if the substitution cannot be performed (due to allocation failure). Otherwise r
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1275,6 +1190,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigSubstitute</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigSubstitute</refname>
@@ -1300,11 +1216,6 @@ if the substitution cannot be performed (due to allocation failure). Otherwise r
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1333,6 +1244,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontMatch</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontMatch</refname>
@@ -1363,11 +1275,6 @@ pattern. This function should be called only after
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1396,6 +1303,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSort</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSort</refname>
@@ -1434,11 +1342,6 @@ The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
If <parameter>config</parameter> is NULL, the current configuration is used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1467,6 +1370,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontRenderPrepare</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontRenderPrepare</refname>
@@ -1493,11 +1397,6 @@ value from <parameter>pat</parameter> for elements appearing in both. The resul
FcConfigSubstituteWithPat with <parameter>kind</parameter> FcMatchFont and then returned.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1526,6 +1425,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontList</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontList</refname>
@@ -1552,11 +1452,6 @@ If <parameter>config</parameter> is NULL, the default configuration is checked
to be up to date, and used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1585,6 +1480,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigFilename</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigFilename</refname>
@@ -1616,11 +1512,6 @@ directory; the built-in default directory can be overridden with the
FONTCONFIG_PATH environment variable.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1649,6 +1540,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcConfigParseAndLoad</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcConfigParseAndLoad</refname>
@@ -1677,9 +1569,114 @@ Returns FcFalse if some error occurred while loading the file, either a
parse error, semantic error or allocation failure. Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcConfigGetSysRoot">
+ <refmeta>
+ <refentrytitle>FcConfigGetSysRoot</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcConfigGetSysRoot</refname>
+ <refpurpose>Obtain the system root directory</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>const FcChar8 * <function>FcConfigGetSysRoot</function></funcdef>
+ <paramdef>const FcConfig *<parameter>config</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
<para>
-Fontconfig version &version;
+Obtrains the system root directory in 'config' if available.
</para>
</refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.10.92</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcConfigSetSysRoot">
+ <refmeta>
+ <refentrytitle>FcConfigSetSysRoot</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcConfigSetSysRoot</refname>
+ <refpurpose>Set the system root directory</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>void <function>FcConfigSetSysRoot</function></funcdef>
+ <paramdef>FcConfig *<parameter>config</parameter></paramdef>
+ <paramdef>const FcChar8 *<parameter>sysroot</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.10.92</para>
+ </refsect1>
</refentry>
diff --git a/doc/fcconstant.sgml b/doc/fcconstant.sgml
index a562773c..28097a54 100644
--- a/doc/fcconstant.sgml
+++ b/doc/fcconstant.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcNameRegisterConstants</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameRegisterConstants</refname>
@@ -47,11 +48,6 @@
Deprecated. Does nothing. Returns FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameUnregisterConstants</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameUnregisterConstants</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
Deprecated. Does nothing. Returns FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameGetConstant</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameGetConstant</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
Return the FcConstant structure related to symbolic constant <parameter>string</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameConstant</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameConstant</refname>
@@ -212,9 +201,4 @@ Returns whether a symbolic constant with name <parameter>string</parameter> is r
placing the value of the constant in <parameter>result</parameter> if present.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcdircache.fncs b/doc/fcdircache.fncs
index 24dea8bc..faeba292 100644
--- a/doc/fcdircache.fncs
+++ b/doc/fcdircache.fncs
@@ -55,6 +55,17 @@ FcDirCacheRead.
@@
@RET@ FcCache *
+@FUNC@ FcDirCacheRescan
+@TYPE1@ const FcChar8 * @ARG1@ dir
+@TYPE2@ FcConfig * @ARG2@ config
+@PURPOSE@ Re-scan a directory cache
+@DESC@
+Re-scan directories only at <parameter>dir</parameter> and update the cache.
+returns NULL if failed.
+@SINCE@ 2.11.1
+@@
+
+@RET@ FcCache *
@FUNC@ FcDirCacheRead
@TYPE1@ const FcChar8 * @ARG1@ dir
@TYPE2@ FcBool% @ARG2@ force
diff --git a/doc/fcdircache.sgml b/doc/fcdircache.sgml
index b259b10b..154ec41e 100644
--- a/doc/fcdircache.sgml
+++ b/doc/fcdircache.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcDirCacheUnlink</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheUnlink</refname>
@@ -50,11 +51,6 @@ when some internal error occurs (out of memory, etc). Errors actually
unlinking any files are ignored.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -83,6 +79,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheValid</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheValid</refname>
@@ -105,11 +102,6 @@ Returns FcTrue if <parameter>dir</parameter> has an associated valid cache
file, else returns FcFalse
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheLoad</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheLoad</refname>
@@ -164,11 +157,61 @@ exists, returns NULL. The name of the cache file is returned in
FcDirCacheRead.
</para>
</refsect1>
- <refsect1><title>Version</title>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcDirCacheRescan">
+ <refmeta>
+ <refentrytitle>FcDirCacheRescan</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcDirCacheRescan</refname>
+ <refpurpose>Re-scan a directory cache</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcCache * <function>FcDirCacheRescan</function></funcdef>
+ <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
+ <paramdef>FcConfig *<parameter>config</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
<para>
-Fontconfig version &version;
+Re-scan directories only at <parameter>dir</parameter> and update the cache.
+returns NULL if failed.
</para>
</refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.1</para>
+ </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -197,6 +240,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheRead</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheRead</refname>
@@ -223,11 +267,6 @@ will be used. Otherwise, a new cache will be created by scanning the
directory and that returned.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -256,6 +295,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheLoadFile</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheLoadFile</refname>
@@ -280,11 +320,6 @@ This function loads a directory cache from
non-NULL, it will be filled with the results of stat(2) on the cache file.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -313,6 +348,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirCacheUnload</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirCacheUnload</refname>
@@ -335,9 +371,4 @@ This function dereferences <parameter>cache</parameter>. When no other
references to it remain, all memory associated with the cache will be freed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcfile.sgml b/doc/fcfile.sgml
index 617f6901..0703d09a 100644
--- a/doc/fcfile.sgml
+++ b/doc/fcfile.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcFileScan</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFileScan</refname>
@@ -61,11 +62,6 @@ contents of the font file itself. Returns FcFalse if any of the fonts cannot be
added (due to allocation failure). Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -94,6 +90,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFileIsDir</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFileIsDir</refname>
@@ -116,11 +113,6 @@ Returns FcTrue if <parameter>file</parameter> is a directory, otherwise
returns FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -149,6 +141,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirScan</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirScan</refname>
@@ -180,11 +173,6 @@ this function does not create any cache files. Use FcDirCacheRead() if
caching is desired.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -213,6 +201,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDirSave</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDirSave</refname>
@@ -240,9 +229,4 @@ with the fonts in <parameter>set</parameter> and subdirectories in
managed by FcDirCacheLoad and FcDirCacheRead.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcfontset.sgml b/doc/fcfontset.sgml
index b06aa561..bb6cd078 100644
--- a/doc/fcfontset.sgml
+++ b/doc/fcfontset.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcFontSetCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetCreate</refname>
@@ -46,11 +47,6 @@
Creates an empty font set.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetDestroy</refname>
@@ -101,11 +98,6 @@ Destroys a font set. Note that this destroys any referenced patterns as
well.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -134,6 +126,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetAdd</refname>
@@ -158,11 +151,6 @@ being inserted into the set. Returns FcFalse if the pattern cannot be
inserted into the set (due to allocation failure). Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -191,6 +179,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetList</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetList</refname>
@@ -221,11 +210,6 @@ If <parameter>config</parameter> is NULL, the default configuration is checked
to be up to date, and used.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -254,6 +238,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetMatch</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetMatch</refname>
@@ -287,11 +272,6 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
Returns NULL if an error occurs during this process.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -320,6 +300,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetPrint</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetPrint</refname>
@@ -344,11 +325,6 @@ of the output is designed to be of help to users and developers, and may
change at any time.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -377,6 +353,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetSort</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetSort</refname>
@@ -421,11 +398,6 @@ modify these patterns. Instead, they should be passed, along with
The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -454,6 +426,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFontSetSortDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFontSetSortDestroy</refname>
@@ -478,9 +451,4 @@ destroys <parameter>set</parameter> by calling
<function>FcFontSetDestroy</function> directly instead.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcformat.fncs b/doc/fcformat.fncs
index c136e8cf..71b866b8 100644
--- a/doc/fcformat.fncs
+++ b/doc/fcformat.fncs
@@ -305,4 +305,5 @@ For example, the format "%{family|downcase|delete( )}\n" will expand
to the values of the family element in <parameter>pattern</parameter>,
lower-cased and with spaces removed.
+@SINCE@ 2.9.0
@@
diff --git a/doc/fcformat.sgml b/doc/fcformat.sgml
index 4df6e15d..8f7a337f 100644
--- a/doc/fcformat.sgml
+++ b/doc/fcformat.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcPatternFormat</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternFormat</refname>
@@ -321,9 +322,7 @@ to the values of the family element in <parameter>pattern</parameter>,
lower-cased and with spaces removed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.0</para>
</refsect1>
</refentry>
diff --git a/doc/fcfreetype.sgml b/doc/fcfreetype.sgml
index 8a0599dc..12eb4f42 100644
--- a/doc/fcfreetype.sgml
+++ b/doc/fcfreetype.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcFreeTypeCharIndex</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFreeTypeCharIndex</refname>
@@ -52,11 +53,6 @@ sensitive areas; results from this function are intended to be cached by
higher level functions.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -85,6 +81,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFreeTypeCharSet</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFreeTypeCharSet</refname>
@@ -111,11 +108,6 @@ If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
not in 'blanks' are not placed in the returned FcCharSet.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -144,6 +136,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFreeTypeCharSetAndSpacing</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFreeTypeCharSetAndSpacing</refname>
@@ -177,11 +170,6 @@ wide as the other, or FC_PROPORTIONAL where the font has glyphs of many
widths.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -210,6 +198,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFreeTypeQuery</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFreeTypeQuery</refname>
@@ -236,11 +225,6 @@ Constructs a pattern representing the 'id'th font in 'file'. The number
of fonts in 'file' is returned in 'count'.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -269,6 +253,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFreeTypeQueryFace</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFreeTypeQueryFace</refname>
@@ -295,9 +280,4 @@ Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcinit.sgml b/doc/fcinit.sgml
index 49a4c48d..13a65432 100644
--- a/doc/fcinit.sgml
+++ b/doc/fcinit.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcInitLoadConfig</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcInitLoadConfig</refname>
@@ -47,11 +48,6 @@ Loads the default configuration file and returns the resulting configuration.
Does not load any font information.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcInitLoadConfigAndFonts</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcInitLoadConfigAndFonts</refname>
@@ -102,11 +99,6 @@ Loads the default configuration file and builds information about the
available fonts. Returns the resulting configuration.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcInit</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcInit</refname>
@@ -159,11 +152,6 @@ process succeeded or not. If the default configuration has already
been loaded, this routine does nothing and returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcFini</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcFini</refname>
@@ -216,11 +205,6 @@ new call to one of the FcInit functions before any other fontconfig
function may be called.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -249,6 +233,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcGetVersion</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcGetVersion</refname>
@@ -270,11 +255,6 @@ Fontconfig version &version;
Returns the version number of the library.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -303,6 +283,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcInitReinitialize</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcInitReinitialize</refname>
@@ -327,11 +308,6 @@ to configuration file errors, allocation failures or other issues) and leaves th
existing configuration unchanged. Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -360,6 +336,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcInitBringUptoDate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcInitBringUptoDate</refname>
@@ -384,9 +361,4 @@ when any changes are detected. Returns FcFalse if the configuration cannot
be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fclangset.fncs b/doc/fclangset.fncs
index c08d60c7..c7ed83b3 100644
--- a/doc/fclangset.fncs
+++ b/doc/fclangset.fncs
@@ -68,6 +68,7 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
<parameter>lang</parameter> should be of the form Ll-Tt where Ll is a
two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
+@SINCE@ 2.9.0
@@
@RET@ FcLangSet *
@@ -77,6 +78,7 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
@PURPOSE@ Add langsets
@DESC@
Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
+@SINCE@ 2.9.0
@@
@RET@ FcLangSet *
@@ -86,6 +88,7 @@ Returns a set including only those languages found in either <parameter>ls_a</pa
@PURPOSE@ Subtract langsets
@DESC@
Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
+@SINCE@ 2.9.0
@@
@RET@ FcLangResult
@@ -161,6 +164,8 @@ has no matching language, this function returns FcLangDifferentLang.
Returns a string set of the default languages according to the environment variables on the system.
This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then.
If there are no valid values in those environment variables, "en" will be set as fallback.
+@SINCE@ 2.9.91
+@@
@RET@ FcStrSet *
@FUNC@ FcLangSetGetLangs
@@ -184,6 +189,7 @@ Returns a string set of all known languages.
@PURPOSE@ Normalize the language string
@DESC@
Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
+@SINCE@ 2.10.91
@@
@RET@ const FcCharSet *
diff --git a/doc/fclangset.sgml b/doc/fclangset.sgml
index db78822f..a340755b 100644
--- a/doc/fclangset.sgml
+++ b/doc/fclangset.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcLangSetCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetCreate</refname>
@@ -46,11 +47,6 @@
<function>FcLangSetCreate</function> creates a new FcLangSet object.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetDestroy</refname>
@@ -101,11 +98,6 @@ Fontconfig version &version;
all memory associated with it.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -134,6 +126,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetCopy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetCopy</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
populates it with the contents of <parameter>ls</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetAdd</refname>
@@ -214,11 +203,6 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetDel</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetDel</refname>
@@ -272,10 +257,8 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
3166.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.0</para>
</refsect1>
</refentry>
<!--
@@ -305,6 +288,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetUnion</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetUnion</refname>
@@ -327,10 +311,8 @@ Fontconfig version &version;
Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.0</para>
</refsect1>
</refentry>
<!--
@@ -360,6 +342,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetSubtract</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetSubtract</refname>
@@ -382,10 +365,8 @@ Fontconfig version &version;
Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.9.0</para>
</refsect1>
</refentry>
<!--
@@ -415,6 +396,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetCompare</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetCompare</refname>
@@ -442,11 +424,6 @@ function returns FcLangDifferentTerritory. If they share no languages in
common, this function returns FcLangDifferentLang.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -475,6 +452,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetContains</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetContains</refname>
@@ -502,11 +480,6 @@ has exactly the language, or either the language or
<parameter>ls_a</parameter> has no territory.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -535,6 +508,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetEqual</refname>
@@ -558,11 +532,6 @@ Returns FcTrue if and only if <parameter>ls_a</parameter> supports precisely
the same language and territory combinations as <parameter>ls_b</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -591,6 +560,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetHash</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetHash</refname>
@@ -616,11 +586,6 @@ supported by <parameter>ls</parameter>. Any language which equals
value may not be equal.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -649,6 +614,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangSetHasLang</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangSetHasLang</refname>
@@ -677,11 +643,6 @@ function returns FcLangDifferentTerritory. If <parameter>ls</parameter>
has no matching language, this function returns FcLangDifferentLang.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -710,6 +671,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcGetDefaultLangs</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcGetDefaultLangs</refname>
@@ -722,7 +684,7 @@ Fontconfig version &version;
</funcsynopsisinfo>
<funcprototype>
<funcdef>FcStrSet * <function>FcGetDefaultLangs</function></funcdef>
- <paramdef>void<parameter>ls</parameter></paramdef>
+ <paramdef>void<parameter></parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
@@ -733,9 +695,57 @@ This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then
If there are no valid values in those environment variables, "en" will be set as fallback.
</para>
</refsect1>
- <refsect1><title>Version</title>
+ <refsect1><title>Since</title>
+ <para>version 2.9.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcLangSetGetLangs">
+ <refmeta>
+ <refentrytitle>FcLangSetGetLangs</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcLangSetGetLangs</refname>
+ <refpurpose>get the list of languages in the langset</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcStrSet * <function>FcLangSetGetLangs</function></funcdef>
+ <paramdef>const FcLangSet *<parameter>ls</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
<para>
-Fontconfig version &version;
+Returns a string set of all languages in <parameter>langset</parameter>.
</para>
</refsect1>
</refentry>
@@ -766,6 +776,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcGetLangs</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcGetLangs</refname>
@@ -787,11 +798,6 @@ Fontconfig version &version;
Returns a string set of all known languages.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -820,6 +826,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangNormalize</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangNormalize</refname>
@@ -841,10 +848,8 @@ Fontconfig version &version;
Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+ <refsect1><title>Since</title>
+ <para>version 2.10.91</para>
</refsect1>
</refentry>
<!--
@@ -874,6 +879,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcLangGetCharSet</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcLangGetCharSet</refname>
@@ -895,9 +901,4 @@ Fontconfig version &version;
Returns the FcCharMap for a language.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcmatrix.sgml b/doc/fcmatrix.sgml
index a0c7c3bf..65ff64a1 100644
--- a/doc/fcmatrix.sgml
+++ b/doc/fcmatrix.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcMatrixInit</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixInit</refname>
@@ -47,11 +48,6 @@
to the identity matrix.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixCopy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixCopy</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
and copies <parameter>mat</parameter> into it.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixEqual</refname>
@@ -159,11 +152,6 @@ and <parameter>matrix2</parameter> returning FcTrue when they are equal and
FcFalse when they are not.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixMultiply</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixMultiply</refname>
@@ -217,11 +206,6 @@ Fontconfig version &version;
the result in <parameter>result</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -250,6 +234,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixRotate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixRotate</refname>
@@ -280,11 +265,6 @@ matrix:
</programlisting>
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -313,6 +293,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixScale</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixScale</refname>
@@ -343,11 +324,6 @@ the matrix:
</programlisting>
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -376,6 +352,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcMatrixShear</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcMatrixShear</refname>
@@ -406,9 +383,4 @@ the matrix:
</programlisting>
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcobjectset.sgml b/doc/fcobjectset.sgml
index 4ccf94fc..ccc70779 100644
--- a/doc/fcobjectset.sgml
+++ b/doc/fcobjectset.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcObjectSetCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcObjectSetCreate</refname>
@@ -46,11 +47,6 @@
Creates an empty set.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcObjectSetAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcObjectSetAdd</refname>
@@ -102,11 +99,6 @@ Adds a property name to the set. Returns FcFalse if the property name cannot be
inserted into the set (due to allocation failure). Otherwise returns FcTrue.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcObjectSetDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcObjectSetDestroy</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
Destroys an object set.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcObjectSetBuild</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcObjectSetBuild</refname>
@@ -226,9 +215,4 @@ FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
the result in the <parameter>result</parameter> variable directly.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcobjecttype.sgml b/doc/fcobjecttype.sgml
index 3575bbbf..a9de5066 100644
--- a/doc/fcobjecttype.sgml
+++ b/doc/fcobjecttype.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcNameRegisterObjectTypes</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameRegisterObjectTypes</refname>
@@ -47,11 +48,6 @@
Deprecated. Does nothing. Returns FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameUnregisterObjectTypes</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameUnregisterObjectTypes</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
Deprecated. Does nothing. Returns FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameGetObjectType</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameGetObjectType</refname>
@@ -156,9 +149,4 @@ Fontconfig version &version;
Return the object type for the pattern element named <parameter>object</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcpattern.fncs b/doc/fcpattern.fncs
index 1df1c4f6..1049d77a 100644
--- a/doc/fcpattern.fncs
+++ b/doc/fcpattern.fncs
@@ -181,12 +181,21 @@ values added to the list have binding <parameter>weak</parameter> instead of <pa
@TYPE2+++++++@ const char * @ARG2+++++++@ object
@TYPE3+++++++@ const FcLangSet * @ARG3+++++++@ l
+@PROTOTYPE++++++++@
+@RET++++++++@ FcBool
+@FUNC++++++++@ FcPatternAddRange
+@TYPE1++++++++@ FcPattern * @ARG1++++++++@ p
+@TYPE2++++++++@ const char * @ARG2++++++++@ object
+@TYPE3++++++++@ const FcRange * @ARG3++++++++@ r
+
@PURPOSE@ Add a typed value to a pattern
@DESC@
These are all convenience functions that insert objects of the specified
type into the pattern. Use these in preference to FcPatternAdd as they
will provide compile-time typechecking. These all append values to
any existing list of values.
+
+<function>FcPatternAddRange</function> are available since 2.11.91.
@@
@RET@ FcResult
@@ -257,16 +266,24 @@ within the pattern directly. Applications must not free this value.
@FUNC++++++@ FcPatternGetFTFace
@TYPE1++++++@ FcPattern * @ARG1++++++@ p
@TYPE2++++++@ const char * @ARG2++++++@ object
-@TYPE3+++++@ int% @ARG3+++++@ n
-@TYPE3++++++@ FT_Face * @ARG3++++++@ f
+@TYPE3++++++@ int% @ARG3++++++@ n
+@TYPE4++++++@ FT_Face * @ARG4++++++@ f
@PROTOTYPE+++++++@
@RET+++++++@ FcResult
@FUNC+++++++@ FcPatternGetLangSet
@TYPE1+++++++@ FcPattern * @ARG1+++++++@ p
@TYPE2+++++++@ const char * @ARG2+++++++@ object
-@TYPE3+++++@ int% @ARG3+++++@ n
-@TYPE3+++++++@ FcLangSet ** @ARG3+++++++@ l
+@TYPE3+++++++@ int% @ARG3+++++++@ n
+@TYPE4+++++++@ FcLangSet ** @ARG4+++++++@ l
+
+@PROTOTYPE++++++++@
+@RET++++++++@ FcResult
+@FUNC++++++++@ FcPatternGetRange
+@TYPE1++++++++@ FcPattern * @ARG1++++++++@ p
+@TYPE2++++++++@ const char * @ARG2++++++++@ object
+@TYPE3++++++++@ int% @ARG3++++++++@ n
+@TYPE4++++++++@ FcRange ** @ARG4++++++++@ r
@PURPOSE@ Return a typed value from a pattern
@DESC@
@@ -275,6 +292,8 @@ returned data is of the expected type. They return FcResultTypeMismatch if
this is not the case. Note that these (like FcPatternGet) do not make a
copy of any data structure referenced by the return value. Use these
in preference to FcPatternGet to provide compile-time typechecking.
+
+<function>FcPatternGetRange</function> are available since 2.11.91.
@@
@RET@ FcPattern *
diff --git a/doc/fcpattern.sgml b/doc/fcpattern.sgml
index 9f635ebd..7e31ea3c 100644
--- a/doc/fcpattern.sgml
+++ b/doc/fcpattern.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcPatternCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternCreate</refname>
@@ -46,11 +47,6 @@
Creates a pattern with no properties; used to build patterns from scratch.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternDuplicate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternDuplicate</refname>
@@ -102,11 +99,6 @@ Copy a pattern, returning a new pattern that matches
other.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternReference</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternReference</refname>
@@ -157,11 +150,6 @@ Add another reference to <parameter>p</parameter>. Patterns are freed only
when the reference count reaches zero.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -190,6 +178,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternDestroy</refname>
@@ -212,11 +201,6 @@ Decrement the pattern reference count. If all references are gone, destroys
the pattern, in the process destroying all related values.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -245,6 +229,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternEqual</refname>
@@ -267,11 +252,6 @@ Fontconfig version &version;
Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> are exactly alike.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -300,6 +280,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternEqualSubset</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternEqualSubset</refname>
@@ -324,11 +305,6 @@ Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> have exa
objects in <parameter>os</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -357,6 +333,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternFilter</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternFilter</refname>
@@ -382,11 +359,6 @@ If <parameter>os</parameter> is NULL, a duplicate of
<parameter>p</parameter> is returned.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -415,6 +387,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternHash</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternHash</refname>
@@ -437,11 +410,6 @@ Returns a 32-bit number which is the same for any two patterns which are
equal.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -470,6 +438,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternAdd</refname>
@@ -498,11 +467,6 @@ existing list, otherwise it is inserted at the beginning. `value' is saved
retains no reference to any application-supplied data structure.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -531,6 +495,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternAddWeak</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternAddWeak</refname>
@@ -556,11 +521,6 @@ FcPatternAddWeak is essentially the same as FcPatternAdd except that any
values added to the list have binding <parameter>weak</parameter> instead of <parameter>strong</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -589,6 +549,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternAdd-Type</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternAddInteger</refname>
@@ -599,6 +560,7 @@ Fontconfig version &version;
<refname>FcPatternAddBool</refname>
<refname>FcPatternAddFTFace</refname>
<refname>FcPatternAddLangSet</refname>
+ <refname>FcPatternAddRange</refname>
<refpurpose>Add a typed value to a pattern</refpurpose>
</refnamediv>
<refsynopsisdiv>
@@ -654,6 +616,12 @@ Fontconfig version &version;
<paramdef>const char *<parameter>object</parameter></paramdef>
<paramdef>const FcLangSet *<parameter>l</parameter></paramdef>
</funcprototype>
+ <funcprototype>
+ <funcdef>FcBool <function>FcPatternAddRange</function></funcdef>
+ <paramdef>FcPattern *<parameter>p</parameter></paramdef>
+ <paramdef>const char *<parameter>object</parameter></paramdef>
+ <paramdef>const FcRange *<parameter>r</parameter></paramdef>
+ </funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
@@ -662,11 +630,8 @@ These are all convenience functions that insert objects of the specified
type into the pattern. Use these in preference to FcPatternAdd as they
will provide compile-time typechecking. These all append values to
any existing list of values.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+
+<function>FcPatternAddRange</function> are available since 2.11.91.
</para>
</refsect1>
</refentry>
@@ -697,6 +662,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternGet</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternGet</refname>
@@ -724,11 +690,6 @@ The value returned is not a copy, but rather refers to the data stored
within the pattern directly. Applications must not free this value.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -757,6 +718,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternGet-Type</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternGetInteger</refname>
@@ -767,6 +729,7 @@ Fontconfig version &version;
<refname>FcPatternGetBool</refname>
<refname>FcPatternGetFTFace</refname>
<refname>FcPatternGetLangSet</refname>
+ <refname>FcPatternGetRange</refname>
<refpurpose>Return a typed value from a pattern</refpurpose>
</refnamediv>
<refsynopsisdiv>
@@ -821,12 +784,21 @@ Fontconfig version &version;
<paramdef>FcPattern *<parameter>p</parameter></paramdef>
<paramdef>const char *<parameter>object</parameter></paramdef>
<paramdef>int <parameter>n</parameter></paramdef>
+ <paramdef>FT_Face *<parameter>f</parameter></paramdef>
</funcprototype>
<funcprototype>
<funcdef>FcResult <function>FcPatternGetLangSet</function></funcdef>
<paramdef>FcPattern *<parameter>p</parameter></paramdef>
<paramdef>const char *<parameter>object</parameter></paramdef>
- <paramdef>FT_Face *<parameter>f</parameter></paramdef>
+ <paramdef>int <parameter>n</parameter></paramdef>
+ <paramdef>FcLangSet **<parameter>l</parameter></paramdef>
+ </funcprototype>
+ <funcprototype>
+ <funcdef>FcResult <function>FcPatternGetRange</function></funcdef>
+ <paramdef>FcPattern *<parameter>p</parameter></paramdef>
+ <paramdef>const char *<parameter>object</parameter></paramdef>
+ <paramdef>int <parameter>n</parameter></paramdef>
+ <paramdef>FcRange **<parameter>r</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
@@ -837,11 +809,8 @@ returned data is of the expected type. They return FcResultTypeMismatch if
this is not the case. Note that these (like FcPatternGet) do not make a
copy of any data structure referenced by the return value. Use these
in preference to FcPatternGet to provide compile-time typechecking.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+
+<function>FcPatternGetRange</function> are available since 2.11.91.
</para>
</refsect1>
</refentry>
@@ -872,6 +841,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternBuild</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternBuild</refname>
@@ -934,11 +904,6 @@ which returns its result directly in the <parameter>result</parameter>
variable.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -967,6 +932,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternDel</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternDel</refname>
@@ -990,11 +956,6 @@ Deletes all values associated with the property `object', returning
whether the property existed or not.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1023,6 +984,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternRemove</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternRemove</refname>
@@ -1047,11 +1009,6 @@ Removes the value associated with the property `object' at position `id', return
whether the property existed and had a value at that position or not.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1080,6 +1037,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcPatternPrint</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcPatternPrint</refname>
@@ -1103,11 +1061,6 @@ no provision for reparsing data in this format, it's just for diagnostics
and debugging.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1136,6 +1089,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcDefaultSubstitute</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcDefaultSubstitute</refname>
@@ -1169,11 +1123,6 @@ specified point size (default 12), dpi (default 75) and scale (default 1).
</itemizedlist>
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1202,6 +1151,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameParse</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameParse</refname>
@@ -1223,11 +1173,6 @@ Fontconfig version &version;
Converts <parameter>name</parameter> from the standard text format described above into a pattern.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1256,6 +1201,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcNameUnparse</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcNameUnparse</refname>
@@ -1279,9 +1225,4 @@ The return value is not static, but instead refers to newly allocated memory
which should be freed by the caller using free().
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcrange.fncs b/doc/fcrange.fncs
new file mode 100644
index 00000000..ba76f65b
--- /dev/null
+++ b/doc/fcrange.fncs
@@ -0,0 +1,75 @@
+/*
+ * fontconfig/doc/fcrange.fncs
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+@RET@ FcRange *
+@FUNC@ FcRangeCopy
+@TYPE1@ const FcRange * @ARG1@ range
+@PURPOSE@ Copy a range object
+@DESC@
+<function>FcRangeCopy</function> creates a new FcRange object and
+populates it with the contents of <parameter>range</parameter>.
+@SINCE@ 2.11.91
+@@
+
+@RET@ FcRange *
+@FUNC@ FcRangeCreateDouble
+@TYPE1@ double @ARG1@ begin
+@TYPE2@ double @ARG2@ end
+@PURPOSE@ create a range object for double
+@DESC@
+<function>FcRangeCreateDouble</function> creates a new FcRange object with
+double sized value.
+@SINCE@ 2.11.91
+@@
+
+@RET@ FcRange *
+@FUNC@ FcRangeCreateInteger
+@TYPE1@ int @ARG1@ begin
+@TYPE2@ int @ARG2@ end
+@PURPOSE@ create a range object for integer
+@DESC@
+<function>FcRangeCreateInteger</function> creates a new FcRange object with
+integer sized value.
+@SINCE@ 2.11.91
+@@
+
+@RET@ void
+@FUNC@ FcRangeDestroy
+@TYPE1@ FcRange * @ARG1@ range
+@PURPOSE@ destroy a range object
+@DESC@
+<function>FcRangeDestroy</function> destroys a FcRange object, freeing
+all memory associated with it.
+@SINCE@ 2.11.91
+@@
+
+@RET@ FcBool
+@FUNC@ FcRangeGetDouble
+@TYPE1@ const FcRange * @ARG1@ range
+@TYPE2@ double * @ARG2@ begin
+@TYPE3@ double * @ARG3@ end
+@PURPOSE@ Get the range in double
+@DESC@
+Returns in <parameter>begin</parameter> and <parameter>end</parameter> as the range.
+@SINCE@ 2.11.91
+@@
diff --git a/doc/fcrange.sgml b/doc/fcrange.sgml
new file mode 100644
index 00000000..08d6be0b
--- /dev/null
+++ b/doc/fcrange.sgml
@@ -0,0 +1,273 @@
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcRangeCopy">
+ <refmeta>
+ <refentrytitle>FcRangeCopy</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcRangeCopy</refname>
+ <refpurpose>Copy a range object</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcRange * <function>FcRangeCopy</function></funcdef>
+ <paramdef>const FcRange *<parameter>range</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcRangeCopy</function> creates a new FcRange object and
+populates it with the contents of <parameter>range</parameter>.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcRangeCreateDouble">
+ <refmeta>
+ <refentrytitle>FcRangeCreateDouble</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcRangeCreateDouble</refname>
+ <refpurpose>create a range object for double</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcRange * <function>FcRangeCreateDouble</function></funcdef>
+ <paramdef>double<parameter>begin</parameter></paramdef>
+ <paramdef>double<parameter>end</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcRangeCreateDouble</function> creates a new FcRange object with
+double sized value.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcRangeCreateInteger">
+ <refmeta>
+ <refentrytitle>FcRangeCreateInteger</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcRangeCreateInteger</refname>
+ <refpurpose>create a range object for integer</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcRange * <function>FcRangeCreateInteger</function></funcdef>
+ <paramdef>int<parameter>begin</parameter></paramdef>
+ <paramdef>int<parameter>end</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcRangeCreateInteger</function> creates a new FcRange object with
+integer sized value.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcRangeDestroy">
+ <refmeta>
+ <refentrytitle>FcRangeDestroy</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcRangeDestroy</refname>
+ <refpurpose>destroy a range object</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>void <function>FcRangeDestroy</function></funcdef>
+ <paramdef>FcRange *<parameter>range</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcRangeDestroy</function> destroys a FcRange object, freeing
+all memory associated with it.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcRangeGetDouble">
+ <refmeta>
+ <refentrytitle>FcRangeGetDouble</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcRangeGetDouble</refname>
+ <refpurpose>Get the range in double</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>FcBool <function>FcRangeGetDouble</function></funcdef>
+ <paramdef>const FcRange *<parameter>range</parameter></paramdef>
+ <paramdef>double *<parameter>begin</parameter></paramdef>
+ <paramdef>double *<parameter>end</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+Returns in <parameter>begin</parameter> and <parameter>end</parameter> as the range.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
diff --git a/doc/fcstring.sgml b/doc/fcstring.sgml
index 7ed2b255..4b511f4e 100644
--- a/doc/fcstring.sgml
+++ b/doc/fcstring.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcUtf8ToUcs4</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcUtf8ToUcs4</refname>
@@ -51,11 +52,6 @@ char. <parameter>src</parameter> must be at least
<parameter>len</parameter> bytes long.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -84,6 +80,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcUcs4ToUtf8</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcUcs4ToUtf8</refname>
@@ -108,11 +105,6 @@ Converts the Unicode char from <parameter>src</parameter> into
the char.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -141,6 +133,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcUtf8Len</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcUtf8Len</refname>
@@ -170,11 +163,6 @@ counted. The return value indicates whether <parameter>src</parameter> is a
well-formed UTF8 string.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -203,6 +191,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcUtf16ToUcs4</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcUtf16ToUcs4</refname>
@@ -231,11 +220,6 @@ bytes long. Bytes of <parameter>src</parameter> are combined into 16-bit
units according to <parameter>endian</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -264,6 +248,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcUtf16Len</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcUtf16Len</refname>
@@ -296,11 +281,6 @@ indicates whether <parameter>string</parameter> is a well-formed UTF16
string.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -329,6 +309,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcIsLower</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcIsLower</refname>
@@ -351,11 +332,6 @@ This macro checks whether <parameter>c</parameter> is an lower case ASCII
letter.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -384,6 +360,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcIsUpper</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcIsUpper</refname>
@@ -406,11 +383,6 @@ This macro checks whether <parameter>c</parameter> is a upper case ASCII
letter.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -439,6 +411,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcToLower</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcToLower</refname>
@@ -461,11 +434,6 @@ This macro converts upper case ASCII <parameter>c</parameter> to the
equivalent lower case letter.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -494,6 +462,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrCopy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrCopy</refname>
@@ -517,11 +486,6 @@ buffer. Yes, this is <function>strdup</function>, but that function isn't
available on every platform.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -550,6 +514,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrDowncase</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrDowncase</refname>
@@ -572,11 +537,6 @@ Allocates memory, copies <parameter>s</parameter>, converting upper case
letters to lower case and returns the allocated buffer.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -605,6 +565,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrCopyFilename</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrCopyFilename</refname>
@@ -633,11 +594,6 @@ Returns NULL if '~' is the leading character and HOME is unset or disabled
(see <function>FcConfigEnableHome</function>).
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -666,6 +622,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrCmp</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrCmp</refname>
@@ -689,11 +646,6 @@ Returns the usual &lt;0, 0, &gt;0 result of comparing
<parameter>s1</parameter> and <parameter>s2</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -722,6 +674,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrCmpIgnoreCase</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrCmpIgnoreCase</refname>
@@ -746,11 +699,6 @@ Returns the usual &lt;0, 0, &gt;0 result of comparing
case-insensitive for all proper UTF-8 encoded strings.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -779,6 +727,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrStr</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrStr</refname>
@@ -804,11 +753,6 @@ is not present in <parameter>s1</parameter>. This test will operate properly
with UTF8 encoded strings.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -837,6 +781,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrStrIgnoreCase</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrStrIgnoreCase</refname>
@@ -862,11 +807,6 @@ Returns the location of <parameter>s2</parameter> in
This test is case-insensitive for all proper UTF-8 encoded strings.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -895,6 +835,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrPlus</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrPlus</refname>
@@ -919,11 +860,6 @@ This function allocates new storage and places the concatenation of
new string.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -952,6 +888,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrFree</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrFree</refname>
@@ -974,11 +911,6 @@ This is just a wrapper around free(3) which helps track memory usage of
strings within the fontconfig library.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1007,6 +939,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrDirname</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrDirname</refname>
@@ -1030,11 +963,6 @@ is returned in newly allocated storage which should be freed when no longer
needed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -1063,6 +991,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrBasename</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrBasename</refname>
@@ -1086,9 +1015,4 @@ directory names. This is returned in newly allocated storage which should
be freed when no longer needed.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcstrset.fncs b/doc/fcstrset.fncs
index 737347b0..67aa61ac 100644
--- a/doc/fcstrset.fncs
+++ b/doc/fcstrset.fncs
@@ -98,12 +98,21 @@ Destroys <parameter>set</parameter>.
Creates an iterator to list the strings in <parameter>set</parameter>.
@@
+@RET@ void
+@FUNC@ FcStrListFirst
+@TYPE1@ FcStrList * @ARG1@ list
+@PURPOSE@ get first string in iteration
+@DESC@
+Returns the first string in <parameter>list</parameter>.
+@SINCE@ 2.11.0
+@@
+
@RET@ FcChar8 *
@FUNC@ FcStrListNext
@TYPE1@ FcStrList * @ARG1@ list
@PURPOSE@ get next string in iteration
@DESC@
-Returns the next string in <parameter>set</parameter>.
+Returns the next string in <parameter>list</parameter>.
@@
@RET@ void
diff --git a/doc/fcstrset.sgml b/doc/fcstrset.sgml
index 0ff5df9d..c6aa4930 100644
--- a/doc/fcstrset.sgml
+++ b/doc/fcstrset.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcStrSetCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetCreate</refname>
@@ -46,11 +47,6 @@
Create an empty set.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetMember</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetMember</refname>
@@ -102,11 +99,6 @@ Returns whether <parameter>s</parameter> is a member of
<parameter>set</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetEqual</refname>
@@ -159,11 +152,6 @@ strings as <parameter>set_b</parameter>. Ordering of strings within the two
sets is not considered.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetAdd</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetAdd</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
Adds a copy of <parameter>s</parameter> to <parameter>set</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetAddFilename</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetAddFilename</refname>
@@ -271,11 +256,6 @@ is created with FcStrCopyFilename so that leading '~' values are replaced
with the value of the HOME environment variable.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -304,6 +284,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetDel</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetDel</refname>
@@ -327,11 +308,6 @@ Removes <parameter>s</parameter> from <parameter>set</parameter>, returning
FcTrue if <parameter>s</parameter> was a member else FcFalse.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -360,6 +336,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrSetDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrSetDestroy</refname>
@@ -381,11 +358,6 @@ Fontconfig version &version;
Destroys <parameter>set</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -414,6 +386,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrListCreate</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrListCreate</refname>
@@ -435,11 +408,59 @@ Fontconfig version &version;
Creates an iterator to list the strings in <parameter>set</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcStrListFirst">
+ <refmeta>
+ <refentrytitle>FcStrListFirst</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcStrListFirst</refname>
+ <refpurpose>get first string in iteration</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>void <function>FcStrListFirst</function></funcdef>
+ <paramdef>FcStrList *<parameter>list</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
<para>
-Fontconfig version &version;
+Returns the first string in <parameter>list</parameter>.
</para>
</refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.0</para>
+ </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -468,6 +489,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrListNext</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrListNext</refname>
@@ -486,12 +508,7 @@ Fontconfig version &version;
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
-Returns the next string in <parameter>set</parameter>.
- </para>
- </refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
+Returns the next string in <parameter>list</parameter>.
</para>
</refsect1>
</refentry>
@@ -522,6 +539,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcStrListDone</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcStrListDone</refname>
@@ -543,9 +561,4 @@ Fontconfig version &version;
Destroys the enumerator <parameter>list</parameter>.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcvalue.sgml b/doc/fcvalue.sgml
index b8f728bc..51dbbe35 100644
--- a/doc/fcvalue.sgml
+++ b/doc/fcvalue.sgml
@@ -25,6 +25,7 @@
<refmeta>
<refentrytitle>FcValueDestroy</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcValueDestroy</refname>
@@ -47,11 +48,6 @@ Frees any memory referenced by <parameter>v</parameter>. Values of type FcTypeS
FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcValueSave</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcValueSave</refname>
@@ -102,11 +99,6 @@ Returns a copy of <parameter>v</parameter> duplicating any object referenced by
may be safely destroyed without harming the new value.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcValuePrint</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcValuePrint</refname>
@@ -158,11 +151,6 @@ stdout. The format should not be considered part of the library
specification as it may change in the future.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
<!--
fontconfig/doc/func.sgml
@@ -191,6 +179,7 @@ Fontconfig version &version;
<refmeta>
<refentrytitle>FcValueEqual</refentrytitle>
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
<refname>FcValueEqual</refname>
@@ -215,9 +204,4 @@ the two values have to be the same type to be considered equal. Strings are
compared ignoring case.
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
- </refsect1>
</refentry>
diff --git a/doc/fcweight.fncs b/doc/fcweight.fncs
new file mode 100644
index 00000000..2872dd66
--- /dev/null
+++ b/doc/fcweight.fncs
@@ -0,0 +1,47 @@
+/*
+ * fontconfig/doc/fcweight.fncs
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+@RET@ int
+@FUNC@ FcWeightFromOpenType
+@TYPE1@ int @ARG1@ ot_weight
+@PURPOSE@ Convert from OpenType weight values to fontconfig ones
+@DESC@
+<function>FcWeightFromOpenType</function> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers. If input is negative,
+zero, or greater than 1000, returns -1. This function linearly interpolates
+between various FC_WEIGHT_* constants. As such, the returned value does not
+necessarily match any of the predefined constants.
+@SINCE@ 2.11.91
+@@
+
+@RET@ int
+@FUNC@ FcWeightToOpenType
+@TYPE1@ int @ARG1@ ot_weight
+@PURPOSE@ Convert from fontconfig weight values to OpenType ones
+@DESC@
+<function>FcWeightToOpenType</function> is the inverse of
+<function>FcWeightFromOpenType</function>. If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1. Otherwise
+returns a number in the range 1 to 1000.
+@SINCE@ 2.11.91
+@@
diff --git a/doc/fcweight.sgml b/doc/fcweight.sgml
new file mode 100644
index 00000000..a8a235f6
--- /dev/null
+++ b/doc/fcweight.sgml
@@ -0,0 +1,115 @@
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcWeightFromOpenType">
+ <refmeta>
+ <refentrytitle>FcWeightFromOpenType</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcWeightFromOpenType</refname>
+ <refpurpose>Convert from OpenType weight values to fontconfig ones</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>int <function>FcWeightFromOpenType</function></funcdef>
+ <paramdef>int<parameter>ot_weight</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcWeightFromOpenType</function> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers. If input is negative,
+zero, or greater than 1000, returns -1. This function linearly interpolates
+between various FC_WEIGHT_* constants. As such, the returned value does not
+necessarily match any of the predefined constants.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
+<!--
+ fontconfig/doc/func.sgml
+
+ Copyright © 2003 Keith Packard
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of the author(s) not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+ -->
+ <refentry id="FcWeightToOpenType">
+ <refmeta>
+ <refentrytitle>FcWeightToOpenType</refentrytitle>
+ <manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>FcWeightToOpenType</refname>
+ <refpurpose>Convert from fontconfig weight values to OpenType ones</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>int <function>FcWeightToOpenType</function></funcdef>
+ <paramdef>int<parameter>ot_weight</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1><title>Description</title>
+ <para>
+<function>FcWeightToOpenType</function> is the inverse of
+<function>FcWeightFromOpenType</function>. If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1. Otherwise
+returns a number in the range 1 to 1000.
+ </para>
+ </refsect1>
+ <refsect1><title>Since</title>
+ <para>version 2.11.91</para>
+ </refsect1>
+ </refentry>
diff --git a/doc/fontconfig-devel.pdf b/doc/fontconfig-devel.pdf
index aef31d51..79de82c1 100644
--- a/doc/fontconfig-devel.pdf
+++ b/doc/fontconfig-devel.pdf
Binary files differ
diff --git a/doc/fontconfig-devel.sgml b/doc/fontconfig-devel.sgml
index 79cceb1e..0fa4605b 100644
--- a/doc/fontconfig-devel.sgml
+++ b/doc/fontconfig-devel.sgml
@@ -16,9 +16,11 @@
<!ENTITY fcobjectset SYSTEM "fcobjectset.sgml">
<!ENTITY fcobjecttype SYSTEM "fcobjecttype.sgml">
<!ENTITY fcpattern SYSTEM "fcpattern.sgml">
+<!ENTITY fcrange SYSTEM "fcrange.sgml">
<!ENTITY fcstring SYSTEM "fcstring.sgml">
<!ENTITY fcstrset SYSTEM "fcstrset.sgml">
<!ENTITY fcvalue SYSTEM "fcvalue.sgml">
+<!ENTITY fcweight SYSTEM "fcweight.sgml">
<!ENTITY version SYSTEM "version.sgml">
]>
<!--
@@ -170,11 +172,12 @@ convenience for the application's rendering mechanism.
the file
ftface FC_FT_FACE FT_Face Use the specified FreeType
face object
- rasterizer FC_RASTERIZER String Which rasterizer is in use
+ rasterizer FC_RASTERIZER String Which rasterizer is in use (deprecated)
outline FC_OUTLINE Bool Whether the glyphs are outlines
scalable FC_SCALABLE Bool Whether glyphs can be scaled
scale FC_SCALE Double Scale factor for point->pixel
conversions
+ color FC_COLOR Bool Whether any glyphs have color
dpi FC_DPI Double Target dots per inch
rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
vbgr, none - subpixel geometry
@@ -188,11 +191,22 @@ convenience for the application's rendering mechanism.
fontversion FC_FONTVERSION Int Version number of the font
capability FC_CAPABILITY String List of layout capabilities in
the font
+ fontformat FC_FONTFORMAT String String name of the font format
embolden FC_EMBOLDEN Bool Rasterizer should
synthetically embolden the font
+ embeddedbitmap FC_EMBEDDED_BITMAP Bool Use the embedded bitmap instead
+ of the outline
+ decorative FC_DECORATIVE Bool Whether the style is a decorative
+ variant
+ fontfeatures FC_FONT_FEATURES String List of extra feature tags in
+ OpenType to be enabled
namelang FC_NAMELANG String Language name to be used for the
default value of familylang,
stylelang and fullnamelang
+ prgname FC_PRGNAME String Name of the running program
+ hash FC_HASH String SHA256 hash value of the font data
+ with "sha256:" prefix (deprecated)
+ postscriptname FC_POSTSCRIPT_NAME String Font name in PostScript
</programlisting>
</sect2>
</sect1>
@@ -502,6 +516,12 @@ FcMatrix structures hold an affine transformation in matrix form.
</para>
&fcmatrix;
</sect2>
+ <sect2><title>FcRange</title>
+ <para>
+An FcRange holds two variables to indicate a range in between.
+ </para>
+ &fcrange;
+ </sect2>
<sect2><title>FcConfig</title>
<para>
An FcConfig object holds the internal representation of a configuration.
@@ -523,6 +543,12 @@ Provides for application-specified symbolic constants for font names.
</para>
&fcconstant;
</sect2>
+ <sect2><title>FcWeight</title>
+ <para>
+Maps weights to and from OpenType weights.
+ </para>
+ &fcweight;
+ </sect2>
<sect2><title>FcBlanks</title>
<para>
An FcBlanks object holds a list of Unicode chars which are expected to
diff --git a/doc/fontconfig-devel.txt b/doc/fontconfig-devel.txt
index 7a07292e..7150dfe3 100644
--- a/doc/fontconfig-devel.txt
+++ b/doc/fontconfig-devel.txt
@@ -1,443 +1,471 @@
- Fontconfig Developers Reference, Version 2.10.91
+Fontconfig Developers Reference, Version 2.11.93
Copyright © 2002 Keith Packard
- Permission to use, copy, modify, distribute, and sell this software and
- its documentation for any purpose is hereby granted without fee, provided
- that the above copyright notice appear in all copies and that both that
- copyright notice and this permission notice appear in supporting
- documentation, and that the name of the author(s) not be used in
- advertising or publicity pertaining to distribution of the software
- without specific, written prior permission. The authors make no
- representations about the suitability of this software for any purpose. It
- is provided "as is" without express or implied warranty.
-
- THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
- USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-
- -------------------------------------------------------
+ Permission to use, copy, modify, distribute, and sell this
+ software and its documentation for any purpose is hereby
+ granted without fee, provided that the above copyright notice
+ appear in all copies and that both that copyright notice and
+ this permission notice appear in supporting documentation, and
+ that the name of the author(s) not be used in advertising or
+ publicity pertaining to distribution of the software without
+ specific, written prior permission. The authors make no
+ representations about the suitability of this software for any
+ purpose. It is provided "as is" without express or implied
+ warranty.
+
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
+ SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+ AND FITNESS, IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY
+ SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
+ IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+ THIS SOFTWARE.
+ _______________________________________________
Table of Contents
-
- [1]DESCRIPTION
-
- [2]FUNCTIONAL OVERVIEW
-
- [3]Datatypes
-
- [4]FUNCTIONS
+ DESCRIPTION
+ FUNCTIONAL OVERVIEW
+ Datatypes
+ FUNCTIONS
DESCRIPTION
Fontconfig is a library designed to provide system-wide font
configuration, customization and application access.
-
- --------------------------------------------------------------------------
+ __________________________________________________________
FUNCTIONAL OVERVIEW
- Fontconfig contains two essential modules, the configuration module which
- builds an internal configuration from XML files and the matching module
- which accepts font patterns and returns the nearest matching font.
-
- --------------------------------------------------------------------------
-
- FONT CONFIGURATION
-
- The configuration module consists of the FcConfig datatype, libexpat and
- FcConfigParse which walks over an XML tree and amends a configuration with
- data found within. From an external perspective, configuration of the
- library consists of generating a valid XML tree and feeding that to
- FcConfigParse. The only other mechanism provided to applications for
- changing the running configuration is to add fonts and directories to the
- list of application-provided font files.
-
- The intent is to make font configurations relatively static, and shared by
- as many applications as possible. It is hoped that this will lead to more
- stable font selection when passing names from one application to another.
- XML was chosen as a configuration file format because it provides a format
- which is easy for external agents to edit while retaining the correct
+ Fontconfig contains two essential modules, the configuration
+ module which builds an internal configuration from XML files
+ and the matching module which accepts font patterns and returns
+ the nearest matching font.
+ __________________________________________________________
+
+FONT CONFIGURATION
+
+ The configuration module consists of the FcConfig datatype,
+ libexpat and FcConfigParse which walks over an XML tree and
+ amends a configuration with data found within. From an external
+ perspective, configuration of the library consists of
+ generating a valid XML tree and feeding that to FcConfigParse.
+ The only other mechanism provided to applications for changing
+ the running configuration is to add fonts and directories to
+ the list of application-provided font files.
+
+ The intent is to make font configurations relatively static,
+ and shared by as many applications as possible. It is hoped
+ that this will lead to more stable font selection when passing
+ names from one application to another. XML was chosen as a
+ configuration file format because it provides a format which is
+ easy for external agents to edit while retaining the correct
structure and syntax.
- Font configuration is separate from font matching; applications needing to
- do their own matching can access the available fonts from the library and
- perform private matching. The intent is to permit applications to pick and
- choose appropriate functionality from the library instead of forcing them
- to choose between this library and a private configuration mechanism. The
- hope is that this will ensure that configuration of fonts for all
- applications can be centralized in one place. Centralizing font
- configuration will simplify and regularize font installation and
- customization.
-
- --------------------------------------------------------------------------
-
- FONT PROPERTIES
-
- While font patterns may contain essentially any properties, there are some
- well known properties with associated types. Fontconfig uses some of these
- properties for font matching and font completion. Others are provided as a
- convenience for the application's rendering mechanism.
-
+ Font configuration is separate from font matching; applications
+ needing to do their own matching can access the available fonts
+ from the library and perform private matching. The intent is to
+ permit applications to pick and choose appropriate
+ functionality from the library instead of forcing them to
+ choose between this library and a private configuration
+ mechanism. The hope is that this will ensure that configuration
+ of fonts for all applications can be centralized in one place.
+ Centralizing font configuration will simplify and regularize
+ font installation and customization.
+ __________________________________________________________
+
+FONT PROPERTIES
+
+ While font patterns may contain essentially any properties,
+ there are some well known properties with associated types.
+ Fontconfig uses some of these properties for font matching and
+ font completion. Others are provided as a convenience for the
+ application's rendering mechanism.
Property Definitions
Property C Preprocessor Symbol Type Description
----------------------------------------------------
family FC_FAMILY String Font family names
- familylang FC_FAMILYLANG String Language corresponding to
+ familylang FC_FAMILYLANG String Language corresponding
+ to
each family name
- style FC_STYLE String Font style. Overrides weight
+ style FC_STYLE String Font style. Overrides
+weight
and slant
- stylelang FC_STYLELANG String Language corresponding to
+ stylelang FC_STYLELANG String Language corresponding
+ to
each style name
- fullname FC_FULLNAME String Font face full name where
- different from family and
+ fullname FC_FULLNAME String Font face full name wh
+ere
+ different from family
+and
family + style
- fullnamelang FC_FULLNAMELANG String Language corresponding to
+ fullnamelang FC_FULLNAMELANG String Language corresponding
+ to
each fullname
- slant FC_SLANT Int Italic, oblique or roman
- weight FC_WEIGHT Int Light, medium, demibold,
+ slant FC_SLANT Int Italic, oblique or rom
+an
+ weight FC_WEIGHT Int Light, medium, demibol
+d,
bold or black
size FC_SIZE Double Point size
- width FC_WIDTH Int Condensed, normal or expanded
- aspect FC_ASPECT Double Stretches glyphs horizontally
+ width FC_WIDTH Int Condensed, normal or e
+xpanded
+ aspect FC_ASPECT Double Stretches glyphs horiz
+ontally
before hinting
pixelsize FC_PIXEL_SIZE Double Pixel size
- spacing FC_SPACING Int Proportional, dual-width,
+ spacing FC_SPACING Int Proportional, dual-wid
+th,
monospace or charcell
foundry FC_FOUNDRY String Font foundry name
antialias FC_ANTIALIAS Bool Whether glyphs can be
antialiased
- hinting FC_HINTING Bool Whether the rasterizer should
+ hinting FC_HINTING Bool Whether the rasterizer
+ should
use hinting
- hintstyle FC_HINT_STYLE Int Automatic hinting style
+ hintstyle FC_HINT_STYLE Int Automatic hinting styl
+e
verticallayout FC_VERTICAL_LAYOUT Bool Use vertical layout
- autohint FC_AUTOHINT Bool Use autohinter instead of
+ autohint FC_AUTOHINT Bool Use autohinter instead
+ of
normal hinter
- globaladvance FC_GLOBAL_ADVANCE Bool Use font global advance data (deprecated)
- file FC_FILE String The filename holding the font
- index FC_INDEX Int The index of the font within
+ globaladvance FC_GLOBAL_ADVANCE Bool Use font global advanc
+e data (deprecated)
+ file FC_FILE String The filename holding t
+he font
+ index FC_INDEX Int The index of the font
+within
the file
- ftface FC_FT_FACE FT_Face Use the specified FreeType
+ ftface FC_FT_FACE FT_Face Use the specified Free
+Type
face object
- rasterizer FC_RASTERIZER String Which rasterizer is in use
- outline FC_OUTLINE Bool Whether the glyphs are outlines
- scalable FC_SCALABLE Bool Whether glyphs can be scaled
- scale FC_SCALE Double Scale factor for point->pixel
+ rasterizer FC_RASTERIZER String Which rasterizer is in
+ use (deprecated)
+ outline FC_OUTLINE Bool Whether the glyphs are
+ outlines
+ scalable FC_SCALABLE Bool Whether glyphs can be
+scaled
+ scale FC_SCALE Double Scale factor for point
+->pixel
conversions
+ color FC_COLOR Bool Whether any glyphs hav
+e color
dpi FC_DPI Double Target dots per inch
- rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
- vbgr, none - subpixel geometry
+ rgba FC_RGBA Int unknown, rgb, bgr, vrg
+b,
+ vbgr, none - subpixel
+geometry
lcdfilter FC_LCD_FILTER Int Type of LCD filter
- minspace FC_MINSPACE Bool Eliminate leading from line
+ minspace FC_MINSPACE Bool Eliminate leading from
+ line
spacing
- charset FC_CHARSET CharSet Unicode chars encoded by
+ charset FC_CHARSET CharSet Unicode chars encoded
+by
the font
lang FC_LANG LangSet Set of RFC-3066-style
- languages this font supports
- fontversion FC_FONTVERSION Int Version number of the font
- capability FC_CAPABILITY String List of layout capabilities in
+ languages this font su
+pports
+ fontversion FC_FONTVERSION Int Version number of the
+font
+ capability FC_CAPABILITY String List of layout capabil
+ities in
the font
+ fontformat FC_FONTFORMAT String String name of the fon
+t format
embolden FC_EMBOLDEN Bool Rasterizer should
- synthetically embolden the font
- namelang FC_NAMELANG String Language name to be used for the
- default value of familylang,
- stylelang and fullnamelang
-
-
- --------------------------------------------------------------------------
+ synthetically embolden
+ the font
+ embeddedbitmap FC_EMBEDDED_BITMAP Bool Use the embedded bitma
+p instead
+ of the outline
+ decorative FC_DECORATIVE Bool Whether the style is a
+ decorative
+ variant
+ fontfeatures FC_FONT_FEATURES String List of extra feature
+tags in
+ OpenType to be enabled
+ namelang FC_NAMELANG String Language name to be us
+ed for the
+ default value of famil
+ylang,
+ stylelang and fullname
+lang
+ prgname FC_PRGNAME String Name of the running pr
+ogram
+ hash FC_HASH String SHA256 hash value of t
+he font data
+ with "sha256:" prefix
+(deprecated)
+ postscriptname FC_POSTSCRIPT_NAME String Font name in PostScrip
+t
+ __________________________________________________________
Datatypes
- Fontconfig uses abstract data types to hide internal implementation
- details for most data structures. A few structures are exposed where
- appropriate.
+ 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
- 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.
+ __________________________________________________________
- These are primitive data types; the FcChar* types hold precisely the
- number of bits stated (if supported by the C implementation). FcBool holds
- one of two C preprocessor symbols: FcFalse or FcTrue.
+FcMatrix
- --------------------------------------------------------------------------
+ An FcMatrix holds an affine transformation, usually used to
+ reshape glyphs. A small set of matrix operations are provided
+ to manipulate these.
+ typedef struct _FcMatrix {
+ double xx, xy, yx, yy;
+ } FcMatrix;
+ __________________________________________________________
- FcMatrix
+FcCharSet
- An FcMatrix holds an affine transformation, usually used to reshape
- glyphs. A small set of matrix operations are provided to manipulate these.
+ 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.
+ __________________________________________________________
- typedef struct _FcMatrix {
- double xx, xy, yx, yy;
- } FcMatrix;
+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.
+ __________________________________________________________
- --------------------------------------------------------------------------
+FcLangResult
- FcCharSet
+ An FcLangResult is an enumeration used to return the results of
+ comparing two language strings or FcLangSet objects.
+ FcLangEqual means the objects match language and territory.
+ FcLangDifferentTerritory means the objects match in language
+ but differ in territory. FcLangDifferentLang means the objects
+ differ in language.
+ __________________________________________________________
- An 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.
-
- --------------------------------------------------------------------------
-
- 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.
-
- --------------------------------------------------------------------------
-
- FcFileCache
-
- holds the per-user cache information for use while loading the font
- database. This is built automatically for the current configuration when
- that is loaded. Applications must always pass '0' when one is requested.
-
- --------------------------------------------------------------------------
-
- FcConfig
-
- holds a complete configuration of the library; there is one default
- configuration, other can be constructed from XML data structures. All
- public entry points that need global data can take an optional FcConfig*
- argument; passing 0 uses the default configuration. FcConfig objects hold
- two sets of fonts, the first contains those specified by the
- configuration, the second set holds those added by the application at
- run-time. Interfaces that need to reference a particular set use one of
+ __________________________________________________________
+
+FcValue
+
+ An FcValue object holds a single value with one of a number of
+ different types. The 'type' tag indicates which member is
+ valid.
+ typedef struct _FcValue {
+ FcType type;
+ union {
+ const FcChar8 *s;
+ int i;
+ FcBool b;
+ double d;
+ const FcMatrix *m;
+ const FcCharSet *c;
+ void *f;
+ const FcLangSet *l;
+ } u;
+ } FcValue;
+
+ FcValue Members
+
+ Type Union member Datatype
+ --------------------------------
+ FcTypeVoid (none) (none)
+ FcTypeInteger i int
+ FcTypeDouble d double
+ FcTypeString s FcChar8 *
+ FcTypeBool b b
+ FcTypeMatrix m FcMatrix *
+ FcTypeCharSet c FcCharSet *
+ FcTypeFTFace f void * (FT_Face)
+ FcTypeLangSet l FcLangSet *
+ __________________________________________________________
+
+FcPattern
+
+ holds a set of names with associated value lists; each name
+ refers to a property of a font. FcPatterns are used as inputs
+ to the matching code as well as holding information about
+ specific fonts. Each property can hold one or more values;
+ conventionally all of the same type, although the interface
+ doesn't demand that.
+ __________________________________________________________
+
+FcFontSet
+
+ typedef struct _FcFontSet {
+ int nfont;
+ int sfont;
+ FcPattern **fonts;
+ } FcFontSet;
+
+ An FcFontSet contains a list of FcPatterns. Internally
+ fontconfig uses this data structure to hold sets of fonts.
+ Externally, fontconfig returns the results of listing fonts in
+ this format. 'nfont' holds the number of patterns in the
+ 'fonts' array; 'sfont' is used to indicate the size of that
+ array.
+ __________________________________________________________
+
+FcStrSet, FcStrList
+
+ FcStrSet holds a list of strings that can be appended to and
+ enumerated. Its unique characteristic is that the enumeration
+ works even while strings are appended during enumeration.
+ FcStrList is used during enumeration to safely and correctly
+ walk the list of strings even while that list is edited in the
+ middle of enumeration.
+ __________________________________________________________
+
+FcObjectSet
+
+ typedef struct _FcObjectSet {
+ int nobject;
+ int sobject;
+ const char **objects;
+ } FcObjectSet;
+
+ holds a set of names and is used to specify which fields from
+ fonts are placed in the the list of returned patterns when
+ listing fonts.
+ __________________________________________________________
+
+FcObjectType
+
+ typedef struct _FcObjectType {
+ const char *object;
+ FcType type;
+ } FcObjectType;
+
+ marks the type of a pattern element generated when parsing font
+ names. Applications can add new object types so that font names
+ may contain the new elements.
+ __________________________________________________________
+
+FcConstant
+
+ typedef struct _FcConstant {
+ const FcChar8 *name;
+ const char *object;
+ int value;
+ } FcConstant;
+
+ Provides for symbolic constants for new pattern elements. When
+ 'name' is seen in a font name, an 'object' element is created
+ with value 'value'.
+ __________________________________________________________
+
+FcBlanks
+
+ holds a list of Unicode chars which are expected to be blank;
+ unexpectedly blank chars are assumed to be invalid and are
+ elided from the charset associated with the font.
+ __________________________________________________________
+
+FcFileCache
+
+ holds the per-user cache information for use while loading the
+ font database. This is built automatically for the current
+ configuration when that is loaded. Applications must always
+ pass '0' when one is requested.
+ __________________________________________________________
+
+FcConfig
+
+ holds a complete configuration of the library; there is one
+ default configuration, other can be constructed from XML data
+ structures. All public entry points that need global data can
+ take an optional FcConfig* argument; passing 0 uses the default
+ configuration. FcConfig objects hold two sets of fonts, the
+ first contains those specified by the configuration, the second
+ set holds those added by the application at run-time.
+ Interfaces that need to reference a particular set use one of
the FcSetName enumerated values.
-
- --------------------------------------------------------------------------
-
- FcSetName
-
- Specifies one of the two sets of fonts available in a configuration;
- FcSetSystem for those fonts specified in the configuration and
- FcSetApplication which holds fonts provided by the application.
-
- --------------------------------------------------------------------------
-
- FcResult
-
- Used as a return type for functions manipulating FcPattern objects.
-
- FcResult Values
- Result Code Meaning
- -----------------------------------------------------------
- FcResultMatch Object exists with the specified ID
- FcResultNoMatch Object doesn't exist at all
- FcResultTypeMismatch Object exists, but the type doesn't match
- FcResultNoId Object exists, but has fewer values
- than specified
- FcResultOutOfMemory malloc failed
-
-
- --------------------------------------------------------------------------
-
- FcAtomic
-
- Used for locking access to configuration files. Provides a safe way to
- update configuration files.
-
- --------------------------------------------------------------------------
-
- FcCache
-
- Holds information about the fonts contained in a single directory. Normal
- applications need not worry about this as caches for font access are
- automatically managed by the library. Applications dealing with cache
- management may want to use some of these objects in their work, however
- the included 'fc-cache' program generally suffices for all of that.
-
- --------------------------------------------------------------------------
+ __________________________________________________________
+
+FcSetName
+
+ Specifies one of the two sets of fonts available in a
+ configuration; FcSetSystem for those fonts specified in the
+ configuration and FcSetApplication which holds fonts provided
+ by the application.
+ __________________________________________________________
+
+FcResult
+
+ Used as a return type for functions manipulating FcPattern
+ objects.
+ FcResult Values
+ Result Code Meaning
+ -----------------------------------------------------------
+ FcResultMatch Object exists with the specified ID
+ FcResultNoMatch Object doesn't exist at all
+ FcResultTypeMismatch Object exists, but the type doesn't matc
+h
+ FcResultNoId Object exists, but has fewer values
+ than specified
+ FcResultOutOfMemory malloc failed
+ __________________________________________________________
+
+FcAtomic
+
+ Used for locking access to configuration files. Provides a safe
+ way to update configuration files.
+ __________________________________________________________
+
+FcCache
+
+ Holds information about the fonts contained in a single
+ directory. Normal applications need not worry about this as
+ caches for font access are automatically managed by the
+ library. Applications dealing with cache management may want to
+ use some of these objects in their work, however the included
+ 'fc-cache' program generally suffices for all of that.
+ __________________________________________________________
FUNCTIONS
- These are grouped by functionality, often using the main data type being
- manipulated.
-
- --------------------------------------------------------------------------
+ These are grouped by functionality, often using the main data
+ type being manipulated.
+ __________________________________________________________
- Initialization
+Initialization
Table of Contents
+ FcInitLoadConfig -- load configuration
+ FcInitLoadConfigAndFonts -- load configuration and font data
+ FcInit -- initialize fontconfig library
+ FcFini -- finalize fontconfig library
+ FcGetVersion -- library version number
+ FcInitReinitialize -- re-initialize library
+ FcInitBringUptoDate -- reload configuration files if needed
- [5]FcInitLoadConfig -- load configuration
-
- [6]FcInitLoadConfigAndFonts -- load configuration and font data
-
- [7]FcInit -- initialize fontconfig library
-
- [8]FcFini -- finalize fontconfig library
-
- [9]FcGetVersion -- library version number
-
- [10]FcInitReinitialize -- re-initialize library
+ These functions provide some control over how the library is
+ initialized.
- [11]FcInitBringUptoDate -- reload configuration files if needed
-
- These functions provide some control over how the library is initialized.
-
- FcInitLoadConfig
+FcInitLoadConfig
Name
- FcInitLoadConfig -- load configuration
+ FcInitLoadConfig -- load configuration
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcConfig * FcInitLoadConfig(void);
@@ -446,90 +474,71 @@ Description
Loads the default configuration file and returns the resulting
configuration. Does not load any font information.
-Version
-
- Fontconfig version 2.10.91
-
- FcInitLoadConfigAndFonts
+FcInitLoadConfigAndFonts
Name
- FcInitLoadConfigAndFonts -- load configuration and font data
+ FcInitLoadConfigAndFonts -- load configuration and font data
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcConfig * FcInitLoadConfigAndFonts(void);
Description
- Loads the default configuration file and builds information about the
- available fonts. Returns the resulting configuration.
-
-Version
+ Loads the default configuration file and builds information
+ about the available fonts. Returns the resulting configuration.
- Fontconfig version 2.10.91
-
- FcInit
+FcInit
Name
- FcInit -- initialize fontconfig library
+ FcInit -- initialize fontconfig library
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcInit(void);
Description
- Loads the default configuration file and the fonts referenced therein and
- sets the default configuration to that result. Returns whether this
- process succeeded or not. If the default configuration has already been
- loaded, this routine does nothing and returns FcTrue.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ 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);
@@ -537,580 +546,487 @@ Description
Returns the version number of the library.
-Version
-
- Fontconfig version 2.10.91
-
- FcInitReinitialize
+FcInitReinitialize
Name
- FcInitReinitialize -- re-initialize library
+ FcInitReinitialize -- re-initialize library
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcInitReinitialize(void);
Description
- Forces the default configuration file to be reloaded and resets the
- default configuration. Returns FcFalse if the configuration cannot be
- reloaded (due to configuration file errors, allocation failures or other
- issues) and leaves the existing configuration unchanged. Otherwise returns
- FcTrue.
-
-Version
-
- Fontconfig version 2.10.91
+ Forces the default configuration file to be reloaded and resets
+ the default configuration. Returns FcFalse if the configuration
+ cannot be reloaded (due to configuration file errors,
+ allocation failures or other issues) and leaves the existing
+ configuration unchanged. Otherwise returns FcTrue.
- FcInitBringUptoDate
+FcInitBringUptoDate
Name
- FcInitBringUptoDate -- reload configuration files if needed
+ FcInitBringUptoDate -- reload configuration files if needed
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcInitBringUptoDate(void);
Description
- Checks the rescan interval in the default configuration, checking the
- configuration if the interval has passed and reloading the configuration
- if when any changes are detected. Returns FcFalse if the configuration
- cannot be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
-
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
+ Checks the rescan interval in the default configuration,
+ checking the configuration if the interval has passed and
+ reloading the configuration if when any changes are detected.
+ Returns FcFalse if the configuration cannot be reloaded (see
+ FcInitReinitialize). Otherwise returns FcTrue.
+ __________________________________________________________
- FcPattern
+FcPattern
Table of Contents
+ FcPatternCreate -- Create a pattern
+ FcPatternDuplicate -- Copy a pattern
+ FcPatternReference -- Increment pattern reference count
+ FcPatternDestroy -- Destroy a pattern
+ FcPatternEqual -- Compare patterns
+ FcPatternEqualSubset -- Compare portions of patterns
+ FcPatternFilter -- Filter the objects of pattern
+ FcPatternHash -- Compute a pattern hash value
+ FcPatternAdd -- Add a value to a pattern
+ FcPatternAddWeak -- Add a value to a pattern with weak binding
+ FcPatternAdd-Type -- Add a typed value to a pattern
+ FcPatternGet -- Return a value from a pattern
+ FcPatternGet-Type -- Return a typed value from a pattern
+ FcPatternBuild -- Create patterns from arguments
+ FcPatternDel -- Delete a property from a pattern
+ FcPatternRemove -- Remove one object of the specified type from
+ the pattern
- [12]FcPatternCreate -- Create a pattern
-
- [13]FcPatternDuplicate -- Copy a pattern
-
- [14]FcPatternReference -- Increment pattern reference count
-
- [15]FcPatternDestroy -- Destroy a pattern
+ FcPatternPrint -- Print a pattern for debugging
+ FcDefaultSubstitute -- Perform default substitutions in a
+ pattern
- [16]FcPatternEqual -- Compare patterns
+ FcNameParse -- Parse a pattern string
+ FcNameUnparse -- Convert a pattern back into a string that can
+ be parsed
- [17]FcPatternEqualSubset -- Compare portions of patterns
+ FcPatternFormat -- Format a pattern into a string according to
+ a format specifier
- [18]FcPatternFilter -- Filter the objects of 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.
- [19]FcPatternHash -- Compute a pattern hash value
-
- [20]FcPatternAdd -- Add a value to a pattern
-
- [21]FcPatternAddWeak -- Add a value to a pattern with weak binding
-
- [22]FcPatternAdd-Type -- Add a typed value to a pattern
-
- [23]FcPatternGet -- Return a value from a pattern
-
- [24]FcPatternGet-Type -- Return a typed value from a pattern
-
- [25]FcPatternBuild -- Create patterns from arguments
-
- [26]FcPatternDel -- Delete a property from a pattern
-
- [27]FcPatternRemove -- Remove one object of the specified type from the
- pattern
-
- [28]FcPatternPrint -- Print a pattern for debugging
-
- [29]FcDefaultSubstitute -- Perform default substitutions in a pattern
-
- [30]FcNameParse -- Parse a pattern string
-
- [31]FcNameUnparse -- Convert a pattern back into a string that can be
- parsed
-
- [32]FcPatternFormat -- Format a pattern into a string according to a
- format specifier
-
- An FcPattern is an opaque type that holds both patterns to match against
- the available fonts, as well as the information about each font.
-
- FcPatternCreate
+FcPatternCreate
Name
- FcPatternCreate -- Create a pattern
+ FcPatternCreate -- Create a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcPattern * FcPatternCreate(void);
Description
- Creates a pattern with no properties; used to build patterns from scratch.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
+ Add another reference to p. Patterns are freed only when the
+ reference count reaches zero.
- Fontconfig version 2.10.91
-
- FcPatternDestroy
+FcPatternDestroy
Name
- FcPatternDestroy -- Destroy a pattern
+ FcPatternDestroy -- Destroy a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcPatternDestroy(FcPattern *p);
Description
- Decrement the pattern reference count. If all references are gone,
- destroys the pattern, in the process destroying all related values.
+ Decrement the pattern reference count. If all references are
+ gone, destroys the pattern, in the process destroying all
+ related values.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternEqual
+FcPatternEqual
Name
- FcPatternEqual -- Compare patterns
+ FcPatternEqual -- Compare patterns
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcPatternEqual(const FcPattern *pa, const FcPattern *pb);
+ FcBool FcPatternEqual(const FcPattern *pa, const FcPattern
+ *pb);
Description
Returns whether pa and pb are exactly alike.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternEqualSubset
+FcPatternEqualSubset
Name
- FcPatternEqualSubset -- Compare portions of patterns
+ FcPatternEqualSubset -- Compare portions of patterns
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcPatternEqualSubset(const FcPattern *pa, const FcPattern *pb,
- const FcObjectSet *os);
+ FcBool FcPatternEqualSubset(const FcPattern *pa, const
+ FcPattern *pb, const FcObjectSet *os);
Description
- Returns whether pa and pb have exactly the same values for all of the
- objects in os.
-
-Version
+ Returns whether pa and pb have exactly the same values for all
+ of the objects in os.
- Fontconfig version 2.10.91
-
- FcPatternFilter
+FcPatternFilter
Name
- FcPatternFilter -- Filter the objects of pattern
+ FcPatternFilter -- Filter the objects of pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcPattern * FcPatternFilter(FcPattern *p, const FcObjectSet *);
Description
- Returns a new pattern that only has those objects from p that are in os.
- If os is NULL, a duplicate of p is returned.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
+ Returns a 32-bit number which is the same for any two patterns
+ which are equal.
- Fontconfig version 2.10.91
-
- FcPatternAdd
+FcPatternAdd
Name
- FcPatternAdd -- Add a value to a pattern
+ FcPatternAdd -- Add a value to a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcPatternAdd(FcPattern *p, const char *object, FcValue value,
- FcBool append);
+ FcBool FcPatternAdd(FcPattern *p, const char *object, FcValue
+ value, FcBool append);
Description
- Adds a single value to the list of values associated with the property
- named `object. If `append is FcTrue, the value is added at the end of any
- existing list, otherwise it is inserted at the beginning. `value' is saved
- (with FcValueSave) when inserted into the pattern so that the library
- retains no reference to any application-supplied data structure.
+ Adds a single value to the list of values associated with the
+ property named `object. If `append is FcTrue, the value is
+ added at the end of any existing list, otherwise it is inserted
+ at the beginning. `value' is saved (with FcValueSave) when
+ inserted into the pattern so that the library retains no
+ reference to any application-supplied data structure.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternAddWeak
+FcPatternAddWeak
Name
- FcPatternAddWeak -- Add a value to a pattern with weak binding
+ FcPatternAddWeak -- Add a value to a pattern with weak binding
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcPatternAddWeak(FcPattern *p, const char *object, FcValue value,
- FcBool append);
+ FcBool FcPatternAddWeak(FcPattern *p, const char *object,
+ FcValue value, FcBool append);
Description
- FcPatternAddWeak is essentially the same as FcPatternAdd except that any
- values added to the list have binding weak instead of strong.
+ FcPatternAddWeak is essentially the same as FcPatternAdd except
+ that any values added to the list have binding weak instead of
+ strong.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternAdd-Type
+FcPatternAdd-Type
Name
FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString,
FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool,
- FcPatternAddFTFace, FcPatternAddLangSet -- Add a typed value to a pattern
+ FcPatternAddFTFace, FcPatternAddLangSet,
+ FcPatternAddRange -- Add a typed value to a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
+ FcBool FcPatternAddInteger(FcPattern *p, const char *object,
+ int i);
- FcBool FcPatternAddInteger(FcPattern *p, const char *object, int i);
+ FcBool FcPatternAddDouble(FcPattern *p, const char *object,
+ double d);
- FcBool FcPatternAddDouble(FcPattern *p, const char *object, double d);
+ FcBool FcPatternAddString(FcPattern *p, const char *object,
+ const FcChar8 *s);
- FcBool FcPatternAddString(FcPattern *p, const char *object, const FcChar8
- *s);
+ FcBool FcPatternAddMatrix(FcPattern *p, const char *object,
+ const FcMatrix *m);
- FcBool FcPatternAddMatrix(FcPattern *p, const char *object, const FcMatrix
- *m);
+ FcBool FcPatternAddCharSet(FcPattern *p, const char *object,
+ const FcCharSet *c);
- FcBool FcPatternAddCharSet(FcPattern *p, const char *object, const
- FcCharSet *c);
+ FcBool FcPatternAddBool(FcPattern *p, const char *object,
+ FcBool b);
- FcBool FcPatternAddBool(FcPattern *p, const char *object, FcBool b);
+ FcBool FcPatternAddFTFace(FcPattern *p, const char *object,
+ const FT_Facef);
- FcBool FcPatternAddFTFace(FcPattern *p, const char *object, const
- FT_Facef);
+ FcBool FcPatternAddLangSet(FcPattern *p, const char *object,
+ const FcLangSet *l);
- FcBool FcPatternAddLangSet(FcPattern *p, const char *object, const
- FcLangSet *l);
+ FcBool FcPatternAddRange(FcPattern *p, const char *object,
+ const FcRange *r);
Description
- These are all convenience functions that insert objects of the specified
- type into the pattern. Use these in preference to FcPatternAdd as they
- will provide compile-time typechecking. These all append values to any
- existing list of values.
-
-Version
-
- Fontconfig version 2.10.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.
- FcPatternGet
+FcPatternGet
Name
- FcPatternGet -- Return a value from a pattern
+ FcPatternGet -- Return a value from a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcResult FcPatternGet(FcPattern *p, const char *object, int id, FcValue
- *v);
+ FcResult FcPatternGet(FcPattern *p, const char *object, int id,
+ FcValue *v);
Description
- Returns in v the id'th value associated with the property object. The
- value returned is not a copy, but rather refers to the data stored within
- the pattern directly. Applications must not free this value.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns in v the id'th value associated with the property
+ object. The value returned is not a copy, but rather refers to
+ the data stored within the pattern directly. Applications must
+ not free this value.
- FcPatternGet-Type
+FcPatternGet-Type
Name
FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString,
FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool,
- FcPatternGetFTFace, FcPatternGetLangSet -- Return a typed value from a
- pattern
+ FcPatternGetFTFace, FcPatternGetLangSet,
+ FcPatternGetRange -- Return a typed value from a pattern
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
+ FcResult FcPatternGetInteger(FcPattern *p, const char *object,
+ int n, int *i);
- FcResult FcPatternGetInteger(FcPattern *p, const char *object, int n, int
- *i);
+ FcResult FcPatternGetDouble(FcPattern *p, const char *object,
+ int n, double *d);
- FcResult FcPatternGetDouble(FcPattern *p, const char *object, int n,
- double *d);
+ FcResult FcPatternGetString(FcPattern *p, const char *object,
+ int n, FcChar8 **s);
- FcResult FcPatternGetString(FcPattern *p, const char *object, int n,
- FcChar8 **s);
+ FcResult FcPatternGetMatrix(FcPattern *p, const char *object,
+ int n, FcMatrix **s);
- FcResult FcPatternGetMatrix(FcPattern *p, const char *object, int n,
- FcMatrix **s);
+ FcResult FcPatternGetCharSet(FcPattern *p, const char *object,
+ int n, FcCharSet **c);
- FcResult FcPatternGetCharSet(FcPattern *p, const char *object, int n,
- FcCharSet **c);
+ FcResult FcPatternGetBool(FcPattern *p, const char *object, int
+ n, FcBool *b);
- FcResult FcPatternGetBool(FcPattern *p, const char *object, int n, FcBool
- *b);
+ FcResult FcPatternGetFTFace(FcPattern *p, const char *object,
+ int n, FT_Face *f);
- FcResult FcPatternGetFTFace(FcPattern *p, const char *object, int n);
+ FcResult FcPatternGetLangSet(FcPattern *p, const char *object,
+ int n, FcLangSet **l);
- FcResult FcPatternGetLangSet(FcPattern *p, const char *object, FT_Face
- *f);
+ FcResult FcPatternGetRange(FcPattern *p, const char *object,
+ int n, FcRange **r);
Description
- These are convenience functions that call FcPatternGet and verify that the
- returned data is of the expected type. They return FcResultTypeMismatch if
- this is not the case. Note that these (like FcPatternGet) do not make a
- copy of any data structure referenced by the return value. Use these in
- preference to FcPatternGet to provide compile-time typechecking.
-
-Version
-
- Fontconfig version 2.10.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:
-
-  1. Object name, a string describing the property to be added.
-
-  2. Object type, one of the FcType enumerated values
+ Builds a pattern using a list of objects, types and values.
+ Each value to be entered in the pattern is specified with three
+ arguments:
-  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.
+ 1. Object name, a string describing the property to be added.
+ 2. Object type, one of the FcType enumerated values
+ 3. Value, not an FcValue, but the raw type as passed to any of
+ the FcPatternAdd<type> functions. Must match the type of
+ the second argument.
- The argument list is terminated by a null object name, no object type nor
- value need be passed for this. The values are added to `pattern', if
- `pattern' is null, a new pattern is created. In either case, the pattern
- is returned. Example
+ 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);
- 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.
- 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.
-
-Version
-
- Fontconfig version 2.10.91
-
- 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.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternRemove
+FcPatternRemove
Name
- FcPatternRemove -- Remove one object of the specified type from the
- pattern
+ FcPatternRemove -- Remove one object of the specified type from
+ the pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcPatternRemove(FcPattern *p, const char *object, int id);
+ FcBool FcPatternRemove(FcPattern *p, const char *object, int
+ id);
Description
- Removes the value associated with the property `object' at position `id',
- returning whether the property existed and had a value at that position or
- not.
+ Removes the value associated with the property `object' at
+ position `id', returning whether the property existed and had a
+ value at that position or not.
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternPrint
+FcPatternPrint
Name
- FcPatternPrint -- Print a pattern for debugging
+ FcPatternPrint -- Print a pattern for debugging
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcPatternPrint(const FcPattern *p);
Description
- Prints an easily readable version of the pattern to stdout. There is no
- provision for reparsing data in this format, it's just for diagnostics and
- debugging.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcDefaultSubstitute
+FcDefaultSubstitute
Name
- FcDefaultSubstitute -- Perform default substitutions in a pattern
+ FcDefaultSubstitute -- Perform default substitutions in a
+ pattern
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcDefaultSubstitute(FcPattern *pattern);
@@ -1118,309 +1034,300 @@ Description
Supplies default values for underspecified font patterns:
- * Patterns without a specified style or weight are set to Medium
+ * Patterns without a specified style or 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 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).
-
-Version
-
- Fontconfig version 2.10.91
-
- FcNameParse
+FcNameParse
Name
- FcNameParse -- Parse a pattern string
+ FcNameParse -- Parse a pattern string
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcPattern * FcNameParse(const FcChar8 *name);
Description
- Converts name from the standard text format described above into a
- pattern.
-
-Version
-
- Fontconfig version 2.10.91
+ 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().
-
-Version
-
- Fontconfig version 2.10.91
-
- FcPatternFormat
-
-Name
-
- FcPatternFormat -- Format a pattern into a string according to a format
- specifier
-
-Synopsis
-
- #include <fontconfig/fontconfig.h>
-
-
- FcChar8 * FcPatternFormat(FcPattern *pat, const FcChar8 *format);
-
-Description
-
- Converts given pattern pat into text described by the format specifier
- format. The return value refers to newly allocated memory which should be
- freed by the caller using free(), or NULL if format is invalid.
-
- The format is loosely modeled after printf-style format string. The
- format string is composed of zero or more directives: ordinary characters
- (not "%"), which are copied unchanged to the output stream; and tags which
- are interpreted to construct text from the pattern in a variety of ways
- (explained below). Special characters can be escaped using backslash.
- C-string style special characters like \n and \r are also supported (this
- is useful when the format string is not a C string literal). It is
- advisable to always escape curly braces that are meant to be copied to the
- output as ordinary characters.
-
- Each tag is introduced by the character "%", followed by an optional
- minimum field width, followed by tag contents in curly braces ({}). If the
- minimum field width value is provided the tag will be expanded and the
- result padded to achieve the minimum width. If the minimum field width is
- positive, the padding will right-align the text. Negative field width will
- left-align. The rest of this section describes various supported tag
- contents and their expansion.
-
- A simple tag is one where the content is an identifier. When simple tags
- are expanded, the named identifier will be looked up in pattern and the
- resulting list of values returned, joined together using comma. For
- example, to print the family name and style of the pattern, use the format
- "%{family} %{style}\n". To extend the family column to forty characters
- use "%-40{family}%{style}\n".
-
- Simple tags expand to list of all values for an element. To only choose
- one of the values, one can index using the syntax "%{elt[idx]}". For
- example, to get the first family name only, use "%{family[0]}".
-
- If a simple tag ends with "=" and the element is found in the pattern,
- the name of the element followed by "=" will be output before the list of
- values. For example, "%{weight=}" may expand to the string "weight=80". Or
- to the empty string if pattern does not have weight set.
-
- If a simple tag starts with ":" and the element is found in the pattern,
- ":" will be printed first. For example, combining this with the =, the
- format "%{:weight=}" may expand to ":weight=80" or to the empty string if
- pattern does not have weight set.
-
- If a simple tag contains the string ":-", the rest of the the tag
- contents will be used as a default string. The default string is output if
- the element is not found in the pattern. For example, the format
- "%{:weight=:-123}" may expand to ":weight=80" or to the string
- ":weight=123" if pattern does not have weight set.
-
- A count tag is one that starts with the character "#" followed by an
- element name, and expands to the number of values for the element in the
- pattern. For example, "%{#family}" expands to the number of family names
- pattern has set, which may be zero.
-
- A sub-expression tag is one that expands a sub-expression. The tag
- contents are the sub-expression to expand placed inside another set of
- curly braces. Sub-expression tags are useful for aligning an entire
- sub-expression, or to apply converters (explained later) to the entire
- sub-expression output. For example, the format "%40{{%{family} %{style}}}"
- expands the sub-expression to construct the family name followed by the
- style, then takes the entire string and pads it on the left to be at least
- forty characters.
-
- A filter-out tag is one starting with the character "-" followed by a
- comma-separated list of element names, followed by a sub-expression
- enclosed in curly braces. The sub-expression will be expanded but with a
- pattern that has the listed elements removed from it. For example, the
- format "%{-size,pixelsize{sub-expr}}" will expand "sub-expr" with pattern
- sans the size and pixelsize elements.
-
- A filter-in tag is one starting with the character "+" followed by a
- comma-separated list of element names, followed by a sub-expression
- enclosed in curly braces. The sub-expression will be expanded but with a
- pattern that only has the listed elements from the surrounding pattern.
- For example, the format "%{+family,familylang{sub-expr}}" will expand
- "sub-expr" with a sub-pattern consisting only the family and family lang
- elements of pattern.
-
- A conditional tag is one starting with the character "?" followed by a
- comma-separated list of element conditions, followed by two sub-expression
- enclosed in curly braces. An element condition can be an element name, in
- which case it tests whether the element is defined in pattern, or the
- character "!" followed by an element name, in which case the test is
- negated. The conditional passes if all the element conditions pass. The
- tag expands the first sub-expression if the conditional passes, and
- expands the second sub-expression otherwise. For example, the format
- "%{?size,dpi,!pixelsize{pass}{fail}}" will expand to "pass" if pattern has
- size and dpi elements but no pixelsize element, and to "fail" otherwise.
-
- An enumerate tag is one starting with the string "[]" followed by a
- comma-separated list of element names, followed by a sub-expression
- enclosed in curly braces. The list of values for the named elements are
- walked in parallel and the sub-expression expanded each time with a
- pattern just having a single value for those elements, starting from the
- first value and continuing as long as any of those elements has a value.
+ Converts the given pattern into the standard text format
+ described above. The return value is not static, but instead
+ refers to newly allocated memory which should be freed by the
+ caller using free().
+
+FcPatternFormat
+
+Name
+
+ FcPatternFormat -- Format a pattern into a string according to
+ a format specifier
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+ FcChar8 * FcPatternFormat(FcPattern *pat, const FcChar8
+ *format);
+
+Description
+
+ Converts given pattern pat into text described by the format
+ specifier format. The return value refers to newly allocated
+ memory which should be freed by the caller using free(), or
+ NULL if format is invalid.
+
+ The format is loosely modeled after printf-style format string.
+ The format string is composed of zero or more directives:
+ ordinary characters (not "%"), which are copied unchanged to
+ the output stream; and tags which are interpreted to construct
+ text from the pattern in a variety of ways (explained below).
+ Special characters can be escaped using backslash. C-string
+ style special characters like \n and \r are also supported
+ (this is useful when the format string is not a C string
+ literal). It is advisable to always escape curly braces that
+ are meant to be copied to the output as ordinary characters.
+
+ Each tag is introduced by the character "%", followed by an
+ optional minimum field width, followed by tag contents in curly
+ braces ({}). If the minimum field width value is provided the
+ tag will be expanded and the result padded to achieve the
+ minimum width. If the minimum field width is positive, the
+ padding will right-align the text. Negative field width will
+ left-align. The rest of this section describes various
+ supported tag contents and their expansion.
+
+ A simple tag is one where the content is an identifier. When
+ simple tags are expanded, the named identifier will be looked
+ up in pattern and the resulting list of values returned, joined
+ together using comma. For example, to print the family name and
+ style of the pattern, use the format "%{family} %{style}\n". To
+ extend the family column to forty characters use
+ "%-40{family}%{style}\n".
+
+ Simple tags expand to list of all values for an element. To
+ only choose one of the values, one can index using the syntax
+ "%{elt[idx]}". For example, to get the first family name only,
+ use "%{family[0]}".
+
+ If a simple tag ends with "=" and the element is found in the
+ pattern, the name of the element followed by "=" will be output
+ before the list of values. For example, "%{weight=}" may expand
+ to the string "weight=80". Or to the empty string if pattern
+ does not have weight set.
+
+ If a simple tag starts with ":" and the element is found in the
+ pattern, ":" will be printed first. For example, combining this
+ with the =, the format "%{:weight=}" may expand to ":weight=80"
+ or to the empty string if pattern does not have weight set.
+
+ If a simple tag contains the string ":-", the rest of the the
+ tag contents will be used as a default string. The default
+ string is output if the element is not found in the pattern.
+ For example, the format "%{:weight=:-123}" may expand to
+ ":weight=80" or to the string ":weight=123" if pattern does not
+ have weight set.
+
+ A count tag is one that starts with the character "#" followed
+ by an element name, and expands to the number of values for the
+ element in the pattern. For example, "%{#family}" expands to
+ the number of family names pattern has set, which may be zero.
+
+ A sub-expression tag is one that expands a sub-expression. The
+ tag contents are the sub-expression to expand placed inside
+ another set of curly braces. Sub-expression tags are useful for
+ aligning an entire sub-expression, or to apply converters
+ (explained later) to the entire sub-expression output. For
+ example, the format "%40{{%{family} %{style}}}" expands the
+ sub-expression to construct the family name followed by the
+ style, then takes the entire string and pads it on the left to
+ be at least forty characters.
+
+ A filter-out tag is one starting with the character "-"
+ followed by a comma-separated list of element names, followed
+ by a sub-expression enclosed in curly braces. The
+ sub-expression will be expanded but with a pattern that has the
+ listed elements removed from it. For example, the format
+ "%{-size,pixelsize{sub-expr}}" will expand "sub-expr" with
+ pattern sans the size and pixelsize elements.
+
+ A filter-in tag is one starting with the character "+" followed
+ by a comma-separated list of element names, followed by a
+ sub-expression enclosed in curly braces. The sub-expression
+ will be expanded but with a pattern that only has the listed
+ elements from the surrounding pattern. For example, the format
+ "%{+family,familylang{sub-expr}}" will expand "sub-expr" with a
+ sub-pattern consisting only the family and family lang elements
+ of pattern.
+
+ A conditional tag is one starting with the character "?"
+ followed by a comma-separated list of element conditions,
+ followed by two sub-expression enclosed in curly braces. An
+ element condition can be an element name, in which case it
+ tests whether the element is defined in pattern, or the
+ character "!" followed by an element name, in which case the
+ test is negated. The conditional passes if all the element
+ conditions pass. The tag expands the first sub-expression if
+ the conditional passes, and expands the second sub-expression
+ otherwise. For example, the format
+ "%{?size,dpi,!pixelsize{pass}{fail}}" will expand to "pass" if
+ pattern has size and dpi elements but no pixelsize element, and
+ to "fail" otherwise.
+
+ An enumerate tag is one starting with the string "[]" followed
+ by a comma-separated list of element names, followed by a
+ sub-expression enclosed in curly braces. The list of values for
+ the named elements are walked in parallel and the
+ sub-expression expanded each time with a pattern just having a
+ single value for those elements, starting from the first value
+ and continuing as long as any of those elements has a value.
For example, the format "%{[]family,familylang{%{family}
- (%{familylang})\n}}" will expand the pattern "%{family} (%{familylang})\n"
- with a pattern having only the first value of the family and familylang
- elements, then expands it with the second values, then the third, etc.
+ (%{familylang})\n}}" will expand the pattern "%{family}
+ (%{familylang})\n" with a pattern having only the first value
+ of the family and familylang elements, then expands it with the
+ second values, then the third, etc.
- As a special case, if an enumerate tag has only one element, and that
- element has only one value in the pattern, and that value is of type
- FcLangSet, the individual languages in the language set are enumerated.
+ As a special case, if an enumerate tag has only one element,
+ and that element has only one value in the pattern, and that
+ value is of type FcLangSet, the individual languages in the
+ language set are enumerated.
- A builtin tag is one starting with the character "=" followed by a
- builtin name. The following builtins are defined:
+ A builtin tag is one starting with the character "=" followed
+ by a builtin name. The following builtins are defined:
unparse
-
- Expands to the result of calling FcNameUnparse() on the pattern.
+ Expands to the result of calling FcNameUnparse() on the
+ pattern.
fcmatch
-
- Expands to the output of the default output format of the fc-match
- command on the pattern, without the final newline.
+ Expands to the output of the default output format of
+ the fc-match command on the pattern, without the final
+ newline.
fclist
-
- Expands to the output of the default output format of the fc-list
- command on the pattern, without the final newline.
+ Expands to the output of the default output format of
+ the fc-list command on the pattern, without the final
+ newline.
fccat
-
- Expands to the output of the default output format of the fc-cat
- command on the pattern, without the final newline.
+ Expands to the output of the default output format of
+ the fc-cat command on the pattern, without the final
+ newline.
pkgkit
-
- Expands to the list of PackageKit font() tags for the pattern.
- Currently this includes tags for each family name, and each
- language from the pattern, enumerated and sanitized into a set of
- tags terminated by newline. Package management systems can use
- these tags to tag their packages accordingly.
-
- For example, the format "%{+family,style{%{=unparse}}}\n" will expand to
- an unparsed name containing only the family and style element values from
- pattern.
-
- The contents of any tag can be followed by a set of zero or more
- converters. A converter is specified by the character "|" followed by the
- converter name and arguments. The following converters are defined:
+ Expands to the list of PackageKit font() tags for the
+ pattern. Currently this includes tags for each family
+ name, and each language from the pattern, enumerated and
+ sanitized into a set of tags terminated by newline.
+ Package management systems can use these tags to tag
+ their packages accordingly.
+
+ For example, the format "%{+family,style{%{=unparse}}}\n" will
+ expand to an unparsed name containing only the family and style
+ element values from pattern.
+
+ The contents of any tag can be followed by a set of zero or
+ more converters. A converter is specified by the character "|"
+ followed by the converter name and arguments. The following
+ converters are defined:
basename
-
- Replaces text with the results of calling FcStrBasename() on it.
+ Replaces text with the results of calling
+ FcStrBasename() on it.
dirname
-
- Replaces text with the results of calling FcStrDirname() on it.
+ Replaces text with the results of calling FcStrDirname()
+ on it.
downcase
-
- Replaces text with the results of calling FcStrDowncase() on it.
+ Replaces text with the results of calling
+ FcStrDowncase() on it.
shescape
-
- Escapes text for one level of shell expansion. (Escapes
- single-quotes, also encloses text in single-quotes.)
+ Escapes text for one level of shell expansion. (Escapes
+ single-quotes, also encloses text in single-quotes.)
cescape
-
- Escapes text such that it can be used as part of a C string
- literal. (Escapes backslash and double-quotes.)
+ Escapes text such that it can be used as part of a C
+ string literal. (Escapes backslash and double-quotes.)
xmlescape
-
- Escapes text such that it can be used in XML and HTML. (Escapes
- less-than, greater-than, and ampersand.)
+ Escapes text such that it can be used in XML and HTML.
+ (Escapes less-than, greater-than, and ampersand.)
delete(chars)
-
- Deletes all occurrences of each of the characters in chars from
- the text. FIXME: This converter is not UTF-8 aware yet.
+ Deletes all occurrences of each of the characters in
+ chars from the text. FIXME: This converter is not UTF-8
+ aware yet.
escape(chars)
-
- Escapes all occurrences of each of the characters in chars by
- prepending it by the first character in chars. FIXME: This
- converter is not UTF-8 aware yet.
+ Escapes all occurrences of each of the characters in
+ chars by prepending it by the first character in chars.
+ FIXME: This converter is not UTF-8 aware yet.
translate(from,to)
+ Translates all occurrences of each of the characters in
+ from by replacing them with their corresponding
+ character in to. If to has fewer characters than from,
+ it will be extended by repeating its last character.
+ FIXME: This converter is not UTF-8 aware yet.
- Translates all occurrences of each of the characters in from by
- replacing them with their corresponding character in to. If to has
- fewer characters than from, it will be extended by repeating its
- last character. FIXME: This converter is not UTF-8 aware yet.
-
- For example, the format "%{family|downcase|delete( )}\n" will expand to
- the values of the family element in pattern, lower-cased and with spaces
- removed.
-
-Version
+ 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.
- Fontconfig version 2.10.91
+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
- [33]FcFontSetCreate -- Create a font set
-
- [34]FcFontSetDestroy -- Destroy a font set
-
- [35]FcFontSetAdd -- Add to a font set
-
- [36]FcFontSetList -- List fonts from a set of font sets
-
- [37]FcFontSetMatch -- Return the best font from a set of font sets
-
- [38]FcFontSetPrint -- Print a set of patterns to stdout
-
- [39]FcFontSetSort -- Add to a font set
-
- [40]FcFontSetSortDestroy -- DEPRECATED destroy a font set
+ An FcFontSet simply holds a list of patterns; these are used to
+ return the results of listing available fonts.
- An FcFontSet simply holds a list of patterns; these are used to return the
- results of listing available fonts.
-
- FcFontSetCreate
+FcFontSetCreate
Name
- FcFontSetCreate -- Create a font set
+ FcFontSetCreate -- Create a font set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcFontSet * FcFontSetCreate(void);
@@ -1428,219 +1335,178 @@ Description
Creates an empty font set.
-Version
-
- Fontconfig version 2.10.91
-
- FcFontSetDestroy
+FcFontSetDestroy
Name
- FcFontSetDestroy -- Destroy a font set
+ FcFontSetDestroy -- Destroy a font set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcFontSetDestroy(FcFontSet *s);
Description
- Destroys a font set. Note that this destroys any referenced patterns as
- well.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ Adds a pattern to a font set. Note that the pattern is not
+ copied before being inserted into the set. Returns FcFalse if
+ the pattern cannot be inserted into the set (due to allocation
+ failure). Otherwise returns FcTrue.
- FcFontSetList
+FcFontSetList
Name
- FcFontSetList -- List fonts from a set of font sets
+ FcFontSetList -- List fonts from a set of font sets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcFontSet * FcFontSetList(FcConfig *config, FcFontSet **sets, intnsets,
- FcPattern *pattern, FcObjectSet *object_set);
+ FcFontSet * FcFontSetList(FcConfig *config, FcFontSet **sets,
+ intnsets, FcPattern *pattern, FcObjectSet *object_set);
Description
- Selects fonts matching pattern from sets, creates patterns from those
- fonts containing only the objects in object_set and returns the set of
- unique such patterns. If config is NULL, the default configuration is
- checked to be up to date, and used.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcFontSetMatch
+FcFontSetMatch
Name
- FcFontSetMatch -- Return the best font from a set of font sets
+ FcFontSetMatch -- Return the best font from a set of font sets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcPattern * FcFontSetMatch(FcConfig *config, FcFontSet **sets, intnsets,
- FcPattern *pattern, FcResult *result);
+ FcPattern * FcFontSetMatch(FcConfig *config, FcFontSet **sets,
+ intnsets, FcPattern *pattern, FcResult *result);
Description
- Finds the font in sets most closely matching pattern and returns the
- result of FcFontRenderPrepare for that font and the provided pattern. This
- function should be called only after FcConfigSubstitute and
- FcDefaultSubstitute have been called for pattern; otherwise the results
- will not be correct. If config is NULL, the current configuration is used.
- Returns NULL if an error occurs during this process.
-
-Version
-
- Fontconfig version 2.10.91
+ Finds the font in sets most closely matching pattern and
+ returns the result of FcFontRenderPrepare for that font and the
+ provided pattern. This function should be called only after
+ FcConfigSubstitute and FcDefaultSubstitute have been called for
+ pattern; otherwise the results will not be correct. If config
+ is NULL, the current configuration is used. Returns NULL if an
+ error occurs during this process.
- FcFontSetPrint
+FcFontSetPrint
Name
- FcFontSetPrint -- Print a set of patterns to stdout
+ FcFontSetPrint -- Print a set of patterns to stdout
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcFontSetPrint(FcFontSet *set);
Description
- This function is useful for diagnosing font related issues, printing the
- complete contents of every pattern in set. The format of the output is
- designed to be of help to users and developers, and may change at any
- time.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcFontSetSort
+FcFontSetSort
Name
- FcFontSetSort -- Add to a font set
+ FcFontSetSort -- Add to a font set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcFontSetSort(FcConfig *config, FcFontSet **sets, intnsets, FcPattern
- *pattern, FcBool trim, FcCharSet **csp, FcResult *result);
+ FcFontSetSort(FcConfig *config, FcFontSet **sets, intnsets,
+ FcPattern *pattern, FcBool trim, FcCharSet **csp, FcResult
+ *result);
Description
- Returns the list of fonts from sets sorted by closeness to pattern. If
- trim is FcTrue, elements in the list which don't include Unicode coverage
- not provided by earlier elements in the list are elided. The union of
- Unicode coverage of all of the fonts is returned in csp, if csp is not
- NULL. This function should be called only after FcConfigSubstitute and
- FcDefaultSubstitute have been called for p; otherwise the results will not
- be correct.
+ Returns the list of fonts from sets sorted by closeness to
+ pattern. If trim is FcTrue, elements in the list which don't
+ include Unicode coverage not provided by earlier elements in
+ the list are elided. The union of Unicode coverage of all of
+ the fonts is returned in csp, if csp is not NULL. This function
+ should be called only after FcConfigSubstitute and
+ FcDefaultSubstitute have been called for p; otherwise the
+ results will not be correct.
- The returned FcFontSet references FcPattern structures which may be shared
- by the return value from multiple FcFontSort calls, applications cannot
- modify these patterns. Instead, they should be passed, along with pattern
- to FcFontRenderPrepare which combines them into a complete pattern.
+ The returned FcFontSet references FcPattern structures which
+ may be shared by the return value from multiple FcFontSort
+ calls, applications cannot modify these patterns. Instead, they
+ should be passed, along with pattern to FcFontRenderPrepare
+ which combines them into a complete pattern.
The FcFontSet returned by FcFontSetSort is destroyed by calling
FcFontSetDestroy.
-Version
-
- Fontconfig version 2.10.91
-
- FcFontSetSortDestroy
+FcFontSetSortDestroy
Name
- FcFontSetSortDestroy -- DEPRECATED destroy a font set
+ FcFontSetSortDestroy -- DEPRECATED destroy a font set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcFontSetSortDestroy(FcFontSet *set);
Description
- This function is DEPRECATED. FcFontSetSortDestroy destroys set by calling
- FcFontSetDestroy. Applications should use FcFontSetDestroy directly
- instead.
-
-Version
+ This function is DEPRECATED. FcFontSetSortDestroy destroys set
+ by calling FcFontSetDestroy. Applications should use
+ FcFontSetDestroy directly instead.
+ __________________________________________________________
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
-
- FcObjectSet
+FcObjectSet
Table of Contents
+ FcObjectSetCreate -- Create an object set
+ FcObjectSetAdd -- Add to an object set
+ FcObjectSetDestroy -- Destroy an object set
+ FcObjectSetBuild -- Build object set from args
- [41]FcObjectSetCreate -- Create an object set
-
- [42]FcObjectSetAdd -- Add to an object set
+ 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.
- [43]FcObjectSetDestroy -- Destroy an object set
-
- [44]FcObjectSetBuild -- Build object set from args
-
- An FcObjectSet holds a list of pattern property names; it is used to
- indicate which properties are to be returned in the patterns from
- FcFontList.
-
- FcObjectSetCreate
+FcObjectSetCreate
Name
- FcObjectSetCreate -- Create an object set
+ FcObjectSetCreate -- Create an object set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcObjectSet * FcObjectSetCreate(void);
@@ -1648,43 +1514,33 @@ Description
Creates an empty set.
-Version
-
- Fontconfig version 2.10.91
-
- FcObjectSetAdd
+FcObjectSetAdd
Name
- FcObjectSetAdd -- Add to an object set
+ FcObjectSetAdd -- Add to an object set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcObjectSetAdd(FcObjectSet *os, const char *object);
Description
- Adds a property name to the set. Returns FcFalse if the property name
- cannot be inserted into the set (due to allocation failure). Otherwise
- returns FcTrue.
-
-Version
+ Adds a property name to the set. Returns FcFalse if the
+ property name cannot be inserted into the set (due to
+ allocation failure). Otherwise returns FcTrue.
- Fontconfig version 2.10.91
-
- FcObjectSetDestroy
+FcObjectSetDestroy
Name
- FcObjectSetDestroy -- Destroy an object set
+ FcObjectSetDestroy -- Destroy an object set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcObjectSetDestroy(FcObjectSet *os);
@@ -1692,471 +1548,375 @@ Description
Destroys an object set.
-Version
-
- Fontconfig version 2.10.91
-
- FcObjectSetBuild
+FcObjectSetBuild
Name
- FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild -- Build object
- set from args
+ FcObjectSetBuild, FcObjectSetVaBuild,
+ FcObjectSetVapBuild -- Build object set from args
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcObjectSet * FcObjectSetBuild(const char *first, ...);
- FcObjectSet * FcObjectSetVaBuild(const char *first, va_list va);
-
- void FcObjectSetVapBuild(FcObjectSet *result, const char *first, va_list
+ FcObjectSet * FcObjectSetVaBuild(const char *first, va_list
va);
-Description
-
- These build an object set from a null-terminated list of property names.
- FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
- the result in the result variable directly.
-
-Version
+ void FcObjectSetVapBuild(FcObjectSet *result, const char
+ *first, va_list va);
- Fontconfig version 2.10.91
+Description
- --------------------------------------------------------------------------
+ These build an object set from a null-terminated list of
+ property names. FcObjectSetVapBuild is a macro version of
+ FcObjectSetVaBuild which returns the result in the result
+ variable directly.
+ __________________________________________________________
- FreeType specific functions
+FreeType specific functions
Table of Contents
+ FcFreeTypeCharIndex -- map Unicode to glyph id
+ FcFreeTypeCharSet -- compute Unicode coverage
+ FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and
+ spacing type
- [45]FcFreeTypeCharIndex -- map Unicode to glyph id
-
- [46]FcFreeTypeCharSet -- compute Unicode coverage
+ FcFreeTypeQuery -- compute pattern from font file (and index)
+ FcFreeTypeQueryFace -- compute pattern from FT_Face
- [47]FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing
- type
+ While the fontconfig library doesn't insist that FreeType be
+ used as the rasterization mechanism for fonts, it does provide
+ some convenience functions.
- [48]FcFreeTypeQuery -- compute pattern from font file (and index)
-
- [49]FcFreeTypeQueryFace -- compute pattern from FT_Face
-
- While the fontconfig library doesn't insist that FreeType be used as the
- rasterization mechanism for fonts, it does provide some convenience
- functions.
-
- FcFreeTypeCharIndex
+FcFreeTypeCharIndex
Name
- FcFreeTypeCharIndex -- map Unicode to glyph id
+ FcFreeTypeCharIndex -- map Unicode to glyph id
Synopsis
- #include <fontconfig.h>
- #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
FT_UInt FcFreeTypeCharIndex(FT_Face face, FcChar32 ucs4);
Description
- Maps a Unicode char to a glyph index. This function uses information from
- several possible underlying encoding tables to work around broken fonts.
- As a result, this function isn't designed to be used in performance
- sensitive areas; results from this function are intended to be cached by
- higher level functions.
-
-Version
-
- Fontconfig version 2.10.91
+ Maps a Unicode char to a glyph index. This function uses
+ information from several possible underlying encoding tables to
+ work around broken fonts. As a result, this function isn't
+ designed to be used in performance sensitive areas; results
+ from this function are intended to be cached by higher level
+ functions.
- FcFreeTypeCharSet
+FcFreeTypeCharSet
Name
- FcFreeTypeCharSet -- compute Unicode coverage
+ FcFreeTypeCharSet -- compute Unicode coverage
Synopsis
- #include <fontconfig.h>
- #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
FcCharSet * FcFreeTypeCharSet(FT_Face face, FcBlanks *blanks);
Description
- Scans a FreeType face and returns the set of encoded Unicode chars. This
- scans several encoding tables to build as complete a list as possible. If
- 'blanks' is not 0, the glyphs in the font are examined and any blank
- glyphs not in 'blanks' are not placed in the returned FcCharSet.
+ Scans a FreeType face and returns the set of encoded Unicode
+ chars. This scans several encoding tables to build as complete
+ a list as possible. If 'blanks' is not 0, the glyphs in the
+ font are examined and any blank glyphs not in 'blanks' are not
+ placed in the returned FcCharSet.
-Version
-
- Fontconfig version 2.10.91
-
- FcFreeTypeCharSetAndSpacing
+FcFreeTypeCharSetAndSpacing
Name
- FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing type
+ FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and
+ spacing type
Synopsis
- #include <fontconfig.h>
- #include <fcfreetype.h>
+#include <fontconfig.h>
+#include <fcfreetype.h>
-
- FcCharSet * FcFreeTypeCharSetAndSpacing(FT_Face face, FcBlanks *blanks,
- int *spacing);
+ FcCharSet * FcFreeTypeCharSetAndSpacing(FT_Face face, FcBlanks
+ *blanks, int *spacing);
Description
- Scans a FreeType face and returns the set of encoded Unicode chars. This
- scans several encoding tables to build as complete a list as possible. If
- 'blanks' is not 0, the glyphs in the font are examined and any blank
- glyphs not in 'blanks' are not placed in the returned FcCharSet. spacing
- receives the computed spacing type of the font, one of FC_MONO for a font
- where all glyphs have the same width, FC_DUAL, where the font has glyphs
+ Scans a FreeType face and returns the set of encoded Unicode
+ chars. This scans several encoding tables to build as complete
+ a list as possible. If 'blanks' is not 0, the glyphs in the
+ font are examined and any blank glyphs not in 'blanks' are not
+ placed in the returned FcCharSet. spacing receives the computed
+ spacing type of the font, one of FC_MONO for a font where all
+ glyphs have the same width, FC_DUAL, where the font has glyphs
in precisely two widths, one twice as wide as the other, or
FC_PROPORTIONAL where the font has glyphs of many widths.
-Version
-
- Fontconfig version 2.10.91
-
- FcFreeTypeQuery
+FcFreeTypeQuery
Name
- FcFreeTypeQuery -- compute pattern from font file (and index)
+ FcFreeTypeQuery -- compute pattern from font file (and index)
Synopsis
- #include <fontconfig.h>
- #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
- FcPattern * FcFreeTypeQuery(const FcChar8 *file, int id, FcBlanks *blanks,
- int *count);
+ FcPattern * FcFreeTypeQuery(const FcChar8 *file, int id,
+ FcBlanks *blanks, int *count);
Description
- Constructs a pattern representing the 'id'th font in 'file'. The number of
- fonts in 'file' is returned in 'count'.
-
-Version
+ Constructs a pattern representing the 'id'th font in 'file'.
+ The number of fonts in 'file' is returned in 'count'.
- Fontconfig version 2.10.91
-
- FcFreeTypeQueryFace
+FcFreeTypeQueryFace
Name
- FcFreeTypeQueryFace -- compute pattern from FT_Face
+ FcFreeTypeQueryFace -- compute pattern from FT_Face
Synopsis
- #include <fontconfig.h>
- #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
- FcPattern * FcFreeTypeQueryFace(const FT_Face face, const FcChar8 *file,
- int id, FcBlanks *blanks);
+ FcPattern * FcFreeTypeQueryFace(const FT_Face face, const
+ FcChar8 *file, int id, FcBlanks *blanks);
Description
- Constructs a pattern representing 'face'. 'file' and 'id' are used solely
- as data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
-
-Version
-
- Fontconfig version 2.10.91
+ Constructs a pattern representing 'face'. 'file' and 'id' are
+ used solely as data for pattern elements (FC_FILE, FC_INDEX and
+ sometimes FC_FAMILY).
+ __________________________________________________________
- --------------------------------------------------------------------------
-
- FcValue
+FcValue
Table of Contents
+ FcValueDestroy -- Free a value
+ FcValueSave -- Copy a value
+ FcValuePrint -- Print a value to stdout
+ FcValueEqual -- Test two values for equality
- [50]FcValueDestroy -- Free a value
-
- [51]FcValueSave -- Copy a value
-
- [52]FcValuePrint -- Print a value to stdout
+ FcValue is a structure containing a type tag and a union of all
+ possible datatypes. The tag is an enum of type FcType and is
+ intended to provide a measure of run-time typechecking,
+ although that depends on careful programming.
- [53]FcValueEqual -- Test two values for equality
-
- FcValue is a structure containing a type tag and a union of all possible
- datatypes. The tag is an enum of type FcType and is intended to provide a
- measure of run-time typechecking, although that depends on careful
- programming.
-
- FcValueDestroy
+FcValueDestroy
Name
- FcValueDestroy -- Free a value
+ FcValueDestroy -- Free a value
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcValueDestroy(FcValue v);
Description
Frees any memory referenced by v. Values of type FcTypeString,
- FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
-
-Version
+ FcTypeMatrix and FcTypeCharSet reference memory, the other
+ types do not.
- Fontconfig version 2.10.91
-
- FcValueSave
+FcValueSave
Name
- FcValueSave -- Copy a value
+ FcValueSave -- Copy a value
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcValue FcValueSave(FcValue v);
Description
- Returns a copy of v duplicating any object referenced by it so that v may
- be safely destroyed without harming the new value.
-
-Version
+ Returns a copy of v duplicating any object referenced by it so
+ that v may be safely destroyed without harming the new value.
- Fontconfig version 2.10.91
-
- FcValuePrint
+FcValuePrint
Name
- FcValuePrint -- Print a value to stdout
+ FcValuePrint -- Print a value to stdout
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcValuePrint(FcValue v);
Description
- Prints a human-readable representation of v to stdout. The format should
- not be considered part of the library specification as it may change in
- the future.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ 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
- [54]FcCharSetCreate -- Create an empty character set
-
- [55]FcCharSetDestroy -- Destroy a character set
-
- [56]FcCharSetAddChar -- Add a character to a charset
-
- [57]FcCharSetDelChar -- Add a character to a charset
-
- [58]FcCharSetCopy -- Copy a charset
-
- [59]FcCharSetEqual -- Compare two charsets
-
- [60]FcCharSetIntersect -- Intersect charsets
-
- [61]FcCharSetUnion -- Add charsets
-
- [62]FcCharSetSubtract -- Subtract charsets
-
- [63]FcCharSetMerge -- Merge charsets
-
- [64]FcCharSetHasChar -- Check a charset for a char
-
- [65]FcCharSetCount -- Count entries in a charset
-
- [66]FcCharSetIntersectCount -- Intersect and count charsets
-
- [67]FcCharSetSubtractCount -- Subtract and count charsets
+ FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
- [68]FcCharSetIsSubset -- Test for charset inclusion
+ 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.
- [69]FcCharSetFirstPage -- Start enumerating charset contents
-
- [70]FcCharSetNextPage -- Continue enumerating charset contents
-
- [71]FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
-
- [72]FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
-
- An FcCharSet is a boolean array indicating a set of Unicode chars. Those
- associated with a font are marked constant and cannot be edited.
- FcCharSets may be reference counted internally to reduce memory
- consumption; this may be visible to applications as the result of
- FcCharSetCopy may return it's argument, and that CharSet may remain
- unmodifiable.
-
- FcCharSetCreate
+FcCharSetCreate
Name
- FcCharSetCreate -- Create an empty character set
+ FcCharSetCreate -- Create an empty character set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcCharSet * FcCharSetCreate(void);
Description
- FcCharSetCreate allocates and initializes a new empty character set
- object.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
+ FcCharSetDestroy decrements the reference count fcs. If the
+ reference count becomes zero, all memory referenced is freed.
- Fontconfig version 2.10.91
-
- FcCharSetAddChar
+FcCharSetAddChar
Name
- FcCharSetAddChar -- Add a character to a charset
+ FcCharSetAddChar -- Add a character to a charset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcCharSetAddChar(FcCharSet *fcs, FcChar32 ucs4);
Description
- FcCharSetAddChar adds a single Unicode char to the set, returning FcFalse
- on failure, either as a result of a constant set or from running out of
- memory.
+ FcCharSetAddChar adds a single Unicode char to the set,
+ returning FcFalse on failure, either as a result of a constant
+ set or from running out of memory.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetDelChar
+FcCharSetDelChar
Name
- FcCharSetDelChar -- Add a character to a charset
+ FcCharSetDelChar -- Add a character to a charset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcCharSetDelChar(FcCharSet *fcs, FcChar32 ucs4);
Description
- FcCharSetDelChar deletes a single Unicode char from the set, returning
- FcFalse on failure, either as a result of a constant set or from running
- out of memory.
+ FcCharSetDelChar deletes a single Unicode char from the set,
+ returning FcFalse on failure, either as a result of a constant
+ set or from running out of memory.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.9.0
- FcCharSetCopy
+FcCharSetCopy
Name
- FcCharSetCopy -- Copy a charset
+ FcCharSetCopy -- Copy a charset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcCharSet * FcCharSetCopy(FcCharSet *src);
Description
- Makes a copy of src; note that this may not actually do anything more than
- increment the reference count on src.
-
-Version
+ Makes a copy of src; note that this may not actually do
+ anything more than increment the reference count on src.
- Fontconfig version 2.10.91
-
- FcCharSetEqual
+FcCharSetEqual
Name
- FcCharSetEqual -- Compare two charsets
+ FcCharSetEqual -- Compare two charsets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcCharSetEqual(const FcCharSet *a, const FcCharSet *b);
@@ -2164,107 +1924,88 @@ Description
Returns whether a and b contain the same set of Unicode chars.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetIntersect
+FcCharSetIntersect
Name
- FcCharSetIntersect -- Intersect charsets
+ FcCharSetIntersect -- Intersect charsets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcCharSet * FcCharSetIntersect(const FcCharSet *a, const FcCharSet *b);
+ FcCharSet * FcCharSetIntersect(const FcCharSet *a, const
+ FcCharSet *b);
Description
Returns a set including only those chars found in both a and b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetUnion
+FcCharSetUnion
Name
- FcCharSetUnion -- Add charsets
+ FcCharSetUnion -- Add charsets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcCharSet * FcCharSetUnion(const FcCharSet *a, const FcCharSet *b);
+ FcCharSet * FcCharSetUnion(const FcCharSet *a, const FcCharSet
+ *b);
Description
- Returns a set including only those chars found in either a or b.
+ Returns a set including only those chars found in either a or
+ b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetSubtract
+FcCharSetSubtract
Name
- FcCharSetSubtract -- Subtract charsets
+ FcCharSetSubtract -- Subtract charsets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcCharSet * FcCharSetSubtract(const FcCharSet *a, const FcCharSet *b);
+ FcCharSet * FcCharSetSubtract(const FcCharSet *a, const
+ FcCharSet *b);
Description
Returns a set including only those chars found in a but not b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetMerge
+FcCharSetMerge
Name
- FcCharSetMerge -- Merge charsets
+ FcCharSetMerge -- Merge charsets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcCharSetMerge(FcCharSet *a, const FcCharSet *b, FcBool *changed);
+ FcBool FcCharSetMerge(FcCharSet *a, const FcCharSet *b, FcBool
+ *changed);
Description
- Adds all chars in b to a. In other words, this is an in-place version of
- FcCharSetUnion. If changed is not NULL, then it returns whether any new
- chars from b were added to a. Returns FcFalse on failure, either when a is
- a constant set or from running out of memory.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcCharSetHasChar
+FcCharSetHasChar
Name
- FcCharSetHasChar -- Check a charset for a char
+ FcCharSetHasChar -- Check a charset for a char
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcCharSetHasChar(const FcCharSet *fcs, FcChar32 ucs4);
@@ -2272,20 +2013,15 @@ Description
Returns whether fcs contains the char ucs4.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetCount
+FcCharSetCount
Name
- FcCharSetCount -- Count entries in a charset
+ FcCharSetCount -- Count entries in a charset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar32 FcCharSetCount(const FcCharSet *a);
@@ -2293,218 +2029,185 @@ Description
Returns the total number of Unicode chars in a.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetIntersectCount
+FcCharSetIntersectCount
Name
- FcCharSetIntersectCount -- Intersect and count charsets
+ FcCharSetIntersectCount -- Intersect and count charsets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcChar32 FcCharSetIntersectCount(const FcCharSet *a, const FcCharSet *b);
+ FcChar32 FcCharSetIntersectCount(const FcCharSet *a, const
+ FcCharSet *b);
Description
Returns the number of chars that are in both a and b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetSubtractCount
+FcCharSetSubtractCount
Name
- FcCharSetSubtractCount -- Subtract and count charsets
+ FcCharSetSubtractCount -- Subtract and count charsets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcChar32 FcCharSetSubtractCount(const FcCharSet *a, const FcCharSet *b);
+ FcChar32 FcCharSetSubtractCount(const FcCharSet *a, const
+ FcCharSet *b);
Description
Returns the number of chars that are in a but not in b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetIsSubset
+FcCharSetIsSubset
Name
- FcCharSetIsSubset -- Test for charset inclusion
+ FcCharSetIsSubset -- Test for charset inclusion
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcCharSetIsSubset(const FcCharSet *a, const FcCharSet *b);
+ FcBool FcCharSetIsSubset(const FcCharSet *a, const FcCharSet
+ *b);
Description
Returns whether a is a subset of b.
-Version
-
- Fontconfig version 2.10.91
-
- FcCharSetFirstPage
+FcCharSetFirstPage
Name
- FcCharSetFirstPage -- Start enumerating charset contents
+ FcCharSetFirstPage -- Start enumerating charset contents
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar32 FcCharSetFirstPage(const FcCharSet *a,
FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
Description
- Builds an array of bits marking the first page of Unicode coverage of a.
- Returns the base of the array. next contains the next page in the font.
-
-Version
+ Builds an array of bits in map marking the first page of
+ Unicode coverage of a. *next is set to contains the base code
+ point for the next page in a. Returns the base code point for
+ the page, or FC_CHARSET_DONE if a contains no pages. As an
+ example, if FcCharSetFirstPage returns 0x300 and fills map with
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff
+7fff 0xffff0003
- Fontconfig version 2.10.91
+ Then the page contains code points 0x300 through 0x33f (the
+ first 64 code points on the page) because map[0] and map[1]
+ both have all their bits set. It also contains code points
+ 0x343 (0x300 + 32*2 + (4-1)) and 0x35e (0x300 + 32*2 + (31-1))
+ because map[2] has the 4th and 31st bits set. The code points
+ represented by map[3] and later are left as an excercise for
+ the reader ;).
- FcCharSetNextPage
+FcCharSetNextPage
Name
- FcCharSetNextPage -- Continue enumerating charset contents
+ FcCharSetNextPage -- Continue enumerating charset contents
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar32 FcCharSetNextPage(const FcCharSet *a,
FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
Description
- Builds an array of bits marking the Unicode coverage of a for page *next.
- Returns the base of the array. next contains the next page in the font.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcCharSetCoverage
+FcCharSetCoverage
Name
- FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
+ FcCharSetCoverage -- DEPRECATED return coverage for a Unicode
+ page
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar32 FcCharSetCoverage(const FcCharSet *a, FcChar32page,
FcChar32[8]result);
Description
- DEPRECATED This function returns a bitmask in result which indicates which
- code points in page are included in a. FcCharSetCoverage returns the next
- page in the charset which has any coverage.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- 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.
+ __________________________________________________________
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
-
- 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
- [73]FcLangSetCreate -- create a langset object
-
- [74]FcLangSetDestroy -- destroy a langset object
-
- [75]FcLangSetCopy -- copy a langset object
-
- [76]FcLangSetAdd -- add a language to a langset
-
- [77]FcLangSetDel -- delete a language from a langset
-
- [78]FcLangSetUnion -- Add langsets
-
- [79]FcLangSetSubtract -- Subtract langsets
-
- [80]FcLangSetCompare -- compare language sets
-
- [81]FcLangSetContains -- check langset subset relation
-
- [82]FcLangSetEqual -- test for matching langsets
-
- [83]FcLangSetHash -- return a hash value for a langset
+ 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.
- [84]FcLangSetHasLang -- test langset for language support
-
- [85]FcGetDefaultLangs -- Get the default languages list
-
- [86]FcGetLangs -- Get list of languages
-
- [87]FcLangNormalize -- Normalize the language string
-
- [88]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);
@@ -2512,297 +2215,274 @@ Description
FcLangSetCreate creates a new FcLangSet object.
-Version
-
- Fontconfig version 2.10.91
-
- FcLangSetDestroy
+FcLangSetDestroy
Name
- FcLangSetDestroy -- destroy a langset object
+ FcLangSetDestroy -- destroy a langset object
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcLangSetDestroy(FcLangSet *ls);
Description
- FcLangSetDestroy destroys a FcLangSet object, freeing all memory
- associated with it.
+ FcLangSetDestroy destroys a FcLangSet object, freeing all
+ memory associated with it.
-Version
-
- Fontconfig version 2.10.91
-
- 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.
-Version
-
- Fontconfig version 2.10.91
-
- FcLangSetAdd
+FcLangSetAdd
Name
- FcLangSetAdd -- add a language to a langset
+ FcLangSetAdd -- add a language to a langset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcLangSetAdd(FcLangSet *ls, const FcChar8 *lang);
Description
- lang is added to ls. lang should be of the form Ll-Tt where Ll is a two or
- three letter language from ISO 639 and Tt is a territory from ISO 3166.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcLangSetDel
+FcLangSetDel
Name
- FcLangSetDel -- delete a language from a langset
+ FcLangSetDel -- delete a language from a langset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcLangSetDel(FcLangSet *ls, const FcChar8 *lang);
Description
- lang is removed from ls. lang should be of the form Ll-Tt where Ll is a
- two or three letter language from ISO 639 and Tt is a territory from ISO
- 3166.
+ lang is removed from ls. lang should be of the form Ll-Tt where
+ Ll is a two or three letter language from ISO 639 and Tt is a
+ territory from ISO 3166.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.9.0
- FcLangSetUnion
+FcLangSetUnion
Name
- FcLangSetUnion -- Add langsets
+ FcLangSetUnion -- Add langsets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcLangSet * FcLangSetUnion(const FcLangSet *ls_a, const FcLangSet *ls_b);
+ FcLangSet * FcLangSetUnion(const FcLangSet *ls_a, const
+ FcLangSet *ls_b);
Description
- Returns a set including only those languages found in either ls_a or ls_b.
+ Returns a set including only those languages found in either
+ ls_a or ls_b.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.9.0
- FcLangSetSubtract
+FcLangSetSubtract
Name
- FcLangSetSubtract -- Subtract langsets
+ FcLangSetSubtract -- Subtract langsets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcLangSet * FcLangSetSubtract(const FcLangSet *ls_a, const FcLangSet
- *ls_b);
+ FcLangSet * FcLangSetSubtract(const FcLangSet *ls_a, const
+ FcLangSet *ls_b);
Description
- Returns a set including only those languages found in ls_a but not in
- ls_b.
+ Returns a set including only those languages found in ls_a but
+ not in ls_b.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.9.0
- FcLangSetCompare
+FcLangSetCompare
Name
- FcLangSetCompare -- compare language sets
+ FcLangSetCompare -- compare language sets
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcLangResult FcLangSetCompare(const FcLangSet *ls_a, const FcLangSet
- *ls_b);
+ FcLangResult FcLangSetCompare(const FcLangSet *ls_a, const
+ FcLangSet *ls_b);
Description
- FcLangSetCompare compares language coverage for ls_a and ls_b. If they
- share any language and territory pair, this function returns FcLangEqual.
- If they share a language but differ in which territory that language is
- for, this function returns FcLangDifferentTerritory. If they share no
- languages in common, this function returns FcLangDifferentLang.
+ FcLangSetCompare compares language coverage for ls_a and ls_b.
+ If they share any language and territory pair, this function
+ returns FcLangEqual. If they share a language but differ in
+ which territory that language is for, this function returns
+ FcLangDifferentTerritory. If they share no languages in common,
+ this function returns FcLangDifferentLang.
-Version
-
- Fontconfig version 2.10.91
-
- FcLangSetContains
+FcLangSetContains
Name
- FcLangSetContains -- check langset subset relation
+ FcLangSetContains -- check langset subset relation
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcLangSetContains(const FcLangSet *ls_a, const FcLangSet *ls_b);
+ FcBool FcLangSetContains(const FcLangSet *ls_a, const FcLangSet
+ *ls_b);
Description
- FcLangSetContains returns FcTrue if ls_a contains every language in ls_b.
- ls_a will 'contain' a language from ls_b if ls_a has exactly the language,
- or either the language or ls_a has no territory.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcLangSetEqual
+FcLangSetEqual
Name
- FcLangSetEqual -- test for matching langsets
+ FcLangSetEqual -- test for matching langsets
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcLangSetEqual(const FcLangSet *ls_a, const FcLangSet *ls_b);
+ FcBool FcLangSetEqual(const FcLangSet *ls_a, const FcLangSet
+ *ls_b);
Description
- Returns FcTrue if and only if ls_a supports precisely the same language
- and territory combinations as ls_b.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns FcTrue if and only if ls_a supports precisely the same
+ language and territory combinations as ls_b.
- FcLangSetHash
+FcLangSetHash
Name
- FcLangSetHash -- return a hash value for a langset
+ FcLangSetHash -- return a hash value for a langset
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar32 FcLangSetHash(const FcLangSet *ls);
Description
- This function returns a value which depends solely on the languages
- supported by ls. Any language which equals ls will have the same result
- from FcLangSetHash. However, two langsets with the same hash value may not
- be equal.
+ This function returns a value which depends solely on the
+ languages supported by ls. Any language which equals ls will
+ have the same result from FcLangSetHash. However, two langsets
+ with the same hash value may not be equal.
+
+FcLangSetHasLang
+
+Name
+
+ FcLangSetHasLang -- test langset for language support
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+ FcLangResult FcLangSetHasLang(const FcLangSet *ls, const
+ FcChar8 *lang);
-Version
+Description
- Fontconfig version 2.10.91
+ FcLangSetHasLang checks whether ls supports lang. If ls has a
+ matching language and territory pair, this function returns
+ FcLangEqual. If ls has a matching language but differs in which
+ territory that language is for, this function returns
+ FcLangDifferentTerritory. If ls has no matching language, this
+ function returns FcLangDifferentLang.
- FcLangSetHasLang
+FcGetDefaultLangs
Name
- FcLangSetHasLang -- test langset for language support
+ FcGetDefaultLangs -- Get the default languages list
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcLangResult FcLangSetHasLang(const FcLangSet *ls, const FcChar8 *lang);
+ FcStrSet * FcGetDefaultLangs(void);
Description
- FcLangSetHasLang checks whether ls supports lang. If ls has a matching
- language and territory pair, this function returns FcLangEqual. If ls has
- a matching language but differs in which territory that language is for,
- this function returns FcLangDifferentTerritory. If ls has no matching
- language, this function returns FcLangDifferentLang.
+ Returns a string set of the default languages according to the
+ environment variables on the system. This function looks for
+ them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then. If
+ there are no valid values in those environment variables, "en"
+ will be set as fallback.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.9.91
- FcGetDefaultLangs
+FcLangSetGetLangs
Name
- FcGetDefaultLangs -- Get the default languages list
+ FcLangSetGetLangs -- get the list of languages in the langset
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcStrSet * FcGetDefaultLangs(voidls);
+ FcStrSet * FcLangSetGetLangs(const FcLangSet *ls);
Description
- Returns a string set of the default languages according to the environment
- variables on the system. This function looks for them in order of FC_LANG,
- LC_ALL, LC_CTYPE and LANG then. If there are no valid values in those
- environment variables, "en" will be set as fallback.
-
-Version
+ Returns a string set of all languages in langset.
- Fontconfig version 2.10.91
-
- FcGetLangs
+FcGetLangs
Name
- FcGetLangs -- Get list of languages
+ FcGetLangs -- Get list of languages
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrSet * FcGetLangs(void);
@@ -2810,20 +2490,15 @@ Description
Returns a string set of all known languages.
-Version
-
- Fontconfig version 2.10.91
-
- FcLangNormalize
+FcLangNormalize
Name
- FcLangNormalize -- Normalize the language string
+ FcLangNormalize -- Normalize the language string
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcLangNormalize(const FcChar8 *lang);
@@ -2831,63 +2506,50 @@ Description
Returns a string to make lang suitable on fontconfig.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.10.91
- FcLangGetCharSet
+FcLangGetCharSet
Name
- FcLangGetCharSet -- Get character map for a language
+ FcLangGetCharSet -- Get character map for a language
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
const FcCharSet * FcLangGetCharSet(const FcChar8 *lang);
Description
Returns the FcCharMap for a language.
+ __________________________________________________________
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
-
- FcMatrix
+FcMatrix
Table of Contents
+ FcMatrixInit -- initialize an FcMatrix structure
+ FcMatrixCopy -- Copy a matrix
+ FcMatrixEqual -- Compare two matrices
+ FcMatrixMultiply -- Multiply matrices
+ FcMatrixRotate -- Rotate a matrix
+ FcMatrixScale -- Scale a matrix
+ FcMatrixShear -- Shear a matrix
- [89]FcMatrixInit -- initialize an FcMatrix structure
+ FcMatrix structures hold an affine transformation in matrix
+ form.
- [90]FcMatrixCopy -- Copy a matrix
-
- [91]FcMatrixEqual -- Compare two matrices
-
- [92]FcMatrixMultiply -- Multiply matrices
-
- [93]FcMatrixRotate -- Rotate a matrix
-
- [94]FcMatrixScale -- Scale a matrix
-
- [95]FcMatrixShear -- Shear a matrix
-
- FcMatrix structures hold an affine transformation in matrix form.
-
- FcMatrixInit
+FcMatrixInit
Name
- FcMatrixInit -- initialize an FcMatrix structure
+ FcMatrixInit -- initialize an FcMatrix structure
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcMatrixInit(FcMatrix *matrix);
@@ -2895,20 +2557,15 @@ Description
FcMatrixInit initializes matrix to the identity matrix.
-Version
-
- Fontconfig version 2.10.91
-
- FcMatrixCopy
+FcMatrixCopy
Name
- FcMatrixCopy -- Copy a matrix
+ FcMatrixCopy -- Copy a matrix
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcMatrixCopy(const FcMatrix *matrix);
@@ -2916,209 +2573,272 @@ Description
FcMatrixCopy allocates a new FcMatrix and copies mat into it.
-Version
-
- Fontconfig version 2.10.91
-
- FcMatrixEqual
+FcMatrixEqual
Name
- FcMatrixEqual -- Compare two matrices
+ FcMatrixEqual -- Compare two matrices
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- void FcMatrixEqual(const FcMatrix *matrix1, const FcMatrix *matrix2);
+ void FcMatrixEqual(const FcMatrix *matrix1, const FcMatrix
+ *matrix2);
Description
- FcMatrixEqual compares matrix1 and matrix2 returning FcTrue when they are
- equal and FcFalse when they are not.
+ FcMatrixEqual compares matrix1 and matrix2 returning FcTrue
+ when they are equal and FcFalse when they are not.
-Version
-
- Fontconfig version 2.10.91
-
- FcMatrixMultiply
+FcMatrixMultiply
Name
- FcMatrixMultiply -- Multiply matrices
+ FcMatrixMultiply -- Multiply matrices
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- void FcMatrixMultiply(FcMatrix *result, const FcMatrix *matrix1, const
- FcMatrix *matrix2);
+ void FcMatrixMultiply(FcMatrix *result, const FcMatrix
+ *matrix1, const FcMatrix *matrix2);
Description
- FcMatrixMultiply multiplies matrix1 and matrix2 storing the result in
- result.
-
-Version
+ FcMatrixMultiply multiplies matrix1 and matrix2 storing the
+ result in result.
- Fontconfig version 2.10.91
-
- FcMatrixRotate
+FcMatrixRotate
Name
- FcMatrixRotate -- Rotate a matrix
+ FcMatrixRotate -- Rotate a matrix
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcMatrixRotate(FcMatrix *matrix, double cos, double sin);
Description
- FcMatrixRotate rotates matrix by the angle who's sine is sin and cosine is
- cos. This is done by multiplying by the matrix:
+ FcMatrixRotate rotates matrix by the angle who's sine is sin
+ and cosine is cos. This is done by multiplying by the matrix:
+ cos -sin
+ sin cos
- cos -sin
- sin cos
+FcMatrixScale
+
+Name
-Version
+ FcMatrixScale -- Scale a matrix
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+ void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
+
+Description
- Fontconfig version 2.10.91
+ FcMatrixScale multiplies matrix x values by sx and y values by
+ dy. This is done by multiplying by the matrix:
+ sx 0
+ 0 dy
- FcMatrixScale
+FcMatrixShear
Name
- FcMatrixScale -- Scale a matrix
+ FcMatrixShear -- Shear a matrix
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
+ void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
Description
- FcMatrixScale multiplies matrix x values by sx and y values by dy. This is
- done by multiplying by the matrix:
+ FcMatrixShare shears matrix horizontally by sh and vertically
+ by sv. This is done by multiplying by the matrix:
+ 1 sh
+ sv 1
+ __________________________________________________________
- sx 0
- 0 dy
+FcRange
-Version
+ Table of Contents
+ FcRangeCopy -- Copy a range object
+ FcRangeCreateDouble -- create a range object for double
+ FcRangeCreateInteger -- create a range object for integer
+ FcRangeDestroy -- destroy a range object
+ FcRangeGetDouble -- Get the range in double
- Fontconfig version 2.10.91
+ An FcRange holds two variables to indicate a range in between.
- FcMatrixShear
+FcRangeCopy
Name
- FcMatrixShear -- Shear a matrix
+ FcRangeCopy -- Copy a range object
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
+ FcRange * FcRangeCopy(const FcRange *range);
Description
- FcMatrixShare shears matrix horizontally by sh and vertically by sv. This
- is done by multiplying by the matrix:
+ FcRangeCopy creates a new FcRange object and populates it with
+ the contents of range.
- 1 sh
- sv 1
+Since
-Version
+ version 2.11.91
- Fontconfig version 2.10.91
+FcRangeCreateDouble
- --------------------------------------------------------------------------
+Name
- FcConfig
+ FcRangeCreateDouble -- create a range object for double
- Table of Contents
+Synopsis
- [96]FcConfigCreate -- Create a configuration
+#include <fontconfig/fontconfig.h>
- [97]FcConfigReference -- Increment config reference count
+ FcRange * FcRangeCreateDouble(doublebegin, doubleend);
- [98]FcConfigDestroy -- Destroy a configuration
+Description
- [99]FcConfigSetCurrent -- Set configuration as default
+ FcRangeCreateDouble creates a new FcRange object with double
+ sized value.
- [100]FcConfigGetCurrent -- Return current configuration
+Since
- [101]FcConfigUptoDate -- Check timestamps on config files
+ version 2.11.91
- [102]FcConfigHome -- return the current home directory.
+FcRangeCreateInteger
- [103]FcConfigEnableHome -- controls use of the home directory.
+Name
- [104]FcConfigBuildFonts -- Build font database
+ FcRangeCreateInteger -- create a range object for integer
- [105]FcConfigGetConfigDirs -- Get config directories
+Synopsis
- [106]FcConfigGetFontDirs -- Get font directories
+#include <fontconfig/fontconfig.h>
- [107]FcConfigGetConfigFiles -- Get config files
+ FcRange * FcRangeCreateInteger(intbegin, intend);
- [108]FcConfigGetCache -- DEPRECATED used to return per-user cache filename
+Description
- [109]FcConfigGetCacheDirs -- return the list of directories searched for
- cache files
+ FcRangeCreateInteger creates a new FcRange object with integer
+ sized value.
- [110]FcConfigGetFonts -- Get config font set
+Since
- [111]FcConfigGetBlanks -- Get config blanks
+ version 2.11.91
- [112]FcConfigGetRescanInterval -- Get config rescan interval
+FcRangeDestroy
- [113]FcConfigSetRescanInterval -- Set config rescan interval
+Name
- [114]FcConfigAppFontAddFile -- Add font file to font database
+ FcRangeDestroy -- destroy a range object
- [115]FcConfigAppFontAddDir -- Add fonts from directory to font database
+Synopsis
- [116]FcConfigAppFontClear -- Remove all app fonts from font database
+#include <fontconfig/fontconfig.h>
- [117]FcConfigSubstituteWithPat -- Execute substitutions
+ void FcRangeDestroy(FcRange *range);
- [118]FcConfigSubstitute -- Execute substitutions
+Description
- [119]FcFontMatch -- Return best font
+ FcRangeDestroy destroys a FcRange object, freeing all memory
+ associated with it.
- [120]FcFontSort -- Return list of matching fonts
+Since
- [121]FcFontRenderPrepare -- Prepare pattern for loading font file
+ version 2.11.91
- [122]FcFontList -- List fonts
+FcRangeGetDouble
- [123]FcConfigFilename -- Find a config file
+Name
- [124]FcConfigParseAndLoad -- load a configuration file
+ FcRangeGetDouble -- Get the range in double
- 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.
+Synopsis
- FcConfigCreate
+#include <fontconfig/fontconfig.h>
-Name
+ FcBool FcRangeGetDouble(const FcRange *range, double *begin,
+ double *end);
- FcConfigCreate -- Create a configuration
+Description
-Synopsis
+ Returns in begin and end as the range.
- #include <fontconfig/fontconfig.h>
+Since
+ version 2.11.91
+ __________________________________________________________
+
+FcConfig
+
+ Table of Contents
+ FcConfigCreate -- Create a configuration
+ FcConfigReference -- Increment config reference count
+ FcConfigDestroy -- Destroy a configuration
+ FcConfigSetCurrent -- Set configuration as default
+ FcConfigGetCurrent -- Return current configuration
+ FcConfigUptoDate -- Check timestamps on config files
+ FcConfigHome -- return the current home directory.
+ FcConfigEnableHome -- controls use of the home directory.
+ FcConfigBuildFonts -- Build font database
+ FcConfigGetConfigDirs -- Get config directories
+ FcConfigGetFontDirs -- Get font directories
+ FcConfigGetConfigFiles -- Get config files
+ FcConfigGetCache -- DEPRECATED used to return per-user cache
+ filename
+
+ FcConfigGetCacheDirs -- return the list of directories searched
+ for cache files
+
+ FcConfigGetFonts -- Get config font set
+ FcConfigGetBlanks -- Get config blanks
+ FcConfigGetRescanInterval -- Get config rescan interval
+ FcConfigSetRescanInterval -- Set config rescan interval
+ FcConfigAppFontAddFile -- Add font file to font database
+ FcConfigAppFontAddDir -- Add fonts from directory to font
+ database
+
+ FcConfigAppFontClear -- Remove all app fonts from font database
+ FcConfigSubstituteWithPat -- Execute substitutions
+ FcConfigSubstitute -- Execute substitutions
+ FcFontMatch -- Return best font
+ FcFontSort -- Return list of matching fonts
+ FcFontRenderPrepare -- Prepare pattern for loading font file
+ FcFontList -- List fonts
+ FcConfigFilename -- Find a config file
+ FcConfigParseAndLoad -- load a configuration file
+ FcConfigGetSysRoot -- Obtain the system root directory
+ FcConfigSetSysRoot -- Set the system root directory
+
+ An FcConfig object holds the internal representation of a
+ configuration. There is a default configuration which
+ applications may use by passing 0 to any function using the
+ data within an FcConfig.
+
+FcConfigCreate
+
+Name
+
+ FcConfigCreate -- Create a configuration
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
FcConfig * FcConfigCreate(void);
@@ -3126,91 +2846,76 @@ Description
Creates an empty configuration.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigReference
+FcConfigReference
Name
- FcConfigReference -- Increment config reference count
+ FcConfigReference -- Increment config reference count
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcConfig * FcConfigReference(FcConfig *config);
Description
- Add another reference to config. Configs are freed only when the reference
- count reaches zero. If config is NULL, the current configuration is used.
- In that case this function will be similar to FcConfigGetCurrent() except
- that it increments the reference count before returning and the user is
- responsible for destroying the configuration when not needed anymore.
-
-Version
+ Add another reference to config. Configs are freed only when
+ the reference count reaches zero. If config is NULL, the
+ current configuration is used. In that case this function will
+ be similar to FcConfigGetCurrent() except that it increments
+ the reference count before returning and the user is
+ responsible for destroying the configuration when not needed
+ anymore.
- Fontconfig version 2.10.91
-
- FcConfigDestroy
+FcConfigDestroy
Name
- FcConfigDestroy -- Destroy a configuration
+ FcConfigDestroy -- Destroy a configuration
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcConfigDestroy(FcConfig *config);
Description
- Decrements the config reference count. If all references are gone,
- destroys the configuration and any data associated with it. Note that
- calling this function with the return from FcConfigGetCurrent will cause a
- new configuration to be created for use as current configuration.
-
-Version
-
- Fontconfig version 2.10.91
+ Decrements the config reference count. If all references are
+ gone, destroys the configuration and any data associated with
+ it. Note that calling this function with the return from
+ FcConfigGetCurrent will cause a new configuration to be created
+ for use as current configuration.
- FcConfigSetCurrent
+FcConfigSetCurrent
Name
- FcConfigSetCurrent -- Set configuration as default
+ FcConfigSetCurrent -- Set configuration as default
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcConfigSetCurrent(FcConfig *config);
Description
- Sets the current default configuration to config. Implicitly calls
- FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-
-Version
-
- Fontconfig version 2.10.91
+ 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);
@@ -3218,996 +2923,922 @@ Description
Returns the current default configuration.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigUptoDate
+FcConfigUptoDate
Name
- FcConfigUptoDate -- Check timestamps on config files
+ FcConfigUptoDate -- Check timestamps on config files
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcConfigUptoDate(FcConfig *config);
Description
- Checks all of the files related to config and returns whether any of them
- has been modified since the configuration was created. If config is NULL,
- the current configuration is used.
+ Checks all of the files related to config and returns whether
+ any of them has been modified since the configuration was
+ created. If config is NULL, the current configuration is used.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigHome
+FcConfigHome
Name
- FcConfigHome -- return the current home directory.
+ FcConfigHome -- return the current home directory.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcConfigHome(void);
Description
- Return the current user's home directory, if it is available, and if using
- it is enabled, and NULL otherwise. See also FcConfigEnableHome).
+ Return the current user's home directory, if it is available,
+ and if using it is enabled, and NULL otherwise. See also
+ FcConfigEnableHome).
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigEnableHome
+FcConfigEnableHome
Name
- FcConfigEnableHome -- controls use of the home directory.
+ FcConfigEnableHome -- controls use of the home directory.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcConfigEnableHome(FcBool enable);
Description
- If enable is FcTrue, then Fontconfig will use various files which are
- specified relative to the user's home directory (using the ~ notation in
- the configuration). When enable is FcFalse, then all use of the home
- directory in these contexts will be disabled. The previous setting of the
- value is returned.
-
-Version
+ If enable is FcTrue, then Fontconfig will use various files
+ which are specified relative to the user's home directory
+ (using the ~ notation in the configuration). When enable is
+ FcFalse, then all use of the home directory in these contexts
+ will be disabled. The previous setting of the value is
+ returned.
- Fontconfig version 2.10.91
-
- FcConfigBuildFonts
+FcConfigBuildFonts
Name
- FcConfigBuildFonts -- Build font database
+ FcConfigBuildFonts -- Build font database
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcConfigBuildFonts(FcConfig *config);
Description
- Builds the set of available fonts for the given configuration. Note that
- any changes to the configuration after this call have indeterminate
- effects. Returns FcFalse if this operation runs out of memory. If config
- is NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Builds the set of available fonts for the given configuration.
+ Note that any changes to the configuration after this call have
+ indeterminate effects. Returns FcFalse if this operation runs
+ out of memory. If config is NULL, the current configuration is
+ used.
- FcConfigGetConfigDirs
+FcConfigGetConfigDirs
Name
- FcConfigGetConfigDirs -- Get config directories
+ FcConfigGetConfigDirs -- Get config directories
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrList * FcConfigGetConfigDirs(FcConfig *config);
Description
- Returns the list of font directories specified in the configuration files
- for config. Does not include any subdirectories. If config is NULL, the
- current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns the list of font directories specified in the
+ configuration files for config. Does not include any
+ subdirectories. If config is NULL, the current configuration is
+ used.
- FcConfigGetFontDirs
+FcConfigGetFontDirs
Name
- FcConfigGetFontDirs -- Get font directories
+ FcConfigGetFontDirs -- Get font directories
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrList * FcConfigGetFontDirs(FcConfig *config);
Description
- Returns the list of font directories in config. This includes the
- configured font directories along with any directories below those in the
- filesystem. If config is NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns the list of font directories in config. This includes
+ the configured font directories along with any directories
+ below those in the filesystem. If config is NULL, the current
+ configuration is used.
- FcConfigGetConfigFiles
+FcConfigGetConfigFiles
Name
- FcConfigGetConfigFiles -- Get config files
+ FcConfigGetConfigFiles -- Get config files
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrList * FcConfigGetConfigFiles(FcConfig *config);
Description
- Returns the list of known configuration files used to generate config. If
- config is NULL, the current configuration is used.
-
-Version
+ Returns the list of known configuration files used to generate
+ config. If config is NULL, the current configuration is used.
- Fontconfig version 2.10.91
-
- FcConfigGetCache
+FcConfigGetCache
Name
- FcConfigGetCache -- DEPRECATED used to return per-user cache filename
+ FcConfigGetCache -- DEPRECATED used to return per-user cache
+ filename
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcConfigGetCache(FcConfig *config);
Description
- With fontconfig no longer using per-user cache files, this function now
- simply returns NULL to indicate that no per-user file exists.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ FcConfigGetCacheDirs returns a string list containing all of
+ the directories that fontconfig will search when attempting to
+ load a cache file for a font directory. If config is NULL, the
+ current configuration is used.
- FcConfigGetFonts
+FcConfigGetFonts
Name
- FcConfigGetFonts -- Get config font set
+ FcConfigGetFonts -- Get config font set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcFontSet * FcConfigGetFonts(FcConfig *config, FcSetName set);
Description
- Returns one of the two sets of fonts from the configuration as specified
- by set. This font set is owned by the library and must not be modified or
- freed. If config is NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns one of the two sets of fonts from the configuration as
+ specified by set. This font set is owned by the library and
+ must not be modified or freed. If config is NULL, the current
+ configuration is used.
- FcConfigGetBlanks
+FcConfigGetBlanks
Name
- FcConfigGetBlanks -- Get config blanks
+ FcConfigGetBlanks -- Get config blanks
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBlanks * FcConfigGetBlanks(FcConfig *config);
Description
- Returns the FcBlanks object associated with the given configuration, if no
- blanks were present in the configuration, this function will return 0. The
- returned FcBlanks object if not NULL, is valid as long as the owning
- FcConfig is alive. If config is NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns the FcBlanks object associated with the given
+ configuration, if no blanks were present in the configuration,
+ this function will return 0. The returned FcBlanks object if
+ not NULL, is valid as long as the owning FcConfig is alive. If
+ config is NULL, the current configuration is used.
- FcConfigGetRescanInterval
+FcConfigGetRescanInterval
Name
- FcConfigGetRescanInterval -- Get config rescan interval
+ FcConfigGetRescanInterval -- Get config rescan interval
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcConfigGetRescanInterval(FcConfig *config);
Description
- Returns the interval between automatic checks of the configuration (in
- seconds) specified in config. The configuration is checked during a call
- to FcFontList when this interval has passed since the last check. An
- interval setting of zero disables automatic checks. If config is NULL, the
+ Returns the interval between automatic checks of the
+ configuration (in seconds) specified in config. The
+ configuration is checked during a call to FcFontList when this
+ interval has passed since the last check. An interval setting
+ of zero disables automatic checks. If config is NULL, the
current configuration is used.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigSetRescanInterval
+FcConfigSetRescanInterval
Name
- FcConfigSetRescanInterval -- Set config rescan interval
+ FcConfigSetRescanInterval -- Set config rescan interval
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcConfigSetRescanInterval(FcConfig *config, int rescanInterval);
+ FcBool FcConfigSetRescanInterval(FcConfig *config, int
+ rescanInterval);
Description
- Sets the rescan interval. Returns FcFalse if the interval cannot be set
- (due to allocation failure). Otherwise returns FcTrue. An interval setting
- of zero disables automatic checks. If config is NULL, the current
- configuration is used.
+ Sets the rescan interval. Returns FcFalse if the interval
+ cannot be set (due to allocation failure). Otherwise returns
+ FcTrue. An interval setting of zero disables automatic checks.
+ If config is NULL, the current configuration is used.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigAppFontAddFile
+FcConfigAppFontAddFile
Name
- FcConfigAppFontAddFile -- Add font file to font database
+ FcConfigAppFontAddFile -- Add font file to font database
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcConfigAppFontAddFile(FcConfig *config, const FcChar8 *file);
+ FcBool FcConfigAppFontAddFile(FcConfig *config, const FcChar8
+ *file);
Description
- Adds an application-specific font to the configuration. Returns FcFalse if
- the fonts cannot be added (due to allocation failure). Otherwise returns
- FcTrue. If config is NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Adds an application-specific font to the configuration. Returns
+ FcFalse if the fonts cannot be added (due to allocation failure
+ or no fonts found). Otherwise returns FcTrue. If config is
+ NULL, the current configuration is used.
- FcConfigAppFontAddDir
+FcConfigAppFontAddDir
Name
- FcConfigAppFontAddDir -- Add fonts from directory to font database
+ FcConfigAppFontAddDir -- Add fonts from directory to font
+ database
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcConfigAppFontAddDir(FcConfig *config, const FcChar8 *dir);
+ FcBool FcConfigAppFontAddDir(FcConfig *config, const FcChar8
+ *dir);
Description
- Scans the specified directory for fonts, adding each one found to the
- application-specific set of fonts. Returns FcFalse if the fonts cannot be
- added (due to allocation failure). Otherwise returns FcTrue. If config is
- NULL, the current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Scans the specified directory for fonts, adding each one found
+ to the application-specific set of fonts. Returns FcFalse if
+ the fonts cannot be added (due to allocation failure or no
+ fonts found). Otherwise returns FcTrue. If config is NULL, the
+ current configuration is used.
- FcConfigAppFontClear
+FcConfigAppFontClear
Name
- FcConfigAppFontClear -- Remove all app fonts from font database
+ FcConfigAppFontClear -- Remove all app fonts from font database
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcConfigAppFontClear(FcConfig *config);
Description
- Clears the set of application-specific fonts. If config is NULL, the
- current configuration is used.
-
-Version
-
- Fontconfig version 2.10.91
+ Clears the set of application-specific fonts. If config is
+ NULL, the current configuration is used.
- FcConfigSubstituteWithPat
+FcConfigSubstituteWithPat
Name
- FcConfigSubstituteWithPat -- Execute substitutions
+ FcConfigSubstituteWithPat -- Execute substitutions
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcConfigSubstituteWithPat(FcConfig *config, FcPattern *p, FcPattern
- *p_pat, FcMatchKind kind);
+ FcBool FcConfigSubstituteWithPat(FcConfig *config, FcPattern
+ *p, FcPattern *p_pat, FcMatchKind kind);
Description
- Performs the sequence of pattern modification operations, if kind is
- FcMatchPattern, then those tagged as pattern operations are applied, else
- if kind is FcMatchFont, those tagged as font operations are applied and
- p_pat is used for <test> elements with target=pattern. Returns FcFalse if
- the substitution cannot be performed (due to allocation failure).
- Otherwise returns FcTrue. If config is NULL, the current configuration is
- used.
-
-Version
-
- Fontconfig version 2.10.91
+ Performs the sequence of pattern modification operations, if
+ kind is FcMatchPattern, then those tagged as pattern operations
+ are applied, else if kind is FcMatchFont, those tagged as font
+ operations are applied and p_pat is used for <test> elements
+ with target=pattern. Returns FcFalse if the substitution cannot
+ be performed (due to allocation failure). Otherwise returns
+ FcTrue. If config is NULL, the current configuration is used.
- FcConfigSubstitute
+FcConfigSubstitute
Name
- FcConfigSubstitute -- Execute substitutions
+ FcConfigSubstitute -- Execute substitutions
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcConfigSubstitute(FcConfig *config, FcPattern *p, FcMatchKind
- kind);
+ FcBool FcConfigSubstitute(FcConfig *config, FcPattern *p,
+ FcMatchKind kind);
Description
- Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse if
- the substitution cannot be performed (due to allocation failure).
- Otherwise returns FcTrue. If config is NULL, the current configuration is
- used.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ Finds the font in sets most closely matching pattern and
+ returns the result of FcFontRenderPrepare for that font and the
+ provided pattern. This function should be called only after
+ FcConfigSubstitute and FcDefaultSubstitute have been called for
+ 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.
-
-Version
+ FcFontSetDestroy. If config is NULL, the current configuration
+ is used.
- Fontconfig version 2.10.91
-
- 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.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- 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.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
+ 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.
-Version
-
- Fontconfig version 2.10.91
-
- FcConfigParseAndLoad
+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.
-Version
+FcConfigGetSysRoot
- Fontconfig version 2.10.91
+Name
- --------------------------------------------------------------------------
+ FcConfigGetSysRoot -- Obtain the system root directory
- FcObjectType
+Synopsis
- Table of Contents
+#include <fontconfig/fontconfig.h>
- [125]FcNameRegisterObjectTypes -- Register object types
+ const FcChar8 * FcConfigGetSysRoot(const FcConfig *config);
- [126]FcNameUnregisterObjectTypes -- Unregister object types
+Description
- [127]FcNameGetObjectType -- Lookup an object type
+ Obtrains the system root directory in 'config' if available.
- Provides for application-specified font name object types so that new
- pattern elements can be generated from font names.
+Since
- FcNameRegisterObjectTypes
+ version 2.10.92
+
+FcConfigSetSysRoot
Name
- FcNameRegisterObjectTypes -- Register object types
+ FcConfigSetSysRoot -- Set the system root directory
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int ntype);
+ void FcConfigSetSysRoot(FcConfig *config, const FcChar8
+ *sysroot);
Description
- Deprecated. Does nothing. Returns FcFalse.
+ 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
-Version
+ version 2.10.92
+ __________________________________________________________
+
+FcObjectType
+
+ Table of Contents
+ FcNameRegisterObjectTypes -- Register object types
+ FcNameUnregisterObjectTypes -- Unregister object types
+ FcNameGetObjectType -- Lookup an object type
- Fontconfig version 2.10.91
+ Provides for application-specified font name object types so
+ that new pattern elements can be generated from font names.
- FcNameUnregisterObjectTypes
+FcNameRegisterObjectTypes
Name
- FcNameUnregisterObjectTypes -- Unregister object types
+ FcNameRegisterObjectTypes -- Register object types
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcNameUnregisterObjectTypes(const FcObjectType *types, int ntype);
+ FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int
+ ntype);
Description
Deprecated. Does nothing. Returns FcFalse.
-Version
-
- Fontconfig version 2.10.91
-
- FcNameGetObjectType
+FcNameUnregisterObjectTypes
Name
- FcNameGetObjectType -- Lookup an object type
+ FcNameUnregisterObjectTypes -- Unregister object types
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- const FcObjectType * FcNameGetObjectType(const char *object);
+ FcBool FcNameUnregisterObjectTypes(const FcObjectType *types,
+ int ntype);
Description
- Return the object type for the pattern element named object.
+ Deprecated. Does nothing. Returns FcFalse.
-Version
+FcNameGetObjectType
- Fontconfig version 2.10.91
+Name
- --------------------------------------------------------------------------
+ FcNameGetObjectType -- Lookup an object type
- FcConstant
+Synopsis
- Table of Contents
+#include <fontconfig/fontconfig.h>
- [128]FcNameRegisterConstants -- Register symbolic constants
+ const FcObjectType * FcNameGetObjectType(const char *object);
- [129]FcNameUnregisterConstants -- Unregister symbolic constants
+Description
- [130]FcNameGetConstant -- Lookup symbolic constant
+ Return the object type for the pattern element named object.
+ __________________________________________________________
- [131]FcNameConstant -- Get the value for a symbolic constant
+FcConstant
- Provides for application-specified symbolic constants for font names.
+ Table of Contents
+ FcNameRegisterConstants -- Register symbolic constants
+ FcNameUnregisterConstants -- Unregister symbolic constants
+ FcNameGetConstant -- Lookup symbolic constant
+ FcNameConstant -- Get the value for a symbolic constant
- FcNameRegisterConstants
+ Provides for application-specified symbolic constants for font
+ names.
+
+FcNameRegisterConstants
Name
- FcNameRegisterConstants -- Register symbolic constants
+ FcNameRegisterConstants -- Register symbolic constants
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcNameRegisterConstants(const FcConstant *consts, int nconsts);
+ FcBool FcNameRegisterConstants(const FcConstant *consts, int
+ nconsts);
Description
Deprecated. Does nothing. Returns FcFalse.
-Version
-
- Fontconfig version 2.10.91
-
- FcNameUnregisterConstants
+FcNameUnregisterConstants
Name
- FcNameUnregisterConstants -- Unregister symbolic constants
+ FcNameUnregisterConstants -- Unregister symbolic constants
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcNameUnregisterConstants(const FcConstant *consts, int nconsts);
+ FcBool FcNameUnregisterConstants(const FcConstant *consts, int
+ nconsts);
Description
Deprecated. Does nothing. Returns FcFalse.
-Version
-
- Fontconfig version 2.10.91
-
- FcNameGetConstant
+FcNameGetConstant
Name
- FcNameGetConstant -- Lookup symbolic constant
+ FcNameGetConstant -- Lookup symbolic constant
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
const FcConstant * FcNameGetConstant(FcChar8 *string);
Description
- Return the FcConstant structure related to symbolic constant string.
-
-Version
+ Return the FcConstant structure related to symbolic constant
+ string.
- Fontconfig version 2.10.91
-
- 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.
-
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
+ Returns whether a symbolic constant with name string is
+ registered, placing the value of the constant in result if
+ present.
+ __________________________________________________________
- FcBlanks
+FcWeight
Table of Contents
+ FcWeightFromOpenType -- Convert from OpenType weight values to
+ fontconfig ones
- [132]FcBlanksCreate -- Create an FcBlanks
+ FcWeightToOpenType -- Convert from fontconfig weight values to
+ OpenType ones
- [133]FcBlanksDestroy -- Destroy and FcBlanks
+ Maps weights to and from OpenType weights.
- [134]FcBlanksAdd -- Add a character to an FcBlanks
-
- [135]FcBlanksIsMember -- Query membership in an FcBlanks
-
- An FcBlanks object holds a list of Unicode chars which are expected to be
- blank when drawn. When scanning new fonts, any glyphs which are empty and
- not in this list will be assumed to be broken and not placed in the
- FcCharSet associated with the font. This provides a significantly more
- accurate CharSet for applications.
-
- FcBlanksCreate
+FcWeightFromOpenType
Name
- FcBlanksCreate -- Create an FcBlanks
+ FcWeightFromOpenType -- Convert from OpenType weight values to
+ fontconfig ones
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBlanks * FcBlanksCreate(void);
+ int FcWeightFromOpenType(intot_weight);
Description
- Creates an empty FcBlanks object.
+ FcWeightFromOpenType returns an integer value to use with
+ FC_WEIGHT, from an integer in the 1..1000 range, resembling the
+ numbers from OpenType specification's OS/2 usWeight numbers,
+ which are also similar to CSS font-weight numbers. If input is
+ negative, zero, or greater than 1000, returns -1. This function
+ linearly interpolates between various FC_WEIGHT_* constants. As
+ such, the returned value does not necessarily match any of the
+ predefined constants.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.11.91
- FcBlanksDestroy
+FcWeightToOpenType
Name
- FcBlanksDestroy -- Destroy and FcBlanks
+ FcWeightToOpenType -- Convert from fontconfig weight values to
+ OpenType ones
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- void FcBlanksDestroy(FcBlanks *b);
+ int FcWeightToOpenType(intot_weight);
Description
- Destroys an FcBlanks object, freeing any associated memory.
+ FcWeightToOpenType is the inverse of FcWeightFromOpenType. If
+ the input is less than FC_WEIGHT_THIN or greater than
+ FC_WEIGHT_EXTRABLACK, returns -1. Otherwise returns a number in
+ the range 1 to 1000.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.11.91
+ __________________________________________________________
- FcBlanksAdd
+FcBlanks
-Name
+ Table of Contents
+ FcBlanksCreate -- Create an FcBlanks
+ FcBlanksDestroy -- Destroy and FcBlanks
+ FcBlanksAdd -- Add a character to an FcBlanks
+ FcBlanksIsMember -- Query membership in an FcBlanks
- FcBlanksAdd -- Add a character to an FcBlanks
+ An FcBlanks object holds a list of Unicode chars which are
+ expected to be blank when drawn. When scanning new fonts, any
+ glyphs which are empty and not in this list will be assumed to
+ be broken and not placed in the FcCharSet associated with the
+ font. This provides a significantly more accurate CharSet for
+ applications.
-Synopsis
+FcBlanksCreate
- #include <fontconfig/fontconfig.h>
+Name
+ FcBlanksCreate -- Create an FcBlanks
- FcBool FcBlanksAdd(FcBlanks *b, FcChar32 ucs4);
+Synopsis
-Description
+#include <fontconfig/fontconfig.h>
- Adds a single character to an FcBlanks object, returning FcFalse if this
- process ran out of memory.
+ FcBlanks * FcBlanksCreate(void);
-Version
+Description
- Fontconfig version 2.10.91
+ Creates an empty FcBlanks object.
- FcBlanksIsMember
+FcBlanksDestroy
Name
- FcBlanksIsMember -- Query membership in an FcBlanks
+ FcBlanksDestroy -- Destroy and FcBlanks
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcBlanksIsMember(FcBlanks *b, FcChar32 ucs4);
+ void FcBlanksDestroy(FcBlanks *b);
Description
- Returns whether the specified FcBlanks object contains the indicated
- Unicode value.
+ Destroys an FcBlanks object, freeing any associated memory.
-Version
+FcBlanksAdd
- Fontconfig version 2.10.91
+Name
- --------------------------------------------------------------------------
+ FcBlanksAdd -- Add a character to an FcBlanks
- FcAtomic
+Synopsis
- Table of Contents
+#include <fontconfig/fontconfig.h>
- [136]FcAtomicCreate -- create an FcAtomic object
+ FcBool FcBlanksAdd(FcBlanks *b, FcChar32 ucs4);
- [137]FcAtomicLock -- lock a file
+Description
- [138]FcAtomicNewFile -- return new temporary file name
+ Adds a single character to an FcBlanks object, returning
+ FcFalse if this process ran out of memory.
- [139]FcAtomicOrigFile -- return original file name
+FcBlanksIsMember
- [140]FcAtomicReplaceOrig -- replace original with new
+Name
- [141]FcAtomicDeleteNew -- delete new file
+ FcBlanksIsMember -- Query membership in an FcBlanks
- [142]FcAtomicUnlock -- unlock a file
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+ FcBool FcBlanksIsMember(FcBlanks *b, FcChar32 ucs4);
+
+Description
+
+ Returns whether the specified FcBlanks object contains the
+ indicated Unicode value.
+ __________________________________________________________
- [143]FcAtomicDestroy -- destroy an FcAtomic object
+FcAtomic
- 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.
+ 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
+
+ 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.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcAtomicLock
+FcAtomicLock
Name
- FcAtomicLock -- lock a file
+ FcAtomicLock -- lock a file
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcAtomicLock(FcAtomic *atomic);
Description
- Attempts to lock the file referenced by atomic. Returns FcFalse if the
- file is already locked, else returns FcTrue and leaves the file locked.
-
-Version
+ Attempts to lock the file referenced by atomic. Returns FcFalse
+ if the file is already locked, else returns FcTrue and leaves
+ the file locked.
- Fontconfig version 2.10.91
-
- FcAtomicNewFile
+FcAtomicNewFile
Name
- FcAtomicNewFile -- return new temporary file name
+ FcAtomicNewFile -- return new temporary file name
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcAtomicNewFile(FcAtomic *atomic);
Description
- Returns the filename for writing a new version of the file referenced by
- atomic.
-
-Version
-
- Fontconfig version 2.10.91
+ Returns the filename for writing a new version of the file
+ referenced by atomic.
- FcAtomicOrigFile
+FcAtomicOrigFile
Name
- FcAtomicOrigFile -- return original file name
+ FcAtomicOrigFile -- return original file name
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcAtomicOrigFile(FcAtomic *atomic);
@@ -4215,64 +3846,50 @@ Description
Returns the file referenced by atomic.
-Version
-
- Fontconfig version 2.10.91
-
- FcAtomicReplaceOrig
+FcAtomicReplaceOrig
Name
- FcAtomicReplaceOrig -- replace original with new
+ FcAtomicReplaceOrig -- replace original with new
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcAtomicReplaceOrig(FcAtomic *atomic);
Description
- Replaces the original file referenced by atomic with the new file. Returns
- FcFalse if the file cannot be replaced due to permission issues in the
- filesystem. Otherwise returns FcTrue.
+ Replaces the original file referenced by atomic with the new
+ file. Returns FcFalse if the file cannot be replaced due to
+ permission issues in the filesystem. Otherwise returns FcTrue.
-Version
-
- Fontconfig version 2.10.91
-
- FcAtomicDeleteNew
+FcAtomicDeleteNew
Name
- FcAtomicDeleteNew -- delete new file
+ FcAtomicDeleteNew -- delete new file
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcAtomicDeleteNew(FcAtomic *atomic);
Description
- Deletes the new file. Used in error recovery to back out changes.
-
-Version
+ Deletes the new file. Used in error recovery to back out
+ changes.
- Fontconfig version 2.10.91
-
- FcAtomicUnlock
+FcAtomicUnlock
Name
- FcAtomicUnlock -- unlock a file
+ FcAtomicUnlock -- unlock a file
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcAtomicUnlock(FcAtomic *atomic);
@@ -4280,402 +3897,347 @@ Description
Unlocks the file.
-Version
-
- Fontconfig version 2.10.91
-
- FcAtomicDestroy
+FcAtomicDestroy
Name
- FcAtomicDestroy -- destroy an FcAtomic object
+ FcAtomicDestroy -- destroy an FcAtomic object
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcAtomicDestroy(FcAtomic *atomic);
Description
Destroys atomic.
+ __________________________________________________________
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
-
- File and Directory routines
+File and Directory routines
Table of Contents
+ FcFileScan -- scan a font file
+ FcFileIsDir -- check whether a file is a directory
+ FcDirScan -- scan a font directory without caching it
+ FcDirSave -- DEPRECATED: formerly used to save a directory
+ cache
- [144]FcFileScan -- scan a font file
-
- [145]FcFileIsDir -- check whether a file is a directory
-
- [146]FcDirScan -- scan a font directory without caching it
-
- [147]FcDirSave -- DEPRECATED: formerly used to save a directory cache
-
- [148]FcDirCacheUnlink -- Remove all caches related to dir
-
- [149]FcDirCacheValid -- check directory cache
-
- [150]FcDirCacheLoad -- load a directory cache
-
- [151]FcDirCacheRead -- read or construct a directory cache
-
- [152]FcDirCacheLoadFile -- load a cache file
-
- [153]FcDirCacheUnload -- unload a cache file
+ 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
- These routines work with font files and directories, including font
- directory cache files.
+ These routines work with font files and directories, including
+ font directory cache files.
- FcFileScan
+FcFileScan
Name
- FcFileScan -- scan a font file
+ FcFileScan -- scan a font file
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcFileScan(FcFontSet *set, FcStrSet *dirs, FcFileCache *cache,
- FcBlanks *blanks, const FcChar8 *file, FcBool force);
+ FcBool FcFileScan(FcFontSet *set, FcStrSet *dirs, FcFileCache
+ *cache, FcBlanks *blanks, const FcChar8 *file, FcBool force);
Description
- Scans a single file and adds all fonts found to set. If force is FcTrue,
- then the file is scanned even if associated information is found in cache.
- If file is a directory, it is added to dirs. Whether fonts are found
- depends on fontconfig policy as well as the current configuration.
- Internally, fontconfig will ignore BDF and PCF fonts which are not in
- Unicode (or the effectively equivalent ISO Latin-1) encoding as those are
- not usable by Unicode-based applications. The configuration can ignore
- fonts based on filename or contents of the font file itself. Returns
- FcFalse if any of the fonts cannot be added (due to allocation failure).
- Otherwise returns FcTrue.
-
-Version
-
- Fontconfig version 2.10.91
+ Scans a single file and adds all fonts found to set. If force
+ is FcTrue, then the file is scanned even if associated
+ information is found in cache. If file is a directory, it is
+ added to dirs. Whether fonts are found depends on fontconfig
+ policy as well as the current configuration. Internally,
+ fontconfig will ignore BDF and PCF fonts which are not in
+ Unicode (or the effectively equivalent ISO Latin-1) encoding as
+ those are not usable by Unicode-based applications. The
+ configuration can ignore fonts based on filename or contents of
+ the font file itself. Returns FcFalse if any of the fonts
+ cannot be added (due to allocation failure). Otherwise returns
+ FcTrue.
- FcFileIsDir
+FcFileIsDir
Name
- FcFileIsDir -- check whether a file is a directory
+ FcFileIsDir -- check whether a file is a directory
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcFileIsDir(const FcChar8 *file);
Description
- Returns FcTrue if file is a directory, otherwise returns FcFalse.
-
-Version
+ Returns FcTrue if file is a directory, otherwise returns
+ FcFalse.
- Fontconfig version 2.10.91
-
- 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.
-Version
-
- Fontconfig version 2.10.91
-
- FcDirSave
+FcDirSave
Name
- FcDirSave -- DEPRECATED: formerly used to save a directory cache
+ FcDirSave -- DEPRECATED: formerly used to save a directory
+ cache
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcDirSave(FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
+ FcBool FcDirSave(FcFontSet *set, FcStrSet *dirs, const FcChar8
+ *dir);
Description
- This function now does nothing aside from returning FcFalse. It used to
- creates the per-directory cache file for dir and populates it with the
- fonts in set and subdirectories in dirs. All of this functionality is now
- automatically managed by FcDirCacheLoad and FcDirCacheRead.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcDirCacheUnlink
+FcDirCacheUnlink
Name
- FcDirCacheUnlink -- Remove all caches related to dir
+ FcDirCacheUnlink -- Remove all caches related to dir
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcDirCacheUnlink(const FcChar8 *dir, FcConfig *config);
Description
- Scans the cache directories in config, removing any instances of the cache
- file for dir. Returns FcFalse when some internal error occurs (out of
- memory, etc). Errors actually unlinking any files are ignored.
-
-Version
+ Scans the cache directories in config, removing any instances
+ of the cache file for dir. Returns FcFalse when some internal
+ error occurs (out of memory, etc). Errors actually unlinking
+ any files are ignored.
- Fontconfig version 2.10.91
-
- FcDirCacheValid
+FcDirCacheValid
Name
- FcDirCacheValid -- check directory cache
+ FcDirCacheValid -- check directory cache
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcDirCacheValid(const FcChar8 *dir);
Description
- Returns FcTrue if dir has an associated valid cache file, else returns
- FcFalse
-
-Version
-
- Fontconfig version 2.10.91
+ Returns FcTrue if dir has an associated valid cache file, else
+ returns FcFalse
- FcDirCacheLoad
+FcDirCacheLoad
Name
- FcDirCacheLoad -- load a directory cache
+ FcDirCacheLoad -- load a directory cache
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcCache * FcDirCacheLoad(const FcChar8 *dir, FcConfig *config, FcChar8
- **cache_file);
+ FcCache * FcDirCacheLoad(const FcChar8 *dir, FcConfig *config,
+ FcChar8 **cache_file);
Description
- Loads the cache related to dir. If no cache file exists, returns NULL. The
- name of the cache file is returned in cache_file, unless that is NULL. See
- also FcDirCacheRead.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
- FcDirCacheRead
+FcDirCacheRescan
Name
- FcDirCacheRead -- read or construct a directory cache
+ FcDirCacheRescan -- Re-scan a directory cache
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force, FcConfig
+ FcCache * FcDirCacheRescan(const FcChar8 *dir, FcConfig
*config);
Description
- This returns a cache for dir. If force is FcFalse, then an existing, valid
- cache file will be used. Otherwise, a new cache will be created by
- scanning the directory and that returned.
+ Re-scan directories only at dir and update the cache. returns
+ NULL if failed.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.11.1
- FcDirCacheLoadFile
+FcDirCacheRead
Name
- FcDirCacheLoadFile -- load a cache file
+ FcDirCacheRead -- read or construct a directory cache
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct stat
- *file_stat);
+ FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force,
+ FcConfig *config);
Description
- This function loads a directory cache from cache_file. If file_stat is
- non-NULL, it will be filled with the results of stat(2) on the cache file.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
- FcDirCacheUnload
+FcDirCacheLoadFile
Name
- FcDirCacheUnload -- unload a cache file
+ FcDirCacheLoadFile -- load a cache file
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- void FcDirCacheUnload(FcCache *cache);
+ FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct
+ stat *file_stat);
Description
- This function dereferences cache. When no other references to it remain,
- all memory associated with the cache will be freed.
+ This function loads a directory cache from cache_file. If
+ file_stat is non-NULL, it will be filled with the results of
+ stat(2) on the cache file.
-Version
+FcDirCacheUnload
- Fontconfig version 2.10.91
+Name
- --------------------------------------------------------------------------
+ FcDirCacheUnload -- unload a cache file
- FcCache routines
+Synopsis
- Table of Contents
+#include <fontconfig/fontconfig.h>
- [154]FcCacheDir -- Return directory of cache
+ void FcDirCacheUnload(FcCache *cache);
- [155]FcCacheCopySet -- Returns a copy of the fontset from cache
+Description
- [156]FcCacheSubdir -- Return the i'th subdirectory.
+ This function dereferences cache. When no other references to
+ it remain, all memory associated with the cache will be freed.
+ __________________________________________________________
- [157]FcCacheNumSubdir -- Return the number of subdirectories in cache.
+FcCache routines
- [158]FcCacheNumFont -- Returns the number of fonts in cache.
+ Table of Contents
+ FcCacheDir -- Return directory of cache
+ FcCacheCopySet -- Returns a copy of the fontset from cache
+ FcCacheSubdir -- Return the i'th subdirectory.
+ FcCacheNumSubdir -- Return the number of subdirectories in
+ cache.
- [159]FcDirCacheClean -- This tries to clean up the cache directory of
- cache_dir. This returns FcTrue if the operation is successfully complete.
- otherwise FcFalse.
+ FcCacheNumFont -- Returns the number of fonts in cache.
+ FcDirCacheClean -- This tries to clean up the cache directory
+ of cache_dir. This returns FcTrue if the operation is
+ successfully complete. otherwise FcFalse.
- [160]FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
+ FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
- These routines work with font directory caches, accessing their contents
- in limited ways. It is not expected that normal applications will need to
- use these functions.
+ These routines work with font directory caches, accessing their
+ contents in limited ways. It is not expected that normal
+ applications will need to use these functions.
- FcCacheDir
+FcCacheDir
Name
- FcCacheDir -- Return directory of cache
+ FcCacheDir -- Return directory of cache
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
const FcChar8 * FcCacheDir(const FcCache *cache);
Description
- This function returns the directory from which the cache was constructed.
-
-Version
+ This function returns the directory from which the cache was
+ constructed.
- Fontconfig version 2.10.91
-
- FcCacheCopySet
+FcCacheCopySet
Name
- FcCacheCopySet -- Returns a copy of the fontset from cache
+ FcCacheCopySet -- Returns a copy of the fontset from cache
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcFontSet * FcCacheCopySet(const FcCache *cache);
Description
- The returned fontset contains each of the font patterns from cache. This
- fontset may be modified, but the patterns from the cache are read-only.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ The set of subdirectories stored in a cache file are indexed by
+ this function, i should range from 0 to n-1, where n is the
+ return value from FcCacheNumSubdir.
- FcCacheNumSubdir
+FcCacheNumSubdir
Name
- FcCacheNumSubdir -- Return the number of subdirectories in cache.
+ FcCacheNumSubdir -- Return the number of subdirectories in
+ cache.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcCacheNumSubdir(const FcCache *cache);
@@ -4683,116 +4245,94 @@ Description
This returns the total number of subdirectories in the cache.
-Version
-
- Fontconfig version 2.10.91
-
- FcCacheNumFont
+FcCacheNumFont
Name
- FcCacheNumFont -- Returns the number of fonts in cache.
+ FcCacheNumFont -- Returns the number of fonts in cache.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcCacheNumFont(const FcCache *cache);
Description
- This returns the number of fonts which would be included in the return
- from FcCacheCopySet.
+ This returns the number of fonts which would be included in the
+ return from FcCacheCopySet.
-Version
-
- Fontconfig version 2.10.91
-
- FcDirCacheClean
+FcDirCacheClean
Name
- FcDirCacheClean -- This tries to clean up the cache directory of
- cache_dir. This returns FcTrue if the operation is successfully complete.
- otherwise FcFalse.
+ FcDirCacheClean -- This tries to clean up the cache directory
+ of cache_dir. This returns FcTrue if the operation is
+ successfully complete. otherwise FcFalse.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcBool FcDirCacheClean(const FcChar8 *cache_dir, FcBoolverbose);
+ FcBool FcDirCacheClean(const FcChar8 *cache_dir,
+ FcBoolverbose);
Description
+Since
+ version 2.9.91
-Version
-
- Fontconfig version 2.10.91
-
- FcCacheCreateTagFile
+FcCacheCreateTagFile
Name
- FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
+ FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcCacheCreateTagFile(const FcConfig *config);
Description
- This tries to create CACHEDIR.TAG file at the cache directory registered
- to config.
-
-Version
+ This tries to create CACHEDIR.TAG file at the cache directory
+ registered to config.
- Fontconfig version 2.10.91
+Since
- --------------------------------------------------------------------------
+ version 2.9.91
+ __________________________________________________________
- FcStrSet and FcStrList
+FcStrSet and FcStrList
Table of Contents
+ FcStrSetCreate -- create a string set
+ FcStrSetMember -- check set for membership
+ FcStrSetEqual -- check sets for equality
+ FcStrSetAdd -- add to a string set
+ FcStrSetAddFilename -- add a filename to a string set
+ FcStrSetDel -- delete from a string set
+ FcStrSetDestroy -- destroy a string set
+ FcStrListCreate -- create a string iterator
+ FcStrListFirst -- get first string in iteration
+ FcStrListNext -- get next string in iteration
+ FcStrListDone -- destroy a string iterator
- [161]FcStrSetCreate -- create a string set
-
- [162]FcStrSetMember -- check set for membership
-
- [163]FcStrSetEqual -- check sets for equality
-
- [164]FcStrSetAdd -- add to a string set
+ A data structure for enumerating strings, used to list
+ directories while scanning the configuration as directories are
+ added while scanning.
- [165]FcStrSetAddFilename -- add a filename to a string set
-
- [166]FcStrSetDel -- delete from a string set
-
- [167]FcStrSetDestroy -- destroy a string set
-
- [168]FcStrListCreate -- create a string iterator
-
- [169]FcStrListNext -- get next string in iteration
-
- [170]FcStrListDone -- destroy a string iterator
-
- A data structure for enumerating strings, used to list directories while
- scanning the configuration as directories are added while scanning.
-
- FcStrSetCreate
+FcStrSetCreate
Name
- FcStrSetCreate -- create a string set
+ FcStrSetCreate -- create a string set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrSet * FcStrSetCreate(void);
@@ -4800,20 +4340,15 @@ Description
Create an empty set.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrSetMember
+FcStrSetMember
Name
- FcStrSetMember -- check set for membership
+ FcStrSetMember -- check set for membership
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcStrSetMember(FcStrSet *set, const FcChar8 *s);
@@ -4821,42 +4356,33 @@ Description
Returns whether s is a member of set.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrSetEqual
+FcStrSetEqual
Name
- FcStrSetEqual -- check sets for equality
+ FcStrSetEqual -- check sets for equality
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcStrSetEqual(FcStrSet *set_a, FcStrSet *set_b);
Description
- Returns whether set_a contains precisely the same strings as set_b.
- Ordering of strings within the two sets is not considered.
-
-Version
+ Returns whether set_a contains precisely the same strings as
+ set_b. Ordering of strings within the two sets is not
+ considered.
- Fontconfig version 2.10.91
-
- FcStrSetAdd
+FcStrSetAdd
Name
- FcStrSetAdd -- add to a string set
+ FcStrSetAdd -- add to a string set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcStrSetAdd(FcStrSet *set, const FcChar8 *s);
@@ -4864,64 +4390,50 @@ Description
Adds a copy of s to set.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrSetAddFilename
+FcStrSetAddFilename
Name
- FcStrSetAddFilename -- add a filename to a string set
+ FcStrSetAddFilename -- add a filename to a string set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcStrSetAddFilename(FcStrSet *set, const FcChar8 *s);
Description
- Adds a copy s to set, The copy is created with FcStrCopyFilename so that
- leading '~' values are replaced with the value of the HOME environment
- variable.
-
-Version
-
- Fontconfig version 2.10.91
+ Adds a copy s to set, The copy is created with
+ FcStrCopyFilename so that leading '~' values are replaced with
+ the value of the HOME environment variable.
- FcStrSetDel
+FcStrSetDel
Name
- FcStrSetDel -- delete from a string set
+ FcStrSetDel -- delete from a string set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcStrSetDel(FcStrSet *set, const FcChar8 *s);
Description
- Removes s from set, returning FcTrue if s was a member else FcFalse.
-
-Version
+ Removes s from set, returning FcTrue if s was a member else
+ FcFalse.
- Fontconfig version 2.10.91
-
- FcStrSetDestroy
+FcStrSetDestroy
Name
- FcStrSetDestroy -- destroy a string set
+ FcStrSetDestroy -- destroy a string set
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
void FcStrSetDestroy(FcStrSet *set);
@@ -4929,20 +4441,15 @@ Description
Destroys set.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrListCreate
+FcStrListCreate
Name
- FcStrListCreate -- create a string iterator
+ FcStrListCreate -- create a string iterator
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcStrList * FcStrListCreate(FcStrSet *set);
@@ -4950,227 +4457,195 @@ Description
Creates an iterator to list the strings in set.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrListNext
+FcStrListFirst
Name
- FcStrListNext -- get next string in iteration
+ FcStrListFirst -- get first string in iteration
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcChar8 * FcStrListNext(FcStrList *list);
+ void FcStrListFirst(FcStrList *list);
Description
- Returns the next string in set.
+ Returns the first string in list.
-Version
+Since
- Fontconfig version 2.10.91
+ version 2.11.0
- FcStrListDone
+FcStrListNext
Name
- FcStrListDone -- destroy a string iterator
+ FcStrListNext -- get next string in iteration
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- void FcStrListDone(FcStrList *list);
+ FcChar8 * FcStrListNext(FcStrList *list);
Description
- Destroys the enumerator list.
-
-Version
-
- Fontconfig version 2.10.91
-
- --------------------------------------------------------------------------
-
- String utilities
-
- Table of Contents
-
- [171]FcUtf8ToUcs4 -- convert UTF-8 to UCS4
-
- [172]FcUcs4ToUtf8 -- convert UCS4 to UTF-8
-
- [173]FcUtf8Len -- count UTF-8 encoded chars
-
- [174]FcUtf16ToUcs4 -- convert UTF-16 to UCS4
-
- [175]FcUtf16Len -- count UTF-16 encoded chars
-
- [176]FcIsLower -- check for lower case ASCII character
-
- [177]FcIsUpper -- check for upper case ASCII character
+ Returns the next string in list.
- [178]FcToLower -- convert upper case ASCII to lower case
+FcStrListDone
- [179]FcStrCopy -- duplicate a string
-
- [180]FcStrDowncase -- create a lower case translation of a string
+Name
- [181]FcStrCopyFilename -- create a complete path from a filename
+ FcStrListDone -- destroy a string iterator
- [182]FcStrCmp -- compare UTF-8 strings
+Synopsis
- [183]FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+#include <fontconfig/fontconfig.h>
- [184]FcStrStr -- locate UTF-8 substring
+ void FcStrListDone(FcStrList *list);
- [185]FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
+Description
- [186]FcStrPlus -- concatenate two strings
+ Destroys the enumerator list.
+ __________________________________________________________
- [187]FcStrFree -- free a string
+String utilities
- [188]FcStrDirname -- directory part of filename
+ Table of Contents
+ FcUtf8ToUcs4 -- convert UTF-8 to UCS4
+ FcUcs4ToUtf8 -- convert UCS4 to UTF-8
+ FcUtf8Len -- count UTF-8 encoded chars
+ FcUtf16ToUcs4 -- convert UTF-16 to UCS4
+ FcUtf16Len -- count UTF-16 encoded chars
+ FcIsLower -- check for lower case ASCII character
+ FcIsUpper -- check for upper case ASCII character
+ FcToLower -- convert upper case ASCII to lower case
+ FcStrCopy -- duplicate a string
+ FcStrDowncase -- create a lower case translation of a string
+ FcStrCopyFilename -- create a complete path from a filename
+ FcStrCmp -- compare UTF-8 strings
+ FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+ FcStrStr -- locate UTF-8 substring
+ FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII
+ case
- [189]FcStrBasename -- last component of filename
+ FcStrPlus -- concatenate two strings
+ FcStrFree -- free a string
+ FcStrDirname -- directory part of filename
+ FcStrBasename -- last component of filename
- Fontconfig manipulates many UTF-8 strings represented with the FcChar8
- type. These functions are exposed to help applications deal with these
- UTF-8 strings in a locale-insensitive manner.
+ Fontconfig manipulates many UTF-8 strings represented with the
+ FcChar8 type. These functions are exposed to help applications
+ deal with these UTF-8 strings in a locale-insensitive manner.
- FcUtf8ToUcs4
+FcUtf8ToUcs4
Name
- FcUtf8ToUcs4 -- convert UTF-8 to UCS4
+ FcUtf8ToUcs4 -- convert UTF-8 to UCS4
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcUtf8ToUcs4(FcChar8 *src, FcChar32 *dst, int len);
Description
- Converts the next Unicode char from src into dst and returns the number of
- bytes containing the char. src must be at least len bytes long.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- FcUcs4ToUtf8
+FcUcs4ToUtf8
Name
- FcUcs4ToUtf8 -- convert UCS4 to UTF-8
+ FcUcs4ToUtf8 -- convert UCS4 to UTF-8
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcUcs4ToUtf8(FcChar32 src, FcChar8 dst[FC_UTF8_MAX_LEN]);
Description
- Converts the Unicode char from src into dst and returns the number of
- bytes needed to encode the char.
+ Converts the Unicode char from src into dst and returns the
+ number of bytes needed to encode the char.
-Version
-
- Fontconfig version 2.10.91
-
- FcUtf8Len
+FcUtf8Len
Name
- FcUtf8Len -- count UTF-8 encoded chars
+ FcUtf8Len -- count UTF-8 encoded chars
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- FcBool FcUtf8Len(FcChar8 *src, int len, int *nchar, int *wchar);
+ FcBool FcUtf8Len(FcChar8 *src, int len, int *nchar, int
+ *wchar);
Description
- Counts the number of Unicode chars in len bytes of src. Places that count
- in nchar. wchar contains 1, 2 or 4 depending on the number of bytes needed
- to hold the largest Unicode char counted. The return value indicates
- whether src is a well-formed UTF8 string.
+ Counts the number of Unicode chars in len bytes of src. Places
+ that count in nchar. wchar contains 1, 2 or 4 depending on the
+ number of bytes needed to hold the largest Unicode char
+ counted. The return value indicates whether src is a
+ well-formed UTF8 string.
-Version
-
- Fontconfig version 2.10.91
-
- FcUtf16ToUcs4
+FcUtf16ToUcs4
Name
- FcUtf16ToUcs4 -- convert UTF-16 to UCS4
+ FcUtf16ToUcs4 -- convert UTF-16 to UCS4
Synopsis
- #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
-
- int FcUtf16ToUcs4(FcChar8 *src, FcEndian endian, FcChar32 *dst, int len);
+ int FcUtf16ToUcs4(FcChar8 *src, FcEndian endian, FcChar32 *dst,
+ int len);
Description
- Converts the next Unicode char from src into dst and returns the number of
- bytes containing the char. src must be at least len bytes long. Bytes of
- src are combined into 16-bit units according to endian.
-
-Version
+ 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.
- Fontconfig version 2.10.91
-
- 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.
-Version
-
- Fontconfig version 2.10.91
-
- FcIsLower
+FcIsLower
Name
- FcIsLower -- check for lower case ASCII character
+ FcIsLower -- check for lower case ASCII character
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcIsLower(FcChar8c);
@@ -5178,20 +4653,15 @@ Description
This macro checks whether c is an lower case ASCII letter.
-Version
-
- Fontconfig version 2.10.91
-
- FcIsUpper
+FcIsUpper
Name
- FcIsUpper -- check for upper case ASCII character
+ FcIsUpper -- check for upper case ASCII character
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcBool FcIsUpper(FcChar8c);
@@ -5199,113 +4669,91 @@ Description
This macro checks whether c is a upper case ASCII letter.
-Version
-
- Fontconfig version 2.10.91
-
- FcToLower
+FcToLower
Name
- FcToLower -- convert upper case ASCII to lower case
+ FcToLower -- convert upper case ASCII to lower case
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 FcToLower(FcChar8c);
Description
- This macro converts upper case ASCII c to the equivalent lower case
- letter.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ Allocates memory, copies s and returns the resulting buffer.
+ Yes, this is strdup, but that function isn't available on every
+ platform.
- FcStrDowncase
+FcStrDowncase
Name
- FcStrDowncase -- create a lower case translation of a string
+ FcStrDowncase -- create a lower case translation of a string
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcStrDowncase(const FcChar8 *s);
Description
- Allocates memory, copies s, converting upper case letters to lower case
- and returns the allocated buffer.
-
-Version
+ Allocates memory, copies s, converting upper case letters to
+ lower case and returns the allocated buffer.
- Fontconfig version 2.10.91
-
- FcStrCopyFilename
+FcStrCopyFilename
Name
- FcStrCopyFilename -- create a complete path from a filename
+ FcStrCopyFilename -- create a complete path from a filename
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcStrCopyFilename(const FcChar8 *s);
Description
- FcStrCopyFilename constructs an absolute pathname from s. It converts any
- leading '~' characters in to the value of the HOME environment variable,
- and any relative paths are converted to absolute paths using the current
- working directory. Sequences of '/' characters are converted to a single
- '/', and names containing the current directory '.' or parent directory
- '..' are correctly reconstructed. Returns NULL if '~' is the leading
- character and HOME is unset or disabled (see FcConfigEnableHome).
+ FcStrCopyFilename constructs an absolute pathname from s. It
+ converts any leading '~' characters in to the value of the HOME
+ environment variable, and any relative paths are converted to
+ absolute paths using the current working directory. Sequences
+ of '/' characters are converted to a single '/', and names
+ containing the current directory '.' or parent directory '..'
+ are correctly reconstructed. Returns NULL if '~' is the leading
+ character and HOME is unset or disabled (see
+ FcConfigEnableHome).
-Version
-
- Fontconfig version 2.10.91
-
- FcStrCmp
+FcStrCmp
Name
- FcStrCmp -- compare UTF-8 strings
+ FcStrCmp -- compare UTF-8 strings
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcStrCmp(const FcChar8 *s1, const FcChar8 *s2);
@@ -5313,355 +4761,127 @@ Description
Returns the usual <0, 0, >0 result of comparing s1 and s2.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrCmpIgnoreCase
+FcStrCmpIgnoreCase
Name
- FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+ FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
int FcStrCmpIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
Description
- Returns the usual <0, 0, >0 result of comparing s1 and s2. This test is
- case-insensitive for all proper UTF-8 encoded strings.
-
-Version
+ Returns the usual <0, 0, >0 result of comparing s1 and s2. This
+ test is case-insensitive for all proper UTF-8 encoded strings.
- Fontconfig version 2.10.91
-
- FcStrStr
+FcStrStr
Name
- FcStrStr -- locate UTF-8 substring
+ FcStrStr -- locate UTF-8 substring
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcStrStr(const FcChar8 *s1, const FcChar8 *s2);
Description
- Returns the location of s2 in s1. Returns NULL if s2 is not present in s1.
- This test will operate properly with UTF8 encoded strings.
-
-Version
+ Returns the location of s2 in s1. Returns NULL if s2 is not
+ present in s1. This test will operate properly with UTF8
+ encoded strings.
- Fontconfig version 2.10.91
-
- FcStrStrIgnoreCase
+FcStrStrIgnoreCase
Name
- FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
+ FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII
+ case
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
- FcChar8 * FcStrStrIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
+ FcChar8 * FcStrStrIgnoreCase(const FcChar8 *s1, const FcChar8
+ *s2);
Description
- Returns the location of s2 in s1, ignoring case. Returns NULL if s2 is not
- present in s1. This test is case-insensitive for all proper UTF-8 encoded
- strings.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
-
- Fontconfig version 2.10.91
+ 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.
-
-Version
+ This is just a wrapper around free(3) which helps track memory
+ usage of strings within the fontconfig library.
- Fontconfig version 2.10.91
-
- FcStrDirname
+FcStrDirname
Name
- FcStrDirname -- directory part of filename
+ FcStrDirname -- directory part of filename
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcStrDirname(const FcChar8 *file);
Description
- Returns the directory containing file. This is returned in newly allocated
- storage which should be freed when no longer needed.
+ Returns the directory containing file. This is returned in
+ newly allocated storage which should be freed when no longer
+ needed.
-Version
-
- Fontconfig version 2.10.91
-
- FcStrBasename
+FcStrBasename
Name
- FcStrBasename -- last component of filename
+ FcStrBasename -- last component of filename
Synopsis
- #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
FcChar8 * FcStrBasename(const FcChar8 *file);
Description
- Returns the filename of file stripped of any leading directory names. This
- is returned in newly allocated storage which should be freed when no
- longer needed.
-
-Version
-
- Fontconfig version 2.10.91
-
-References
-
- Visible links
- 1. file:///tmp/html-l8lfPm#AEN16
- 2. file:///tmp/html-l8lfPm#AEN19
- 3. file:///tmp/html-l8lfPm#AEN31
- 4. file:///tmp/html-l8lfPm#AEN102
- 5. file:///tmp/html-l8lfPm#FCINITLOADCONFIG
- 6. file:///tmp/html-l8lfPm#FCINITLOADCONFIGANDFONTS
- 7. file:///tmp/html-l8lfPm#FCINIT
- 8. file:///tmp/html-l8lfPm#FCFINI
- 9. file:///tmp/html-l8lfPm#FCGETVERSION
- 10. file:///tmp/html-l8lfPm#FCINITREINITIALIZE
- 11. file:///tmp/html-l8lfPm#FCINITBRINGUPTODATE
- 12. file:///tmp/html-l8lfPm#FCPATTERNCREATE
- 13. file:///tmp/html-l8lfPm#FCPATTERNDUPLICATE
- 14. file:///tmp/html-l8lfPm#FCPATTERNREFERENCE
- 15. file:///tmp/html-l8lfPm#FCPATTERNDESTROY
- 16. file:///tmp/html-l8lfPm#FCPATTERNEQUAL
- 17. file:///tmp/html-l8lfPm#FCPATTERNEQUALSUBSET
- 18. file:///tmp/html-l8lfPm#FCPATTERNFILTER
- 19. file:///tmp/html-l8lfPm#FCPATTERNHASH
- 20. file:///tmp/html-l8lfPm#FCPATTERNADD
- 21. file:///tmp/html-l8lfPm#FCPATTERNADDWEAK
- 22. file:///tmp/html-l8lfPm#FCPATTERNADD-TYPE
- 23. file:///tmp/html-l8lfPm#FCPATTERNGET
- 24. file:///tmp/html-l8lfPm#FCPATTERNGET-TYPE
- 25. file:///tmp/html-l8lfPm#FCPATTERNBUILD
- 26. file:///tmp/html-l8lfPm#FCPATTERNDEL
- 27. file:///tmp/html-l8lfPm#FCPATTERNREMOVE
- 28. file:///tmp/html-l8lfPm#FCPATTERNPRINT
- 29. file:///tmp/html-l8lfPm#FCDEFAULTSUBSTITUTE
- 30. file:///tmp/html-l8lfPm#FCNAMEPARSE
- 31. file:///tmp/html-l8lfPm#FCNAMEUNPARSE
- 32. file:///tmp/html-l8lfPm#FCPATTERNFORMAT
- 33. file:///tmp/html-l8lfPm#FCFONTSETCREATE
- 34. file:///tmp/html-l8lfPm#FCFONTSETDESTROY
- 35. file:///tmp/html-l8lfPm#FCFONTSETADD
- 36. file:///tmp/html-l8lfPm#FCFONTSETLIST
- 37. file:///tmp/html-l8lfPm#FCFONTSETMATCH
- 38. file:///tmp/html-l8lfPm#FCFONTSETPRINT
- 39. file:///tmp/html-l8lfPm#FCFONTSETSORT
- 40. file:///tmp/html-l8lfPm#FCFONTSETSORTDESTROY
- 41. file:///tmp/html-l8lfPm#FCOBJECTSETCREATE
- 42. file:///tmp/html-l8lfPm#FCOBJECTSETADD
- 43. file:///tmp/html-l8lfPm#FCOBJECTSETDESTROY
- 44. file:///tmp/html-l8lfPm#FCOBJECTSETBUILD
- 45. file:///tmp/html-l8lfPm#FCFREETYPECHARINDEX
- 46. file:///tmp/html-l8lfPm#FCFREETYPECHARSET
- 47. file:///tmp/html-l8lfPm#FCFREETYPECHARSETANDSPACING
- 48. file:///tmp/html-l8lfPm#FCFREETYPEQUERY
- 49. file:///tmp/html-l8lfPm#FCFREETYPEQUERYFACE
- 50. file:///tmp/html-l8lfPm#FCVALUEDESTROY
- 51. file:///tmp/html-l8lfPm#FCVALUESAVE
- 52. file:///tmp/html-l8lfPm#FCVALUEPRINT
- 53. file:///tmp/html-l8lfPm#FCVALUEEQUAL
- 54. file:///tmp/html-l8lfPm#FCCHARSETCREATE
- 55. file:///tmp/html-l8lfPm#FCCHARSETDESTROY
- 56. file:///tmp/html-l8lfPm#FCCHARSETADDCHAR
- 57. file:///tmp/html-l8lfPm#FCCHARSETDELCHAR
- 58. file:///tmp/html-l8lfPm#FCCHARSETCOPY
- 59. file:///tmp/html-l8lfPm#FCCHARSETEQUAL
- 60. file:///tmp/html-l8lfPm#FCCHARSETINTERSECT
- 61. file:///tmp/html-l8lfPm#FCCHARSETUNION
- 62. file:///tmp/html-l8lfPm#FCCHARSETSUBTRACT
- 63. file:///tmp/html-l8lfPm#FCCHARSETMERGE
- 64. file:///tmp/html-l8lfPm#FCCHARSETHASCHAR
- 65. file:///tmp/html-l8lfPm#FCCHARSETCOUNT
- 66. file:///tmp/html-l8lfPm#FCCHARSETINTERSECTCOUNT
- 67. file:///tmp/html-l8lfPm#FCCHARSETSUBTRACTCOUNT
- 68. file:///tmp/html-l8lfPm#FCCHARSETISSUBSET
- 69. file:///tmp/html-l8lfPm#FCCHARSETFIRSTPAGE
- 70. file:///tmp/html-l8lfPm#FCCHARSETNEXTPAGE
- 71. file:///tmp/html-l8lfPm#FCCHARSETCOVERAGE
- 72. file:///tmp/html-l8lfPm#FCCHARSETNEW
- 73. file:///tmp/html-l8lfPm#FCLANGSETCREATE
- 74. file:///tmp/html-l8lfPm#FCLANGSETDESTROY
- 75. file:///tmp/html-l8lfPm#FCLANGSETCOPY
- 76. file:///tmp/html-l8lfPm#FCLANGSETADD
- 77. file:///tmp/html-l8lfPm#FCLANGSETDEL
- 78. file:///tmp/html-l8lfPm#FCLANGSETUNION
- 79. file:///tmp/html-l8lfPm#FCLANGSETSUBTRACT
- 80. file:///tmp/html-l8lfPm#FCLANGSETCOMPARE
- 81. file:///tmp/html-l8lfPm#FCLANGSETCONTAINS
- 82. file:///tmp/html-l8lfPm#FCLANGSETEQUAL
- 83. file:///tmp/html-l8lfPm#FCLANGSETHASH
- 84. file:///tmp/html-l8lfPm#FCLANGSETHASLANG
- 85. file:///tmp/html-l8lfPm#FCGETDEFAULTLANGS
- 86. file:///tmp/html-l8lfPm#FCGETLANGS
- 87. file:///tmp/html-l8lfPm#FCLANGNORMALIZE
- 88. file:///tmp/html-l8lfPm#FCLANGGETCHARSET
- 89. file:///tmp/html-l8lfPm#FCMATRIXINIT
- 90. file:///tmp/html-l8lfPm#FCMATRIXCOPY
- 91. file:///tmp/html-l8lfPm#FCMATRIXEQUAL
- 92. file:///tmp/html-l8lfPm#FCMATRIXMULTIPLY
- 93. file:///tmp/html-l8lfPm#FCMATRIXROTATE
- 94. file:///tmp/html-l8lfPm#FCMATRIXSCALE
- 95. file:///tmp/html-l8lfPm#FCMATRIXSHEAR
- 96. file:///tmp/html-l8lfPm#FCCONFIGCREATE
- 97. file:///tmp/html-l8lfPm#FCCONFIGREFERENCE
- 98. file:///tmp/html-l8lfPm#FCCONFIGDESTROY
- 99. file:///tmp/html-l8lfPm#FCCONFIGSETCURRENT
- 100. file:///tmp/html-l8lfPm#FCCONFIGGETCURRENT
- 101. file:///tmp/html-l8lfPm#FCCONFIGUPTODATE
- 102. file:///tmp/html-l8lfPm#FCCONFIGHOME
- 103. file:///tmp/html-l8lfPm#FCCONFIGENABLEHOME
- 104. file:///tmp/html-l8lfPm#FCCONFIGBUILDFONTS
- 105. file:///tmp/html-l8lfPm#FCCONFIGGETCONFIGDIRS
- 106. file:///tmp/html-l8lfPm#FCCONFIGGETFONTDIRS
- 107. file:///tmp/html-l8lfPm#FCCONFIGGETCONFIGFILES
- 108. file:///tmp/html-l8lfPm#FCCONFIGGETCACHE
- 109. file:///tmp/html-l8lfPm#FCCONFIGGETCACHEDIRS
- 110. file:///tmp/html-l8lfPm#FCCONFIGGETFONTS
- 111. file:///tmp/html-l8lfPm#FCCONFIGGETBLANKS
- 112. file:///tmp/html-l8lfPm#FCCONFIGGETRESCANINTERVAL
- 113. file:///tmp/html-l8lfPm#FCCONFIGSETRESCANINTERVAL
- 114. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTADDFILE
- 115. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTADDDIR
- 116. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTCLEAR
- 117. file:///tmp/html-l8lfPm#FCCONFIGSUBSTITUTEWITHPAT
- 118. file:///tmp/html-l8lfPm#FCCONFIGSUBSTITUTE
- 119. file:///tmp/html-l8lfPm#FCFONTMATCH
- 120. file:///tmp/html-l8lfPm#FCFONTSORT
- 121. file:///tmp/html-l8lfPm#FCFONTRENDERPREPARE
- 122. file:///tmp/html-l8lfPm#FCFONTLIST
- 123. file:///tmp/html-l8lfPm#FCCONFIGFILENAME
- 124. file:///tmp/html-l8lfPm#FCCONFIGPARSEANDLOAD
- 125. file:///tmp/html-l8lfPm#FCNAMEREGISTEROBJECTTYPES
- 126. file:///tmp/html-l8lfPm#FCNAMEUNREGISTEROBJECTTYPES
- 127. file:///tmp/html-l8lfPm#FCNAMEGETOBJECTTYPE
- 128. file:///tmp/html-l8lfPm#FCNAMEREGISTERCONSTANTS
- 129. file:///tmp/html-l8lfPm#FCNAMEUNREGISTERCONSTANTS
- 130. file:///tmp/html-l8lfPm#FCNAMEGETCONSTANT
- 131. file:///tmp/html-l8lfPm#FCNAMECONSTANT
- 132. file:///tmp/html-l8lfPm#FCBLANKSCREATE
- 133. file:///tmp/html-l8lfPm#FCBLANKSDESTROY
- 134. file:///tmp/html-l8lfPm#FCBLANKSADD
- 135. file:///tmp/html-l8lfPm#FCBLANKSISMEMBER
- 136. file:///tmp/html-l8lfPm#FCATOMICCREATE
- 137. file:///tmp/html-l8lfPm#FCATOMICLOCK
- 138. file:///tmp/html-l8lfPm#FCATOMICNEWFILE
- 139. file:///tmp/html-l8lfPm#FCATOMICORIGFILE
- 140. file:///tmp/html-l8lfPm#FCATOMICREPLACEORIG
- 141. file:///tmp/html-l8lfPm#FCATOMICDELETENEW
- 142. file:///tmp/html-l8lfPm#FCATOMICUNLOCK
- 143. file:///tmp/html-l8lfPm#FCATOMICDESTROY
- 144. file:///tmp/html-l8lfPm#FCFILESCAN
- 145. file:///tmp/html-l8lfPm#FCFILEISDIR
- 146. file:///tmp/html-l8lfPm#FCDIRSCAN
- 147. file:///tmp/html-l8lfPm#FCDIRSAVE
- 148. file:///tmp/html-l8lfPm#FCDIRCACHEUNLINK
- 149. file:///tmp/html-l8lfPm#FCDIRCACHEVALID
- 150. file:///tmp/html-l8lfPm#FCDIRCACHELOAD
- 151. file:///tmp/html-l8lfPm#FCDIRCACHEREAD
- 152. file:///tmp/html-l8lfPm#FCDIRCACHELOADFILE
- 153. file:///tmp/html-l8lfPm#FCDIRCACHEUNLOAD
- 154. file:///tmp/html-l8lfPm#FCCACHEDIR
- 155. file:///tmp/html-l8lfPm#FCCACHECOPYSET
- 156. file:///tmp/html-l8lfPm#FCCACHESUBDIR
- 157. file:///tmp/html-l8lfPm#FCCACHENUMSUBDIR
- 158. file:///tmp/html-l8lfPm#FCCACHENUMFONT
- 159. file:///tmp/html-l8lfPm#FCDIRCACHECLEAN
- 160. file:///tmp/html-l8lfPm#FCCACHECREATETAGFILE
- 161. file:///tmp/html-l8lfPm#FCSTRSETCREATE
- 162. file:///tmp/html-l8lfPm#FCSTRSETMEMBER
- 163. file:///tmp/html-l8lfPm#FCSTRSETEQUAL
- 164. file:///tmp/html-l8lfPm#FCSTRSETADD
- 165. file:///tmp/html-l8lfPm#FCSTRSETADDFILENAME
- 166. file:///tmp/html-l8lfPm#FCSTRSETDEL
- 167. file:///tmp/html-l8lfPm#FCSTRSETDESTROY
- 168. file:///tmp/html-l8lfPm#FCSTRLISTCREATE
- 169. file:///tmp/html-l8lfPm#FCSTRLISTNEXT
- 170. file:///tmp/html-l8lfPm#FCSTRLISTDONE
- 171. file:///tmp/html-l8lfPm#FCUTF8TOUCS4
- 172. file:///tmp/html-l8lfPm#FCUCS4TOUTF8
- 173. file:///tmp/html-l8lfPm#FCUTF8LEN
- 174. file:///tmp/html-l8lfPm#FCUTF16TOUCS4
- 175. file:///tmp/html-l8lfPm#FCUTF16LEN
- 176. file:///tmp/html-l8lfPm#FCISLOWER
- 177. file:///tmp/html-l8lfPm#FCISUPPER
- 178. file:///tmp/html-l8lfPm#FCTOLOWER
- 179. file:///tmp/html-l8lfPm#FCSTRCOPY
- 180. file:///tmp/html-l8lfPm#FCSTRDOWNCASE
- 181. file:///tmp/html-l8lfPm#FCSTRCOPYFILENAME
- 182. file:///tmp/html-l8lfPm#FCSTRCMP
- 183. file:///tmp/html-l8lfPm#FCSTRCMPIGNORECASE
- 184. file:///tmp/html-l8lfPm#FCSTRSTR
- 185. file:///tmp/html-l8lfPm#FCSTRSTRIGNORECASE
- 186. file:///tmp/html-l8lfPm#FCSTRPLUS
- 187. file:///tmp/html-l8lfPm#FCSTRFREE
- 188. file:///tmp/html-l8lfPm#FCSTRDIRNAME
- 189. file:///tmp/html-l8lfPm#FCSTRBASENAME
+ Returns the filename of file stripped of any leading directory
+ names. This is returned in newly allocated storage which should
+ be freed when no longer needed.
diff --git a/doc/fontconfig-devel/fcatomiccreate.html b/doc/fontconfig-devel/fcatomiccreate.html
index 1aad80ca..ee1c8f86 100644
--- a/doc/fontconfig-devel/fcatomiccreate.html
+++ b/doc/fontconfig-devel/fcatomiccreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3657"
+NAME="AEN3714"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3657"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3660"
+NAME="AEN3717"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3661"
+NAME="AEN3718"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3668"
+NAME="AEN3725"
></A
><H2
>Description</H2
@@ -146,18 +146,6 @@ a consistent and complete file without the need to lock for reading.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3672"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicdeletenew.html b/doc/fontconfig-devel/fcatomicdeletenew.html
index 5263693d..7602eb31 100644
--- a/doc/fontconfig-devel/fcatomicdeletenew.html
+++ b/doc/fontconfig-devel/fcatomicdeletenew.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicReplaceOrig"
HREF="fcatomicreplaceorig.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICDELETENEW"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3767"
+NAME="AEN3814"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3767"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3770"
+NAME="AEN3817"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3771"
+NAME="AEN3818"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3778"
+NAME="AEN3825"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3778"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3781"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicdestroy.html b/doc/fontconfig-devel/fcatomicdestroy.html
index 0f2a0078..7e05e7c3 100644
--- a/doc/fontconfig-devel/fcatomicdestroy.html
+++ b/doc/fontconfig-devel/fcatomicdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicUnlock"
HREF="fcatomicunlock.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCATOMICDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3809"
+NAME="AEN3852"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3809"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3812"
+NAME="AEN3855"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3813"
+NAME="AEN3856"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3820"
+NAME="AEN3863"
></A
><H2
>Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3824"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomiclock.html b/doc/fontconfig-devel/fcatomiclock.html
index d770dd9a..7d424336 100644
--- a/doc/fontconfig-devel/fcatomiclock.html
+++ b/doc/fontconfig-devel/fcatomiclock.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicCreate"
HREF="fcatomiccreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICLOCK"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3679"
+NAME="AEN3734"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3679"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3682"
+NAME="AEN3737"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3683"
+NAME="AEN3738"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3690"
+NAME="AEN3745"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ leaves the file locked.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3694"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicnewfile.html b/doc/fontconfig-devel/fcatomicnewfile.html
index 82a2ab24..952dcae9 100644
--- a/doc/fontconfig-devel/fcatomicnewfile.html
+++ b/doc/fontconfig-devel/fcatomicnewfile.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicLock"
HREF="fcatomiclock.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICNEWFILE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3701"
+NAME="AEN3754"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3701"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3704"
+NAME="AEN3757"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3705"
+NAME="AEN3758"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3712"
+NAME="AEN3765"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3716"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicorigfile.html b/doc/fontconfig-devel/fcatomicorigfile.html
index b9075eed..2f92fe72 100644
--- a/doc/fontconfig-devel/fcatomicorigfile.html
+++ b/doc/fontconfig-devel/fcatomicorigfile.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicNewFile"
HREF="fcatomicnewfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICORIGFILE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3723"
+NAME="AEN3774"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3723"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3726"
+NAME="AEN3777"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3727"
+NAME="AEN3778"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3734"
+NAME="AEN3785"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3738"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicreplaceorig.html b/doc/fontconfig-devel/fcatomicreplaceorig.html
index 07edae9a..ba8076cb 100644
--- a/doc/fontconfig-devel/fcatomicreplaceorig.html
+++ b/doc/fontconfig-devel/fcatomicreplaceorig.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicOrigFile"
HREF="fcatomicorigfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICREPLACEORIG"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3745"
+NAME="AEN3794"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3745"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3748"
+NAME="AEN3797"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3749"
+NAME="AEN3798"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3756"
+NAME="AEN3805"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ permission issues in the filesystem. Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3760"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcatomicunlock.html b/doc/fontconfig-devel/fcatomicunlock.html
index 3cdd7655..a7922e9f 100644
--- a/doc/fontconfig-devel/fcatomicunlock.html
+++ b/doc/fontconfig-devel/fcatomicunlock.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
REL="PREVIOUS"
TITLE="FcAtomicDeleteNew"
HREF="fcatomicdeletenew.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICUNLOCK"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3788"
+NAME="AEN3833"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3788"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3791"
+NAME="AEN3836"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3792"
+NAME="AEN3837"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3799"
+NAME="AEN3844"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3799"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3802"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcblanksadd.html b/doc/fontconfig-devel/fcblanksadd.html
index 6e38854e..c2763f3c 100644
--- a/doc/fontconfig-devel/fcblanksadd.html
+++ b/doc/fontconfig-devel/fcblanksadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
REL="PREVIOUS"
TITLE="FcBlanksDestroy"
HREF="fcblanksdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3608"
+NAME="AEN3669"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3608"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3611"
+NAME="AEN3672"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3612"
+NAME="AEN3673"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3621"
+NAME="AEN3682"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ if this process ran out of memory.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3624"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcblankscreate.html b/doc/fontconfig-devel/fcblankscreate.html
index 73d27b60..68e1f1b1 100644
--- a/doc/fontconfig-devel/fcblankscreate.html
+++ b/doc/fontconfig-devel/fcblankscreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3566"
+NAME="AEN3631"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3566"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3569"
+NAME="AEN3634"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3570"
+NAME="AEN3635"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3577"
+NAME="AEN3642"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3577"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3580"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcblanksdestroy.html b/doc/fontconfig-devel/fcblanksdestroy.html
index 8f60c78b..bdc45dae 100644
--- a/doc/fontconfig-devel/fcblanksdestroy.html
+++ b/doc/fontconfig-devel/fcblanksdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
REL="PREVIOUS"
TITLE="FcBlanksCreate"
HREF="fcblankscreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3587"
+NAME="AEN3650"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3587"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3590"
+NAME="AEN3653"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3591"
+NAME="AEN3654"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3598"
+NAME="AEN3661"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3598"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3601"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcblanksismember.html b/doc/fontconfig-devel/fcblanksismember.html
index 9f790689..a4518557 100644
--- a/doc/fontconfig-devel/fcblanksismember.html
+++ b/doc/fontconfig-devel/fcblanksismember.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
REL="PREVIOUS"
TITLE="FcBlanksAdd"
HREF="fcblanksadd.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCBLANKSISMEMBER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3631"
+NAME="AEN3690"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3631"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3634"
+NAME="AEN3693"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3635"
+NAME="AEN3694"
></A
><TABLE
BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3644"
+NAME="AEN3703"
></A
><H2
>Description</H2
@@ -137,18 +137,6 @@ value.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3647"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -194,7 +182,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachecopyset.html b/doc/fontconfig-devel/fccachecopyset.html
index 0a9642dc..20e35271 100644
--- a/doc/fontconfig-devel/fccachecopyset.html
+++ b/doc/fontconfig-devel/fccachecopyset.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcCacheDir"
HREF="fccachedir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHECOPYSET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4129"
+NAME="AEN4173"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4133"
+NAME="AEN4177"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4134"
+NAME="AEN4178"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4141"
+NAME="AEN4185"
></A
><H2
>Description</H2
@@ -150,18 +150,6 @@ from the cache are read-only.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4145"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachecreatetagfile.html b/doc/fontconfig-devel/fccachecreatetagfile.html
index b7a1a60e..b936ef3d 100644
--- a/doc/fontconfig-devel/fccachecreatetagfile.html
+++ b/doc/fontconfig-devel/fccachecreatetagfile.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcDirCacheClean"
HREF="fcdircacheclean.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCCACHECREATETAGFILE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4247"
+NAME="AEN4284"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4247"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4250"
+NAME="AEN4287"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4251"
+NAME="AEN4288"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4258"
+NAME="AEN4295"
></A
><H2
>Description</H2
@@ -139,14 +139,12 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4262"
+NAME="AEN4299"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.91</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -194,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachedir.html b/doc/fontconfig-devel/fccachedir.html
index 371e7340..a4b7c14f 100644
--- a/doc/fontconfig-devel/fccachedir.html
+++ b/doc/fontconfig-devel/fccachedir.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHEDIR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4107"
+NAME="AEN4153"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4111"
+NAME="AEN4157"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4112"
+NAME="AEN4158"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4119"
+NAME="AEN4165"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN4119"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4122"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachenumfont.html b/doc/fontconfig-devel/fccachenumfont.html
index 595d9727..0bd1c19b 100644
--- a/doc/fontconfig-devel/fccachenumfont.html
+++ b/doc/fontconfig-devel/fccachenumfont.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcCacheNumSubdir"
HREF="fccachenumsubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMFONT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4201"
+NAME="AEN4239"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4205"
+NAME="AEN4243"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4206"
+NAME="AEN4244"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4213"
+NAME="AEN4251"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ FcCacheCopySet.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4216"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachenumsubdir.html b/doc/fontconfig-devel/fccachenumsubdir.html
index bad61573..3fe4450a 100644
--- a/doc/fontconfig-devel/fccachenumsubdir.html
+++ b/doc/fontconfig-devel/fccachenumsubdir.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcCacheSubdir"
HREF="fccachesubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMSUBDIR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4179"
+NAME="AEN4219"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4183"
+NAME="AEN4223"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4184"
+NAME="AEN4224"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4191"
+NAME="AEN4231"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN4191"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4194"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccachesubdir.html b/doc/fontconfig-devel/fccachesubdir.html
index 27061698..705a4855 100644
--- a/doc/fontconfig-devel/fccachesubdir.html
+++ b/doc/fontconfig-devel/fccachesubdir.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcCacheCopySet"
HREF="fccachecopyset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHESUBDIR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4152"
+NAME="AEN4194"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4156"
+NAME="AEN4198"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4157"
+NAME="AEN4199"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4166"
+NAME="AEN4208"
></A
><H2
>Description</H2
@@ -166,18 +166,6 @@ value from FcCacheNumSubdir.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4172"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetaddchar.html b/doc/fontconfig-devel/fccharsetaddchar.html
index 7425f8b5..8ab3ec22 100644
--- a/doc/fontconfig-devel/fccharsetaddchar.html
+++ b/doc/fontconfig-devel/fccharsetaddchar.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetDestroy"
HREF="fccharsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETADDCHAR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1668"
+NAME="AEN1598"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1668"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1671"
+NAME="AEN1601"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1672"
+NAME="AEN1602"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1681"
+NAME="AEN1611"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ running out of memory.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1685"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetcopy.html b/doc/fontconfig-devel/fccharsetcopy.html
index 5801bb29..602a1d7b 100644
--- a/doc/fontconfig-devel/fccharsetcopy.html
+++ b/doc/fontconfig-devel/fccharsetcopy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetDelChar"
HREF="fccharsetdelchar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOPY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1716"
+NAME="AEN1645"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1716"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1719"
+NAME="AEN1648"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1720"
+NAME="AEN1649"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1727"
+NAME="AEN1656"
></A
><H2
>Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1732"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetcount.html b/doc/fontconfig-devel/fccharsetcount.html
index 32a30536..aaded09e 100644
--- a/doc/fontconfig-devel/fccharsetcount.html
+++ b/doc/fontconfig-devel/fccharsetcount.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetHasChar"
HREF="fccharsethaschar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOUNT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1895"
+NAME="AEN1810"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1895"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1898"
+NAME="AEN1813"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1899"
+NAME="AEN1814"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1906"
+NAME="AEN1821"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1910"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetcoverage.html b/doc/fontconfig-devel/fccharsetcoverage.html
index 8090cea5..c47134ab 100644
--- a/doc/fontconfig-devel/fccharsetcoverage.html
+++ b/doc/fontconfig-devel/fccharsetcoverage.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetNextPage"
HREF="fccharsetnextpage.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOVERAGE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2047"
+NAME="AEN1974"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2047"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2050"
+NAME="AEN1977"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2051"
+NAME="AEN1978"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2062"
+NAME="AEN1989"
></A
><H2
>Description</H2
@@ -171,18 +171,6 @@ coverage.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2069"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetcreate.html b/doc/fontconfig-devel/fccharsetcreate.html
index 529648ac..c21fa24f 100644
--- a/doc/fontconfig-devel/fccharsetcreate.html
+++ b/doc/fontconfig-devel/fccharsetcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1623"
+NAME="AEN1557"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1623"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1626"
+NAME="AEN1560"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1627"
+NAME="AEN1561"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1634"
+NAME="AEN1568"
></A
><H2
>Description</H2
@@ -142,18 +142,6 @@ character set object.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1638"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -203,7 +191,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetdelchar.html b/doc/fontconfig-devel/fccharsetdelchar.html
index 96512a98..1d70d66e 100644
--- a/doc/fontconfig-devel/fccharsetdelchar.html
+++ b/doc/fontconfig-devel/fccharsetdelchar.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetAddChar"
HREF="fccharsetaddchar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETDELCHAR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1692"
+NAME="AEN1620"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1692"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1695"
+NAME="AEN1623"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1696"
+NAME="AEN1624"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1705"
+NAME="AEN1633"
></A
><H2
>Description</H2
@@ -150,14 +150,12 @@ running out of memory.
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1709"
+NAME="AEN1637"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.0</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -209,7 +207,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetdestroy.html b/doc/fontconfig-devel/fccharsetdestroy.html
index 9f5fc7df..1ab8a3ae 100644
--- a/doc/fontconfig-devel/fccharsetdestroy.html
+++ b/doc/fontconfig-devel/fccharsetdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetCreate"
HREF="fccharsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1645"
+NAME="AEN1577"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1645"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1648"
+NAME="AEN1580"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1649"
+NAME="AEN1581"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1656"
+NAME="AEN1588"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ memory referenced is freed.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1661"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetequal.html b/doc/fontconfig-devel/fccharsetequal.html
index 08210df7..c5b003b2 100644
--- a/doc/fontconfig-devel/fccharsetequal.html
+++ b/doc/fontconfig-devel/fccharsetequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetCopy"
HREF="fccharsetcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1739"
+NAME="AEN1666"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1739"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1742"
+NAME="AEN1669"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1743"
+NAME="AEN1670"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1752"
+NAME="AEN1679"
></A
><H2
>Description</H2
@@ -154,18 +154,6 @@ contain the same set of Unicode chars.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1757"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetfirstpage.html b/doc/fontconfig-devel/fccharsetfirstpage.html
index 8707a4d1..f8f3bba9 100644
--- a/doc/fontconfig-devel/fccharsetfirstpage.html
+++ b/doc/fontconfig-devel/fccharsetfirstpage.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetIsSubset"
HREF="fccharsetissubset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETFIRSTPAGE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1992"
+NAME="AEN1899"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1992"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1995"
+NAME="AEN1902"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1996"
+NAME="AEN1903"
></A
><TABLE
BORDER="0"
@@ -139,36 +139,121 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2007"
+NAME="AEN1914"
></A
><H2
>Description</H2
><P
->Builds an array of bits marking the first page of Unicode coverage of
+>Builds an array of bits in <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> marking the
+first page of Unicode coverage of <TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+>.
<TT
CLASS="PARAMETER"
><I
+>*next</I
+></TT
+> is set to contains the base code point
+for the next page in <TT
+CLASS="PARAMETER"
+><I
>a</I
></TT
->. Returns the base of the array. <TT
+>. Returns the base code
+point for the page, or <CODE
+CLASS="CONSTANT"
+>FC_CHARSET_DONE</CODE
+> if
+<TT
CLASS="PARAMETER"
><I
->next</I
+>a</I
></TT
-> contains the next page in the
-font.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2012"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> contains no pages. As an example, if
+<TT
+CLASS="FUNCTION"
+>FcCharSetFirstPage</TT
+> returns
+<TT
+CLASS="LITERAL"
+>0x300</TT
+> and fills <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> with
+<TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="LITERALLAYOUT"
+>0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003</PRE
+></TD
+></TR
+></TABLE
+>
+Then the page contains code points <TT
+CLASS="LITERAL"
+>0x300</TT
+> through
+<TT
+CLASS="LITERAL"
+>0x33f</TT
+> (the first 64 code points on the page)
+because <TT
+CLASS="PARAMETER"
+><I
+>map[0]</I
+></TT
+> and
+<TT
+CLASS="PARAMETER"
+><I
+>map[1]</I
+></TT
+> both have all their bits set. It also
+contains code points <TT
+CLASS="LITERAL"
+>0x343</TT
+> (<TT
+CLASS="PARAMETER"
+><I
+>0x300 + 32*2
++ (4-1)</I
+></TT
+>) and <TT
+CLASS="LITERAL"
+>0x35e</TT
+> (<TT
+CLASS="PARAMETER"
+><I
+>0x300 +
+32*2 + (31-1)</I
+></TT
+>) because <TT
+CLASS="PARAMETER"
+><I
+>map[2]</I
+></TT
+> has
+the 4th and 31st bits set. The code points represented by
+<TT
+CLASS="LITERAL"
+>map[3]</TT
+> and later are left as an excercise for the
+reader ;).
</P
></DIV
><DIV
@@ -221,7 +306,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsethaschar.html b/doc/fontconfig-devel/fccharsethaschar.html
index 5023bd4c..48832f13 100644
--- a/doc/fontconfig-devel/fccharsethaschar.html
+++ b/doc/fontconfig-devel/fccharsethaschar.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetMerge"
HREF="fccharsetmerge.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETHASCHAR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1870"
+NAME="AEN1787"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1870"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1873"
+NAME="AEN1790"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1874"
+NAME="AEN1791"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1883"
+NAME="AEN1800"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1888"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetintersect.html b/doc/fontconfig-devel/fccharsetintersect.html
index 685ca61a..a05290b9 100644
--- a/doc/fontconfig-devel/fccharsetintersect.html
+++ b/doc/fontconfig-devel/fccharsetintersect.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetEqual"
HREF="fccharsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETINTERSECT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1764"
+NAME="AEN1689"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1764"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1767"
+NAME="AEN1692"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1768"
+NAME="AEN1693"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1777"
+NAME="AEN1702"
></A
><H2
>Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1782"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetintersectcount.html b/doc/fontconfig-devel/fccharsetintersectcount.html
index be70a104..f85a9a9c 100644
--- a/doc/fontconfig-devel/fccharsetintersectcount.html
+++ b/doc/fontconfig-devel/fccharsetintersectcount.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetCount"
HREF="fccharsetcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETINTERSECTCOUNT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1917"
+NAME="AEN1830"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1917"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1920"
+NAME="AEN1833"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1921"
+NAME="AEN1834"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1930"
+NAME="AEN1843"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1935"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetissubset.html b/doc/fontconfig-devel/fccharsetissubset.html
index c4f9ad5a..6db5af1e 100644
--- a/doc/fontconfig-devel/fccharsetissubset.html
+++ b/doc/fontconfig-devel/fccharsetissubset.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetSubtractCount"
HREF="fccharsetsubtractcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETISSUBSET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1967"
+NAME="AEN1876"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1967"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1970"
+NAME="AEN1879"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1971"
+NAME="AEN1880"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1980"
+NAME="AEN1889"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1985"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetmerge.html b/doc/fontconfig-devel/fccharsetmerge.html
index 0c661aff..2a3002c8 100644
--- a/doc/fontconfig-devel/fccharsetmerge.html
+++ b/doc/fontconfig-devel/fccharsetmerge.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetSubtract"
HREF="fccharsetsubtract.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETMERGE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1839"
+NAME="AEN1758"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1839"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1842"
+NAME="AEN1761"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1843"
+NAME="AEN1762"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1854"
+NAME="AEN1773"
></A
><H2
>Description</H2
@@ -183,18 +183,6 @@ set or from running out of memory.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1863"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetnew.html b/doc/fontconfig-devel/fccharsetnew.html
index d3c08a87..4f0117e0 100644
--- a/doc/fontconfig-devel/fccharsetnew.html
+++ b/doc/fontconfig-devel/fccharsetnew.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetCoverage"
HREF="fccharsetcoverage.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCCHARSETNEW"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2076"
+NAME="AEN2001"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2076"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2079"
+NAME="AEN2004"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2080"
+NAME="AEN2005"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2087"
+NAME="AEN2012"
></A
><H2
>Description</H2
@@ -134,18 +134,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2091"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -191,7 +179,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetnextpage.html b/doc/fontconfig-devel/fccharsetnextpage.html
index 9f8d48a0..5a7f429a 100644
--- a/doc/fontconfig-devel/fccharsetnextpage.html
+++ b/doc/fontconfig-devel/fccharsetnextpage.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetFirstPage"
HREF="fccharsetfirstpage.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETNEXTPAGE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2019"
+NAME="AEN1942"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2019"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2022"
+NAME="AEN1945"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2023"
+NAME="AEN1946"
></A
><TABLE
BORDER="0"
@@ -139,41 +139,61 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2034"
+NAME="AEN1957"
></A
><H2
>Description</H2
><P
->Builds an array of bits marking the Unicode coverage of <TT
+>Builds an array of bits in <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> marking the
+Unicode coverage of <TT
CLASS="PARAMETER"
><I
>a</I
></TT
-> for page
+> for page containing
<TT
CLASS="PARAMETER"
><I
>*next</I
></TT
->. Returns the base of the array. <TT
+> (see the
+<TT
+CLASS="FUNCTION"
+>FcCharSetFirstPage</TT
+> description for details).
+<TT
CLASS="PARAMETER"
><I
->next</I
+>*next</I
></TT
-> contains the next page in
-the font.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2040"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is set to contains the base code point
+for the next page in <TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+>. Returns the base of
+code point for the page, or <CODE
+CLASS="CONSTANT"
+>FC_CHARSET_DONE</CODE
+> if
+<TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+> does not contain
+<TT
+CLASS="PARAMETER"
+><I
+>*next</I
+></TT
+>.
</P
></DIV
><DIV
@@ -226,7 +246,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetsubtract.html b/doc/fontconfig-devel/fccharsetsubtract.html
index cb411369..2a98b3fa 100644
--- a/doc/fontconfig-devel/fccharsetsubtract.html
+++ b/doc/fontconfig-devel/fccharsetsubtract.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetUnion"
HREF="fccharsetunion.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETSUBTRACT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1814"
+NAME="AEN1735"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1814"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1817"
+NAME="AEN1738"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1818"
+NAME="AEN1739"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1827"
+NAME="AEN1748"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1832"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetsubtractcount.html b/doc/fontconfig-devel/fccharsetsubtractcount.html
index a813242d..d96772eb 100644
--- a/doc/fontconfig-devel/fccharsetsubtractcount.html
+++ b/doc/fontconfig-devel/fccharsetsubtractcount.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetIntersectCount"
HREF="fccharsetintersectcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETSUBTRACTCOUNT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1942"
+NAME="AEN1853"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1942"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1945"
+NAME="AEN1856"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1946"
+NAME="AEN1857"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1955"
+NAME="AEN1866"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1960"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fccharsetunion.html b/doc/fontconfig-devel/fccharsetunion.html
index 5ec75835..f7d8ea1b 100644
--- a/doc/fontconfig-devel/fccharsetunion.html
+++ b/doc/fontconfig-devel/fccharsetunion.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
REL="PREVIOUS"
TITLE="FcCharSetIntersect"
HREF="fccharsetintersect.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETUNION"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1789"
+NAME="AEN1712"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1789"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1792"
+NAME="AEN1715"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1793"
+NAME="AEN1716"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1802"
+NAME="AEN1725"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1807"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigappfontadddir.html b/doc/fontconfig-devel/fcconfigappfontadddir.html
index 625b4064..071d312e 100644
--- a/doc/fontconfig-devel/fcconfigappfontadddir.html
+++ b/doc/fontconfig-devel/fcconfigappfontadddir.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigAppFontAddFile"
HREF="fcconfigappfontaddfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDDIR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3115"
+NAME="AEN3118"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3115"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3118"
+NAME="AEN3121"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3119"
+NAME="AEN3122"
></A
><TABLE
BORDER="0"
@@ -134,32 +134,21 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3128"
+NAME="AEN3131"
></A
><H2
>Description</H2
><P
>Scans the specified directory for fonts, adding each one found to the
application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <TT
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <TT
CLASS="PARAMETER"
><I
>config</I
></TT
-> is NULL, the current configuration is used.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3132"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is NULL,
+the current configuration is used.
</P
></DIV
><DIV
@@ -212,7 +201,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigappfontaddfile.html b/doc/fontconfig-devel/fcconfigappfontaddfile.html
index 5051eb2c..5fcf2dda 100644
--- a/doc/fontconfig-devel/fcconfigappfontaddfile.html
+++ b/doc/fontconfig-devel/fcconfigappfontaddfile.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigSetRescanInterval"
HREF="fcconfigsetrescaninterval.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDFILE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3091"
+NAME="AEN3096"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3091"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3094"
+NAME="AEN3099"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3095"
+NAME="AEN3100"
></A
><TABLE
BORDER="0"
@@ -134,31 +134,20 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3104"
+NAME="AEN3109"
></A
><H2
>Description</H2
><P
>Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <TT
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <TT
CLASS="PARAMETER"
><I
>config</I
></TT
-> is NULL, the current configuration is used.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3108"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is NULL,
+the current configuration is used.
</P
></DIV
><DIV
@@ -211,7 +200,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigappfontclear.html b/doc/fontconfig-devel/fcconfigappfontclear.html
index f5c6b797..6494e9eb 100644
--- a/doc/fontconfig-devel/fcconfigappfontclear.html
+++ b/doc/fontconfig-devel/fcconfigappfontclear.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigAppFontAddDir"
HREF="fcconfigappfontadddir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTCLEAR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3139"
+NAME="AEN3140"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3139"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3142"
+NAME="AEN3143"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3143"
+NAME="AEN3144"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3150"
+NAME="AEN3151"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3154"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigbuildfonts.html b/doc/fontconfig-devel/fcconfigbuildfonts.html
index da9ad9cb..e02f9513 100644
--- a/doc/fontconfig-devel/fcconfigbuildfonts.html
+++ b/doc/fontconfig-devel/fcconfigbuildfonts.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigEnableHome"
HREF="fcconfigenablehome.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGBUILDFONTS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2862"
+NAME="AEN2887"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2862"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2865"
+NAME="AEN2890"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2866"
+NAME="AEN2891"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2873"
+NAME="AEN2898"
></A
><H2
>Description</H2
@@ -146,18 +146,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2877"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigcreate.html b/doc/fontconfig-devel/fcconfigcreate.html
index 3ed066a6..21377242 100644
--- a/doc/fontconfig-devel/fcconfigcreate.html
+++ b/doc/fontconfig-devel/fcconfigcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2686"
+NAME="AEN2726"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2686"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2689"
+NAME="AEN2729"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2690"
+NAME="AEN2730"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2697"
+NAME="AEN2737"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2697"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2700"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigdestroy.html b/doc/fontconfig-devel/fcconfigdestroy.html
index d048d6dd..919ef4fe 100644
--- a/doc/fontconfig-devel/fcconfigdestroy.html
+++ b/doc/fontconfig-devel/fcconfigdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigReference"
HREF="fcconfigreference.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2730"
+NAME="AEN2766"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2730"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2733"
+NAME="AEN2769"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2734"
+NAME="AEN2770"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2741"
+NAME="AEN2777"
></A
><H2
>Description</H2
@@ -141,18 +141,6 @@ cause a new configuration to be created for use as current configuration.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2744"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -202,7 +190,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigenablehome.html b/doc/fontconfig-devel/fcconfigenablehome.html
index 0d4e5802..42fd3023 100644
--- a/doc/fontconfig-devel/fcconfigenablehome.html
+++ b/doc/fontconfig-devel/fcconfigenablehome.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigHome"
HREF="fcconfighome.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGENABLEHOME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2839"
+NAME="AEN2866"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2839"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2842"
+NAME="AEN2869"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2843"
+NAME="AEN2870"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2850"
+NAME="AEN2877"
></A
><H2
>Description</H2
@@ -152,18 +152,6 @@ disabled. The previous setting of the value is returned.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2855"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -213,7 +201,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigfilename.html b/doc/fontconfig-devel/fcconfigfilename.html
index 1a8d1cbd..71c09d80 100644
--- a/doc/fontconfig-devel/fcconfigfilename.html
+++ b/doc/fontconfig-devel/fcconfigfilename.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcFontList"
HREF="fcfontlist.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGFILENAME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3347"
+NAME="AEN3334"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3347"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3350"
+NAME="AEN3337"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3351"
+NAME="AEN3338"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3358"
+NAME="AEN3345"
></A
><H2
>Description</H2
@@ -159,18 +159,6 @@ FONTCONFIG_PATH environment variable.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3364"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -220,7 +208,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetblanks.html b/doc/fontconfig-devel/fcconfiggetblanks.html
index 43e62481..76ab0061 100644
--- a/doc/fontconfig-devel/fcconfiggetblanks.html
+++ b/doc/fontconfig-devel/fcconfiggetblanks.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetFonts"
HREF="fcconfiggetfonts.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETBLANKS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3022"
+NAME="AEN3033"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3022"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3025"
+NAME="AEN3036"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3026"
+NAME="AEN3037"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3033"
+NAME="AEN3044"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3037"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetcache.html b/doc/fontconfig-devel/fcconfiggetcache.html
index 96db9838..59f95bac 100644
--- a/doc/fontconfig-devel/fcconfiggetcache.html
+++ b/doc/fontconfig-devel/fcconfiggetcache.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetConfigFiles"
HREF="fcconfiggetconfigfiles.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCACHE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2953"
+NAME="AEN2970"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2953"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2956"
+NAME="AEN2973"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2957"
+NAME="AEN2974"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2964"
+NAME="AEN2981"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ simply returns NULL to indicate that no per-user file exists.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2967"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetcachedirs.html b/doc/fontconfig-devel/fcconfiggetcachedirs.html
index ba944878..875096f5 100644
--- a/doc/fontconfig-devel/fcconfiggetcachedirs.html
+++ b/doc/fontconfig-devel/fcconfiggetcachedirs.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetCache"
HREF="fcconfiggetcache.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCACHEDIRS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2974"
+NAME="AEN2989"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2974"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2977"
+NAME="AEN2992"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2978"
+NAME="AEN2993"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2985"
+NAME="AEN3000"
></A
><H2
>Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2990"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetconfigdirs.html b/doc/fontconfig-devel/fcconfiggetconfigdirs.html
index c98b25e3..aca558c7 100644
--- a/doc/fontconfig-devel/fcconfiggetconfigdirs.html
+++ b/doc/fontconfig-devel/fcconfiggetconfigdirs.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigBuildFonts"
HREF="fcconfigbuildfonts.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCONFIGDIRS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2884"
+NAME="AEN2907"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2884"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2887"
+NAME="AEN2910"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2888"
+NAME="AEN2911"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2895"
+NAME="AEN2918"
></A
><H2
>Description</H2
@@ -150,18 +150,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2900"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetconfigfiles.html b/doc/fontconfig-devel/fcconfiggetconfigfiles.html
index 2fa15286..38578000 100644
--- a/doc/fontconfig-devel/fcconfiggetconfigfiles.html
+++ b/doc/fontconfig-devel/fcconfiggetconfigfiles.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetFontDirs"
HREF="fcconfiggetfontdirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCONFIGFILES"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2930"
+NAME="AEN2949"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2930"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2933"
+NAME="AEN2952"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2934"
+NAME="AEN2953"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2941"
+NAME="AEN2960"
></A
><H2
>Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2946"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetcurrent.html b/doc/fontconfig-devel/fcconfiggetcurrent.html
index 3429ce65..38318e31 100644
--- a/doc/fontconfig-devel/fcconfiggetcurrent.html
+++ b/doc/fontconfig-devel/fcconfiggetcurrent.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigSetCurrent"
HREF="fcconfigsetcurrent.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCURRENT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2773"
+NAME="AEN2806"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2773"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2776"
+NAME="AEN2809"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2777"
+NAME="AEN2810"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2784"
+NAME="AEN2817"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2784"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2787"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetfontdirs.html b/doc/fontconfig-devel/fcconfiggetfontdirs.html
index 54d393f7..0a16fb15 100644
--- a/doc/fontconfig-devel/fcconfiggetfontdirs.html
+++ b/doc/fontconfig-devel/fcconfiggetfontdirs.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetConfigDirs"
HREF="fcconfiggetconfigdirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETFONTDIRS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2907"
+NAME="AEN2928"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2907"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2910"
+NAME="AEN2931"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2911"
+NAME="AEN2932"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2918"
+NAME="AEN2939"
></A
><H2
>Description</H2
@@ -151,18 +151,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2923"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -212,7 +200,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetfonts.html b/doc/fontconfig-devel/fcconfiggetfonts.html
index 7791047d..089f57a8 100644
--- a/doc/fontconfig-devel/fcconfiggetfonts.html
+++ b/doc/fontconfig-devel/fcconfiggetfonts.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetCacheDirs"
HREF="fcconfiggetcachedirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETFONTS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2997"
+NAME="AEN3010"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2997"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3000"
+NAME="AEN3013"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3001"
+NAME="AEN3014"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3010"
+NAME="AEN3023"
></A
><H2
>Description</H2
@@ -156,18 +156,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3015"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetrescaninterval.html b/doc/fontconfig-devel/fcconfiggetrescaninterval.html
index 9c4d7050..cecb57cc 100644
--- a/doc/fontconfig-devel/fcconfiggetrescaninterval.html
+++ b/doc/fontconfig-devel/fcconfiggetrescaninterval.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetBlanks"
HREF="fcconfiggetblanks.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETRESCANINTERVAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3044"
+NAME="AEN3053"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3044"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3047"
+NAME="AEN3056"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3048"
+NAME="AEN3057"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3055"
+NAME="AEN3064"
></A
><H2
>Description</H2
@@ -152,18 +152,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3060"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -213,7 +201,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiggetsysroot.html b/doc/fontconfig-devel/fcconfiggetsysroot.html
new file mode 100644
index 00000000..bbe0a5f4
--- /dev/null
+++ b/doc/fontconfig-devel/fcconfiggetsysroot.html
@@ -0,0 +1,214 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcConfigGetSysRoot</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConfig"
+HREF="x102.html#AEN2718"><LINK
+REL="PREVIOUS"
+TITLE="FcConfigParseAndLoad"
+HREF="fcconfigparseandload.html"><LINK
+REL="NEXT"
+TITLE="FcConfigSetSysRoot"
+HREF="fcconfigsetsysroot.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcconfigparseandload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcconfigsetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCCONFIGGETSYSROOT"
+></A
+>FcConfigGetSysRoot</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3379"
+></A
+><H2
+>Name</H2
+>FcConfigGetSysRoot&nbsp;--&nbsp;Obtain the system root directory</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3382"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3383"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>const FcChar8 * <TT
+CLASS="FUNCTION"
+>FcConfigGetSysRoot</TT
+></CODE
+>(const FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3390"
+></A
+><H2
+>Description</H2
+><P
+>Obtrains the system root directory in 'config' if available.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3393"
+></A
+><H2
+>Since</H2
+><P
+>version 2.10.92</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcconfigparseandload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcconfigsetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcConfigParseAndLoad</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2718"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcConfigSetSysRoot</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcconfighome.html b/doc/fontconfig-devel/fcconfighome.html
index 17568d66..4036a6bf 100644
--- a/doc/fontconfig-devel/fcconfighome.html
+++ b/doc/fontconfig-devel/fcconfighome.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigUptoDate"
HREF="fcconfiguptodate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGHOME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2817"
+NAME="AEN2846"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2817"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2820"
+NAME="AEN2849"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2821"
+NAME="AEN2850"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2828"
+NAME="AEN2857"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2832"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigparseandload.html b/doc/fontconfig-devel/fcconfigparseandload.html
index 5c323dd3..e7c1313d 100644
--- a/doc/fontconfig-devel/fcconfigparseandload.html
+++ b/doc/fontconfig-devel/fcconfigparseandload.html
@@ -10,10 +10,13 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigFilename"
-HREF="fcconfigfilename.html"></HEAD
+HREF="fcconfigfilename.html"><LINK
+REL="NEXT"
+TITLE="FcConfigGetSysRoot"
+HREF="fcconfiggetsysroot.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
@@ -54,7 +57,11 @@ VALIGN="bottom"
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
->&nbsp;</TD
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
></TR
></TABLE
><HR
@@ -68,7 +75,7 @@ NAME="FCCONFIGPARSEANDLOAD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3371"
+NAME="AEN3356"
></A
><H2
>Name</H2
@@ -76,7 +83,7 @@ NAME="AEN3371"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3374"
+NAME="AEN3359"
></A
><H2
>Synopsis</H2
@@ -85,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3375"
+NAME="AEN3360"
></A
><TABLE
BORDER="0"
@@ -132,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3386"
+NAME="AEN3371"
></A
><H2
>Description</H2
@@ -146,18 +153,6 @@ parse error, semantic error or allocation failure. Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3389"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -190,7 +185,11 @@ ACCESSKEY="H"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->&nbsp;</TD
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
></TR
><TR
><TD
@@ -203,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
@@ -211,7 +210,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->&nbsp;</TD
+>FcConfigGetSysRoot</TD
></TR
></TABLE
></DIV
diff --git a/doc/fontconfig-devel/fcconfigreference.html b/doc/fontconfig-devel/fcconfigreference.html
index d85dbe04..a7fb48ca 100644
--- a/doc/fontconfig-devel/fcconfigreference.html
+++ b/doc/fontconfig-devel/fcconfigreference.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigCreate"
HREF="fcconfigcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGREFERENCE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2707"
+NAME="AEN2745"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2707"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2710"
+NAME="AEN2748"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2711"
+NAME="AEN2749"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2718"
+NAME="AEN2756"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ for destroying the configuration when not needed anymore.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2723"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigsetcurrent.html b/doc/fontconfig-devel/fcconfigsetcurrent.html
index 134f4606..69cae7df 100644
--- a/doc/fontconfig-devel/fcconfigsetcurrent.html
+++ b/doc/fontconfig-devel/fcconfigsetcurrent.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigDestroy"
HREF="fcconfigdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETCURRENT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2751"
+NAME="AEN2785"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2751"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2754"
+NAME="AEN2788"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2755"
+NAME="AEN2789"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2762"
+NAME="AEN2796"
></A
><H2
>Description</H2
@@ -140,19 +140,13 @@ CLASS="PARAMETER"
>config</I
></TT
>. Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2766"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+> since 2.12.0, returning FcFalse if that call fails.
</P
></DIV
><DIV
@@ -205,7 +199,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigsetrescaninterval.html b/doc/fontconfig-devel/fcconfigsetrescaninterval.html
index 383a90d3..9fbb60f7 100644
--- a/doc/fontconfig-devel/fcconfigsetrescaninterval.html
+++ b/doc/fontconfig-devel/fcconfigsetrescaninterval.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetRescanInterval"
HREF="fcconfiggetrescaninterval.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETRESCANINTERVAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3067"
+NAME="AEN3074"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3067"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3070"
+NAME="AEN3077"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3071"
+NAME="AEN3078"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3080"
+NAME="AEN3087"
></A
><H2
>Description</H2
@@ -151,18 +151,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3084"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -212,7 +200,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigsetsysroot.html b/doc/fontconfig-devel/fcconfigsetsysroot.html
new file mode 100644
index 00000000..5b1238db
--- /dev/null
+++ b/doc/fontconfig-devel/fcconfigsetsysroot.html
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcConfigSetSysRoot</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConfig"
+HREF="x102.html#AEN2718"><LINK
+REL="PREVIOUS"
+TITLE="FcConfigGetSysRoot"
+HREF="fcconfiggetsysroot.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCCONFIGSETSYSROOT"
+></A
+>FcConfigSetSysRoot</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3401"
+></A
+><H2
+>Name</H2
+>FcConfigSetSysRoot&nbsp;--&nbsp;Set the system root directory</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3404"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3405"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcConfigSetSysRoot</TT
+></CODE
+>(FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>, const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>sysroot</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3414"
+></A
+><H2
+>Description</H2
+><P
+>Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3417"
+></A
+><H2
+>Since</H2
+><P
+>version 2.10.92</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcConfigGetSysRoot</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2718"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcconfigsubstitute.html b/doc/fontconfig-devel/fcconfigsubstitute.html
index a28fb238..4dc28d21 100644
--- a/doc/fontconfig-devel/fcconfigsubstitute.html
+++ b/doc/fontconfig-devel/fcconfigsubstitute.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigSubstituteWithPat"
HREF="fcconfigsubstitutewithpat.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3191"
+NAME="AEN3188"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3191"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3194"
+NAME="AEN3191"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3195"
+NAME="AEN3192"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3206"
+NAME="AEN3203"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3210"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfigsubstitutewithpat.html b/doc/fontconfig-devel/fcconfigsubstitutewithpat.html
index d1d7f19f..d42a9ba1 100644
--- a/doc/fontconfig-devel/fcconfigsubstitutewithpat.html
+++ b/doc/fontconfig-devel/fcconfigsubstitutewithpat.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigAppFontClear"
HREF="fcconfigappfontclear.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTEWITHPAT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3161"
+NAME="AEN3160"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3161"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3164"
+NAME="AEN3163"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3165"
+NAME="AEN3164"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3178"
+NAME="AEN3177"
></A
><H2
>Description</H2
@@ -173,18 +173,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3184"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -234,7 +222,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcconfiguptodate.html b/doc/fontconfig-devel/fcconfiguptodate.html
index 2545872c..8f405c65 100644
--- a/doc/fontconfig-devel/fcconfiguptodate.html
+++ b/doc/fontconfig-devel/fcconfiguptodate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigGetCurrent"
HREF="fcconfiggetcurrent.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGUPTODATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2794"
+NAME="AEN2825"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2794"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2797"
+NAME="AEN2828"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2798"
+NAME="AEN2829"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2805"
+NAME="AEN2836"
></A
><H2
>Description</H2
@@ -150,18 +150,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2810"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdefaultsubstitute.html b/doc/fontconfig-devel/fcdefaultsubstitute.html
index a5862fec..41768e21 100644
--- a/doc/fontconfig-devel/fcdefaultsubstitute.html
+++ b/doc/fontconfig-devel/fcdefaultsubstitute.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternPrint"
HREF="fcpatternprint.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDEFAULTSUBSTITUTE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN859"
+NAME="AEN840"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN859"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN862"
+NAME="AEN843"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN863"
+NAME="AEN844"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN870"
+NAME="AEN851"
></A
><H2
>Description</H2
@@ -156,18 +156,6 @@ specified point size (default 12), dpi (default 75) and scale (default 1).</P
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN880"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircacheclean.html b/doc/fontconfig-devel/fcdircacheclean.html
index 23f52654..f3f8903e 100644
--- a/doc/fontconfig-devel/fcdircacheclean.html
+++ b/doc/fontconfig-devel/fcdircacheclean.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
REL="PREVIOUS"
TITLE="FcCacheNumFont"
HREF="fccachenumfont.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHECLEAN"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4223"
+NAME="AEN4259"
></A
><H2
>Name</H2
@@ -89,7 +89,7 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4227"
+NAME="AEN4263"
></A
><H2
>Synopsis</H2
@@ -98,7 +98,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4228"
+NAME="AEN4264"
></A
><TABLE
BORDER="0"
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4237"
+NAME="AEN4273"
></A
><H2
>Description</H2
@@ -150,14 +150,12 @@ NAME="AEN4237"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4240"
+NAME="AEN4276"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.91</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -209,7 +207,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircacheload.html b/doc/fontconfig-devel/fcdircacheload.html
index 3c29b3b3..b3c303e6 100644
--- a/doc/fontconfig-devel/fcdircacheload.html
+++ b/doc/fontconfig-devel/fcdircacheload.html
@@ -10,13 +10,13 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirCacheValid"
HREF="fcdircachevalid.html"><LINK
REL="NEXT"
-TITLE="FcDirCacheRead"
-HREF="fcdircacheread.html"></HEAD
+TITLE="FcDirCacheRescan"
+HREF="fcdircacherescan.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
-HREF="fcdircacheread.html"
+HREF="fcdircacherescan.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOAD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4003"
+NAME="AEN4032"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4003"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4006"
+NAME="AEN4035"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4007"
+NAME="AEN4036"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4018"
+NAME="AEN4047"
></A
><H2
>Description</H2
@@ -161,18 +161,6 @@ FcDirCacheRead.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4023"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
-HREF="fcdircacheread.html"
+HREF="fcdircacherescan.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -222,7 +210,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
@@ -230,7 +218,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->FcDirCacheRead</TD
+>FcDirCacheRescan</TD
></TR
></TABLE
></DIV
diff --git a/doc/fontconfig-devel/fcdircacheloadfile.html b/doc/fontconfig-devel/fcdircacheloadfile.html
index dc77da20..177e7d07 100644
--- a/doc/fontconfig-devel/fcdircacheloadfile.html
+++ b/doc/fontconfig-devel/fcdircacheloadfile.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirCacheRead"
HREF="fcdircacheread.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOADFILE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4057"
+NAME="AEN4107"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4057"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4060"
+NAME="AEN4110"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4061"
+NAME="AEN4111"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4070"
+NAME="AEN4120"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ non-NULL, it will be filled with the results of stat(2) on the cache file.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4075"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircacheread.html b/doc/fontconfig-devel/fcdircacheread.html
index 0b2342ad..e08b7e1b 100644
--- a/doc/fontconfig-devel/fcdircacheread.html
+++ b/doc/fontconfig-devel/fcdircacheread.html
@@ -10,10 +10,10 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
-TITLE="FcDirCacheLoad"
-HREF="fcdircacheload.html"><LINK
+TITLE="FcDirCacheRescan"
+HREF="fcdircacherescan.html"><LINK
REL="NEXT"
TITLE="FcDirCacheLoadFile"
HREF="fcdircacheloadfile.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
-HREF="fcdircacheload.html"
+HREF="fcdircacherescan.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEREAD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4030"
+NAME="AEN4082"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4030"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4033"
+NAME="AEN4085"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4034"
+NAME="AEN4086"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4045"
+NAME="AEN4097"
></A
><H2
>Description</H2
@@ -161,18 +161,6 @@ directory and that returned.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4050"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
-HREF="fcdircacheload.html"
+HREF="fcdircacherescan.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -216,13 +204,13 @@ ACCESSKEY="N"
WIDTH="33%"
ALIGN="left"
VALIGN="top"
->FcDirCacheLoad</TD
+>FcDirCacheRescan</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircacherescan.html b/doc/fontconfig-devel/fcdircacherescan.html
new file mode 100644
index 00000000..20e90273
--- /dev/null
+++ b/doc/fontconfig-devel/fcdircacherescan.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcDirCacheRescan</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="File and Directory routines"
+HREF="x102.html#AEN3867"><LINK
+REL="PREVIOUS"
+TITLE="FcDirCacheLoad"
+HREF="fcdircacheload.html"><LINK
+REL="NEXT"
+TITLE="FcDirCacheRead"
+HREF="fcdircacheread.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcdircacheload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcdircacheread.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCDIRCACHERESCAN"
+></A
+>FcDirCacheRescan</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN4057"
+></A
+><H2
+>Name</H2
+>FcDirCacheRescan&nbsp;--&nbsp;Re-scan a directory cache</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN4060"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4061"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcCache * <TT
+CLASS="FUNCTION"
+>FcDirCacheRescan</TT
+></CODE
+>(const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>dir</I
+></TT
+>, FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4070"
+></A
+><H2
+>Description</H2
+><P
+>Re-scan directories only at <TT
+CLASS="PARAMETER"
+><I
+>dir</I
+></TT
+> and update the cache.
+returns NULL if failed.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4074"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.1</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcdircacheload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcdircacheread.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcDirCacheLoad</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3867"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcDirCacheRead</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcdircacheunlink.html b/doc/fontconfig-devel/fcdircacheunlink.html
index 9236f023..d7428bc1 100644
--- a/doc/fontconfig-devel/fcdircacheunlink.html
+++ b/doc/fontconfig-devel/fcdircacheunlink.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirSave"
HREF="fcdirsave.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEUNLINK"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3955"
+NAME="AEN3988"
></A
><H2
>Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3959"
+NAME="AEN3992"
></A
><H2
>Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3960"
+NAME="AEN3993"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3969"
+NAME="AEN4002"
></A
><H2
>Description</H2
@@ -161,18 +161,6 @@ unlinking any files are ignored.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3974"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircacheunload.html b/doc/fontconfig-devel/fcdircacheunload.html
index 5d50d255..10b312e3 100644
--- a/doc/fontconfig-devel/fcdircacheunload.html
+++ b/doc/fontconfig-devel/fcdircacheunload.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirCacheLoadFile"
HREF="fcdircacheloadfile.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCDIRCACHEUNLOAD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4082"
+NAME="AEN4130"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4082"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4085"
+NAME="AEN4133"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4086"
+NAME="AEN4134"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4093"
+NAME="AEN4141"
></A
><H2
>Description</H2
@@ -137,18 +137,6 @@ references to it remain, all memory associated with the cache will be freed.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4097"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -194,7 +182,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdircachevalid.html b/doc/fontconfig-devel/fcdircachevalid.html
index 6815a489..02feead3 100644
--- a/doc/fontconfig-devel/fcdircachevalid.html
+++ b/doc/fontconfig-devel/fcdircachevalid.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirCacheUnlink"
HREF="fcdircacheunlink.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEVALID"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3981"
+NAME="AEN4012"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3981"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3984"
+NAME="AEN4015"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3985"
+NAME="AEN4016"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3992"
+NAME="AEN4023"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ file, else returns FcFalse
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3996"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdirsave.html b/doc/fontconfig-devel/fcdirsave.html
index b0f4d21e..c57cca22 100644
--- a/doc/fontconfig-devel/fcdirsave.html
+++ b/doc/fontconfig-devel/fcdirsave.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcDirScan"
HREF="fcdirscan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSAVE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3927"
+NAME="AEN3962"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3927"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3930"
+NAME="AEN3965"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3931"
+NAME="AEN3966"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3942"
+NAME="AEN3977"
></A
><H2
>Description</H2
@@ -167,18 +167,6 @@ managed by FcDirCacheLoad and FcDirCacheRead.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3948"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -228,7 +216,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcdirscan.html b/doc/fontconfig-devel/fcdirscan.html
index bdc6e913..d424cf90 100644
--- a/doc/fontconfig-devel/fcdirscan.html
+++ b/doc/fontconfig-devel/fcdirscan.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcFileIsDir"
HREF="fcfileisdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSCAN"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3892"
+NAME="AEN3929"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3892"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3895"
+NAME="AEN3932"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3896"
+NAME="AEN3933"
></A
><TABLE
BORDER="0"
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3913"
+NAME="AEN3950"
></A
><H2
>Description</H2
@@ -188,18 +188,6 @@ caching is desired.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3920"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -249,7 +237,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfileisdir.html b/doc/fontconfig-devel/fcfileisdir.html
index addd9b19..61f0ffd5 100644
--- a/doc/fontconfig-devel/fcfileisdir.html
+++ b/doc/fontconfig-devel/fcfileisdir.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FcFileScan"
HREF="fcfilescan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILEISDIR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3870"
+NAME="AEN3909"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3870"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3873"
+NAME="AEN3912"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3874"
+NAME="AEN3913"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3881"
+NAME="AEN3920"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ returns FcFalse.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3885"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfilescan.html b/doc/fontconfig-devel/fcfilescan.html
index e1f5637d..448ea1b8 100644
--- a/doc/fontconfig-devel/fcfilescan.html
+++ b/doc/fontconfig-devel/fcfilescan.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILESCAN"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3834"
+NAME="AEN3875"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3834"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3837"
+NAME="AEN3878"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3838"
+NAME="AEN3879"
></A
><TABLE
BORDER="0"
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3855"
+NAME="AEN3896"
></A
><H2
>Description</H2
@@ -198,18 +198,6 @@ added (due to allocation failure). Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3863"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -259,7 +247,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfini.html b/doc/fontconfig-devel/fcfini.html
index 6ca0934e..364242f4 100644
--- a/doc/fontconfig-devel/fcfini.html
+++ b/doc/fontconfig-devel/fcfini.html
@@ -75,7 +75,7 @@ NAME="FCFINI"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN175"
+NAME="AEN170"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN175"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN178"
+NAME="AEN173"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN179"
+NAME="AEN174"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN186"
+NAME="AEN181"
></A
><H2
>Description</H2
@@ -141,18 +141,6 @@ function may be called.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN189"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcfontlist.html b/doc/fontconfig-devel/fcfontlist.html
index fee3b95d..566bb1d2 100644
--- a/doc/fontconfig-devel/fcfontlist.html
+++ b/doc/fontconfig-devel/fcfontlist.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcFontRenderPrepare"
HREF="fcfontrenderprepare.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTLIST"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3319"
+NAME="AEN3308"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3319"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3322"
+NAME="AEN3311"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3323"
+NAME="AEN3312"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3334"
+NAME="AEN3323"
></A
><H2
>Description</H2
@@ -166,18 +166,6 @@ to be up to date, and used.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3340"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontmatch.html b/doc/fontconfig-devel/fcfontmatch.html
index 405fec7f..3d10a7a7 100644
--- a/doc/fontconfig-devel/fcfontmatch.html
+++ b/doc/fontconfig-devel/fcfontmatch.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcConfigSubstitute"
HREF="fcconfigsubstitute.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTMATCH"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3217"
+NAME="AEN3212"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3217"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3220"
+NAME="AEN3215"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3221"
+NAME="AEN3216"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3232"
+NAME="AEN3227"
></A
><H2
>Description</H2
@@ -184,18 +184,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3242"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -245,7 +233,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontrenderprepare.html b/doc/fontconfig-devel/fcfontrenderprepare.html
index c5199f01..bec94843 100644
--- a/doc/fontconfig-devel/fcfontrenderprepare.html
+++ b/doc/fontconfig-devel/fcfontrenderprepare.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcFontSort"
HREF="fcfontsort.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTRENDERPREPARE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3288"
+NAME="AEN3279"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3288"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3291"
+NAME="AEN3282"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3292"
+NAME="AEN3283"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3303"
+NAME="AEN3294"
></A
><H2
>Description</H2
@@ -181,18 +181,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3312"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -242,7 +230,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetadd.html b/doc/fontconfig-devel/fcfontsetadd.html
index 2915aa20..abc25616 100644
--- a/doc/fontconfig-devel/fcfontsetadd.html
+++ b/doc/fontconfig-devel/fcfontsetadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetDestroy"
HREF="fcfontsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1105"
+NAME="AEN1077"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1105"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1108"
+NAME="AEN1080"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1109"
+NAME="AEN1081"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1118"
+NAME="AEN1090"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ inserted into the set (due to allocation failure). Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1121"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetcreate.html b/doc/fontconfig-devel/fcfontsetcreate.html
index 29ca136c..54f75272 100644
--- a/doc/fontconfig-devel/fcfontsetcreate.html
+++ b/doc/fontconfig-devel/fcfontsetcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1063"
+NAME="AEN1039"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1063"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1066"
+NAME="AEN1042"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1067"
+NAME="AEN1043"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1074"
+NAME="AEN1050"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1074"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1077"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetdestroy.html b/doc/fontconfig-devel/fcfontsetdestroy.html
index b1e21a60..be54e6e9 100644
--- a/doc/fontconfig-devel/fcfontsetdestroy.html
+++ b/doc/fontconfig-devel/fcfontsetdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetCreate"
HREF="fcfontsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1084"
+NAME="AEN1058"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1084"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1087"
+NAME="AEN1061"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1088"
+NAME="AEN1062"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1095"
+NAME="AEN1069"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ well.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1098"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetlist.html b/doc/fontconfig-devel/fcfontsetlist.html
index c591e44a..8a82e37d 100644
--- a/doc/fontconfig-devel/fcfontsetlist.html
+++ b/doc/fontconfig-devel/fcfontsetlist.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetAdd"
HREF="fcfontsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETLIST"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1128"
+NAME="AEN1098"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1128"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1131"
+NAME="AEN1101"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1132"
+NAME="AEN1102"
></A
><TABLE
BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1147"
+NAME="AEN1117"
></A
><H2
>Description</H2
@@ -183,18 +183,6 @@ to be up to date, and used.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1154"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetmatch.html b/doc/fontconfig-devel/fcfontsetmatch.html
index 16787a9d..68add42e 100644
--- a/doc/fontconfig-devel/fcfontsetmatch.html
+++ b/doc/fontconfig-devel/fcfontsetmatch.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetList"
HREF="fcfontsetlist.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETMATCH"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1161"
+NAME="AEN1129"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1161"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1164"
+NAME="AEN1132"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1165"
+NAME="AEN1133"
></A
><TABLE
BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1180"
+NAME="AEN1148"
></A
><H2
>Description</H2
@@ -195,18 +195,6 @@ Returns NULL if an error occurs during this process.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1190"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -256,7 +244,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetprint.html b/doc/fontconfig-devel/fcfontsetprint.html
index 0f016d48..615f697c 100644
--- a/doc/fontconfig-devel/fcfontsetprint.html
+++ b/doc/fontconfig-devel/fcfontsetprint.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetMatch"
HREF="fcfontsetmatch.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETPRINT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1197"
+NAME="AEN1163"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1197"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1200"
+NAME="AEN1166"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1201"
+NAME="AEN1167"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1208"
+NAME="AEN1174"
></A
><H2
>Description</H2
@@ -146,18 +146,6 @@ change at any time.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1212"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetsort.html b/doc/fontconfig-devel/fcfontsetsort.html
index b2953786..c06a8103 100644
--- a/doc/fontconfig-devel/fcfontsetsort.html
+++ b/doc/fontconfig-devel/fcfontsetsort.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetPrint"
HREF="fcfontsetprint.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETSORT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1219"
+NAME="AEN1183"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1219"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1222"
+NAME="AEN1186"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1223"
+NAME="AEN1187"
></A
><TABLE
BORDER="0"
@@ -159,7 +159,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1242"
+NAME="AEN1206"
></A
><H2
>Description</H2
@@ -225,18 +225,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1255"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -286,7 +274,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsetsortdestroy.html b/doc/fontconfig-devel/fcfontsetsortdestroy.html
index b82d8621..5a5e5b21 100644
--- a/doc/fontconfig-devel/fcfontsetsortdestroy.html
+++ b/doc/fontconfig-devel/fcfontsetsortdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
REL="PREVIOUS"
TITLE="FcFontSetSort"
HREF="fcfontsetsort.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCFONTSETSORTDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1262"
+NAME="AEN1224"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1262"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1265"
+NAME="AEN1227"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1266"
+NAME="AEN1228"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1273"
+NAME="AEN1235"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1280"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfontsort.html b/doc/fontconfig-devel/fcfontsort.html
index 1b6231f6..9352d4e0 100644
--- a/doc/fontconfig-devel/fcfontsort.html
+++ b/doc/fontconfig-devel/fcfontsort.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
REL="PREVIOUS"
TITLE="FcFontMatch"
HREF="fcfontmatch.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSORT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3249"
+NAME="AEN3242"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3249"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3252"
+NAME="AEN3245"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3253"
+NAME="AEN3246"
></A
><TABLE
BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3268"
+NAME="AEN3261"
></A
><H2
>Description</H2
@@ -211,18 +211,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3281"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -272,7 +260,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfreetypecharindex.html b/doc/fontconfig-devel/fcfreetypecharindex.html
index ef9f9752..845209b8 100644
--- a/doc/fontconfig-devel/fcfreetypecharindex.html
+++ b/doc/fontconfig-devel/fcfreetypecharindex.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARINDEX"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1400"
+NAME="AEN1352"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1400"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1403"
+NAME="AEN1355"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1404"
+NAME="AEN1356"
></A
><TABLE
BORDER="0"
@@ -135,7 +135,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1413"
+NAME="AEN1365"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ higher level functions.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1416"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfreetypecharset.html b/doc/fontconfig-devel/fcfreetypecharset.html
index 43cc5f38..a40b5206 100644
--- a/doc/fontconfig-devel/fcfreetypecharset.html
+++ b/doc/fontconfig-devel/fcfreetypecharset.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
REL="PREVIOUS"
TITLE="FcFreeTypeCharIndex"
HREF="fcfreetypecharindex.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARSET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1423"
+NAME="AEN1373"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1423"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1426"
+NAME="AEN1376"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1427"
+NAME="AEN1377"
></A
><TABLE
BORDER="0"
@@ -135,7 +135,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1436"
+NAME="AEN1386"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ not in 'blanks' are not placed in the returned FcCharSet.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1439"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfreetypecharsetandspacing.html b/doc/fontconfig-devel/fcfreetypecharsetandspacing.html
index 7e950281..76eff8b6 100644
--- a/doc/fontconfig-devel/fcfreetypecharsetandspacing.html
+++ b/doc/fontconfig-devel/fcfreetypecharsetandspacing.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
REL="PREVIOUS"
TITLE="FcFreeTypeCharSet"
HREF="fcfreetypecharset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARSETANDSPACING"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1446"
+NAME="AEN1394"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1446"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1449"
+NAME="AEN1397"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1450"
+NAME="AEN1398"
></A
><TABLE
BORDER="0"
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1461"
+NAME="AEN1409"
></A
><H2
>Description</H2
@@ -163,18 +163,6 @@ widths.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1465"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -224,7 +212,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfreetypequery.html b/doc/fontconfig-devel/fcfreetypequery.html
index f457f943..a7c32dad 100644
--- a/doc/fontconfig-devel/fcfreetypequery.html
+++ b/doc/fontconfig-devel/fcfreetypequery.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
REL="PREVIOUS"
TITLE="FcFreeTypeCharSetAndSpacing"
HREF="fcfreetypecharsetandspacing.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPEQUERY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1472"
+NAME="AEN1418"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1472"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1475"
+NAME="AEN1421"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1476"
+NAME="AEN1422"
></A
><TABLE
BORDER="0"
@@ -145,7 +145,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1489"
+NAME="AEN1435"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ of fonts in 'file' is returned in 'count'.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1492"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcfreetypequeryface.html b/doc/fontconfig-devel/fcfreetypequeryface.html
index a3962de4..5101caf8 100644
--- a/doc/fontconfig-devel/fcfreetypequeryface.html
+++ b/doc/fontconfig-devel/fcfreetypequeryface.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
REL="PREVIOUS"
TITLE="FcFreeTypeQuery"
HREF="fcfreetypequery.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCFREETYPEQUERYFACE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1499"
+NAME="AEN1443"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1499"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1502"
+NAME="AEN1446"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1503"
+NAME="AEN1447"
></A
><TABLE
BORDER="0"
@@ -138,7 +138,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1516"
+NAME="AEN1460"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1519"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcgetdefaultlangs.html b/doc/fontconfig-devel/fcgetdefaultlangs.html
index f7f9ea0f..18a4e38e 100644
--- a/doc/fontconfig-devel/fcgetdefaultlangs.html
+++ b/doc/fontconfig-devel/fcgetdefaultlangs.html
@@ -10,13 +10,13 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetHasLang"
HREF="fclangsethaslang.html"><LINK
REL="NEXT"
-TITLE="FcGetLangs"
-HREF="fcgetlangs.html"></HEAD
+TITLE="FcLangSetGetLangs"
+HREF="fclangsetgetlangs.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
-HREF="fcgetlangs.html"
+HREF="fclangsetgetlangs.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -75,7 +75,7 @@ NAME="FCGETDEFAULTLANGS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2404"
+NAME="AEN2312"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2404"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2407"
+NAME="AEN2315"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2408"
+NAME="AEN2316"
></A
><TABLE
BORDER="0"
@@ -118,7 +118,7 @@ CLASS="FUNCTION"
>(void<TT
CLASS="PARAMETER"
><I
->ls</I
+></I
></TT
>);</CODE
></P
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2415"
+NAME="AEN2323"
></A
><H2
>Description</H2
@@ -142,14 +142,12 @@ If there are no valid values in those environment variables, "en" will be set as
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2418"
+NAME="AEN2326"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.91</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -185,7 +183,7 @@ WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
-HREF="fcgetlangs.html"
+HREF="fclangsetgetlangs.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -201,7 +199,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
@@ -209,7 +207,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->FcGetLangs</TD
+>FcLangSetGetLangs</TD
></TR
></TABLE
></DIV
diff --git a/doc/fontconfig-devel/fcgetlangs.html b/doc/fontconfig-devel/fcgetlangs.html
index b655245c..11927b37 100644
--- a/doc/fontconfig-devel/fcgetlangs.html
+++ b/doc/fontconfig-devel/fcgetlangs.html
@@ -10,10 +10,10 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
-TITLE="FcGetDefaultLangs"
-HREF="fcgetdefaultlangs.html"><LINK
+TITLE="FcLangSetGetLangs"
+HREF="fclangsetgetlangs.html"><LINK
REL="NEXT"
TITLE="FcLangNormalize"
HREF="fclangnormalize.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
-HREF="fcgetdefaultlangs.html"
+HREF="fclangsetgetlangs.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -75,7 +75,7 @@ NAME="FCGETLANGS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2425"
+NAME="AEN2354"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2425"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2428"
+NAME="AEN2357"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2429"
+NAME="AEN2358"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2436"
+NAME="AEN2365"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2436"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2439"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -165,7 +153,7 @@ WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
-HREF="fcgetdefaultlangs.html"
+HREF="fclangsetgetlangs.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -193,13 +181,13 @@ ACCESSKEY="N"
WIDTH="33%"
ALIGN="left"
VALIGN="top"
->FcGetDefaultLangs</TD
+>FcLangSetGetLangs</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcgetversion.html b/doc/fontconfig-devel/fcgetversion.html
index ee289bfd..540be900 100644
--- a/doc/fontconfig-devel/fcgetversion.html
+++ b/doc/fontconfig-devel/fcgetversion.html
@@ -75,7 +75,7 @@ NAME="FCGETVERSION"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN196"
+NAME="AEN189"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN196"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN199"
+NAME="AEN192"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN200"
+NAME="AEN193"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN207"
+NAME="AEN200"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN207"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN210"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcinit.html b/doc/fontconfig-devel/fcinit.html
index 6967ef8d..9810e771 100644
--- a/doc/fontconfig-devel/fcinit.html
+++ b/doc/fontconfig-devel/fcinit.html
@@ -75,7 +75,7 @@ NAME="FCINIT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN154"
+NAME="AEN151"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN154"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN157"
+NAME="AEN154"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN158"
+NAME="AEN155"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN165"
+NAME="AEN162"
></A
><H2
>Description</H2
@@ -141,18 +141,6 @@ been loaded, this routine does nothing and returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN168"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcinitbringuptodate.html b/doc/fontconfig-devel/fcinitbringuptodate.html
index 6826be3a..bea42370 100644
--- a/doc/fontconfig-devel/fcinitbringuptodate.html
+++ b/doc/fontconfig-devel/fcinitbringuptodate.html
@@ -68,7 +68,7 @@ NAME="FCINITBRINGUPTODATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN238"
+NAME="AEN227"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN238"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN241"
+NAME="AEN230"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN242"
+NAME="AEN231"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN249"
+NAME="AEN238"
></A
><H2
>Description</H2
@@ -134,18 +134,6 @@ be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN252"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcinitloadconfig.html b/doc/fontconfig-devel/fcinitloadconfig.html
index 6ed368c7..38d42d46 100644
--- a/doc/fontconfig-devel/fcinitloadconfig.html
+++ b/doc/fontconfig-devel/fcinitloadconfig.html
@@ -75,7 +75,7 @@ NAME="FCINITLOADCONFIG"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN112"
+NAME="AEN113"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN112"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN115"
+NAME="AEN116"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN116"
+NAME="AEN117"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN123"
+NAME="AEN124"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ Does not load any font information.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN126"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcinitloadconfigandfonts.html b/doc/fontconfig-devel/fcinitloadconfigandfonts.html
index dde015ed..1b9b25f0 100644
--- a/doc/fontconfig-devel/fcinitloadconfigandfonts.html
+++ b/doc/fontconfig-devel/fcinitloadconfigandfonts.html
@@ -75,7 +75,7 @@ NAME="FCINITLOADCONFIGANDFONTS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN133"
+NAME="AEN132"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN133"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN136"
+NAME="AEN135"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN137"
+NAME="AEN136"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN144"
+NAME="AEN143"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ available fonts. Returns the resulting configuration.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN147"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcinitreinitialize.html b/doc/fontconfig-devel/fcinitreinitialize.html
index 55f7172f..6436806d 100644
--- a/doc/fontconfig-devel/fcinitreinitialize.html
+++ b/doc/fontconfig-devel/fcinitreinitialize.html
@@ -75,7 +75,7 @@ NAME="FCINITREINITIALIZE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN217"
+NAME="AEN208"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN217"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN220"
+NAME="AEN211"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN221"
+NAME="AEN212"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN228"
+NAME="AEN219"
></A
><H2
>Description</H2
@@ -141,18 +141,6 @@ existing configuration unchanged. Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN231"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
diff --git a/doc/fontconfig-devel/fcislower.html b/doc/fontconfig-devel/fcislower.html
index 17b747e0..41b09320 100644
--- a/doc/fontconfig-devel/fcislower.html
+++ b/doc/fontconfig-devel/fcislower.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcUtf16Len"
HREF="fcutf16len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISLOWER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4665"
+NAME="AEN4696"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4665"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4668"
+NAME="AEN4699"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4669"
+NAME="AEN4700"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4676"
+NAME="AEN4707"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ letter.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4680"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcisupper.html b/doc/fontconfig-devel/fcisupper.html
index 967ad711..2a31bcb2 100644
--- a/doc/fontconfig-devel/fcisupper.html
+++ b/doc/fontconfig-devel/fcisupper.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcIsLower"
HREF="fcislower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISUPPER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4687"
+NAME="AEN4716"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4687"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4690"
+NAME="AEN4719"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4691"
+NAME="AEN4720"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4698"
+NAME="AEN4727"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ letter.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4702"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclanggetcharset.html b/doc/fontconfig-devel/fclanggetcharset.html
index aa8cba6b..7f5e33c4 100644
--- a/doc/fontconfig-devel/fclanggetcharset.html
+++ b/doc/fontconfig-devel/fclanggetcharset.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangNormalize"
HREF="fclangnormalize.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCLANGGETCHARSET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2468"
+NAME="AEN2396"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2468"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2471"
+NAME="AEN2399"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2472"
+NAME="AEN2400"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2479"
+NAME="AEN2407"
></A
><H2
>Description</H2
@@ -131,18 +131,6 @@ NAME="AEN2479"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2482"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangnormalize.html b/doc/fontconfig-devel/fclangnormalize.html
index 46d88126..0af8ae79 100644
--- a/doc/fontconfig-devel/fclangnormalize.html
+++ b/doc/fontconfig-devel/fclangnormalize.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcGetLangs"
HREF="fcgetlangs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGNORMALIZE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2446"
+NAME="AEN2373"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2446"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2449"
+NAME="AEN2376"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2450"
+NAME="AEN2377"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2457"
+NAME="AEN2384"
></A
><H2
>Description</H2
@@ -145,14 +145,12 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2461"
+NAME="AEN2388"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.10.91</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -204,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetadd.html b/doc/fontconfig-devel/fclangsetadd.html
index 1da1b22c..97719525 100644
--- a/doc/fontconfig-devel/fclangsetadd.html
+++ b/doc/fontconfig-devel/fclangsetadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetCopy"
HREF="fclangsetcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2168"
+NAME="AEN2085"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2168"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2171"
+NAME="AEN2088"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2172"
+NAME="AEN2089"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2181"
+NAME="AEN2098"
></A
><H2
>Description</H2
@@ -161,18 +161,6 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2187"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetcompare.html b/doc/fontconfig-devel/fclangsetcompare.html
index ddc0fa86..42f68edc 100644
--- a/doc/fontconfig-devel/fclangsetcompare.html
+++ b/doc/fontconfig-devel/fclangsetcompare.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetSubtract"
HREF="fclangsetsubtract.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCOMPARE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2270"
+NAME="AEN2188"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2270"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2273"
+NAME="AEN2191"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2274"
+NAME="AEN2192"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2283"
+NAME="AEN2201"
></A
><H2
>Description</H2
@@ -161,18 +161,6 @@ common, this function returns FcLangDifferentLang.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2289"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetcontains.html b/doc/fontconfig-devel/fclangsetcontains.html
index 5ad359a7..18c0bbb9 100644
--- a/doc/fontconfig-devel/fclangsetcontains.html
+++ b/doc/fontconfig-devel/fclangsetcontains.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetCompare"
HREF="fclangsetcompare.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCONTAINS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2296"
+NAME="AEN2212"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2296"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2299"
+NAME="AEN2215"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2300"
+NAME="AEN2216"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2309"
+NAME="AEN2225"
></A
><H2
>Description</H2
@@ -181,18 +181,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2319"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -242,7 +230,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetcopy.html b/doc/fontconfig-devel/fclangsetcopy.html
index 05fcbb5e..46cc5c4e 100644
--- a/doc/fontconfig-devel/fclangsetcopy.html
+++ b/doc/fontconfig-devel/fclangsetcopy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetDestroy"
HREF="fclangsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCOPY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2145"
+NAME="AEN2064"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2145"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2148"
+NAME="AEN2067"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2149"
+NAME="AEN2068"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2156"
+NAME="AEN2075"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2161"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetcreate.html b/doc/fontconfig-devel/fclangsetcreate.html
index e4a27026..dc39cfd9 100644
--- a/doc/fontconfig-devel/fclangsetcreate.html
+++ b/doc/fontconfig-devel/fclangsetcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2101"
+NAME="AEN2024"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2101"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2104"
+NAME="AEN2027"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2105"
+NAME="AEN2028"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2112"
+NAME="AEN2035"
></A
><H2
>Description</H2
@@ -141,18 +141,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2116"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -202,7 +190,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetdel.html b/doc/fontconfig-devel/fclangsetdel.html
index a2a09eed..a284fa60 100644
--- a/doc/fontconfig-devel/fclangsetdel.html
+++ b/doc/fontconfig-devel/fclangsetdel.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetAdd"
HREF="fclangsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETDEL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2194"
+NAME="AEN2109"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2194"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2197"
+NAME="AEN2112"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2198"
+NAME="AEN2113"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2207"
+NAME="AEN2122"
></A
><H2
>Description</H2
@@ -163,14 +163,12 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2213"
+NAME="AEN2128"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.0</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -222,7 +220,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetdestroy.html b/doc/fontconfig-devel/fclangsetdestroy.html
index 4478433b..1d89a571 100644
--- a/doc/fontconfig-devel/fclangsetdestroy.html
+++ b/doc/fontconfig-devel/fclangsetdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetCreate"
HREF="fclangsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2123"
+NAME="AEN2044"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2123"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2126"
+NAME="AEN2047"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2127"
+NAME="AEN2048"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2134"
+NAME="AEN2055"
></A
><H2
>Description</H2
@@ -142,18 +142,6 @@ all memory associated with it.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2138"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -203,7 +191,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetequal.html b/doc/fontconfig-devel/fclangsetequal.html
index 1e11c27c..b4fed776 100644
--- a/doc/fontconfig-devel/fclangsetequal.html
+++ b/doc/fontconfig-devel/fclangsetequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetContains"
HREF="fclangsetcontains.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2326"
+NAME="AEN2240"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2326"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2329"
+NAME="AEN2243"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2330"
+NAME="AEN2244"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2339"
+NAME="AEN2253"
></A
><H2
>Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2344"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetgetlangs.html b/doc/fontconfig-devel/fclangsetgetlangs.html
new file mode 100644
index 00000000..9981c2b1
--- /dev/null
+++ b/doc/fontconfig-devel/fclangsetgetlangs.html
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcLangSetGetLangs</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcLangSet"
+HREF="x102.html#AEN2016"><LINK
+REL="PREVIOUS"
+TITLE="FcGetDefaultLangs"
+HREF="fcgetdefaultlangs.html"><LINK
+REL="NEXT"
+TITLE="FcGetLangs"
+HREF="fcgetlangs.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcgetdefaultlangs.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcgetlangs.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCLANGSETGETLANGS"
+></A
+>FcLangSetGetLangs</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2334"
+></A
+><H2
+>Name</H2
+>FcLangSetGetLangs&nbsp;--&nbsp;get the list of languages in the langset</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2337"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2338"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcStrSet * <TT
+CLASS="FUNCTION"
+>FcLangSetGetLangs</TT
+></CODE
+>(const FcLangSet *<TT
+CLASS="PARAMETER"
+><I
+>ls</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2345"
+></A
+><H2
+>Description</H2
+><P
+>Returns a string set of all languages in <TT
+CLASS="PARAMETER"
+><I
+>langset</I
+></TT
+>.
+ </P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcgetdefaultlangs.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcgetlangs.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcGetDefaultLangs</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2016"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcGetLangs</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fclangsethash.html b/doc/fontconfig-devel/fclangsethash.html
index 4ee76a93..d7e7635d 100644
--- a/doc/fontconfig-devel/fclangsethash.html
+++ b/doc/fontconfig-devel/fclangsethash.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetEqual"
HREF="fclangsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETHASH"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2351"
+NAME="AEN2263"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2351"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2354"
+NAME="AEN2266"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2355"
+NAME="AEN2267"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2362"
+NAME="AEN2274"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ value may not be equal.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2368"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsethaslang.html b/doc/fontconfig-devel/fclangsethaslang.html
index c44fdb27..d92a2ee2 100644
--- a/doc/fontconfig-devel/fclangsethaslang.html
+++ b/doc/fontconfig-devel/fclangsethaslang.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetHash"
HREF="fclangsethash.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETHASLANG"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2375"
+NAME="AEN2285"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2375"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2378"
+NAME="AEN2288"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2379"
+NAME="AEN2289"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2388"
+NAME="AEN2298"
></A
><H2
>Description</H2
@@ -177,18 +177,6 @@ has no matching language, this function returns FcLangDifferentLang.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2397"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -238,7 +226,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetsubtract.html b/doc/fontconfig-devel/fclangsetsubtract.html
index aa5c9221..7ee18c0d 100644
--- a/doc/fontconfig-devel/fclangsetsubtract.html
+++ b/doc/fontconfig-devel/fclangsetsubtract.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetUnion"
HREF="fclangsetunion.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETSUBTRACT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2245"
+NAME="AEN2162"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2245"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2248"
+NAME="AEN2165"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2249"
+NAME="AEN2166"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2258"
+NAME="AEN2175"
></A
><H2
>Description</H2
@@ -155,14 +155,12 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2263"
+NAME="AEN2180"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.0</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -214,7 +212,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fclangsetunion.html b/doc/fontconfig-devel/fclangsetunion.html
index aa386452..4d3071d3 100644
--- a/doc/fontconfig-devel/fclangsetunion.html
+++ b/doc/fontconfig-devel/fclangsetunion.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
REL="PREVIOUS"
TITLE="FcLangSetDel"
HREF="fclangsetdel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETUNION"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2220"
+NAME="AEN2136"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2220"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2223"
+NAME="AEN2139"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2224"
+NAME="AEN2140"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2233"
+NAME="AEN2149"
></A
><H2
>Description</H2
@@ -155,14 +155,12 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2238"
+NAME="AEN2154"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.0</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -214,7 +212,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixcopy.html b/doc/fontconfig-devel/fcmatrixcopy.html
index fbbac380..6c9799e7 100644
--- a/doc/fontconfig-devel/fcmatrixcopy.html
+++ b/doc/fontconfig-devel/fcmatrixcopy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixInit"
HREF="fcmatrixinit.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXCOPY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2515"
+NAME="AEN2439"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2515"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2518"
+NAME="AEN2442"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2519"
+NAME="AEN2443"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2526"
+NAME="AEN2450"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2531"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixequal.html b/doc/fontconfig-devel/fcmatrixequal.html
index 5aef412a..fbdb69bf 100644
--- a/doc/fontconfig-devel/fcmatrixequal.html
+++ b/doc/fontconfig-devel/fcmatrixequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixCopy"
HREF="fcmatrixcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2538"
+NAME="AEN2460"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2538"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2541"
+NAME="AEN2463"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2542"
+NAME="AEN2464"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2551"
+NAME="AEN2473"
></A
><H2
>Description</H2
@@ -158,18 +158,6 @@ FcFalse when they are not.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2557"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -219,7 +207,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixinit.html b/doc/fontconfig-devel/fcmatrixinit.html
index c6487209..ef8ef924 100644
--- a/doc/fontconfig-devel/fcmatrixinit.html
+++ b/doc/fontconfig-devel/fcmatrixinit.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXINIT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2492"
+NAME="AEN2418"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2492"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2495"
+NAME="AEN2421"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2496"
+NAME="AEN2422"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2503"
+NAME="AEN2429"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ to the identity matrix.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2508"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixmultiply.html b/doc/fontconfig-devel/fcmatrixmultiply.html
index 4a6f6939..c42ceb55 100644
--- a/doc/fontconfig-devel/fcmatrixmultiply.html
+++ b/doc/fontconfig-devel/fcmatrixmultiply.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixEqual"
HREF="fcmatrixequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXMULTIPLY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2564"
+NAME="AEN2484"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2564"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2567"
+NAME="AEN2487"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2568"
+NAME="AEN2488"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2579"
+NAME="AEN2499"
></A
><H2
>Description</H2
@@ -168,18 +168,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2586"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -229,7 +217,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixrotate.html b/doc/fontconfig-devel/fcmatrixrotate.html
index d6837465..58f944e5 100644
--- a/doc/fontconfig-devel/fcmatrixrotate.html
+++ b/doc/fontconfig-devel/fcmatrixrotate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixMultiply"
HREF="fcmatrixmultiply.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXROTATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2593"
+NAME="AEN2511"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2593"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2596"
+NAME="AEN2514"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2597"
+NAME="AEN2515"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2608"
+NAME="AEN2526"
></A
><H2
>Description</H2
@@ -183,18 +183,6 @@ CLASS="PROGRAMLISTING"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2616"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixscale.html b/doc/fontconfig-devel/fcmatrixscale.html
index ae2374d1..30fe4287 100644
--- a/doc/fontconfig-devel/fcmatrixscale.html
+++ b/doc/fontconfig-devel/fcmatrixscale.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixRotate"
HREF="fcmatrixrotate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXSCALE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2623"
+NAME="AEN2539"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2623"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2626"
+NAME="AEN2542"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2627"
+NAME="AEN2543"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2638"
+NAME="AEN2554"
></A
><H2
>Description</H2
@@ -183,18 +183,6 @@ CLASS="PROGRAMLISTING"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2646"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcmatrixshear.html b/doc/fontconfig-devel/fcmatrixshear.html
index 7982c4cb..f18c01e6 100644
--- a/doc/fontconfig-devel/fcmatrixshear.html
+++ b/doc/fontconfig-devel/fcmatrixshear.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
REL="PREVIOUS"
TITLE="FcMatrixScale"
HREF="fcmatrixscale.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCMATRIXSHEAR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2653"
+NAME="AEN2567"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2653"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2656"
+NAME="AEN2570"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN2657"
+NAME="AEN2571"
></A
><TABLE
BORDER="0"
@@ -132,7 +132,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2668"
+NAME="AEN2582"
></A
><H2
>Description</H2
@@ -176,18 +176,6 @@ CLASS="PROGRAMLISTING"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2676"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -233,7 +221,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameconstant.html b/doc/fontconfig-devel/fcnameconstant.html
index b42963b1..0dc3f92e 100644
--- a/doc/fontconfig-devel/fcnameconstant.html
+++ b/doc/fontconfig-devel/fcnameconstant.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
REL="PREVIOUS"
TITLE="FcNameGetConstant"
HREF="fcnamegetconstant.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCNAMECONSTANT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3538"
+NAME="AEN3555"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3538"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3541"
+NAME="AEN3558"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3542"
+NAME="AEN3559"
></A
><TABLE
BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3551"
+NAME="AEN3568"
></A
><H2
>Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3556"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnamegetconstant.html b/doc/fontconfig-devel/fcnamegetconstant.html
index 6a056782..3281e659 100644
--- a/doc/fontconfig-devel/fcnamegetconstant.html
+++ b/doc/fontconfig-devel/fcnamegetconstant.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
REL="PREVIOUS"
TITLE="FcNameUnregisterConstants"
HREF="fcnameunregisterconstants.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEGETCONSTANT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3516"
+NAME="AEN3535"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3516"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3519"
+NAME="AEN3538"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3520"
+NAME="AEN3539"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3527"
+NAME="AEN3546"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3531"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnamegetobjecttype.html b/doc/fontconfig-devel/fcnamegetobjecttype.html
index a0528ee4..a59c9a08 100644
--- a/doc/fontconfig-devel/fcnamegetobjecttype.html
+++ b/doc/fontconfig-devel/fcnamegetobjecttype.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
REL="PREVIOUS"
TITLE="FcNameUnregisterObjectTypes"
HREF="fcnameunregisterobjecttypes.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCNAMEGETOBJECTTYPE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3445"
+NAME="AEN3470"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3445"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3448"
+NAME="AEN3473"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3449"
+NAME="AEN3474"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3456"
+NAME="AEN3481"
></A
><H2
>Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3460"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameparse.html b/doc/fontconfig-devel/fcnameparse.html
index f823eb0c..6753fa8d 100644
--- a/doc/fontconfig-devel/fcnameparse.html
+++ b/doc/fontconfig-devel/fcnameparse.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcDefaultSubstitute"
HREF="fcdefaultsubstitute.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEPARSE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN887"
+NAME="AEN866"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN887"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN890"
+NAME="AEN869"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN891"
+NAME="AEN870"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN898"
+NAME="AEN877"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN902"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameregisterconstants.html b/doc/fontconfig-devel/fcnameregisterconstants.html
index 27250729..0545b99d 100644
--- a/doc/fontconfig-devel/fcnameregisterconstants.html
+++ b/doc/fontconfig-devel/fcnameregisterconstants.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTERCONSTANTS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3470"
+NAME="AEN3493"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3470"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3473"
+NAME="AEN3496"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3474"
+NAME="AEN3497"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3483"
+NAME="AEN3506"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3483"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3486"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameregisterobjecttypes.html b/doc/fontconfig-devel/fcnameregisterobjecttypes.html
index d908d836..40ac7c14 100644
--- a/doc/fontconfig-devel/fcnameregisterobjecttypes.html
+++ b/doc/fontconfig-devel/fcnameregisterobjecttypes.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTEROBJECTTYPES"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3399"
+NAME="AEN3428"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3399"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3402"
+NAME="AEN3431"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3403"
+NAME="AEN3432"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3412"
+NAME="AEN3441"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3412"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3415"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameunparse.html b/doc/fontconfig-devel/fcnameunparse.html
index e691f1ca..0b9dd77b 100644
--- a/doc/fontconfig-devel/fcnameunparse.html
+++ b/doc/fontconfig-devel/fcnameunparse.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcNameParse"
HREF="fcnameparse.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNPARSE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN909"
+NAME="AEN886"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN909"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN912"
+NAME="AEN889"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN913"
+NAME="AEN890"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN920"
+NAME="AEN897"
></A
><H2
>Description</H2
@@ -140,18 +140,6 @@ which should be freed by the caller using free().
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN923"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -201,7 +189,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameunregisterconstants.html b/doc/fontconfig-devel/fcnameunregisterconstants.html
index effd7cd8..42371fe0 100644
--- a/doc/fontconfig-devel/fcnameunregisterconstants.html
+++ b/doc/fontconfig-devel/fcnameunregisterconstants.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
REL="PREVIOUS"
TITLE="FcNameRegisterConstants"
HREF="fcnameregisterconstants.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTERCONSTANTS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3493"
+NAME="AEN3514"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3493"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3496"
+NAME="AEN3517"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3497"
+NAME="AEN3518"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3506"
+NAME="AEN3527"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3506"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3509"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcnameunregisterobjecttypes.html b/doc/fontconfig-devel/fcnameunregisterobjecttypes.html
index ff4e71ce..c487d474 100644
--- a/doc/fontconfig-devel/fcnameunregisterobjecttypes.html
+++ b/doc/fontconfig-devel/fcnameunregisterobjecttypes.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
REL="PREVIOUS"
TITLE="FcNameRegisterObjectTypes"
HREF="fcnameregisterobjecttypes.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTEROBJECTTYPES"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3422"
+NAME="AEN3449"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3422"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3425"
+NAME="AEN3452"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN3426"
+NAME="AEN3453"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3435"
+NAME="AEN3462"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3435"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3438"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcobjectsetadd.html b/doc/fontconfig-devel/fcobjectsetadd.html
index dceb52a4..6a22e492 100644
--- a/doc/fontconfig-devel/fcobjectsetadd.html
+++ b/doc/fontconfig-devel/fcobjectsetadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
REL="PREVIOUS"
TITLE="FcObjectSetCreate"
HREF="fcobjectsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1311"
+NAME="AEN1269"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1311"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1314"
+NAME="AEN1272"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1315"
+NAME="AEN1273"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1324"
+NAME="AEN1282"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ inserted into the set (due to allocation failure). Otherwise returns FcTrue.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1327"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcobjectsetbuild.html b/doc/fontconfig-devel/fcobjectsetbuild.html
index 37e9cb18..c1e033f8 100644
--- a/doc/fontconfig-devel/fcobjectsetbuild.html
+++ b/doc/fontconfig-devel/fcobjectsetbuild.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
REL="PREVIOUS"
TITLE="FcObjectSetDestroy"
HREF="fcobjectsetdestroy.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCOBJECTSETBUILD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1355"
+NAME="AEN1309"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1355"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1360"
+NAME="AEN1314"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1361"
+NAME="AEN1315"
></A
><TABLE
BORDER="0"
@@ -172,7 +172,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1386"
+NAME="AEN1340"
></A
><H2
>Description</H2
@@ -188,18 +188,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1390"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -245,7 +233,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcobjectsetcreate.html b/doc/fontconfig-devel/fcobjectsetcreate.html
index 726de121..79f19e09 100644
--- a/doc/fontconfig-devel/fcobjectsetcreate.html
+++ b/doc/fontconfig-devel/fcobjectsetcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1290"
+NAME="AEN1250"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1290"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1293"
+NAME="AEN1253"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1294"
+NAME="AEN1254"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1301"
+NAME="AEN1261"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1301"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1304"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcobjectsetdestroy.html b/doc/fontconfig-devel/fcobjectsetdestroy.html
index b0697014..98a3997d 100644
--- a/doc/fontconfig-devel/fcobjectsetdestroy.html
+++ b/doc/fontconfig-devel/fcobjectsetdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
REL="PREVIOUS"
TITLE="FcObjectSetAdd"
HREF="fcobjectsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1334"
+NAME="AEN1290"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1334"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1337"
+NAME="AEN1293"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1338"
+NAME="AEN1294"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1345"
+NAME="AEN1301"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1345"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1348"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternadd-type.html b/doc/fontconfig-devel/fcpatternadd-type.html
index 07ac1cb0..f40939c8 100644
--- a/doc/fontconfig-devel/fcpatternadd-type.html
+++ b/doc/fontconfig-devel/fcpatternadd-type.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternAddWeak"
HREF="fcpatternaddweak.html"><LINK
@@ -75,15 +75,15 @@ NAME="FCPATTERNADD-TYPE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN506"
+NAME="AEN473"
></A
><H2
>Name</H2
->FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet&nbsp;--&nbsp;Add a typed value to a pattern</DIV
+>FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange&nbsp;--&nbsp;Add a typed value to a pattern</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN516"
+NAME="AEN484"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN517"
+NAME="AEN485"
></A
><TABLE
BORDER="0"
@@ -308,13 +308,38 @@ CLASS="PARAMETER"
>);</CODE
></P
><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcBool <TT
+CLASS="FUNCTION"
+>FcPatternAddRange</TT
+></CODE
+>(FcPattern *<TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+>, const char *<TT
+CLASS="PARAMETER"
+><I
+>object</I
+></TT
+>, const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>r</I
+></TT
+>);</CODE
+></P
+><P
></P
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN591"
+NAME="AEN568"
></A
><H2
>Description</H2
@@ -323,18 +348,11 @@ NAME="AEN591"
type into the pattern. Use these in preference to FcPatternAdd as they
will provide compile-time typechecking. These all append values to
any existing list of values.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN594"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
+<TT
+CLASS="FUNCTION"
+>FcPatternAddRange</TT
+> are available since 2.11.91.
</P
></DIV
><DIV
@@ -387,7 +405,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternadd.html b/doc/fontconfig-devel/fcpatternadd.html
index f3d7b747..90a0cdf3 100644
--- a/doc/fontconfig-devel/fcpatternadd.html
+++ b/doc/fontconfig-devel/fcpatternadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternHash"
HREF="fcpatternhash.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN449"
+NAME="AEN420"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN449"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN452"
+NAME="AEN423"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN453"
+NAME="AEN424"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN466"
+NAME="AEN437"
></A
><H2
>Description</H2
@@ -162,18 +162,6 @@ retains no reference to any application-supplied data structure.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN470"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -223,7 +211,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternaddweak.html b/doc/fontconfig-devel/fcpatternaddweak.html
index 5f9ffbca..fc29711b 100644
--- a/doc/fontconfig-devel/fcpatternaddweak.html
+++ b/doc/fontconfig-devel/fcpatternaddweak.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternAdd"
HREF="fcpatternadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNADDWEAK"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN477"
+NAME="AEN446"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN477"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN480"
+NAME="AEN449"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN481"
+NAME="AEN450"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN494"
+NAME="AEN463"
></A
><H2
>Description</H2
@@ -164,18 +164,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN499"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -225,7 +213,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternbuild.html b/doc/fontconfig-devel/fcpatternbuild.html
index 095c602c..fabdf863 100644
--- a/doc/fontconfig-devel/fcpatternbuild.html
+++ b/doc/fontconfig-devel/fcpatternbuild.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternGet-Type"
HREF="fcpatternget-type.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNBUILD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN738"
+NAME="AEN727"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN738"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN743"
+NAME="AEN732"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN744"
+NAME="AEN733"
></A
><TABLE
BORDER="0"
@@ -179,7 +179,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN769"
+NAME="AEN758"
></A
><H2
>Description</H2
@@ -235,18 +235,6 @@ variable.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN783"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -296,7 +284,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatterncreate.html b/doc/fontconfig-devel/fcpatterncreate.html
index 71a02972..d54b6b2c 100644
--- a/doc/fontconfig-devel/fcpatterncreate.html
+++ b/doc/fontconfig-devel/fcpatterncreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN262"
+NAME="AEN249"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN262"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN265"
+NAME="AEN252"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN266"
+NAME="AEN253"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN273"
+NAME="AEN260"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN273"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN276"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatterndel.html b/doc/fontconfig-devel/fcpatterndel.html
index fb62abd5..2ab8b846 100644
--- a/doc/fontconfig-devel/fcpatterndel.html
+++ b/doc/fontconfig-devel/fcpatterndel.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternBuild"
HREF="fcpatternbuild.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDEL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN790"
+NAME="AEN777"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN790"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN793"
+NAME="AEN780"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN794"
+NAME="AEN781"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN803"
+NAME="AEN790"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ whether the property existed or not.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN806"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatterndestroy.html b/doc/fontconfig-devel/fcpatterndestroy.html
index df908d38..b6110466 100644
--- a/doc/fontconfig-devel/fcpatterndestroy.html
+++ b/doc/fontconfig-devel/fcpatterndestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternReference"
HREF="fcpatternreference.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN327"
+NAME="AEN308"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN327"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN330"
+NAME="AEN311"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN331"
+NAME="AEN312"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN338"
+NAME="AEN319"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ the pattern, in the process destroying all related values.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN341"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternduplicate.html b/doc/fontconfig-devel/fcpatternduplicate.html
index 8fbaf5d2..15dc18a2 100644
--- a/doc/fontconfig-devel/fcpatternduplicate.html
+++ b/doc/fontconfig-devel/fcpatternduplicate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternCreate"
HREF="fcpatterncreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDUPLICATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN283"
+NAME="AEN268"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN283"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN286"
+NAME="AEN271"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN287"
+NAME="AEN272"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN294"
+NAME="AEN279"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ other.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN298"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternequal.html b/doc/fontconfig-devel/fcpatternequal.html
index 5988c22a..5d09b3e7 100644
--- a/doc/fontconfig-devel/fcpatternequal.html
+++ b/doc/fontconfig-devel/fcpatternequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternDestroy"
HREF="fcpatterndestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN348"
+NAME="AEN327"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN348"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN351"
+NAME="AEN330"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN352"
+NAME="AEN331"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN361"
+NAME="AEN340"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN366"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternequalsubset.html b/doc/fontconfig-devel/fcpatternequalsubset.html
index 1c70afbf..5b9d0a66 100644
--- a/doc/fontconfig-devel/fcpatternequalsubset.html
+++ b/doc/fontconfig-devel/fcpatternequalsubset.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternEqual"
HREF="fcpatternequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNEQUALSUBSET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN373"
+NAME="AEN350"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN373"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN376"
+NAME="AEN353"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN377"
+NAME="AEN354"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN388"
+NAME="AEN365"
></A
><H2
>Description</H2
@@ -164,18 +164,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN394"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -225,7 +213,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternfilter.html b/doc/fontconfig-devel/fcpatternfilter.html
index fabc5a80..85c340bd 100644
--- a/doc/fontconfig-devel/fcpatternfilter.html
+++ b/doc/fontconfig-devel/fcpatternfilter.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternEqualSubset"
HREF="fcpatternequalsubset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNFILTER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN401"
+NAME="AEN376"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN401"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN404"
+NAME="AEN379"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN405"
+NAME="AEN380"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN414"
+NAME="AEN389"
></A
><H2
>Description</H2
@@ -166,18 +166,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN421"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternformat.html b/doc/fontconfig-devel/fcpatternformat.html
index b0184267..c9e4b41a 100644
--- a/doc/fontconfig-devel/fcpatternformat.html
+++ b/doc/fontconfig-devel/fcpatternformat.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcNameUnparse"
HREF="fcnameunparse.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCPATTERNFORMAT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN930"
+NAME="AEN905"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN930"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN933"
+NAME="AEN908"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN934"
+NAME="AEN909"
></A
><TABLE
BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN943"
+NAME="AEN918"
></A
><H2
>Description</H2
@@ -537,14 +537,12 @@ lower-cased and with spaces removed.
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1053"
+NAME="AEN1028"
></A
><H2
->Version</H2
+>Since</H2
><P
->Fontconfig version 2.10.91
-
- </P
+>version 2.9.0</P
></DIV
><DIV
CLASS="NAVFOOTER"
@@ -592,7 +590,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternget-type.html b/doc/fontconfig-devel/fcpatternget-type.html
index 92d8f193..39e54fb6 100644
--- a/doc/fontconfig-devel/fcpatternget-type.html
+++ b/doc/fontconfig-devel/fcpatternget-type.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternGet"
HREF="fcpatternget.html"><LINK
@@ -75,15 +75,15 @@ NAME="FCPATTERNGET-TYPE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN631"
+NAME="AEN605"
></A
><H2
>Name</H2
->FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet&nbsp;--&nbsp;Return a typed value from a pattern</DIV
+>FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange&nbsp;--&nbsp;Return a typed value from a pattern</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN641"
+NAME="AEN616"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN642"
+NAME="AEN617"
></A
><TABLE
BORDER="0"
@@ -310,6 +310,11 @@ CLASS="PARAMETER"
><I
>n</I
></TT
+>, FT_Face *<TT
+CLASS="PARAMETER"
+><I
+>f</I
+></TT
>);</CODE
></P
><P
@@ -330,10 +335,45 @@ CLASS="PARAMETER"
><I
>object</I
></TT
->, FT_Face *<TT
+>, int <TT
CLASS="PARAMETER"
><I
->f</I
+>n</I
+></TT
+>, FcLangSet **<TT
+CLASS="PARAMETER"
+><I
+>l</I
+></TT
+>);</CODE
+></P
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcResult <TT
+CLASS="FUNCTION"
+>FcPatternGetRange</TT
+></CODE
+>(FcPattern *<TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+>, const char *<TT
+CLASS="PARAMETER"
+><I
+>object</I
+></TT
+>, int <TT
+CLASS="PARAMETER"
+><I
+>n</I
+></TT
+>, FcRange **<TT
+CLASS="PARAMETER"
+><I
+>r</I
></TT
>);</CODE
></P
@@ -344,7 +384,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN728"
+NAME="AEN718"
></A
><H2
>Description</H2
@@ -354,18 +394,11 @@ returned data is of the expected type. They return FcResultTypeMismatch if
this is not the case. Note that these (like FcPatternGet) do not make a
copy of any data structure referenced by the return value. Use these
in preference to FcPatternGet to provide compile-time typechecking.
- </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN731"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
+<TT
+CLASS="FUNCTION"
+>FcPatternGetRange</TT
+> are available since 2.11.91.
</P
></DIV
><DIV
@@ -418,7 +451,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternget.html b/doc/fontconfig-devel/fcpatternget.html
index 3985f4a5..1c38532c 100644
--- a/doc/fontconfig-devel/fcpatternget.html
+++ b/doc/fontconfig-devel/fcpatternget.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternAdd-Type"
HREF="fcpatternadd-type.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNGET"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN601"
+NAME="AEN577"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN601"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN604"
+NAME="AEN580"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN605"
+NAME="AEN581"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN618"
+NAME="AEN594"
></A
><H2
>Description</H2
@@ -171,18 +171,6 @@ within the pattern directly. Applications must not free this value.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN624"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternhash.html b/doc/fontconfig-devel/fcpatternhash.html
index 15adc3ff..54a70352 100644
--- a/doc/fontconfig-devel/fcpatternhash.html
+++ b/doc/fontconfig-devel/fcpatternhash.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternFilter"
HREF="fcpatternfilter.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNHASH"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN428"
+NAME="AEN401"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN428"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN431"
+NAME="AEN404"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN432"
+NAME="AEN405"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN439"
+NAME="AEN412"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ equal.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN442"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternprint.html b/doc/fontconfig-devel/fcpatternprint.html
index e8883d72..87a36791 100644
--- a/doc/fontconfig-devel/fcpatternprint.html
+++ b/doc/fontconfig-devel/fcpatternprint.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternRemove"
HREF="fcpatternremove.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNPRINT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN838"
+NAME="AEN821"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN838"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN841"
+NAME="AEN824"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN842"
+NAME="AEN825"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN849"
+NAME="AEN832"
></A
><H2
>Description</H2
@@ -140,18 +140,6 @@ and debugging.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN852"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -201,7 +189,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternreference.html b/doc/fontconfig-devel/fcpatternreference.html
index bf8f9bf1..aaeac08b 100644
--- a/doc/fontconfig-devel/fcpatternreference.html
+++ b/doc/fontconfig-devel/fcpatternreference.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternDuplicate"
HREF="fcpatternduplicate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNREFERENCE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN305"
+NAME="AEN288"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN305"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN308"
+NAME="AEN291"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN309"
+NAME="AEN292"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN316"
+NAME="AEN299"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ when the reference count reaches zero.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN320"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcpatternremove.html b/doc/fontconfig-devel/fcpatternremove.html
index cd930c10..ba59c477 100644
--- a/doc/fontconfig-devel/fcpatternremove.html
+++ b/doc/fontconfig-devel/fcpatternremove.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
REL="PREVIOUS"
TITLE="FcPatternDel"
HREF="fcpatterndel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNREMOVE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN813"
+NAME="AEN798"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN813"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN816"
+NAME="AEN801"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN817"
+NAME="AEN802"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN828"
+NAME="AEN813"
></A
><H2
>Description</H2
@@ -149,18 +149,6 @@ whether the property existed and had a value at that position or not.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN831"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcrangecopy.html b/doc/fontconfig-devel/fcrangecopy.html
new file mode 100644
index 00000000..2f5724a1
--- /dev/null
+++ b/doc/fontconfig-devel/fcrangecopy.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCopy</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FUNCTIONS"
+HREF="x102.html"><LINK
+REL="NEXT"
+TITLE="FcRangeCreateDouble"
+HREF="fcrangecreatedouble.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECOPY"
+></A
+>FcRangeCopy</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2598"
+></A
+><H2
+>Name</H2
+>FcRangeCopy&nbsp;--&nbsp;Copy a range object</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2601"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2602"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCopy</TT
+></CODE
+>(const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2609"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCopy</TT
+> creates a new FcRange object and
+populates it with the contents of <TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2614"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FUNCTIONS</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeCreateDouble</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangecreatedouble.html b/doc/fontconfig-devel/fcrangecreatedouble.html
new file mode 100644
index 00000000..e251852d
--- /dev/null
+++ b/doc/fontconfig-devel/fcrangecreatedouble.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCreateDouble</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCopy"
+HREF="fcrangecopy.html"><LINK
+REL="NEXT"
+TITLE="FcRangeCreateInteger"
+HREF="fcrangecreateinteger.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecopy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECREATEDOUBLE"
+></A
+>FcRangeCreateDouble</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2622"
+></A
+><H2
+>Name</H2
+>FcRangeCreateDouble&nbsp;--&nbsp;create a range object for double</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2625"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2626"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCreateDouble</TT
+></CODE
+>(double<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, double<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2635"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCreateDouble</TT
+> creates a new FcRange object with
+double sized value.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2639"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecopy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCopy</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeCreateInteger</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangecreateinteger.html b/doc/fontconfig-devel/fcrangecreateinteger.html
new file mode 100644
index 00000000..64a32a7f
--- /dev/null
+++ b/doc/fontconfig-devel/fcrangecreateinteger.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCreateInteger</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCreateDouble"
+HREF="fcrangecreatedouble.html"><LINK
+REL="NEXT"
+TITLE="FcRangeDestroy"
+HREF="fcrangedestroy.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECREATEINTEGER"
+></A
+>FcRangeCreateInteger</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2647"
+></A
+><H2
+>Name</H2
+>FcRangeCreateInteger&nbsp;--&nbsp;create a range object for integer</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2650"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2651"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCreateInteger</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, int<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2660"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCreateInteger</TT
+> creates a new FcRange object with
+integer sized value.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2664"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCreateDouble</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeDestroy</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangedestroy.html b/doc/fontconfig-devel/fcrangedestroy.html
new file mode 100644
index 00000000..848bc5fb
--- /dev/null
+++ b/doc/fontconfig-devel/fcrangedestroy.html
@@ -0,0 +1,218 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeDestroy</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCreateInteger"
+HREF="fcrangecreateinteger.html"><LINK
+REL="NEXT"
+TITLE="FcRangeGetDouble"
+HREF="fcrangegetdouble.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangegetdouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGEDESTROY"
+></A
+>FcRangeDestroy</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2672"
+></A
+><H2
+>Name</H2
+>FcRangeDestroy&nbsp;--&nbsp;destroy a range object</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2675"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2676"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcRangeDestroy</TT
+></CODE
+>(FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2683"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeDestroy</TT
+> destroys a FcRange object, freeing
+all memory associated with it.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2687"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangegetdouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCreateInteger</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeGetDouble</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangegetdouble.html b/doc/fontconfig-devel/fcrangegetdouble.html
new file mode 100644
index 00000000..7e831e50
--- /dev/null
+++ b/doc/fontconfig-devel/fcrangegetdouble.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeGetDouble</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeDestroy"
+HREF="fcrangedestroy.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGEGETDOUBLE"
+></A
+>FcRangeGetDouble</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2695"
+></A
+><H2
+>Name</H2
+>FcRangeGetDouble&nbsp;--&nbsp;Get the range in double</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2698"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2699"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcBool <TT
+CLASS="FUNCTION"
+>FcRangeGetDouble</TT
+></CODE
+>(const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>, double *<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, double *<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2710"
+></A
+><H2
+>Description</H2
+><P
+>Returns in <TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+> and <TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+> as the range.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2715"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeDestroy</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcstrbasename.html b/doc/fontconfig-devel/fcstrbasename.html
index f4644f43..a96bacee 100644
--- a/doc/fontconfig-devel/fcstrbasename.html
+++ b/doc/fontconfig-devel/fcstrbasename.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrDirname"
HREF="fcstrdirname.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRBASENAME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4972"
+NAME="AEN4977"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4972"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4975"
+NAME="AEN4980"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4976"
+NAME="AEN4981"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4983"
+NAME="AEN4988"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ be freed when no longer needed.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4987"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -195,7 +183,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrcmp.html b/doc/fontconfig-devel/fcstrcmp.html
index 544e9dc1..f216b85e 100644
--- a/doc/fontconfig-devel/fcstrcmp.html
+++ b/doc/fontconfig-devel/fcstrcmp.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrCopyFilename"
HREF="fcstrcopyfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMP"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4800"
+NAME="AEN4819"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4800"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4803"
+NAME="AEN4822"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4804"
+NAME="AEN4823"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4813"
+NAME="AEN4832"
></A
><H2
>Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4818"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrcmpignorecase.html b/doc/fontconfig-devel/fcstrcmpignorecase.html
index 37498040..c2b2aaa8 100644
--- a/doc/fontconfig-devel/fcstrcmpignorecase.html
+++ b/doc/fontconfig-devel/fcstrcmpignorecase.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrCmp"
HREF="fcstrcmp.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMPIGNORECASE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4825"
+NAME="AEN4842"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4825"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4828"
+NAME="AEN4845"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4829"
+NAME="AEN4846"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4838"
+NAME="AEN4855"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ case-insensitive for all proper UTF-8 encoded strings.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4843"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrcopy.html b/doc/fontconfig-devel/fcstrcopy.html
index 16563c14..47bb8dcb 100644
--- a/doc/fontconfig-devel/fcstrcopy.html
+++ b/doc/fontconfig-devel/fcstrcopy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcToLower"
HREF="fctolower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4731"
+NAME="AEN4756"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4731"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4734"
+NAME="AEN4759"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4735"
+NAME="AEN4760"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4742"
+NAME="AEN4767"
></A
><H2
>Description</H2
@@ -148,18 +148,6 @@ available on every platform.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4747"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrcopyfilename.html b/doc/fontconfig-devel/fcstrcopyfilename.html
index d7cd2c7c..26c222b3 100644
--- a/doc/fontconfig-devel/fcstrcopyfilename.html
+++ b/doc/fontconfig-devel/fcstrcopyfilename.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrDowncase"
HREF="fcstrdowncase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPYFILENAME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4776"
+NAME="AEN4797"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4776"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4779"
+NAME="AEN4800"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4780"
+NAME="AEN4801"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4787"
+NAME="AEN4808"
></A
><H2
>Description</H2
@@ -156,18 +156,6 @@ CLASS="FUNCTION"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4793"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrdirname.html b/doc/fontconfig-devel/fcstrdirname.html
index a42a158d..88a13163 100644
--- a/doc/fontconfig-devel/fcstrdirname.html
+++ b/doc/fontconfig-devel/fcstrdirname.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrFree"
HREF="fcstrfree.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRDIRNAME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4950"
+NAME="AEN4957"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4950"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4953"
+NAME="AEN4960"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4954"
+NAME="AEN4961"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4961"
+NAME="AEN4968"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ needed.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4965"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrdowncase.html b/doc/fontconfig-devel/fcstrdowncase.html
index bbae19fb..5cf426a3 100644
--- a/doc/fontconfig-devel/fcstrdowncase.html
+++ b/doc/fontconfig-devel/fcstrdowncase.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrCopy"
HREF="fcstrcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRDOWNCASE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4754"
+NAME="AEN4777"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4754"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4757"
+NAME="AEN4780"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4758"
+NAME="AEN4781"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4765"
+NAME="AEN4788"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ letters to lower case and returns the allocated buffer.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4769"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrfree.html b/doc/fontconfig-devel/fcstrfree.html
index 4831e2e3..c39b2c6f 100644
--- a/doc/fontconfig-devel/fcstrfree.html
+++ b/doc/fontconfig-devel/fcstrfree.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrPlus"
HREF="fcstrplus.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRFREE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4929"
+NAME="AEN4938"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4929"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4932"
+NAME="AEN4941"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4933"
+NAME="AEN4942"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4940"
+NAME="AEN4949"
></A
><H2
>Description</H2
@@ -139,18 +139,6 @@ strings within the fontconfig library.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4943"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrlistcreate.html b/doc/fontconfig-devel/fcstrlistcreate.html
index cce7d0dc..71c03fc9 100644
--- a/doc/fontconfig-devel/fcstrlistcreate.html
+++ b/doc/fontconfig-devel/fcstrlistcreate.html
@@ -10,13 +10,13 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetDestroy"
HREF="fcstrsetdestroy.html"><LINK
REL="NEXT"
-TITLE="FcStrListNext"
-HREF="fcstrlistnext.html"></HEAD
+TITLE="FcStrListFirst"
+HREF="fcstrlistfirst.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
-HREF="fcstrlistnext.html"
+HREF="fcstrlistfirst.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -75,7 +75,7 @@ NAME="FCSTRLISTCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4441"
+NAME="AEN4465"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4441"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4444"
+NAME="AEN4468"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4445"
+NAME="AEN4469"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4452"
+NAME="AEN4476"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4456"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
-HREF="fcstrlistnext.html"
+HREF="fcstrlistfirst.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
@@ -212,7 +200,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->FcStrListNext</TD
+>FcStrListFirst</TD
></TR
></TABLE
></DIV
diff --git a/doc/fontconfig-devel/fcstrlistdone.html b/doc/fontconfig-devel/fcstrlistdone.html
index 786726bd..f4131bbd 100644
--- a/doc/fontconfig-devel/fcstrlistdone.html
+++ b/doc/fontconfig-devel/fcstrlistdone.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrListNext"
HREF="fcstrlistnext.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRLISTDONE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4485"
+NAME="AEN4528"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4485"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4488"
+NAME="AEN4531"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4489"
+NAME="AEN4532"
></A
><TABLE
BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4496"
+NAME="AEN4539"
></A
><H2
>Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4500"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrlistfirst.html b/doc/fontconfig-devel/fcstrlistfirst.html
new file mode 100644
index 00000000..05c7d537
--- /dev/null
+++ b/doc/fontconfig-devel/fcstrlistfirst.html
@@ -0,0 +1,219 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcStrListFirst</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcStrSet and FcStrList"
+HREF="x102.html#AEN4302"><LINK
+REL="PREVIOUS"
+TITLE="FcStrListCreate"
+HREF="fcstrlistcreate.html"><LINK
+REL="NEXT"
+TITLE="FcStrListNext"
+HREF="fcstrlistnext.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcstrlistcreate.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcstrlistnext.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCSTRLISTFIRST"
+></A
+>FcStrListFirst</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN4485"
+></A
+><H2
+>Name</H2
+>FcStrListFirst&nbsp;--&nbsp;get first string in iteration</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN4488"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4489"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcStrListFirst</TT
+></CODE
+>(FcStrList *<TT
+CLASS="PARAMETER"
+><I
+>list</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4496"
+></A
+><H2
+>Description</H2
+><P
+>Returns the first string in <TT
+CLASS="PARAMETER"
+><I
+>list</I
+></TT
+>.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4500"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.0</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcstrlistcreate.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcstrlistnext.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcStrListCreate</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN4302"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcStrListNext</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcstrlistnext.html b/doc/fontconfig-devel/fcstrlistnext.html
index d96d1f88..30f81599 100644
--- a/doc/fontconfig-devel/fcstrlistnext.html
+++ b/doc/fontconfig-devel/fcstrlistnext.html
@@ -10,10 +10,10 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
-TITLE="FcStrListCreate"
-HREF="fcstrlistcreate.html"><LINK
+TITLE="FcStrListFirst"
+HREF="fcstrlistfirst.html"><LINK
REL="NEXT"
TITLE="FcStrListDone"
HREF="fcstrlistdone.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
-HREF="fcstrlistcreate.html"
+HREF="fcstrlistfirst.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -75,7 +75,7 @@ NAME="FCSTRLISTNEXT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4463"
+NAME="AEN4508"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4463"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4466"
+NAME="AEN4511"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4467"
+NAME="AEN4512"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4474"
+NAME="AEN4519"
></A
><H2
>Description</H2
@@ -137,24 +137,12 @@ NAME="AEN4474"
>Returns the next string in <TT
CLASS="PARAMETER"
><I
->set</I
+>list</I
></TT
>.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4478"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -170,7 +158,7 @@ WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
-HREF="fcstrlistcreate.html"
+HREF="fcstrlistfirst.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
@@ -198,13 +186,13 @@ ACCESSKEY="N"
WIDTH="33%"
ALIGN="left"
VALIGN="top"
->FcStrListCreate</TD
+>FcStrListFirst</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrplus.html b/doc/fontconfig-devel/fcstrplus.html
index c22acff7..55c54871 100644
--- a/doc/fontconfig-devel/fcstrplus.html
+++ b/doc/fontconfig-devel/fcstrplus.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrStrIgnoreCase"
HREF="fcstrstrignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRPLUS"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4904"
+NAME="AEN4915"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4904"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4907"
+NAME="AEN4918"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4908"
+NAME="AEN4919"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4917"
+NAME="AEN4928"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ new string.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4922"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetadd.html b/doc/fontconfig-devel/fcstrsetadd.html
index 698d86ac..ff430a69 100644
--- a/doc/fontconfig-devel/fcstrsetadd.html
+++ b/doc/fontconfig-devel/fcstrsetadd.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetEqual"
HREF="fcstrsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADD"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4343"
+NAME="AEN4375"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4343"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4346"
+NAME="AEN4378"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4347"
+NAME="AEN4379"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4356"
+NAME="AEN4388"
></A
><H2
>Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4361"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetaddfilename.html b/doc/fontconfig-devel/fcstrsetaddfilename.html
index bca18513..dd451451 100644
--- a/doc/fontconfig-devel/fcstrsetaddfilename.html
+++ b/doc/fontconfig-devel/fcstrsetaddfilename.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetAdd"
HREF="fcstrsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADDFILENAME"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4368"
+NAME="AEN4398"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4368"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4371"
+NAME="AEN4401"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4372"
+NAME="AEN4402"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4381"
+NAME="AEN4411"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ with the value of the HOME environment variable.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4386"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetcreate.html b/doc/fontconfig-devel/fcstrsetcreate.html
index 10548182..efd1e034 100644
--- a/doc/fontconfig-devel/fcstrsetcreate.html
+++ b/doc/fontconfig-devel/fcstrsetcreate.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETCREATE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4272"
+NAME="AEN4310"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4272"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4275"
+NAME="AEN4313"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4276"
+NAME="AEN4314"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4283"
+NAME="AEN4321"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ NAME="AEN4283"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4286"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetdel.html b/doc/fontconfig-devel/fcstrsetdel.html
index c60d3380..aae3eda5 100644
--- a/doc/fontconfig-devel/fcstrsetdel.html
+++ b/doc/fontconfig-devel/fcstrsetdel.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetAddFilename"
HREF="fcstrsetaddfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDEL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4393"
+NAME="AEN4421"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4393"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4396"
+NAME="AEN4424"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4397"
+NAME="AEN4425"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4406"
+NAME="AEN4434"
></A
><H2
>Description</H2
@@ -159,18 +159,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4412"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -220,7 +208,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetdestroy.html b/doc/fontconfig-devel/fcstrsetdestroy.html
index 074daee8..9ebe87fa 100644
--- a/doc/fontconfig-devel/fcstrsetdestroy.html
+++ b/doc/fontconfig-devel/fcstrsetdestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetDel"
HREF="fcstrsetdel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4419"
+NAME="AEN4445"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4419"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4422"
+NAME="AEN4448"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4423"
+NAME="AEN4449"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4430"
+NAME="AEN4456"
></A
><H2
>Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4434"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetequal.html b/doc/fontconfig-devel/fcstrsetequal.html
index d4e2849a..72ffd79e 100644
--- a/doc/fontconfig-devel/fcstrsetequal.html
+++ b/doc/fontconfig-devel/fcstrsetequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetMember"
HREF="fcstrsetmember.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4318"
+NAME="AEN4352"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4318"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4321"
+NAME="AEN4355"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4322"
+NAME="AEN4356"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4331"
+NAME="AEN4365"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ sets is not considered.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4336"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrsetmember.html b/doc/fontconfig-devel/fcstrsetmember.html
index 0728d375..080998bb 100644
--- a/doc/fontconfig-devel/fcstrsetmember.html
+++ b/doc/fontconfig-devel/fcstrsetmember.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
REL="PREVIOUS"
TITLE="FcStrSetCreate"
HREF="fcstrsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETMEMBER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4293"
+NAME="AEN4329"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4293"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4296"
+NAME="AEN4332"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4297"
+NAME="AEN4333"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4306"
+NAME="AEN4342"
></A
><H2
>Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4311"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrstr.html b/doc/fontconfig-devel/fcstrstr.html
index 14b4a820..14ea9c65 100644
--- a/doc/fontconfig-devel/fcstrstr.html
+++ b/doc/fontconfig-devel/fcstrstr.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrCmpIgnoreCase"
HREF="fcstrcmpignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSTR"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4850"
+NAME="AEN4865"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4850"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4853"
+NAME="AEN4868"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4854"
+NAME="AEN4869"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4863"
+NAME="AEN4878"
></A
><H2
>Description</H2
@@ -166,18 +166,6 @@ with UTF8 encoded strings.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4870"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcstrstrignorecase.html b/doc/fontconfig-devel/fcstrstrignorecase.html
index 1b81592a..0e9ed8d7 100644
--- a/doc/fontconfig-devel/fcstrstrignorecase.html
+++ b/doc/fontconfig-devel/fcstrstrignorecase.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcStrStr"
HREF="fcstrstr.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSTRIGNORECASE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4877"
+NAME="AEN4890"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4877"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4880"
+NAME="AEN4893"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4881"
+NAME="AEN4894"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4890"
+NAME="AEN4903"
></A
><H2
>Description</H2
@@ -166,18 +166,6 @@ This test is case-insensitive for all proper UTF-8 encoded strings.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4897"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fctolower.html b/doc/fontconfig-devel/fctolower.html
index bcb690b3..54b4a0ba 100644
--- a/doc/fontconfig-devel/fctolower.html
+++ b/doc/fontconfig-devel/fctolower.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcIsUpper"
HREF="fcisupper.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCTOLOWER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4709"
+NAME="AEN4736"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4709"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4712"
+NAME="AEN4739"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4713"
+NAME="AEN4740"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4720"
+NAME="AEN4747"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ equivalent lower case letter.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4724"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcucs4toutf8.html b/doc/fontconfig-devel/fcucs4toutf8.html
index bbc47d96..b4cc3994 100644
--- a/doc/fontconfig-devel/fcucs4toutf8.html
+++ b/doc/fontconfig-devel/fcucs4toutf8.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcUtf8ToUcs4"
HREF="fcutf8toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUCS4TOUTF8"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4539"
+NAME="AEN4578"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4539"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4542"
+NAME="AEN4581"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4543"
+NAME="AEN4582"
></A
><TABLE
BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4552"
+NAME="AEN4591"
></A
><H2
>Description</H2
@@ -155,18 +155,6 @@ the char.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4557"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcutf16len.html b/doc/fontconfig-devel/fcutf16len.html
index ad07bd61..c555b011 100644
--- a/doc/fontconfig-devel/fcutf16len.html
+++ b/doc/fontconfig-devel/fcutf16len.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcUtf16ToUcs4"
HREF="fcutf16toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16LEN"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4629"
+NAME="AEN4662"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4629"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4632"
+NAME="AEN4665"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4633"
+NAME="AEN4666"
></A
><TABLE
BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4648"
+NAME="AEN4681"
></A
><H2
>Description</H2
@@ -200,18 +200,6 @@ string.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4658"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -261,7 +249,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcutf16toucs4.html b/doc/fontconfig-devel/fcutf16toucs4.html
index d15a5a36..e55ab9b9 100644
--- a/doc/fontconfig-devel/fcutf16toucs4.html
+++ b/doc/fontconfig-devel/fcutf16toucs4.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcUtf8Len"
HREF="fcutf8len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16TOUCS4"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4596"
+NAME="AEN4631"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4596"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4599"
+NAME="AEN4634"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4600"
+NAME="AEN4635"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4613"
+NAME="AEN4648"
></A
><H2
>Description</H2
@@ -187,18 +187,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4622"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -248,7 +236,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcutf8len.html b/doc/fontconfig-devel/fcutf8len.html
index c1001a83..7eaea165 100644
--- a/doc/fontconfig-devel/fcutf8len.html
+++ b/doc/fontconfig-devel/fcutf8len.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FcUcs4ToUtf8"
HREF="fcucs4toutf8.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8LEN"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4564"
+NAME="AEN4601"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4564"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4567"
+NAME="AEN4604"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4568"
+NAME="AEN4605"
></A
><TABLE
BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4581"
+NAME="AEN4618"
></A
><H2
>Description</H2
@@ -183,18 +183,6 @@ well-formed UTF8 string.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4589"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcutf8toucs4.html b/doc/fontconfig-devel/fcutf8toucs4.html
index df423682..359b2b2a 100644
--- a/doc/fontconfig-devel/fcutf8toucs4.html
+++ b/doc/fontconfig-devel/fcutf8toucs4.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8TOUCS4"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN4510"
+NAME="AEN4551"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4510"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN4513"
+NAME="AEN4554"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN4514"
+NAME="AEN4555"
></A
><TABLE
BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4525"
+NAME="AEN4566"
></A
><H2
>Description</H2
@@ -171,18 +171,6 @@ CLASS="PARAMETER"
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4532"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcvaluedestroy.html b/doc/fontconfig-devel/fcvaluedestroy.html
index 8c1dc447..ff749509 100644
--- a/doc/fontconfig-devel/fcvaluedestroy.html
+++ b/doc/fontconfig-devel/fcvaluedestroy.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
REL="PREVIOUS"
TITLE="FUNCTIONS"
HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUEDESTROY"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1530"
+NAME="AEN1472"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1530"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1533"
+NAME="AEN1475"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1534"
+NAME="AEN1476"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1541"
+NAME="AEN1483"
></A
><H2
>Description</H2
@@ -144,18 +144,6 @@ FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1545"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcvalueequal.html b/doc/fontconfig-devel/fcvalueequal.html
index 7cb959df..33f60a2a 100644
--- a/doc/fontconfig-devel/fcvalueequal.html
+++ b/doc/fontconfig-devel/fcvalueequal.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
REL="PREVIOUS"
TITLE="FcValuePrint"
HREF="fcvalueprint.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCVALUEEQUAL"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1597"
+NAME="AEN1533"
></A
><H2
>Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1597"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1600"
+NAME="AEN1536"
></A
><H2
>Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1601"
+NAME="AEN1537"
></A
><TABLE
BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1610"
+NAME="AEN1546"
></A
><H2
>Description</H2
@@ -138,18 +138,6 @@ compared ignoring case.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1613"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -195,7 +183,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcvalueprint.html b/doc/fontconfig-devel/fcvalueprint.html
index a399bc46..3a4fdf6c 100644
--- a/doc/fontconfig-devel/fcvalueprint.html
+++ b/doc/fontconfig-devel/fcvalueprint.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
REL="PREVIOUS"
TITLE="FcValueSave"
HREF="fcvaluesave.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUEPRINT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1575"
+NAME="AEN1513"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1575"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1578"
+NAME="AEN1516"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1579"
+NAME="AEN1517"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1586"
+NAME="AEN1524"
></A
><H2
>Description</H2
@@ -145,18 +145,6 @@ specification as it may change in the future.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1590"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcvaluesave.html b/doc/fontconfig-devel/fcvaluesave.html
index 37dea19e..dcf67516 100644
--- a/doc/fontconfig-devel/fcvaluesave.html
+++ b/doc/fontconfig-devel/fcvaluesave.html
@@ -10,7 +10,7 @@ REL="HOME"
HREF="t1.html"><LINK
REL="UP"
TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
REL="PREVIOUS"
TITLE="FcValueDestroy"
HREF="fcvaluedestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUESAVE"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1552"
+NAME="AEN1492"
></A
><H2
>Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1552"
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1555"
+NAME="AEN1495"
></A
><H2
>Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
><P
></P
><A
-NAME="AEN1556"
+NAME="AEN1496"
></A
><TABLE
BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1563"
+NAME="AEN1503"
></A
><H2
>Description</H2
@@ -149,18 +149,6 @@ may be safely destroyed without harming the new value.
</P
></DIV
><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1568"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
- </P
-></DIV
-><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
ACCESSKEY="U"
>Up</A
></TD
diff --git a/doc/fontconfig-devel/fcweightfromopentype.html b/doc/fontconfig-devel/fcweightfromopentype.html
new file mode 100644
index 00000000..fca476d8
--- /dev/null
+++ b/doc/fontconfig-devel/fcweightfromopentype.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcWeightFromOpenType</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcWeight"
+HREF="x102.html#AEN3573"><LINK
+REL="PREVIOUS"
+TITLE="FUNCTIONS"
+HREF="x102.html"><LINK
+REL="NEXT"
+TITLE="FcWeightToOpenType"
+HREF="fcweighttoopentype.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcweighttoopentype.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCWEIGHTFROMOPENTYPE"
+></A
+>FcWeightFromOpenType</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3581"
+></A
+><H2
+>Name</H2
+>FcWeightFromOpenType&nbsp;--&nbsp;Convert from OpenType weight values to fontconfig ones</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3584"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3585"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>int <TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>ot_weight</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3592"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers. If input is negative,
+zero, or greater than 1000, returns -1. This function linearly interpolates
+between various FC_WEIGHT_* constants. As such, the returned value does not
+necessarily match any of the predefined constants.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3596"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcweighttoopentype.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FUNCTIONS</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3573"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcWeightToOpenType</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/fcweighttoopentype.html b/doc/fontconfig-devel/fcweighttoopentype.html
new file mode 100644
index 00000000..acc66fb3
--- /dev/null
+++ b/doc/fontconfig-devel/fcweighttoopentype.html
@@ -0,0 +1,212 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcWeightToOpenType</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcWeight"
+HREF="x102.html#AEN3573"><LINK
+REL="PREVIOUS"
+TITLE="FcWeightFromOpenType"
+HREF="fcweightfromopentype.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcweightfromopentype.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCWEIGHTTOOPENTYPE"
+></A
+>FcWeightToOpenType</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3604"
+></A
+><H2
+>Name</H2
+>FcWeightToOpenType&nbsp;--&nbsp;Convert from fontconfig weight values to OpenType ones</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3607"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3608"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+ </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>int <TT
+CLASS="FUNCTION"
+>FcWeightToOpenType</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>ot_weight</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3615"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcWeightToOpenType</TT
+> is the inverse of
+<TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+>. If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1. Otherwise
+returns a number in the range 1 to 1000.
+ </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3620"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcweightfromopentype.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcWeightFromOpenType</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3573"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file
diff --git a/doc/fontconfig-devel/t1.html b/doc/fontconfig-devel/t1.html
index 45a24ef3..74f0a00b 100644
--- a/doc/fontconfig-devel/t1.html
+++ b/doc/fontconfig-devel/t1.html
@@ -2,7 +2,7 @@
<HTML
><HEAD
><TITLE
->Fontconfig Developers Reference, Version 2.10.91
+>Fontconfig Developers Reference, Version 2.11.93
</TITLE
><META
NAME="GENERATOR"
@@ -25,7 +25,7 @@ CLASS="TITLEPAGE"
CLASS="TITLE"
><A
NAME="AEN1"
->Fontconfig Developers Reference, Version 2.10.91</A
+>Fontconfig Developers Reference, Version 2.11.93</A
></H1
><A
HREF="ln12.html"
diff --git a/doc/fontconfig-devel/x102.html b/doc/fontconfig-devel/x102.html
index fd5af5a9..d8fd2ef2 100644
--- a/doc/fontconfig-devel/x102.html
+++ b/doc/fontconfig-devel/x102.html
@@ -130,7 +130,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN255"
+NAME="AEN241"
>FcPattern</A
></H2
><DIV
@@ -257,7 +257,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1056"
+NAME="AEN1031"
>FcFontSet</A
></H2
><DIV
@@ -319,7 +319,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1283"
+NAME="AEN1242"
>FcObjectSet</A
></H2
><DIV
@@ -362,7 +362,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1393"
+NAME="AEN1344"
>FreeType specific functions</A
></H2
><DIV
@@ -410,7 +410,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1522"
+NAME="AEN1463"
>FcValue</A
></H2
><DIV
@@ -458,7 +458,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1616"
+NAME="AEN1549"
>FcCharSet</A
></H2
><DIV
@@ -578,7 +578,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN2094"
+NAME="AEN2016"
>FcLangSet</A
></H2
><DIV
@@ -655,6 +655,11 @@ HREF="fcgetdefaultlangs.html"
>&nbsp;--&nbsp;Get the default languages list</DT
><DT
><A
+HREF="fclangsetgetlangs.html"
+>FcLangSetGetLangs</A
+>&nbsp;--&nbsp;get the list of languages in the langset</DT
+><DT
+><A
HREF="fcgetlangs.html"
>FcGetLangs</A
>&nbsp;--&nbsp;Get list of languages</DT
@@ -683,7 +688,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN2485"
+NAME="AEN2410"
>FcMatrix</A
></H2
><DIV
@@ -739,7 +744,53 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN2679"
+NAME="AEN2590"
+>FcRange</A
+></H2
+><DIV
+CLASS="TOC"
+><DL
+><DT
+><B
+>Table of Contents</B
+></DT
+><DT
+><A
+HREF="fcrangecopy.html"
+>FcRangeCopy</A
+>&nbsp;--&nbsp;Copy a range object</DT
+><DT
+><A
+HREF="fcrangecreatedouble.html"
+>FcRangeCreateDouble</A
+>&nbsp;--&nbsp;create a range object for double</DT
+><DT
+><A
+HREF="fcrangecreateinteger.html"
+>FcRangeCreateInteger</A
+>&nbsp;--&nbsp;create a range object for integer</DT
+><DT
+><A
+HREF="fcrangedestroy.html"
+>FcRangeDestroy</A
+>&nbsp;--&nbsp;destroy a range object</DT
+><DT
+><A
+HREF="fcrangegetdouble.html"
+>FcRangeGetDouble</A
+>&nbsp;--&nbsp;Get the range in double</DT
+></DL
+></DIV
+><P
+>An FcRange holds two variables to indicate a range in between.
+ </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="AEN2718"
>FcConfig</A
></H2
><DIV
@@ -894,6 +945,16 @@ HREF="fcconfigfilename.html"
HREF="fcconfigparseandload.html"
>FcConfigParseAndLoad</A
>&nbsp;--&nbsp;load a configuration file</DT
+><DT
+><A
+HREF="fcconfiggetsysroot.html"
+>FcConfigGetSysRoot</A
+>&nbsp;--&nbsp;Obtain the system root directory</DT
+><DT
+><A
+HREF="fcconfigsetsysroot.html"
+>FcConfigSetSysRoot</A
+>&nbsp;--&nbsp;Set the system root directory</DT
></DL
></DIV
><P
@@ -907,7 +968,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN3392"
+NAME="AEN3420"
>FcObjectType</A
></H2
><DIV
@@ -944,7 +1005,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN3463"
+NAME="AEN3485"
>FcConstant</A
></H2
><DIV
@@ -985,7 +1046,38 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN3559"
+NAME="AEN3573"
+>FcWeight</A
+></H2
+><DIV
+CLASS="TOC"
+><DL
+><DT
+><B
+>Table of Contents</B
+></DT
+><DT
+><A
+HREF="fcweightfromopentype.html"
+>FcWeightFromOpenType</A
+>&nbsp;--&nbsp;Convert from OpenType weight values to fontconfig ones</DT
+><DT
+><A
+HREF="fcweighttoopentype.html"
+>FcWeightToOpenType</A
+>&nbsp;--&nbsp;Convert from fontconfig weight values to OpenType ones</DT
+></DL
+></DIV
+><P
+>Maps weights to and from OpenType weights.
+ </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="AEN3623"
>FcBlanks</A
></H2
><DIV
@@ -1030,7 +1122,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN3650"
+NAME="AEN3706"
>FcAtomic</A
></H2
><DIV
@@ -1093,7 +1185,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN3827"
+NAME="AEN3867"
>File and Directory routines</A
></H2
><DIV
@@ -1145,6 +1237,11 @@ HREF="fcdircacheload.html"
>&nbsp;--&nbsp;load a directory cache</DT
><DT
><A
+HREF="fcdircacherescan.html"
+>FcDirCacheRescan</A
+>&nbsp;--&nbsp;Re-scan a directory cache</DT
+><DT
+><A
HREF="fcdircacheread.html"
>FcDirCacheRead</A
>&nbsp;--&nbsp;read or construct a directory cache</DT
@@ -1170,7 +1267,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN4100"
+NAME="AEN4145"
>FcCache routines</A
></H2
><DIV
@@ -1259,7 +1356,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN4265"
+NAME="AEN4302"
>FcStrSet and FcStrList</A
></H2
><DIV
@@ -1311,6 +1408,11 @@ HREF="fcstrlistcreate.html"
>&nbsp;--&nbsp;create a string iterator</DT
><DT
><A
+HREF="fcstrlistfirst.html"
+>FcStrListFirst</A
+>&nbsp;--&nbsp;get first string in iteration</DT
+><DT
+><A
HREF="fcstrlistnext.html"
>FcStrListNext</A
>&nbsp;--&nbsp;get next string in iteration</DT
@@ -1331,7 +1433,7 @@ CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN4503"
+NAME="AEN4543"
>String utilities</A
></H2
><DIV
diff --git a/doc/fontconfig-devel/x19.html b/doc/fontconfig-devel/x19.html
index 83ca2061..b7ecebe7 100644
--- a/doc/fontconfig-devel/x19.html
+++ b/doc/fontconfig-devel/x19.html
@@ -175,11 +175,12 @@ CLASS="PROGRAMLISTING"
the file
ftface FC_FT_FACE FT_Face Use the specified FreeType
face object
- rasterizer FC_RASTERIZER String Which rasterizer is in use
+ rasterizer FC_RASTERIZER String Which rasterizer is in use (deprecated)
outline FC_OUTLINE Bool Whether the glyphs are outlines
scalable FC_SCALABLE Bool Whether glyphs can be scaled
scale FC_SCALE Double Scale factor for point-&#62;pixel
conversions
+ color FC_COLOR Bool Whether any glyphs have color
dpi FC_DPI Double Target dots per inch
rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
vbgr, none - subpixel geometry
@@ -193,11 +194,22 @@ CLASS="PROGRAMLISTING"
fontversion FC_FONTVERSION Int Version number of the font
capability FC_CAPABILITY String List of layout capabilities in
the font
+ fontformat FC_FONTFORMAT String String name of the font format
embolden FC_EMBOLDEN Bool Rasterizer should
synthetically embolden the font
+ embeddedbitmap FC_EMBEDDED_BITMAP Bool Use the embedded bitmap instead
+ of the outline
+ decorative FC_DECORATIVE Bool Whether the style is a decorative
+ variant
+ fontfeatures FC_FONT_FEATURES String List of extra feature tags in
+ OpenType to be enabled
namelang FC_NAMELANG String Language name to be used for the
default value of familylang,
stylelang and fullnamelang
+ prgname FC_PRGNAME String Name of the running program
+ hash FC_HASH String SHA256 hash value of the font data
+ with "sha256:" prefix (deprecated)
+ postscriptname FC_POSTSCRIPT_NAME String Font name in PostScript
</PRE
></TD
></TR
diff --git a/doc/fontconfig-user.html b/doc/fontconfig-user.html
index 45face13..098befab 100644
--- a/doc/fontconfig-user.html
+++ b/doc/fontconfig-user.html
@@ -157,9 +157,10 @@ CLASS="PROGRAMLISTING"
file String The filename holding the font
index Int The index of the font within the file
ftface FT_Face Use the specified FreeType face object
- rasterizer String Which rasterizer is in use
+ rasterizer String Which rasterizer is in use (deprecated)
outline Bool Whether the glyphs are outlines
scalable Bool Whether glyphs can be scaled
+ color Bool Whether any glyphs have color
scale Double Scale factor for point-&#62;pixel conversions
dpi Double Target dots per inch
rgba Int unknown, rgb, bgr, vrgb, vbgr,
@@ -171,7 +172,15 @@ CLASS="PROGRAMLISTING"
font supports
fontversion Int Version number of the font
capability String List of layout capabilities in the font
+ fontformat String String name of the font format
embolden Bool Rasterizer should synthetically embolden the font
+ embeddedbitmap Bool Use the embedded bitmap instead of the outline
+ decorative Bool Whether the style is a decorative variant
+ fontfeatures String List of the feature tags in OpenType to be enabled
+ namelang String Language name to be used for the default value of
+ familylang, stylelang, and fullnamelang
+ prgname String String Name of the running program
+ postscriptname String Font family name in PostScript
</PRE
></TD
></TR
@@ -493,7 +502,7 @@ CLASS="LITERAL"
>&#60;architecture&#62;</TT
>.cache-<TT
CLASS="LITERAL"
->&#60;version</TT
+>&#60;version&#62;</TT
>'',
where <TT
CLASS="LITERAL"
@@ -788,6 +797,8 @@ CLASS="PROGRAMLISTING"
"prepend_first" Insert at head of list Insert at head of list
"append" Append after matching Append at end of list
"append_last" Append at end of list Append at end of list
+ "delete" Delete matching value Delete all values
+ "delete_all" Delete all values Delete all values
</PRE
></TD
></TR
@@ -946,6 +957,8 @@ CLASS="PROGRAMLISTING"
extralight weight 40
ultralight weight 40
light weight 50
+ demilight weight 55
+ semilight weight 55
book weight 75
regular weight 80
normal weight 80
@@ -1526,7 +1539,7 @@ NAME="AEN276"
><H2
>Version</H2
><P
->Fontconfig version 2.10.91
+>Fontconfig version 2.11.93
</P
></DIV
diff --git a/doc/fontconfig-user.pdf b/doc/fontconfig-user.pdf
index 42781804..c976f7e9 100644
--- a/doc/fontconfig-user.pdf
+++ b/doc/fontconfig-user.pdf
Binary files differ
diff --git a/doc/fontconfig-user.sgml b/doc/fontconfig-user.sgml
index c842371e..ac9d8079 100644
--- a/doc/fontconfig-user.sgml
+++ b/doc/fontconfig-user.sgml
@@ -116,9 +116,10 @@ convenience for the applications' rendering mechanism.
file String The filename holding the font
index Int The index of the font within the file
ftface FT_Face Use the specified FreeType face object
- rasterizer String Which rasterizer is in use
+ rasterizer String Which rasterizer is in use (deprecated)
outline Bool Whether the glyphs are outlines
scalable Bool Whether glyphs can be scaled
+ color Bool Whether any glyphs have color
scale Double Scale factor for point->pixel conversions
dpi Double Target dots per inch
rgba Int unknown, rgb, bgr, vrgb, vbgr,
@@ -130,7 +131,15 @@ convenience for the applications' rendering mechanism.
font supports
fontversion Int Version number of the font
capability String List of layout capabilities in the font
+ fontformat String String name of the font format
embolden Bool Rasterizer should synthetically embolden the font
+ embeddedbitmap Bool Use the embedded bitmap instead of the outline
+ decorative Bool Whether the style is a decorative variant
+ fontfeatures String List of the feature tags in OpenType to be enabled
+ namelang String Language name to be used for the default value of
+ familylang, stylelang, and fullnamelang
+ prgname String String Name of the running program
+ postscriptname String Font family name in PostScript
</programlisting>
</refsect2>
<refsect2>
@@ -312,7 +321,7 @@ the configuration file, the directory that can be accessed first in the list
will be used to store the cache files. If it starts with '~', it refers to
a directory in the users home directory. If 'prefix' is set to "xdg", the value in the XDG_CACHE_HOME environment variable will be added as the path prefix. please see XDG Base Directory Specification for more details.
The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
-named ``<literal>&lt;hash value&gt;</literal>-<literal>&lt;architecture&gt;</literal>.cache-<literal>&lt;version</literal>'',
+named ``<literal>&lt;hash value&gt;</literal>-<literal>&lt;architecture&gt;</literal>.cache-<literal>&lt;version&gt;</literal>'',
where <literal>&lt;version&gt;</literal> is the font configureation file
version number (currently 3).
</para></refsect2>
@@ -423,6 +432,8 @@ with "same" binding using the value from the matched pattern element.
"prepend_first" Insert at head of list Insert at head of list
"append" Append after matching Append at end of list
"append_last" Append at end of list Append at end of list
+ "delete" Delete matching value Delete all values
+ "delete_all" Delete all values Delete all values
</programlisting>
</para></refsect2>
<refsect2><title><literal>&lt;int&gt;</literal>, <literal>&lt;double&gt;</literal>, <literal>&lt;string&gt;</literal>, <literal>&lt;bool&gt;</literal></title><para>
@@ -469,6 +480,8 @@ symbolic names for common font values:
extralight weight 40
ultralight weight 40
light weight 50
+ demilight weight 55
+ semilight weight 55
book weight 75
regular weight 80
normal weight 80
diff --git a/doc/fontconfig-user.txt b/doc/fontconfig-user.txt
index e2e8f539..f18c0837 100644
--- a/doc/fontconfig-user.txt
+++ b/doc/fontconfig-user.txt
@@ -1,18 +1,18 @@
- fonts-conf
+ fonts-conf
Name
- fonts.conf -- Font configuration files
+ fonts.conf -- Font configuration files
Synopsis
- /etc/fonts/fonts.conf
- /etc/fonts/fonts.dtd
- /etc/fonts/conf.d
- $XDG_CONFIG_HOME/fontconfig/conf.d
- $XDG_CONFIG_HOME/fontconfig/fonts.conf
- ~/.fonts.conf.d
- ~/.fonts.conf
+ /etc/fonts/fonts.conf
+ /etc/fonts/fonts.dtd
+ /etc/fonts/conf.d
+ $XDG_CONFIG_HOME/fontconfig/conf.d
+ $XDG_CONFIG_HOME/fontconfig/fonts.conf
+ ~/.fonts.conf.d
+ ~/.fonts.conf
Description
@@ -21,534 +21,575 @@ Description
Functional Overview
- Fontconfig contains two essential modules, the configuration module which
- builds an internal configuration from XML files and the matching module
- which accepts font patterns and returns the nearest matching font.
-
- Font Configuration
-
- The configuration module consists of the FcConfig datatype, libexpat and
- FcConfigParse which walks over an XML tree and amends a configuration with
- data found within. From an external perspective, configuration of the
- library consists of generating a valid XML tree and feeding that to
- FcConfigParse. The only other mechanism provided to applications for
- changing the running configuration is to add fonts and directories to the
- list of application-provided font files.
-
- The intent is to make font configurations relatively static, and shared by
- as many applications as possible. It is hoped that this will lead to more
- stable font selection when passing names from one application to another.
- XML was chosen as a configuration file format because it provides a format
- which is easy for external agents to edit while retaining the correct
+ Fontconfig contains two essential modules, the configuration
+ module which builds an internal configuration from XML files
+ and the matching module which accepts font patterns and returns
+ the nearest matching font.
+
+Font Configuration
+
+ The configuration module consists of the FcConfig datatype,
+ libexpat and FcConfigParse which walks over an XML tree and
+ amends a configuration with data found within. From an external
+ perspective, configuration of the library consists of
+ generating a valid XML tree and feeding that to FcConfigParse.
+ The only other mechanism provided to applications for changing
+ the running configuration is to add fonts and directories to
+ the list of application-provided font files.
+
+ The intent is to make font configurations relatively static,
+ and shared by as many applications as possible. It is hoped
+ that this will lead to more stable font selection when passing
+ names from one application to another. XML was chosen as a
+ configuration file format because it provides a format which is
+ easy for external agents to edit while retaining the correct
structure and syntax.
- Font configuration is separate from font matching; applications needing to
- do their own matching can access the available fonts from the library and
- perform private matching. The intent is to permit applications to pick and
- choose appropriate functionality from the library instead of forcing them
- to choose between this library and a private configuration mechanism. The
- hope is that this will ensure that configuration of fonts for all
- applications can be centralized in one place. Centralizing font
- configuration will simplify and regularize font installation and
- customization.
-
- Font Properties
-
- While font patterns may contain essentially any properties, there are some
- well known properties with associated types. Fontconfig uses some of these
- properties for font matching and font completion. Others are provided as a
- convenience for the applications' rendering mechanism.
-
- Property Type Description
- --------------------------------------------------------------
- family String Font family names
- familylang String Languages corresponding to each family
- style String Font style. Overrides weight and slant
- stylelang String Languages corresponding to each style
- fullname String Font full names (often includes style)
- fullnamelang String Languages corresponding to each fullname
- slant Int Italic, oblique or roman
- weight Int Light, medium, demibold, bold or black
- size Double Point size
- width Int Condensed, normal or expanded
- aspect Double Stretches glyphs horizontally before hinting
- pixelsize Double Pixel size
- spacing Int Proportional, dual-width, monospace or charcell
- foundry String Font foundry name
- antialias Bool Whether glyphs can be antialiased
- hinting Bool Whether the rasterizer should use hinting
- hintstyle Int Automatic hinting style
- verticallayout Bool Use vertical layout
- autohint Bool Use autohinter instead of normal hinter
- globaladvance Bool Use font global advance data (deprecated)
- file String The filename holding the font
- index Int The index of the font within the file
- ftface FT_Face Use the specified FreeType face object
- rasterizer String Which rasterizer is in use
- outline Bool Whether the glyphs are outlines
- scalable Bool Whether glyphs can be scaled
- scale Double Scale factor for point->pixel conversions
- dpi Double Target dots per inch
- rgba Int unknown, rgb, bgr, vrgb, vbgr,
- none - subpixel geometry
- lcdfilter Int Type of LCD filter
- minspace Bool Eliminate leading from line spacing
- charset CharSet Unicode chars encoded by the font
- lang String List of RFC-3066-style languages this
- font supports
- fontversion Int Version number of the font
- capability String List of layout capabilities in the font
- embolden Bool Rasterizer should synthetically embolden the font
-
-
- Font Matching
-
- Fontconfig performs matching by measuring the distance from a provided
- pattern to all of the available fonts in the system. The closest matching
- font is selected. This ensures that a font will always be returned, but
- doesn't ensure that it is anything like the requested pattern.
-
- Font matching starts with an application constructed pattern. The desired
- attributes of the resulting font are collected together in a pattern. Each
- property of the pattern can contain one or more values; these are listed
- in priority order; matches earlier in the list are considered "closer"
- than matches later in the list.
+ Font configuration is separate from font matching; applications
+ needing to do their own matching can access the available fonts
+ from the library and perform private matching. The intent is to
+ permit applications to pick and choose appropriate
+ functionality from the library instead of forcing them to
+ choose between this library and a private configuration
+ mechanism. The hope is that this will ensure that configuration
+ of fonts for all applications can be centralized in one place.
+ Centralizing font configuration will simplify and regularize
+ font installation and customization.
+
+Font Properties
+
+ While font patterns may contain essentially any properties,
+ there are some well known properties with associated types.
+ Fontconfig uses some of these properties for font matching and
+ font completion. Others are provided as a convenience for the
+ applications' rendering mechanism.
+ Property Type Description
+ --------------------------------------------------------------
+ family String Font family names
+ familylang String Languages corresponding to each family
+ style String Font style. Overrides weight and slant
+ stylelang String Languages corresponding to each style
+ fullname String Font full names (often includes style)
+ fullnamelang String Languages corresponding to each fullname
+ slant Int Italic, oblique or roman
+ weight Int Light, medium, demibold, bold or black
+ size Double Point size
+ width Int Condensed, normal or expanded
+ aspect Double Stretches glyphs horizontally before hinting
+ pixelsize Double Pixel size
+ spacing Int Proportional, dual-width, monospace or charcel
+l
+ foundry String Font foundry name
+ antialias Bool Whether glyphs can be antialiased
+ hinting Bool Whether the rasterizer should use hinting
+ hintstyle Int Automatic hinting style
+ verticallayout Bool Use vertical layout
+ autohint Bool Use autohinter instead of normal hinter
+ globaladvance Bool Use font global advance data (deprecated)
+ file String The filename holding the font
+ index Int The index of the font within the file
+ ftface FT_Face Use the specified FreeType face object
+ rasterizer String Which rasterizer is in use (deprecated)
+ outline Bool Whether the glyphs are outlines
+ scalable Bool Whether glyphs can be scaled
+ color Bool Whether any glyphs have color
+ scale Double Scale factor for point->pixel conversions
+ dpi Double Target dots per inch
+ rgba Int unknown, rgb, bgr, vrgb, vbgr,
+ none - subpixel geometry
+ lcdfilter Int Type of LCD filter
+ minspace Bool Eliminate leading from line spacing
+ charset CharSet Unicode chars encoded by the font
+ lang String List of RFC-3066-style languages this
+ font supports
+ fontversion Int Version number of the font
+ capability String List of layout capabilities in the font
+ fontformat String String name of the font format
+ embolden Bool Rasterizer should synthetically embolden the f
+ont
+ embeddedbitmap Bool Use the embedded bitmap instead of the outline
+ decorative Bool Whether the style is a decorative variant
+ fontfeatures String List of the feature tags in OpenType to be ena
+bled
+ namelang String Language name to be used for the default value
+ of
+ familylang, stylelang, and fullnamelang
+ prgname String String Name of the running program
+ postscriptname String Font family name in PostScript
+
+Font Matching
+
+ Fontconfig performs matching by measuring the distance from a
+ provided pattern to all of the available fonts in the system.
+ The closest matching font is selected. This ensures that a font
+ will always be returned, but doesn't ensure that it is anything
+ like the requested pattern.
+
+ Font matching starts with an application constructed pattern.
+ The desired attributes of the resulting font are collected
+ together in a pattern. Each property of the pattern can contain
+ one or more values; these are listed in priority order; matches
+ earlier in the list are considered "closer" than matches later
+ in the list.
The initial pattern is modified by applying the list of editing
- instructions specific to patterns found in the configuration; each
- consists of a match predicate and a set of editing operations. They are
- executed in the order they appeared in the configuration. Each match
- causes the associated sequence of editing operations to be applied.
-
- After the pattern has been edited, a sequence of default substitutions are
- performed to canonicalize the set of available properties; this avoids the
- need for the lower layers to constantly provide default values for various
- font properties during rendering.
-
- The canonical font pattern is finally matched against all available fonts.
- The distance from the pattern to the font is measured for each of several
- properties: foundry, charset, family, lang, spacing, pixelsize, style,
- slant, weight, antialias, rasterizer and outline. This list is in priority
- order -- results of comparing earlier elements of this list weigh more
- heavily than later elements.
-
- There is one special case to this rule; family names are split into two
- bindings; strong and weak. Strong family names are given greater
- precedence in the match than lang elements while weak family names are
- given lower precedence than lang elements. This permits the document
- language to drive font selection when any document specified font is
- unavailable.
-
- The pattern representing that font is augmented to include any properties
- found in the pattern but not found in the font itself; this permits the
- application to pass rendering instructions or any other data through the
- matching system. Finally, the list of editing instructions specific to
- fonts found in the configuration are applied to the pattern. This modified
- pattern is returned to the application.
-
- The return value contains sufficient information to locate and rasterize
- the font, including the file name, pixel size and other rendering data. As
- none of the information involved pertains to the FreeType library,
- applications are free to use any rasterization engine or even to take the
- identified font file and access it directly.
-
- The match/edit sequences in the configuration are performed in two passes
- because there are essentially two different operations necessary -- the
- first is to modify how fonts are selected; aliasing families and adding
- suitable defaults. The second is to modify how the selected fonts are
- rasterized. Those must apply to the selected font, not the original
- pattern as false matches will often occur.
-
- Font Names
-
- Fontconfig provides a textual representation for patterns that the library
- can both accept and generate. The representation is in three parts, first
- a list of family names, second a list of point sizes and finally a list of
- additional properties:
-
- <families>-<point sizes>:<name1>=<values1>:<name2>=<values2>...
-
-
- Values in a list are separated with commas. The name needn't include
- either families or point sizes; they can be elided. In addition, there are
- symbolic constants that simultaneously indicate both a name and a value.
- Here are some examples:
-
- Name Meaning
- ----------------------------------------------------------
- Times-12 12 point Times Roman
- Times-12:bold 12 point Times Bold
- Courier:italic Courier Italic in the default size
- Monospace:matrix=1 .1 0 1 The users preferred monospace font
- with artificial obliquing
-
-
- The '\', '-', ':' and ',' characters in family names must be preceded by a
- '\' character to avoid having them misinterpreted. Similarly, values
- containing '\', '=', '_', ':' and ',' must also have them preceded by a
- '\' character. The '\' characters are stripped out of the family name and
- values as the font name is read.
+ instructions specific to patterns found in the configuration;
+ each consists of a match predicate and a set of editing
+ operations. They are executed in the order they appeared in the
+ configuration. Each match causes the associated sequence of
+ editing operations to be applied.
+
+ After the pattern has been edited, a sequence of default
+ substitutions are performed to canonicalize the set of
+ available properties; this avoids the need for the lower layers
+ to constantly provide default values for various font
+ properties during rendering.
+
+ The canonical font pattern is finally matched against all
+ available fonts. The distance from the pattern to the font is
+ measured for each of several properties: foundry, charset,
+ family, lang, spacing, pixelsize, style, slant, weight,
+ antialias, rasterizer and outline. This list is in priority
+ order -- results of comparing earlier elements of this list
+ weigh more heavily than later elements.
+
+ There is one special case to this rule; family names are split
+ into two bindings; strong and weak. Strong family names are
+ given greater precedence in the match than lang elements while
+ weak family names are given lower precedence than lang
+ elements. This permits the document language to drive font
+ selection when any document specified font is unavailable.
+
+ The pattern representing that font is augmented to include any
+ properties found in the pattern but not found in the font
+ itself; this permits the application to pass rendering
+ instructions or any other data through the matching system.
+ Finally, the list of editing instructions specific to fonts
+ found in the configuration are applied to the pattern. This
+ modified pattern is returned to the application.
+
+ The return value contains sufficient information to locate and
+ rasterize the font, including the file name, pixel size and
+ other rendering data. As none of the information involved
+ pertains to the FreeType library, applications are free to use
+ any rasterization engine or even to take the identified font
+ file and access it directly.
+
+ The match/edit sequences in the configuration are performed in
+ two passes because there are essentially two different
+ operations necessary -- the first is to modify how fonts are
+ selected; aliasing families and adding suitable defaults. The
+ second is to modify how the selected fonts are rasterized.
+ Those must apply to the selected font, not the original pattern
+ as false matches will often occur.
+
+Font Names
+
+ Fontconfig provides a textual representation for patterns that
+ the library can both accept and generate. The representation is
+ in three parts, first a list of family names, second a list of
+ point sizes and finally a list of additional properties:
+ <families>-<point sizes>:<name1>=<values1>:<name2>=<values2>...
+
+ Values in a list are separated with commas. The name needn't
+ include either families or point sizes; they can be elided. In
+ addition, there are symbolic constants that simultaneously
+ indicate both a name and a value. Here are some examples:
+ Name Meaning
+ ----------------------------------------------------------
+ Times-12 12 point Times Roman
+ Times-12:bold 12 point Times Bold
+ Courier:italic Courier Italic in the default size
+ Monospace:matrix=1 .1 0 1 The users preferred monospace font
+ with artificial obliquing
+
+ The '\', '-', ':' and ',' characters in family names must be
+ preceded by a '\' character to avoid having them
+ misinterpreted. Similarly, values containing '\', '=', '_', ':'
+ and ',' must also have them preceded by a '\' character. The
+ '\' characters are stripped out of the family name and values
+ as the font name is read.
Debugging Applications
- To help diagnose font and applications problems, fontconfig is built with
- a large amount of internal debugging left enabled. It is controlled by
- means of the FC_DEBUG environment variable. The value of this variable is
- interpreted as a number, and each bit within that value controls different
- debugging messages.
-
- Name Value Meaning
- ---------------------------------------------------------
- MATCH 1 Brief information about font matching
- MATCHV 2 Extensive font matching information
- EDIT 4 Monitor match/test/edit execution
- FONTSET 8 Track loading of font information at startup
- CACHE 16 Watch cache files being written
- CACHEV 32 Extensive cache file writing information
- PARSE 64 (no longer in use)
- SCAN 128 Watch font files being scanned to build caches
- SCANV 256 Verbose font file scanning information
- MEMORY 512 Monitor fontconfig memory usage
- CONFIG 1024 Monitor which config files are loaded
- LANGSET 2048 Dump char sets used to construct lang values
- OBJTYPES 4096 Display message when value typechecks fail
-
-
- Add the value of the desired debug levels together and assign that (in
- base 10) to the FC_DEBUG environment variable before running the
- application. Output from these statements is sent to stdout.
+ To help diagnose font and applications problems, fontconfig is
+ built with a large amount of internal debugging left enabled.
+ It is controlled by means of the FC_DEBUG environment variable.
+ The value of this variable is interpreted as a number, and each
+ bit within that value controls different debugging messages.
+ Name Value Meaning
+ ---------------------------------------------------------
+ MATCH 1 Brief information about font matching
+ MATCHV 2 Extensive font matching information
+ EDIT 4 Monitor match/test/edit execution
+ FONTSET 8 Track loading of font information at startup
+ CACHE 16 Watch cache files being written
+ CACHEV 32 Extensive cache file writing information
+ PARSE 64 (no longer in use)
+ SCAN 128 Watch font files being scanned to build caches
+ SCANV 256 Verbose font file scanning information
+ MEMORY 512 Monitor fontconfig memory usage
+ CONFIG 1024 Monitor which config files are loaded
+ LANGSET 2048 Dump char sets used to construct lang values
+ OBJTYPES 4096 Display message when value typechecks fail
+
+ Add the value of the desired debug levels together and assign
+ that (in base 10) to the FC_DEBUG environment variable before
+ running the application. Output from these statements is sent
+ to stdout.
Lang Tags
- Each font in the database contains a list of languages it supports. This
- is computed by comparing the Unicode coverage of the font with the
- orthography of each language. Languages are tagged using an RFC-3066
- compatible naming and occur in two parts -- the ISO 639 language tag
- followed a hyphen and then by the ISO 3166 country code. The hyphen and
- country code may be elided.
+ Each font in the database contains a list of languages it
+ supports. This is computed by comparing the Unicode coverage of
+ the font with the orthography of each language. Languages are
+ tagged using an RFC-3066 compatible naming and occur in two
+ parts -- the ISO 639 language tag followed a hyphen and then by
+ the ISO 3166 country code. The hyphen and country code may be
+ elided.
+
+ Fontconfig has orthographies for several languages built into
+ the library. No provision has been made for adding new ones
+ aside from rebuilding the library. It currently supports 122 of
+ the 139 languages named in ISO 639-1, 141 of the languages with
+ two-letter codes from ISO 639-2 and another 30 languages with
+ only three-letter codes. Languages with both two and three
+ letter codes are provided with only the two letter code.
+
+ For languages used in multiple territories with radically
+ different character sets, fontconfig includes per-territory
+ orthographies. This includes Azerbaijani, Kurdish, Pashto,
+ Tigrinya and Chinese.
- Fontconfig has orthographies for several languages built into the library.
- No provision has been made for adding new ones aside from rebuilding the
- library. It currently supports 122 of the 139 languages named in ISO
- 639-1, 141 of the languages with two-letter codes from ISO 639-2 and
- another 30 languages with only three-letter codes. Languages with both two
- and three letter codes are provided with only the two letter code.
+Configuration File Format
- For languages used in multiple territories with radically different
- character sets, fontconfig includes per-territory orthographies. This
- includes Azerbaijani, Kurdish, Pashto, Tigrinya and Chinese.
+ Configuration files for fontconfig are stored in XML format;
+ this format makes external configuration tools easier to write
+ and ensures that they will generate syntactically correct
+ configuration files. As XML files are plain text, they can also
+ be manipulated by the expert user using a text editor.
+
+ The fontconfig document type definition resides in the external
+ entity "fonts.dtd"; this is normally stored in the default font
+ configuration directory (/etc/fonts). Each configuration file
+ should contain the following structure:
+ <?xml version="1.0"?>
+ <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+ <fontconfig>
+ ...
+ </fontconfig>
-Configuration File Format
+<fontconfig>
- Configuration files for fontconfig are stored in XML format; this format
- makes external configuration tools easier to write and ensures that they
- will generate syntactically correct configuration files. As XML files are
- plain text, they can also be manipulated by the expert user using a text
- editor.
-
- The fontconfig document type definition resides in the external entity
- "fonts.dtd"; this is normally stored in the default font configuration
- directory (/etc/fonts). Each configuration file should contain the
- following structure:
-
- <?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
- <fontconfig>
- ...
- </fontconfig>
-
-
- <fontconfig>
-
- This is the top level element for a font configuration and can contain
- <dir>, <cachedir>, <include>, <match> and <alias> elements in any order.
-
- <dir prefix="default">
-
- This element contains a directory name which will be scanned for font
- files to include in the set of available fonts. If 'prefix' is set to
- "xdg", the value in the XDG_DATA_HOME environment variable will be added
- as the path prefix. please see XDG Base Directory Specification for more
- details.
-
- <cachedir prefix="default">
-
- This element contains a directory name that is supposed to be stored or
- read the cache of font information. If multiple elements are specified in
- the configuration file, the directory that can be accessed first in the
- list will be used to store the cache files. If it starts with '~', it
- refers to a directory in the users home directory. If 'prefix' is set to
- "xdg", the value in the XDG_CACHE_HOME environment variable will be added
- as the path prefix. please see XDG Base Directory Specification for more
- details. The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it
- contains the cache files named ``<hash
- value>-<architecture>.cache-<version'', where <version> is the font
- configureation file version number (currently 3).
-
- <include ignore_missing="no" prefix="default">
-
- This element contains the name of an additional configuration file or
- directory. If a directory, every file within that directory starting with
- an ASCII digit (U+0030 - U+0039) and ending with the string ``.conf'' will
- be processed in sorted order. When the XML datatype is traversed by
- FcConfigParse, the contents of the file(s) will also be incorporated into
- the configuration by passing the filename(s) to FcConfigLoadAndParse. If
- 'ignore_missing' is set to "yes" instead of the default "no", a missing
- file or directory will elicit no warning message from the library. If
- 'prefix' is set to "xdg", the value in the XDG_CONFIG_HOME environment
- variable will be added as the path prefix. please see XDG Base Directory
+ This is the top level element for a font configuration and can
+ contain <dir>, <cachedir>, <include>, <match> and <alias>
+ elements in any order.
+
+<dir prefix="default">
+
+ This element contains a directory name which will be scanned
+ for font files to include in the set of available fonts. If
+ 'prefix' is set to "xdg", the value in the XDG_DATA_HOME
+ environment variable will be added as the path prefix. please
+ see XDG Base Directory Specification for more details.
+
+<cachedir prefix="default">
+
+ This element contains a directory name that is supposed to be
+ stored or read the cache of font information. If multiple
+ elements are specified in the configuration file, the directory
+ that can be accessed first in the list will be used to store
+ the cache files. If it starts with '~', it refers to a
+ directory in the users home directory. If 'prefix' is set to
+ "xdg", the value in the XDG_CACHE_HOME environment variable
+ will be added as the path prefix. please see XDG Base Directory
+ Specification for more details. The default directory is
+ ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
+ named ``<hash value>-<architecture>.cache-<version>'', where
+ <version> is the font configureation file version number
+ (currently 3).
+
+<include ignore_missing="no" prefix="default">
+
+ This element contains the name of an additional configuration
+ file or directory. If a directory, every file within that
+ directory starting with an ASCII digit (U+0030 - U+0039) and
+ ending with the string ``.conf'' will be processed in sorted
+ order. When the XML datatype is traversed by FcConfigParse, the
+ contents of the file(s) will also be incorporated into the
+ configuration by passing the filename(s) to
+ FcConfigLoadAndParse. If 'ignore_missing' is set to "yes"
+ instead of the default "no", a missing file or directory will
+ elicit no warning message from the library. If 'prefix' is set
+ to "xdg", the value in the XDG_CONFIG_HOME environment variable
+ will be added as the path prefix. please see XDG Base Directory
Specification for more details.
- <config>
-
- This element provides a place to consolidate additional configuration
- information. <config> can contain <blank> and <rescan> elements in any
- order.
-
- <blank>
-
- Fonts often include "broken" glyphs which appear in the encoding but are
- drawn as blanks on the screen. Within the <blank> element, place each
- Unicode characters which is supposed to be blank in an <int> element.
- Characters outside of this set which are drawn as blank will be elided
- from the set of characters supported by the font.
-
- <rescan>
-
- The <rescan> element holds an <int> element which indicates the default
- interval between automatic checks for font configuration changes.
- Fontconfig will validate all of the configuration files and directories
- and automatically rebuild the internal datastructures when this interval
- passes.
-
- <selectfont>
-
- This element is used to black/white list fonts from being listed or
- matched against. It holds acceptfont and rejectfont elements.
-
- <acceptfont>
-
- Fonts matched by an acceptfont element are "whitelisted"; such fonts are
- explicitly included in the set of fonts used to resolve list and match
- requests; including them in this list protects them from being
- "blacklisted" by a rejectfont element. Acceptfont elements include glob
- and pattern elements which are used to match fonts.
+<config>
+
+ This element provides a place to consolidate additional
+ configuration information. <config> can contain <blank> and
+ <rescan> elements in any order.
+
+<blank>
+
+ Fonts often include "broken" glyphs which appear in the
+ encoding but are drawn as blanks on the screen. Within the
+ <blank> element, place each Unicode characters which is
+ supposed to be blank in an <int> element. Characters outside of
+ this set which are drawn as blank will be elided from the set
+ of characters supported by the font.
+
+<rescan>
+
+ The <rescan> element holds an <int> element which indicates the
+ default interval between automatic checks for font
+ configuration changes. Fontconfig will validate all of the
+ configuration files and directories and automatically rebuild
+ the internal datastructures when this interval passes.
+
+<selectfont>
+
+ This element is used to black/white list fonts from being
+ listed or matched against. It holds acceptfont and rejectfont
+ elements.
+
+<acceptfont>
- <rejectfont>
+ Fonts matched by an acceptfont element are "whitelisted"; such
+ fonts are explicitly included in the set of fonts used to
+ resolve list and match requests; including them in this list
+ protects them from being "blacklisted" by a rejectfont element.
+ Acceptfont elements include glob and pattern elements which are
+ used to match fonts.
- Fonts matched by an rejectfont element are "blacklisted"; such fonts are
- excluded from the set of fonts used to resolve list and match requests as
- if they didn't exist in the system. Rejectfont elements include glob and
- pattern elements which are used to match fonts.
+<rejectfont>
- <glob>
+ Fonts matched by an rejectfont element are "blacklisted"; such
+ fonts are excluded from the set of fonts used to resolve list
+ and match requests as if they didn't exist in the system.
+ Rejectfont elements include glob and pattern elements which are
+ used to match fonts.
- Glob elements hold shell-style filename matching patterns (including ? and
- *) which match fonts based on their complete pathnames. This can be used
- to exclude a set of directories (/usr/share/fonts/uglyfont*), or
- particular font file types (*.pcf.gz), but the latter mechanism relies
- rather heavily on filenaming conventions which can't be relied upon. Note
- that globs only apply to directories, not to individual fonts.
+<glob>
- <pattern>
+ Glob elements hold shell-style filename matching patterns
+ (including ? and *) which match fonts based on their complete
+ pathnames. This can be used to exclude a set of directories
+ (/usr/share/fonts/uglyfont*), or particular font file types
+ (*.pcf.gz), but the latter mechanism relies rather heavily on
+ filenaming conventions which can't be relied upon. Note that
+ globs only apply to directories, not to individual fonts.
- Pattern elements perform list-style matching on incoming fonts; that is,
- they hold a list of elements and associated values. If all of those
- elements have a matching value, then the pattern matches the font. This
- can be used to select fonts based on attributes of the font (scalable,
- bold, etc), which is a more reliable mechanism than using file extensions.
- Pattern elements include patelt elements.
+<pattern>
- <patelt name="property">
+ Pattern elements perform list-style matching on incoming fonts;
+ that is, they hold a list of elements and associated values. If
+ all of those elements have a matching value, then the pattern
+ matches the font. This can be used to select fonts based on
+ attributes of the font (scalable, bold, etc), which is a more
+ reliable mechanism than using file extensions. Pattern elements
+ include patelt elements.
- Patelt elements hold a single pattern element and list of values. They
- must have a 'name' attribute which indicates the pattern element name.
- Patelt elements include int, double, string, matrix, bool, charset and
- const elements.
-
- <match target="pattern">
-
- This element holds first a (possibly empty) list of <test> elements and
- then a (possibly empty) list of <edit> elements. Patterns which match all
- of the tests are subjected to all the edits. If 'target' is set to "font"
- instead of the default "pattern", then this element applies to the font
- name resulting from a match rather than a font pattern to be matched. If
- 'target' is set to "scan", then this element applies when the font is
- scanned to build the fontconfig database.
-
- <test qual="any" name="property" target="default" compare="eq">
-
- This element contains a single value which is compared with the target
- ('pattern', 'font', 'scan' or 'default') property "property" (substitute
- any of the property names seen above). 'compare' can be one of "eq",
- "not_eq", "less", "less_eq", "more", "more_eq", "contains" or
- "not_contains". 'qual' may either be the default, "any", in which case the
- match succeeds if any value associated with the property matches the test
- value, or "all", in which case all of the values associated with the
- property must match the test value. 'ignore-blanks' takes a boolean value.
- if 'ignore-blanks' is set "true", any blanks in the string will be ignored
- on its comparison. this takes effects only when compare="eq" or
- compare="not_eq". When used in a <match target="font"> element, the
- target= attribute in the <test> element selects between matching the
- original pattern or the font. "default" selects whichever target the outer
- <match> element has selected.
-
- <edit name="property" mode="assign" binding="weak">
-
- This element contains a list of expression elements (any of the value or
- operator elements). The expression elements are evaluated at run-time and
- modify the property "property". The modification depends on whether
- "property" was matched by one of the associated <test> elements, if so,
- the modification may affect the first matched value. Any values inserted
- into the property are given the indicated binding ("strong", "weak" or
- "same") with "same" binding using the value from the matched pattern
- element. 'mode' is one of:
-
- Mode With Match Without Match
- ---------------------------------------------------------------------
- "assign" Replace matching value Replace all values
- "assign_replace" Replace all values Replace all values
- "prepend" Insert before matching Insert at head of list
- "prepend_first" Insert at head of list Insert at head of list
- "append" Append after matching Append at end of list
- "append_last" Append at end of list Append at end of list
-
-
- <int>, <double>, <string>, <bool>
-
- These elements hold a single value of the indicated type. <bool> elements
- hold either true or false. An important limitation exists in the parsing
- of floating point numbers -- fontconfig requires that the mantissa start
- with a digit, not a decimal point, so insert a leading zero for purely
- fractional values (e.g. use 0.5 instead of .5 and -0.5 instead of -.5).
-
- <matrix>
-
- This element holds four numerical expressions of an affine transformation.
- At their simplest these will be four <double> elements but they can also
- be more involved expressions.
-
- <range>
-
- This element holds the two <int> elements of a range representation.
-
- <charset>
-
- This element holds at least one <int> element of an Unicode code point or
- more.
-
- <langset>
-
- This element holds at least one <string> element of a RFC-3066-style
- languages or more.
-
- <name>
-
- Holds a property name. Evaluates to the first value from the property of
- the pattern. If the 'target' attribute is not present, it will default to
- 'default', in which case the property is returned from the font pattern
- during a target="font" match, and to the pattern during a target="pattern"
- match. The attribute can also take the values 'font' or 'pattern' to
- explicitly choose which pattern to use. It is an error to use a target of
- 'font' in a match that has target="pattern".
-
- <const>
-
- Holds the name of a constant; these are always integers and serve as
- symbolic names for common font values:
-
- Constant Property Value
- -------------------------------------
- thin weight 0
- extralight weight 40
- ultralight weight 40
- light weight 50
- book weight 75
- regular weight 80
- normal weight 80
- medium weight 100
- demibold weight 180
- semibold weight 180
- bold weight 200
- extrabold weight 205
- black weight 210
- heavy weight 210
- roman slant 0
- italic slant 100
- oblique slant 110
- ultracondensed width 50
- extracondensed width 63
- condensed width 75
- semicondensed width 87
- normal width 100
- semiexpanded width 113
- expanded width 125
- extraexpanded width 150
- ultraexpanded width 200
- proportional spacing 0
- dual spacing 90
- mono spacing 100
- charcell spacing 110
- unknown rgba 0
- rgb rgba 1
- bgr rgba 2
- vrgb rgba 3
- vbgr rgba 4
- none rgba 5
- lcdnone lcdfilter 0
- lcddefault lcdfilter 1
- lcdlight lcdfilter 2
- lcdlegacy lcdfilter 3
- hintnone hintstyle 0
- hintslight hintstyle 1
- hintmedium hintstyle 2
- hintfull hintstyle 3
-
-
- <or>, <and>, <plus>, <minus>, <times>, <divide>
-
- These elements perform the specified operation on a list of expression
- elements. <or> and <and> are boolean, not bitwise.
-
- <eq>, <not_eq>, <less>, <less_eq>, <more>, <more_eq>, <contains>,
- <not_contains
+<patelt name="property">
+
+ Patelt elements hold a single pattern element and list of
+ values. They must have a 'name' attribute which indicates the
+ pattern element name. Patelt elements include int, double,
+ string, matrix, bool, charset and const elements.
+
+<match target="pattern">
+
+ This element holds first a (possibly empty) list of <test>
+ elements and then a (possibly empty) list of <edit> elements.
+ Patterns which match all of the tests are subjected to all the
+ edits. If 'target' is set to "font" instead of the default
+ "pattern", then this element applies to the font name resulting
+ from a match rather than a font pattern to be matched. If
+ 'target' is set to "scan", then this element applies when the
+ font is scanned to build the fontconfig database.
+
+<test qual="any" name="property" target="default" compare="eq">
+
+ This element contains a single value which is compared with the
+ target ('pattern', 'font', 'scan' or 'default') property
+ "property" (substitute any of the property names seen above).
+ 'compare' can be one of "eq", "not_eq", "less", "less_eq",
+ "more", "more_eq", "contains" or "not_contains". 'qual' may
+ either be the default, "any", in which case the match succeeds
+ if any value associated with the property matches the test
+ value, or "all", in which case all of the values associated
+ with the property must match the test value. 'ignore-blanks'
+ takes a boolean value. if 'ignore-blanks' is set "true", any
+ blanks in the string will be ignored on its comparison. this
+ takes effects only when compare="eq" or compare="not_eq". When
+ used in a <match target="font"> element, the target= attribute
+ in the <test> element selects between matching the original
+ pattern or the font. "default" selects whichever target the
+ outer <match> element has selected.
+
+<edit name="property" mode="assign" binding="weak">
+
+ This element contains a list of expression elements (any of the
+ value or operator elements). The expression elements are
+ evaluated at run-time and modify the property "property". The
+ modification depends on whether "property" was matched by one
+ of the associated <test> elements, if so, the modification may
+ affect the first matched value. Any values inserted into the
+ property are given the indicated binding ("strong", "weak" or
+ "same") with "same" binding using the value from the matched
+ pattern element. 'mode' is one of:
+ Mode With Match Without Match
+ ---------------------------------------------------------------------
+ "assign" Replace matching value Replace all values
+ "assign_replace" Replace all values Replace all values
+ "prepend" Insert before matching Insert at head of list
+ "prepend_first" Insert at head of list Insert at head of list
+ "append" Append after matching Append at end of list
+ "append_last" Append at end of list Append at end of list
+ "delete" Delete matching value Delete all values
+ "delete_all" Delete all values Delete all values
+
+<int>, <double>, <string>, <bool>
+
+ These elements hold a single value of the indicated type.
+ <bool> elements hold either true or false. An important
+ limitation exists in the parsing of floating point numbers --
+ fontconfig requires that the mantissa start with a digit, not a
+ decimal point, so insert a leading zero for purely fractional
+ values (e.g. use 0.5 instead of .5 and -0.5 instead of -.5).
+
+<matrix>
+
+ This element holds four numerical expressions of an affine
+ transformation. At their simplest these will be four <double>
+ elements but they can also be more involved expressions.
+
+<range>
+
+ This element holds the two <int> elements of a range
+ representation.
+
+<charset>
+
+ This element holds at least one <int> element of an Unicode
+ code point or more.
+
+<langset>
+
+ This element holds at least one <string> element of a
+ RFC-3066-style languages or more.
+
+<name>
+
+ Holds a property name. Evaluates to the first value from the
+ property of the pattern. If the 'target' attribute is not
+ present, it will default to 'default', in which case the
+ property is returned from the font pattern during a
+ target="font" match, and to the pattern during a
+ target="pattern" match. The attribute can also take the values
+ 'font' or 'pattern' to explicitly choose which pattern to use.
+ It is an error to use a target of 'font' in a match that has
+ target="pattern".
+
+<const>
+
+ Holds the name of a constant; these are always integers and
+ serve as symbolic names for common font values:
+ Constant Property Value
+ -------------------------------------
+ thin weight 0
+ extralight weight 40
+ ultralight weight 40
+ light weight 50
+ demilight weight 55
+ semilight weight 55
+ book weight 75
+ regular weight 80
+ normal weight 80
+ medium weight 100
+ demibold weight 180
+ semibold weight 180
+ bold weight 200
+ extrabold weight 205
+ black weight 210
+ heavy weight 210
+ roman slant 0
+ italic slant 100
+ oblique slant 110
+ ultracondensed width 50
+ extracondensed width 63
+ condensed width 75
+ semicondensed width 87
+ normal width 100
+ semiexpanded width 113
+ expanded width 125
+ extraexpanded width 150
+ ultraexpanded width 200
+ proportional spacing 0
+ dual spacing 90
+ mono spacing 100
+ charcell spacing 110
+ unknown rgba 0
+ rgb rgba 1
+ bgr rgba 2
+ vrgb rgba 3
+ vbgr rgba 4
+ none rgba 5
+ lcdnone lcdfilter 0
+ lcddefault lcdfilter 1
+ lcdlight lcdfilter 2
+ lcdlegacy lcdfilter 3
+ hintnone hintstyle 0
+ hintslight hintstyle 1
+ hintmedium hintstyle 2
+ hintfull hintstyle 3
+
+<or>, <and>, <plus>, <minus>, <times>, <divide>
+
+ These elements perform the specified operation on a list of
+ expression elements. <or> and <and> are boolean, not bitwise.
+
+<eq>, <not_eq>, <less>, <less_eq>, <more>, <more_eq>, <contains>,
+<not_contains
These elements compare two values, producing a boolean result.
- <not>
+<not>
Inverts the boolean sense of its one expression element
- <if>
+<if>
- This element takes three expression elements; if the value of the first is
- true, it produces the value of the second, otherwise it produces the value
- of the third.
+ This element takes three expression elements; if the value of
+ the first is true, it produces the value of the second,
+ otherwise it produces the value of the third.
- <alias>
+<alias>
- Alias elements provide a shorthand notation for the set of common match
- operations needed to substitute one font family for another. They contain
- a <family> element followed by optional <prefer>, <accept> and <default>
- elements. Fonts matching the <family> element are edited to prepend the
- list of <prefer>ed families before the matching <family>, append the
- <accept>able families after the matching <family> and append the <default>
- families to the end of the family list.
+ Alias elements provide a shorthand notation for the set of
+ common match operations needed to substitute one font family
+ for another. They contain a <family> element followed by
+ optional <prefer>, <accept> and <default> elements. Fonts
+ matching the <family> element are edited to prepend the list of
+ <prefer>ed families before the matching <family>, append the
+ <accept>able families after the matching <family> and append
+ the <default> families to the end of the family list.
- <family>
+<family>
Holds a single font family name
- <prefer>, <accept>, <default>
+<prefer>, <accept>, <default>
- These hold a list of <family> elements to be used by the <alias> element.
+ These hold a list of <family> elements to be used by the
+ <alias> element.
EXAMPLE CONFIGURATION FILE
- System configuration file
+System configuration file
This is an example of a system-wide configuration file
-
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
@@ -564,24 +605,30 @@ EXAMPLE CONFIGURATION FILE
-->
<match target="pattern">
<test qual="any" name="family"><string>mono</string></test>
- <edit name="family" mode="assign"><string>monospace</string></edit>
+ <edit name="family" mode="assign"><string>monospace</string></ed
+it>
</match>
<!--
Names not including any well known alias are given 'sans-serif'
-->
<match target="pattern">
- <test qual="all" name="family" mode="not_eq"><string>sans-serif</string></test>
- <test qual="all" name="family" mode="not_eq"><string>serif</string></test>
- <test qual="all" name="family" mode="not_eq"><string>monospace</string></test>
- <edit name="family" mode="append_last"><string>sans-serif</string></edit>
+ <test qual="all" name="family" mode="not_eq"><string>sans-serif<
+/string></test>
+ <test qual="all" name="family" mode="not_eq"><string>serif</stri
+ng></test>
+ <test qual="all" name="family" mode="not_eq"><string>monospace</
+string></test>
+ <edit name="family" mode="append_last"><string>sans-serif</strin
+g></edit>
</match>
<!--
Load per-user customization file, but don't complain
if it doesn't exist
-->
-<include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</include>
+<include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</includ
+e>
<!--
Load local customization files, but don't complain
@@ -653,116 +700,123 @@ EXAMPLE CONFIGURATION FILE
</fontconfig>
+User configuration file
- User configuration file
-
- This is an example of a per-user configuration file that lives in
- $XDG_CONFIG_HOME/fontconfig/fonts.conf
+ This is an example of a per-user configuration file that lives
+ in $XDG_CONFIG_HOME/fontconfig/fonts.conf
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configurat
+ion -->
+<fontconfig>
- <?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
- <!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration -->
- <fontconfig>
-
- <!--
- Private font directory
- -->
- <dir prefix="xdg">fonts</dir>
-
- <!--
- use rgb sub-pixel ordering to improve glyph appearance on
- LCD screens. Changes affecting rendering, but not matching
- should always use target="font".
- -->
- <match target="font">
- <edit name="rgba" mode="assign"><const>rgb</const></edit>
- </match>
- <!--
- use WenQuanYi Zen Hei font when serif is requested for Chinese
- -->
- <match>
- <!--
- If you don't want to use WenQuanYi Zen Hei font for zh-tw etc,
- you can use zh-cn instead of zh.
- Please note, even if you set zh-cn, it still matches zh.
- if you don't like it, you can use compare="eq"
- instead of compare="contains".
- -->
- <test name="lang" compare="contains">
- <string>zh</string>
- </test>
- <test name="family">
- <string>serif</string>
- </test>
- <edit name="family" mode="prepend">
- <string>WenQuanYi Zen Hei</string>
- </edit>
- </match>
- <!--
- use VL Gothic font when sans-serif is requested for Japanese
- -->
- <match>
- <test name="lang" compare="contains">
- <string>ja</string>
- </test>
- <test name="family">
- <string>sans-serif</string>
- </test>
- <edit name="family" mode="prepend">
- <string>VL Gothic</string>
- </edit>
- </match>
- </fontconfig>
+<!--
+ Private font directory
+-->
+<dir prefix="xdg">fonts</dir>
+<!--
+ use rgb sub-pixel ordering to improve glyph appearance on
+ LCD screens. Changes affecting rendering, but not matching
+ should always use target="font".
+-->
+<match target="font">
+ <edit name="rgba" mode="assign"><const>rgb</const></edit>
+</match>
+<!--
+ use WenQuanYi Zen Hei font when serif is requested for Chinese
+-->
+<match>
+ <!--
+ If you don't want to use WenQuanYi Zen Hei font for zh-t
+w etc,
+ you can use zh-cn instead of zh.
+ Please note, even if you set zh-cn, it still matches zh.
+ if you don't like it, you can use compare="eq"
+ instead of compare="contains".
+ -->
+ <test name="lang" compare="contains">
+ <string>zh</string>
+ </test>
+ <test name="family">
+ <string>serif</string>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>WenQuanYi Zen Hei</string>
+ </edit>
+</match>
+<!--
+ use VL Gothic font when sans-serif is requested for Japanese
+-->
+<match>
+ <test name="lang" compare="contains">
+ <string>ja</string>
+ </test>
+ <test name="family">
+ <string>sans-serif</string>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>VL Gothic</string>
+ </edit>
+</match>
+</fontconfig>
Files
- fonts.conf contains configuration information for the fontconfig library
- consisting of directories to look at for font information as well as
- instructions on editing program specified font patterns before attempting
- to match the available fonts. It is in XML format.
+ fonts.conf contains configuration information for the
+ fontconfig library consisting of directories to look at for
+ font information as well as instructions on editing program
+ specified font patterns before attempting to match the
+ available fonts. It is in XML format.
conf.d is the conventional name for a directory of additional
- configuration files managed by external applications or the local
- administrator. The filenames starting with decimal digits are sorted in
- lexicographic order and used as additional configuration files. All of
- these files are in XML format. The master fonts.conf file references this
- directory in an <include> directive.
-
- fonts.dtd is a DTD that describes the format of the configuration files.
-
- $XDG_CONFIG_HOME/fontconfig/conf.d and ~/.fonts.conf.d is the conventional
- name for a per-user directory of (typically auto-generated) configuration
- files, although the actual location is specified in the global fonts.conf
- file. please note that ~/.fonts.conf.d is deprecated now. it will not be
+ configuration files managed by external applications or the
+ local administrator. The filenames starting with decimal digits
+ are sorted in lexicographic order and used as additional
+ configuration files. All of these files are in XML format. The
+ master fonts.conf file references this directory in an
+ <include> directive.
+
+ fonts.dtd is a DTD that describes the format of the
+ configuration files.
+
+ $XDG_CONFIG_HOME/fontconfig/conf.d and ~/.fonts.conf.d is the
+ conventional name for a per-user directory of (typically
+ auto-generated) configuration files, although the actual
+ location is specified in the global fonts.conf file. please
+ note that ~/.fonts.conf.d is deprecated now. it will not be
read by default in the future version.
$XDG_CONFIG_HOME/fontconfig/fonts.conf and ~/.fonts.conf is the
- conventional location for per-user font configuration, although the actual
- location is specified in the global fonts.conf file. please note that
- ~/.fonts.conf is deprecated now. it will not be read by default in the
- future version.
-
- $XDG_CACHE_HOME/fontconfig/*.cache-* and ~/.fontconfig/*.cache-* is the
- conventional repository of font information that isn't found in the
- per-directory caches. This file is automatically maintained by fontconfig.
- please note that ~/.fontconfig/*.cache-* is deprecated now. it will not be
+ conventional location for per-user font configuration, although
+ the actual location is specified in the global fonts.conf file.
+ please note that ~/.fonts.conf is deprecated now. it will not
+ be read by default in the future version.
+
+ $XDG_CACHE_HOME/fontconfig/*.cache-* and
+ ~/.fontconfig/*.cache-* is the conventional repository of font
+ information that isn't found in the per-directory caches. This
+ file is automatically maintained by fontconfig. please note
+ that ~/.fontconfig/*.cache-* is deprecated now. it will not be
read by default in the future version.
Environment variables
- FONTCONFIG_FILE is used to override the default configuration file.
+ FONTCONFIG_FILE is used to override the default configuration
+ file.
- FONTCONFIG_PATH is used to override the default configuration directory.
+ FONTCONFIG_PATH is used to override the default configuration
+ directory.
FC_DEBUG is used to output the detailed debugging messages. see
- [1]Debugging Applications section for more details.
+ Debugging Applications section for more details.
- FONTCONFIG_USE_MMAP is used to control the use of mmap(2) for the cache
- files if available. this take a boolean value. fontconfig will checks if
- the cache files are stored on the filesystem that is safe to use mmap(2).
- explicitly setting this environment variable will causes skipping this
- check and enforce to use or not use mmap(2) anyway.
+ FONTCONFIG_USE_MMAP is used to control the use of mmap(2) for
+ the cache files if available. this take a boolean value.
+ fontconfig will checks if the cache files are stored on the
+ filesystem that is safe to use mmap(2). explicitly setting this
+ environment variable will causes skipping this check and
+ enforce to use or not use mmap(2) anyway.
See Also
@@ -770,9 +824,4 @@ See Also
Version
- Fontconfig version 2.10.91
-
-References
-
- Visible links
- 1. file:///tmp/html-sp859j#DEBUG
+ Fontconfig version 2.11.93
diff --git a/doc/fonts-conf.5 b/doc/fonts-conf.5
index 55cc3cd0..a799049c 100644
--- a/doc/fonts-conf.5
+++ b/doc/fonts-conf.5
@@ -1,5 +1,5 @@
.\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FONTS-CONF" "5" "10 1月 2013" "" ""
+.TH "FONTS-CONF" "5" "09 3月 2015" "" ""
.SH NAME
fonts.conf \- Font configuration files
.SH SYNOPSIS
@@ -81,9 +81,10 @@ convenience for the applications' rendering mechanism.
file String The filename holding the font
index Int The index of the font within the file
ftface FT_Face Use the specified FreeType face object
- rasterizer String Which rasterizer is in use
+ rasterizer String Which rasterizer is in use (deprecated)
outline Bool Whether the glyphs are outlines
scalable Bool Whether glyphs can be scaled
+ color Bool Whether any glyphs have color
scale Double Scale factor for point->pixel conversions
dpi Double Target dots per inch
rgba Int unknown, rgb, bgr, vrgb, vbgr,
@@ -95,7 +96,15 @@ convenience for the applications' rendering mechanism.
font supports
fontversion Int Version number of the font
capability String List of layout capabilities in the font
+ fontformat String String name of the font format
embolden Bool Rasterizer should synthetically embolden the font
+ embeddedbitmap Bool Use the embedded bitmap instead of the outline
+ decorative Bool Whether the style is a decorative variant
+ fontfeatures String List of the feature tags in OpenType to be enabled
+ namelang String Language name to be used for the default value of
+ familylang, stylelang, and fullnamelang
+ prgname String String Name of the running program
+ postscriptname String Font family name in PostScript
.sp
.fi
@@ -277,7 +286,7 @@ the configuration file, the directory that can be accessed first in the list
will be used to store the cache files. If it starts with '~', it refers to
a directory in the users home directory. If 'prefix' is set to "xdg", the value in the XDG_CACHE_HOME environment variable will be added as the path prefix. please see XDG Base Directory Specification for more details.
The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
-named ``<hash value>-<architecture>\&.cache-<version\&'',
+named ``<hash value>-<architecture>\&.cache-<version>\&'',
where <version> is the font configureation file
version number (currently 3).
.SS "<INCLUDE IGNORE_MISSING=""NO"" PREFIX=""DEFAULT"">"
@@ -389,6 +398,8 @@ with "same" binding using the value from the matched pattern element.
"prepend_first" Insert at head of list Insert at head of list
"append" Append after matching Append at end of list
"append_last" Append at end of list Append at end of list
+ "delete" Delete matching value Delete all values
+ "delete_all" Delete all values Delete all values
.sp
.fi
@@ -438,6 +449,8 @@ symbolic names for common font values:
extralight weight 40
ultralight weight 40
light weight 50
+ demilight weight 55
+ semilight weight 55
book weight 75
regular weight 80
normal weight 80
@@ -735,4 +748,4 @@ is used to control the use of mmap(2) for the cache files if available. this tak
fc-cat(1), fc-cache(1), fc-list(1), fc-match(1), fc-query(1)
.SH "VERSION"
.PP
-Fontconfig version 2.10.91
+Fontconfig version 2.11.93
diff --git a/doc/func.sgml b/doc/func.sgml
index 73e7761c..f076baff 100644
--- a/doc/func.sgml
+++ b/doc/func.sgml
@@ -33,6 +33,7 @@
<refentrytitle>@FUNC@</refentrytitle>
@;@
<manvolnum>3</manvolnum>
+ <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
</refmeta>
<refnamediv>
@{PROTOTYPE@
@@ -82,9 +83,9 @@
@DESC@
</para>
</refsect1>
- <refsect1><title>Version</title>
- <para>
-Fontconfig version &version;
- </para>
+@?SINCE@
+ <refsect1><title>Since</title>
+ <para>version @SINCE@</para>
</refsect1>
+@;@
</refentry>
diff --git a/fc-blanks/Makefile.am b/fc-blanks/Makefile.am
new file mode 100644
index 00000000..e9de1fe1
--- /dev/null
+++ b/fc-blanks/Makefile.am
@@ -0,0 +1,41 @@
+# -*- encoding: utf-8 -*-
+#
+# Copyright © 2003 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. The authors make no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+NULL =
+BLANKSPY = fc-blanks.py
+BLANKS_H = fcblanks.h
+TMPL = fcblanks.tmpl.h
+noinst_SCRIPTS = $(BLANKSPY)
+noinst_HEADERS = $(BLANKS_H)
+
+$(BLANKS_H): $(TMPL) $(BLANKSPY)
+ $(AM_V_GEN) $(PYTHON) $(srcdir)/$(BLANKSPY) < $< > $(BLANKS_H).tmp && \
+ mv $(BLANKS_H).tmp $(BLANKS_H) || ($(RM) $(BLANKS_H).tmp && false)
+
+EXTRA_DIST = \
+ $(BLANKSPY) \
+ $(BLANKS_H) \
+ $(TMPL) \
+ $(NULL)
+DISTCLEANFILES = $(BLANKS_H)
+
+-include $(top_srcdir)/git.mk
diff --git a/fc-blanks/Makefile.in b/fc-blanks/Makefile.in
new file mode 100644
index 00000000..52b860b5
--- /dev/null
+++ b/fc-blanks/Makefile.in
@@ -0,0 +1,588 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# -*- encoding: utf-8 -*-
+#
+# Copyright © 2003 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. The authors make no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = fc-blanks
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(noinst_HEADERS)
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
+ $(top_srcdir)/m4/ax_create_stdint_h.m4 \
+ $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SCRIPTS = $(noinst_SCRIPTS)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASECONFIGDIR = @BASECONFIGDIR@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CC_FOR_BUILD = @CC_FOR_BUILD@
+CFLAGS = @CFLAGS@
+CONFIGDIR = @CONFIGDIR@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DOCMAN3 = @DOCMAN3@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
+EXPAT_CFLAGS = @EXPAT_CFLAGS@
+EXPAT_LIBS = @EXPAT_LIBS@
+FC_ADD_FONTS = @FC_ADD_FONTS@
+FC_CACHEDIR = @FC_CACHEDIR@
+FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
+FC_FONTDATE = @FC_FONTDATE@
+FC_FONTPATH = @FC_FONTPATH@
+FGREP = @FGREP@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
+GREP = @GREP@
+HASDOCBOOK = @HASDOCBOOK@
+HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
+ICONV_CFLAGS = @ICONV_CFLAGS@
+ICONV_LIBS = @ICONV_LIBS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIBT_CURRENT = @LIBT_CURRENT@
+LIBT_CURRENT_MINUS_AGE = @LIBT_CURRENT_MINUS_AGE@
+LIBT_REVISION = @LIBT_REVISION@
+LIBT_VERSION_INFO = @LIBT_VERSION_INFO@
+LIBXML2_CFLAGS = @LIBXML2_CFLAGS@
+LIBXML2_LIBS = @LIBXML2_LIBS@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+RM = @RM@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TEMPLATEDIR = @TEMPLATEDIR@
+VERSION = @VERSION@
+WARN_CFLAGS = @WARN_CFLAGS@
+XMLDIR = @XMLDIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+ax_pthread_config = @ax_pthread_config@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+fc_cachedir = @fc_cachedir@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+ms_librarian = @ms_librarian@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+NULL =
+BLANKSPY = fc-blanks.py
+BLANKS_H = fcblanks.h
+TMPL = fcblanks.tmpl.h
+noinst_SCRIPTS = $(BLANKSPY)
+noinst_HEADERS = $(BLANKS_H)
+EXTRA_DIST = \
+ $(BLANKSPY) \
+ $(BLANKS_H) \
+ $(TMPL) \
+ $(NULL)
+
+DISTCLEANFILES = $(BLANKS_H)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu fc-blanks/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu fc-blanks/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ set x; \
+ here=`pwd`; \
+ $(am__define_uniq_tagged_files); \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(SCRIPTS) $(HEADERS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+ -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am
+
+
+$(BLANKS_H): $(TMPL) $(BLANKSPY)
+ $(AM_V_GEN) $(PYTHON) $(srcdir)/$(BLANKSPY) < $< > $(BLANKS_H).tmp && \
+ mv $(BLANKS_H).tmp $(BLANKS_H) || ($(RM) $(BLANKS_H).tmp && false)
+
+-include $(top_srcdir)/git.mk
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/fc-blanks/fc-blanks.py b/fc-blanks/fc-blanks.py
new file mode 100755
index 00000000..a2f0b950
--- /dev/null
+++ b/fc-blanks/fc-blanks.py
@@ -0,0 +1,132 @@
+#! /usr/bin/python
+
+import urllib2
+import sys
+from lxml import html
+
+fp = urllib2.urlopen('http://unicode.org/cldr/utility/list-unicodeset.jsp?a=[%3AGC%3DZs%3A][%3ADI%3A]&abb=on&ucd=on&esc=on&g')
+data = fp.read()
+fp.close()
+
+dom = html.fromstring(data)
+x = dom.xpath('/html/body/form/p/text()')
+p = x[1]
+if p[0] == '[' and p[-1] == ']':
+ p = p.replace('[', '').replace(']', '')
+else:
+ sys.exit(1)
+fescape = False
+funicode = False
+frange = False
+fprocess = False
+v = 0
+vbegin = 0
+vend = 0
+n = 0
+l = []
+
+def insert(db, begin, end):
+ db.append([begin, end])
+
+for i in p:
+ if i == '\\':
+ if n > 0:
+ if frange == True and funicode == True:
+ vend = v
+ insert(l, vbegin, vend)
+ fprocess = True
+ elif funicode == True:
+ vbegin = v
+ vend = v
+ insert(l, vbegin, vend)
+ fprocess = True
+ funicode = False
+ fescape = True
+ elif i.lower() == 'u' and fescape == True:
+ funicode = True
+ fescape = False
+ elif i >= '0' and i <= '9' or i.lower() >= 'a' and i.lower() <= 'f':
+ if fescape == True:
+ raise RuntimeError, "Unexpected escape code"
+ if funicode == True:
+ v <<= 4
+ v += int(i, 16)
+ else:
+ raise RuntimeError, "Unable to parse Unicode"
+ elif i == ' ':
+ if fescape == True:
+ funicode = True
+ fescape = False
+ v = 0x20
+ if frange == True and funicode == True:
+ vend = v
+ insert(l, vbegin, vend)
+ fprocess = True
+ elif funicode == True:
+ vbegin = v
+ vend = v
+ insert(l, vbegin, vend)
+ fprocess = True
+ funicode = False
+ frange = False
+ elif i == '-':
+ if fescape == True:
+ raise RuntimeError, "Unexpected escape code"
+ vbegin = v
+ v = 0
+ funicode = False
+ frange = True
+ else:
+ raise RuntimeError, "Unable to parse Unicode: %s" % i
+
+ if fprocess == True:
+ vbegin = 0
+ vend = 0
+ v = 0
+ fprocess = False
+ funicode = False
+ frange = False
+ n += 1
+
+if frange == True and funicode == True:
+ vend = v
+ insert(l, vbegin, vend)
+elif funicode == True:
+ vbegin = vend = v
+ insert(l, vbegin, vend)
+
+ncode = 0
+for i in l:
+ ncode += (i[1] - i[0] + 1)
+
+a = int(x[0].split(' ')[0].replace(',', ''))
+if a != ncode:
+ sys.stderr.write("Unexpected the amount of code points: %d (expected %d)\n" % (ncode, a))
+ sys.exit(1)
+
+# exception; BRAILLE PATTERN BLANK
+insert(l, 0x2800, 0x2800)
+
+while True:
+ s = sys.stdin.readline().rstrip()
+ if s == "@@@":
+ break
+ print s
+
+print "static FcChar32 _fcBlanks[%s] = {" % (ncode + 1)
+k = 0
+for i in sorted(l, key=lambda(a): a[0]):
+ for j in range(i[0], i[1] + 1):
+ if k != 0:
+ print ","
+ print " 0x%04x" % j,
+ k += 1
+
+print "};"
+print '''
+static FcBlanks fcBlanks = {
+ %s,
+ -1,
+ _fcBlanks
+};
+''' % (ncode + 1)
diff --git a/fc-blanks/fcblanks.h b/fc-blanks/fcblanks.h
new file mode 100644
index 00000000..51ba34df
--- /dev/null
+++ b/fc-blanks/fcblanks.h
@@ -0,0 +1,4223 @@
+/*
+ * fontconfig/fc-blanks/fcblanks.tmpl.h
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+static FcChar32 _fcBlanks[4191] = {
+ 0x0020 ,
+ 0x00a0 ,
+ 0x00ad ,
+ 0x034f ,
+ 0x061c ,
+ 0x115f ,
+ 0x1160 ,
+ 0x1680 ,
+ 0x17b4 ,
+ 0x17b5 ,
+ 0x180b ,
+ 0x180c ,
+ 0x180d ,
+ 0x180e ,
+ 0x2000 ,
+ 0x2001 ,
+ 0x2002 ,
+ 0x2003 ,
+ 0x2004 ,
+ 0x2005 ,
+ 0x2006 ,
+ 0x2007 ,
+ 0x2008 ,
+ 0x2009 ,
+ 0x200a ,
+ 0x200b ,
+ 0x200c ,
+ 0x200d ,
+ 0x200e ,
+ 0x200f ,
+ 0x202a ,
+ 0x202b ,
+ 0x202c ,
+ 0x202d ,
+ 0x202e ,
+ 0x202f ,
+ 0x205f ,
+ 0x2060 ,
+ 0x2061 ,
+ 0x2062 ,
+ 0x2063 ,
+ 0x2064 ,
+ 0x2065 ,
+ 0x2066 ,
+ 0x2067 ,
+ 0x2068 ,
+ 0x2069 ,
+ 0x206a ,
+ 0x206b ,
+ 0x206c ,
+ 0x206d ,
+ 0x206e ,
+ 0x206f ,
+ 0x2800 ,
+ 0x3000 ,
+ 0x3164 ,
+ 0xfe00 ,
+ 0xfe01 ,
+ 0xfe02 ,
+ 0xfe03 ,
+ 0xfe04 ,
+ 0xfe05 ,
+ 0xfe06 ,
+ 0xfe07 ,
+ 0xfe08 ,
+ 0xfe09 ,
+ 0xfe0a ,
+ 0xfe0b ,
+ 0xfe0c ,
+ 0xfe0d ,
+ 0xfe0e ,
+ 0xfe0f ,
+ 0xfeff ,
+ 0xffa0 ,
+ 0xfff0 ,
+ 0xfff1 ,
+ 0xfff2 ,
+ 0xfff3 ,
+ 0xfff4 ,
+ 0xfff5 ,
+ 0xfff6 ,
+ 0xfff7 ,
+ 0xfff8 ,
+ 0x1bca0 ,
+ 0x1bca1 ,
+ 0x1bca2 ,
+ 0x1bca3 ,
+ 0x1d173 ,
+ 0x1d174 ,
+ 0x1d175 ,
+ 0x1d176 ,
+ 0x1d177 ,
+ 0x1d178 ,
+ 0x1d179 ,
+ 0x1d17a ,
+ 0xe0000 ,
+ 0xe0001 ,
+ 0xe0002 ,
+ 0xe0003 ,
+ 0xe0004 ,
+ 0xe0005 ,
+ 0xe0006 ,
+ 0xe0007 ,
+ 0xe0008 ,
+ 0xe0009 ,
+ 0xe000a ,
+ 0xe000b ,
+ 0xe000c ,
+ 0xe000d ,
+ 0xe000e ,
+ 0xe000f ,
+ 0xe0010 ,
+ 0xe0011 ,
+ 0xe0012 ,
+ 0xe0013 ,
+ 0xe0014 ,
+ 0xe0015 ,
+ 0xe0016 ,
+ 0xe0017 ,
+ 0xe0018 ,
+ 0xe0019 ,
+ 0xe001a ,
+ 0xe001b ,
+ 0xe001c ,
+ 0xe001d ,
+ 0xe001e ,
+ 0xe001f ,
+ 0xe0020 ,
+ 0xe0021 ,
+ 0xe0022 ,
+ 0xe0023 ,
+ 0xe0024 ,
+ 0xe0025 ,
+ 0xe0026 ,
+ 0xe0027 ,
+ 0xe0028 ,
+ 0xe0029 ,
+ 0xe002a ,
+ 0xe002b ,
+ 0xe002c ,
+ 0xe002d ,
+ 0xe002e ,
+ 0xe002f ,
+ 0xe0030 ,
+ 0xe0031 ,
+ 0xe0032 ,
+ 0xe0033 ,
+ 0xe0034 ,
+ 0xe0035 ,
+ 0xe0036 ,
+ 0xe0037 ,
+ 0xe0038 ,
+ 0xe0039 ,
+ 0xe003a ,
+ 0xe003b ,
+ 0xe003c ,
+ 0xe003d ,
+ 0xe003e ,
+ 0xe003f ,
+ 0xe0040 ,
+ 0xe0041 ,
+ 0xe0042 ,
+ 0xe0043 ,
+ 0xe0044 ,
+ 0xe0045 ,
+ 0xe0046 ,
+ 0xe0047 ,
+ 0xe0048 ,
+ 0xe0049 ,
+ 0xe004a ,
+ 0xe004b ,
+ 0xe004c ,
+ 0xe004d ,
+ 0xe004e ,
+ 0xe004f ,
+ 0xe0050 ,
+ 0xe0051 ,
+ 0xe0052 ,
+ 0xe0053 ,
+ 0xe0054 ,
+ 0xe0055 ,
+ 0xe0056 ,
+ 0xe0057 ,
+ 0xe0058 ,
+ 0xe0059 ,
+ 0xe005a ,
+ 0xe005b ,
+ 0xe005c ,
+ 0xe005d ,
+ 0xe005e ,
+ 0xe005f ,
+ 0xe0060 ,
+ 0xe0061 ,
+ 0xe0062 ,
+ 0xe0063 ,
+ 0xe0064 ,
+ 0xe0065 ,
+ 0xe0066 ,
+ 0xe0067 ,
+ 0xe0068 ,
+ 0xe0069 ,
+ 0xe006a ,
+ 0xe006b ,
+ 0xe006c ,
+ 0xe006d ,
+ 0xe006e ,
+ 0xe006f ,
+ 0xe0070 ,
+ 0xe0071 ,
+ 0xe0072 ,
+ 0xe0073 ,
+ 0xe0074 ,
+ 0xe0075 ,
+ 0xe0076 ,
+ 0xe0077 ,
+ 0xe0078 ,
+ 0xe0079 ,
+ 0xe007a ,
+ 0xe007b ,
+ 0xe007c ,
+ 0xe007d ,
+ 0xe007e ,
+ 0xe007f ,
+ 0xe0080 ,
+ 0xe0081 ,
+ 0xe0082 ,
+ 0xe0083 ,
+ 0xe0084 ,
+ 0xe0085 ,
+ 0xe0086 ,
+ 0xe0087 ,
+ 0xe0088 ,
+ 0xe0089 ,
+ 0xe008a ,
+ 0xe008b ,
+ 0xe008c ,
+ 0xe008d ,
+ 0xe008e ,
+ 0xe008f ,
+ 0xe0090 ,
+ 0xe0091 ,
+ 0xe0092 ,
+ 0xe0093 ,
+ 0xe0094 ,
+ 0xe0095 ,
+ 0xe0096 ,
+ 0xe0097 ,
+ 0xe0098 ,
+ 0xe0099 ,
+ 0xe009a ,
+ 0xe009b ,
+ 0xe009c ,
+ 0xe009d ,
+ 0xe009e ,
+ 0xe009f ,
+ 0xe00a0 ,
+ 0xe00a1 ,
+ 0xe00a2 ,
+ 0xe00a3 ,
+ 0xe00a4 ,
+ 0xe00a5 ,
+ 0xe00a6 ,
+ 0xe00a7 ,
+ 0xe00a8 ,
+ 0xe00a9 ,
+ 0xe00aa ,
+ 0xe00ab ,
+ 0xe00ac ,
+ 0xe00ad ,
+ 0xe00ae ,
+ 0xe00af ,
+ 0xe00b0 ,
+ 0xe00b1 ,
+ 0xe00b2 ,
+ 0xe00b3 ,
+ 0xe00b4 ,
+ 0xe00b5 ,
+ 0xe00b6 ,
+ 0xe00b7 ,
+ 0xe00b8 ,
+ 0xe00b9 ,
+ 0xe00ba ,
+ 0xe00bb ,
+ 0xe00bc ,
+ 0xe00bd ,
+ 0xe00be ,
+ 0xe00bf ,
+ 0xe00c0 ,
+ 0xe00c1 ,
+ 0xe00c2 ,
+ 0xe00c3 ,
+ 0xe00c4 ,
+ 0xe00c5 ,
+ 0xe00c6 ,
+ 0xe00c7 ,
+ 0xe00c8 ,
+ 0xe00c9 ,
+ 0xe00ca ,
+ 0xe00cb ,
+ 0xe00cc ,
+ 0xe00cd ,
+ 0xe00ce ,
+ 0xe00cf ,
+ 0xe00d0 ,
+ 0xe00d1 ,
+ 0xe00d2 ,
+ 0xe00d3 ,
+ 0xe00d4 ,
+ 0xe00d5 ,
+ 0xe00d6 ,
+ 0xe00d7 ,
+ 0xe00d8 ,
+ 0xe00d9 ,
+ 0xe00da ,
+ 0xe00db ,
+ 0xe00dc ,
+ 0xe00dd ,
+ 0xe00de ,
+ 0xe00df ,
+ 0xe00e0 ,
+ 0xe00e1 ,
+ 0xe00e2 ,
+ 0xe00e3 ,
+ 0xe00e4 ,
+ 0xe00e5 ,
+ 0xe00e6 ,
+ 0xe00e7 ,
+ 0xe00e8 ,
+ 0xe00e9 ,
+ 0xe00ea ,
+ 0xe00eb ,
+ 0xe00ec ,
+ 0xe00ed ,
+ 0xe00ee ,
+ 0xe00ef ,
+ 0xe00f0 ,
+ 0xe00f1 ,
+ 0xe00f2 ,
+ 0xe00f3 ,
+ 0xe00f4 ,
+ 0xe00f5 ,
+ 0xe00f6 ,
+ 0xe00f7 ,
+ 0xe00f8 ,
+ 0xe00f9 ,
+ 0xe00fa ,
+ 0xe00fb ,
+ 0xe00fc ,
+ 0xe00fd ,
+ 0xe00fe ,
+ 0xe00ff ,
+ 0xe0100 ,
+ 0xe0101 ,
+ 0xe0102 ,
+ 0xe0103 ,
+ 0xe0104 ,
+ 0xe0105 ,
+ 0xe0106 ,
+ 0xe0107 ,
+ 0xe0108 ,
+ 0xe0109 ,
+ 0xe010a ,
+ 0xe010b ,
+ 0xe010c ,
+ 0xe010d ,
+ 0xe010e ,
+ 0xe010f ,
+ 0xe0110 ,
+ 0xe0111 ,
+ 0xe0112 ,
+ 0xe0113 ,
+ 0xe0114 ,
+ 0xe0115 ,
+ 0xe0116 ,
+ 0xe0117 ,
+ 0xe0118 ,
+ 0xe0119 ,
+ 0xe011a ,
+ 0xe011b ,
+ 0xe011c ,
+ 0xe011d ,
+ 0xe011e ,
+ 0xe011f ,
+ 0xe0120 ,
+ 0xe0121 ,
+ 0xe0122 ,
+ 0xe0123 ,
+ 0xe0124 ,
+ 0xe0125 ,
+ 0xe0126 ,
+ 0xe0127 ,
+ 0xe0128 ,
+ 0xe0129 ,
+ 0xe012a ,
+ 0xe012b ,
+ 0xe012c ,
+ 0xe012d ,
+ 0xe012e ,
+ 0xe012f ,
+ 0xe0130 ,
+ 0xe0131 ,
+ 0xe0132 ,
+ 0xe0133 ,
+ 0xe0134 ,
+ 0xe0135 ,
+ 0xe0136 ,
+ 0xe0137 ,
+ 0xe0138 ,
+ 0xe0139 ,
+ 0xe013a ,
+ 0xe013b ,
+ 0xe013c ,
+ 0xe013d ,
+ 0xe013e ,
+ 0xe013f ,
+ 0xe0140 ,
+ 0xe0141 ,
+ 0xe0142 ,
+ 0xe0143 ,
+ 0xe0144 ,
+ 0xe0145 ,
+ 0xe0146 ,
+ 0xe0147 ,
+ 0xe0148 ,
+ 0xe0149 ,
+ 0xe014a ,
+ 0xe014b ,
+ 0xe014c ,
+ 0xe014d ,
+ 0xe014e ,
+ 0xe014f ,
+ 0xe0150 ,
+ 0xe0151 ,
+ 0xe0152 ,
+ 0xe0153 ,
+ 0xe0154 ,
+ 0xe0155 ,
+ 0xe0156 ,
+ 0xe0157 ,
+ 0xe0158 ,
+ 0xe0159 ,
+ 0xe015a ,
+ 0xe015b ,
+ 0xe015c ,
+ 0xe015d ,
+ 0xe015e ,
+ 0xe015f ,
+ 0xe0160 ,
+ 0xe0161 ,
+ 0xe0162 ,
+ 0xe0163 ,
+ 0xe0164 ,
+ 0xe0165 ,
+ 0xe0166 ,
+ 0xe0167 ,
+ 0xe0168 ,
+ 0xe0169 ,
+ 0xe016a ,
+ 0xe016b ,
+ 0xe016c ,
+ 0xe016d ,
+ 0xe016e ,
+ 0xe016f ,
+ 0xe0170 ,
+ 0xe0171 ,
+ 0xe0172 ,
+ 0xe0173 ,
+ 0xe0174 ,
+ 0xe0175 ,
+ 0xe0176 ,
+ 0xe0177 ,
+ 0xe0178 ,
+ 0xe0179 ,
+ 0xe017a ,
+ 0xe017b ,
+ 0xe017c ,
+ 0xe017d ,
+ 0xe017e ,
+ 0xe017f ,
+ 0xe0180 ,
+ 0xe0181 ,
+ 0xe0182 ,
+ 0xe0183 ,
+ 0xe0184 ,
+ 0xe0185 ,
+ 0xe0186 ,
+ 0xe0187 ,
+ 0xe0188 ,
+ 0xe0189 ,
+ 0xe018a ,
+ 0xe018b ,
+ 0xe018c ,
+ 0xe018d ,
+ 0xe018e ,
+ 0xe018f ,
+ 0xe0190 ,
+ 0xe0191 ,
+ 0xe0192 ,
+ 0xe0193 ,
+ 0xe0194 ,
+ 0xe0195 ,
+ 0xe0196 ,
+ 0xe0197 ,
+ 0xe0198 ,
+ 0xe0199 ,
+ 0xe019a ,
+ 0xe019b ,
+ 0xe019c ,
+ 0xe019d ,
+ 0xe019e ,
+ 0xe019f ,
+ 0xe01a0 ,
+ 0xe01a1 ,
+ 0xe01a2 ,
+ 0xe01a3 ,
+ 0xe01a4 ,
+ 0xe01a5 ,
+ 0xe01a6 ,
+ 0xe01a7 ,
+ 0xe01a8 ,
+ 0xe01a9 ,
+ 0xe01aa ,
+ 0xe01ab ,
+ 0xe01ac ,
+ 0xe01ad ,
+ 0xe01ae ,
+ 0xe01af ,
+ 0xe01b0 ,
+ 0xe01b1 ,
+ 0xe01b2 ,
+ 0xe01b3 ,
+ 0xe01b4 ,
+ 0xe01b5 ,
+ 0xe01b6 ,
+ 0xe01b7 ,
+ 0xe01b8 ,
+ 0xe01b9 ,
+ 0xe01ba ,
+ 0xe01bb ,
+ 0xe01bc ,
+ 0xe01bd ,
+ 0xe01be ,
+ 0xe01bf ,
+ 0xe01c0 ,
+ 0xe01c1 ,
+ 0xe01c2 ,
+ 0xe01c3 ,
+ 0xe01c4 ,
+ 0xe01c5 ,
+ 0xe01c6 ,
+ 0xe01c7 ,
+ 0xe01c8 ,
+ 0xe01c9 ,
+ 0xe01ca ,
+ 0xe01cb ,
+ 0xe01cc ,
+ 0xe01cd ,
+ 0xe01ce ,
+ 0xe01cf ,
+ 0xe01d0 ,
+ 0xe01d1 ,
+ 0xe01d2 ,
+ 0xe01d3 ,
+ 0xe01d4 ,
+ 0xe01d5 ,
+ 0xe01d6 ,
+ 0xe01d7 ,
+ 0xe01d8 ,
+ 0xe01d9 ,
+ 0xe01da ,
+ 0xe01db ,
+ 0xe01dc ,
+ 0xe01dd ,
+ 0xe01de ,
+ 0xe01df ,
+ 0xe01e0 ,
+ 0xe01e1 ,
+ 0xe01e2 ,
+ 0xe01e3 ,
+ 0xe01e4 ,
+ 0xe01e5 ,
+ 0xe01e6 ,
+ 0xe01e7 ,
+ 0xe01e8 ,
+ 0xe01e9 ,
+ 0xe01ea ,
+ 0xe01eb ,
+ 0xe01ec ,
+ 0xe01ed ,
+ 0xe01ee ,
+ 0xe01ef ,
+ 0xe01f0 ,
+ 0xe01f1 ,
+ 0xe01f2 ,
+ 0xe01f3 ,
+ 0xe01f4 ,
+ 0xe01f5 ,
+ 0xe01f6 ,
+ 0xe01f7 ,
+ 0xe01f8 ,
+ 0xe01f9 ,
+ 0xe01fa ,
+ 0xe01fb ,
+ 0xe01fc ,
+ 0xe01fd ,
+ 0xe01fe ,
+ 0xe01ff ,
+ 0xe0200 ,
+ 0xe0201 ,
+ 0xe0202 ,
+ 0xe0203 ,
+ 0xe0204 ,
+ 0xe0205 ,
+ 0xe0206 ,
+ 0xe0207 ,
+ 0xe0208 ,
+ 0xe0209 ,
+ 0xe020a ,
+ 0xe020b ,
+ 0xe020c ,
+ 0xe020d ,
+ 0xe020e ,
+ 0xe020f ,
+ 0xe0210 ,
+ 0xe0211 ,
+ 0xe0212 ,
+ 0xe0213 ,
+ 0xe0214 ,
+ 0xe0215 ,
+ 0xe0216 ,
+ 0xe0217 ,
+ 0xe0218 ,
+ 0xe0219 ,
+ 0xe021a ,
+ 0xe021b ,
+ 0xe021c ,
+ 0xe021d ,
+ 0xe021e ,
+ 0xe021f ,
+ 0xe0220 ,
+ 0xe0221 ,
+ 0xe0222 ,
+ 0xe0223 ,
+ 0xe0224 ,
+ 0xe0225 ,
+ 0xe0226 ,
+ 0xe0227 ,
+ 0xe0228 ,
+ 0xe0229 ,
+ 0xe022a ,
+ 0xe022b ,
+ 0xe022c ,
+ 0xe022d ,
+ 0xe022e ,
+ 0xe022f ,
+ 0xe0230 ,
+ 0xe0231 ,
+ 0xe0232 ,
+ 0xe0233 ,
+ 0xe0234 ,
+ 0xe0235 ,
+ 0xe0236 ,
+ 0xe0237 ,
+ 0xe0238 ,
+ 0xe0239 ,
+ 0xe023a ,
+ 0xe023b ,
+ 0xe023c ,
+ 0xe023d ,
+ 0xe023e ,
+ 0xe023f ,
+ 0xe0240 ,
+ 0xe0241 ,
+ 0xe0242 ,
+ 0xe0243 ,
+ 0xe0244 ,
+ 0xe0245 ,
+ 0xe0246 ,
+ 0xe0247 ,
+ 0xe0248 ,
+ 0xe0249 ,
+ 0xe024a ,
+ 0xe024b ,
+ 0xe024c ,
+ 0xe024d ,
+ 0xe024e ,
+ 0xe024f ,
+ 0xe0250 ,
+ 0xe0251 ,
+ 0xe0252 ,
+ 0xe0253 ,
+ 0xe0254 ,
+ 0xe0255 ,
+ 0xe0256 ,
+ 0xe0257 ,
+ 0xe0258 ,
+ 0xe0259 ,
+ 0xe025a ,
+ 0xe025b ,
+ 0xe025c ,
+ 0xe025d ,
+ 0xe025e ,
+ 0xe025f ,
+ 0xe0260 ,
+ 0xe0261 ,
+ 0xe0262 ,
+ 0xe0263 ,
+ 0xe0264 ,
+ 0xe0265 ,
+ 0xe0266 ,
+ 0xe0267 ,
+ 0xe0268 ,
+ 0xe0269 ,
+ 0xe026a ,
+ 0xe026b ,
+ 0xe026c ,
+ 0xe026d ,
+ 0xe026e ,
+ 0xe026f ,
+ 0xe0270 ,
+ 0xe0271 ,
+ 0xe0272 ,
+ 0xe0273 ,
+ 0xe0274 ,
+ 0xe0275 ,
+ 0xe0276 ,
+ 0xe0277 ,
+ 0xe0278 ,
+ 0xe0279 ,
+ 0xe027a ,
+ 0xe027b ,
+ 0xe027c ,
+ 0xe027d ,
+ 0xe027e ,
+ 0xe027f ,
+ 0xe0280 ,
+ 0xe0281 ,
+ 0xe0282 ,
+ 0xe0283 ,
+ 0xe0284 ,
+ 0xe0285 ,
+ 0xe0286 ,
+ 0xe0287 ,
+ 0xe0288 ,
+ 0xe0289 ,
+ 0xe028a ,
+ 0xe028b ,
+ 0xe028c ,
+ 0xe028d ,
+ 0xe028e ,
+ 0xe028f ,
+ 0xe0290 ,
+ 0xe0291 ,
+ 0xe0292 ,
+ 0xe0293 ,
+ 0xe0294 ,
+ 0xe0295 ,
+ 0xe0296 ,
+ 0xe0297 ,
+ 0xe0298 ,
+ 0xe0299 ,
+ 0xe029a ,
+ 0xe029b ,
+ 0xe029c ,
+ 0xe029d ,
+ 0xe029e ,
+ 0xe029f ,
+ 0xe02a0 ,
+ 0xe02a1 ,
+ 0xe02a2 ,
+ 0xe02a3 ,
+ 0xe02a4 ,
+ 0xe02a5 ,
+ 0xe02a6 ,
+ 0xe02a7 ,
+ 0xe02a8 ,
+ 0xe02a9 ,
+ 0xe02aa ,
+ 0xe02ab ,
+ 0xe02ac ,
+ 0xe02ad ,
+ 0xe02ae ,
+ 0xe02af ,
+ 0xe02b0 ,
+ 0xe02b1 ,
+ 0xe02b2 ,
+ 0xe02b3 ,
+ 0xe02b4 ,
+ 0xe02b5 ,
+ 0xe02b6 ,
+ 0xe02b7 ,
+ 0xe02b8 ,
+ 0xe02b9 ,
+ 0xe02ba ,
+ 0xe02bb ,
+ 0xe02bc ,
+ 0xe02bd ,
+ 0xe02be ,
+ 0xe02bf ,
+ 0xe02c0 ,
+ 0xe02c1 ,
+ 0xe02c2 ,
+ 0xe02c3 ,
+ 0xe02c4 ,
+ 0xe02c5 ,
+ 0xe02c6 ,
+ 0xe02c7 ,
+ 0xe02c8 ,
+ 0xe02c9 ,
+ 0xe02ca ,
+ 0xe02cb ,
+ 0xe02cc ,
+ 0xe02cd ,
+ 0xe02ce ,
+ 0xe02cf ,
+ 0xe02d0 ,
+ 0xe02d1 ,
+ 0xe02d2 ,
+ 0xe02d3 ,
+ 0xe02d4 ,
+ 0xe02d5 ,
+ 0xe02d6 ,
+ 0xe02d7 ,
+ 0xe02d8 ,
+ 0xe02d9 ,
+ 0xe02da ,
+ 0xe02db ,
+ 0xe02dc ,
+ 0xe02dd ,
+ 0xe02de ,
+ 0xe02df ,
+ 0xe02e0 ,
+ 0xe02e1 ,
+ 0xe02e2 ,
+ 0xe02e3 ,
+ 0xe02e4 ,
+ 0xe02e5 ,
+ 0xe02e6 ,
+ 0xe02e7 ,
+ 0xe02e8 ,
+ 0xe02e9 ,
+ 0xe02ea ,
+ 0xe02eb ,
+ 0xe02ec ,
+ 0xe02ed ,
+ 0xe02ee ,
+ 0xe02ef ,
+ 0xe02f0 ,
+ 0xe02f1 ,
+ 0xe02f2 ,
+ 0xe02f3 ,
+ 0xe02f4 ,
+ 0xe02f5 ,
+ 0xe02f6 ,
+ 0xe02f7 ,
+ 0xe02f8 ,
+ 0xe02f9 ,
+ 0xe02fa ,
+ 0xe02fb ,
+ 0xe02fc ,
+ 0xe02fd ,
+ 0xe02fe ,
+ 0xe02ff ,
+ 0xe0300 ,
+ 0xe0301 ,
+ 0xe0302 ,
+ 0xe0303 ,
+ 0xe0304 ,
+ 0xe0305 ,
+ 0xe0306 ,
+ 0xe0307 ,
+ 0xe0308 ,
+ 0xe0309 ,
+ 0xe030a ,
+ 0xe030b ,
+ 0xe030c ,
+ 0xe030d ,
+ 0xe030e ,
+ 0xe030f ,
+ 0xe0310 ,
+ 0xe0311 ,
+ 0xe0312 ,
+ 0xe0313 ,
+ 0xe0314 ,
+ 0xe0315 ,
+ 0xe0316 ,
+ 0xe0317 ,
+ 0xe0318 ,
+ 0xe0319 ,
+ 0xe031a ,
+ 0xe031b ,
+ 0xe031c ,
+ 0xe031d ,
+ 0xe031e ,
+ 0xe031f ,
+ 0xe0320 ,
+ 0xe0321 ,
+ 0xe0322 ,
+ 0xe0323 ,
+ 0xe0324 ,
+ 0xe0325 ,
+ 0xe0326 ,
+ 0xe0327 ,
+ 0xe0328 ,
+ 0xe0329 ,
+ 0xe032a ,
+ 0xe032b ,
+ 0xe032c ,
+ 0xe032d ,
+ 0xe032e ,
+ 0xe032f ,
+ 0xe0330 ,
+ 0xe0331 ,
+ 0xe0332 ,
+ 0xe0333 ,
+ 0xe0334 ,
+ 0xe0335 ,
+ 0xe0336 ,
+ 0xe0337 ,
+ 0xe0338 ,
+ 0xe0339 ,
+ 0xe033a ,
+ 0xe033b ,
+ 0xe033c ,
+ 0xe033d ,
+ 0xe033e ,
+ 0xe033f ,
+ 0xe0340 ,
+ 0xe0341 ,
+ 0xe0342 ,
+ 0xe0343 ,
+ 0xe0344 ,
+ 0xe0345 ,
+ 0xe0346 ,
+ 0xe0347 ,
+ 0xe0348 ,
+ 0xe0349 ,
+ 0xe034a ,
+ 0xe034b ,
+ 0xe034c ,
+ 0xe034d ,
+ 0xe034e ,
+ 0xe034f ,
+ 0xe0350 ,
+ 0xe0351 ,
+ 0xe0352 ,
+ 0xe0353 ,
+ 0xe0354 ,
+ 0xe0355 ,
+ 0xe0356 ,
+ 0xe0357 ,
+ 0xe0358 ,
+ 0xe0359 ,
+ 0xe035a ,
+ 0xe035b ,
+ 0xe035c ,
+ 0xe035d ,
+ 0xe035e ,
+ 0xe035f ,
+ 0xe0360 ,
+ 0xe0361 ,
+ 0xe0362 ,
+ 0xe0363 ,
+ 0xe0364 ,
+ 0xe0365 ,
+ 0xe0366 ,
+ 0xe0367 ,
+ 0xe0368 ,
+ 0xe0369 ,
+ 0xe036a ,
+ 0xe036b ,
+ 0xe036c ,
+ 0xe036d ,
+ 0xe036e ,
+ 0xe036f ,
+ 0xe0370 ,
+ 0xe0371 ,
+ 0xe0372 ,
+ 0xe0373 ,
+ 0xe0374 ,
+ 0xe0375 ,
+ 0xe0376 ,
+ 0xe0377 ,
+ 0xe0378 ,
+ 0xe0379 ,
+ 0xe037a ,
+ 0xe037b ,
+ 0xe037c ,
+ 0xe037d ,
+ 0xe037e ,
+ 0xe037f ,
+ 0xe0380 ,
+ 0xe0381 ,
+ 0xe0382 ,
+ 0xe0383 ,
+ 0xe0384 ,
+ 0xe0385 ,
+ 0xe0386 ,
+ 0xe0387 ,
+ 0xe0388 ,
+ 0xe0389 ,
+ 0xe038a ,
+ 0xe038b ,
+ 0xe038c ,
+ 0xe038d ,
+ 0xe038e ,
+ 0xe038f ,
+ 0xe0390 ,
+ 0xe0391 ,
+ 0xe0392 ,
+ 0xe0393 ,
+ 0xe0394 ,
+ 0xe0395 ,
+ 0xe0396 ,
+ 0xe0397 ,
+ 0xe0398 ,
+ 0xe0399 ,
+ 0xe039a ,
+ 0xe039b ,
+ 0xe039c ,
+ 0xe039d ,
+ 0xe039e ,
+ 0xe039f ,
+ 0xe03a0 ,
+ 0xe03a1 ,
+ 0xe03a2 ,
+ 0xe03a3 ,
+ 0xe03a4 ,
+ 0xe03a5 ,
+ 0xe03a6 ,
+ 0xe03a7 ,
+ 0xe03a8 ,
+ 0xe03a9 ,
+ 0xe03aa ,
+ 0xe03ab ,
+ 0xe03ac ,
+ 0xe03ad ,
+ 0xe03ae ,
+ 0xe03af ,
+ 0xe03b0 ,
+ 0xe03b1 ,
+ 0xe03b2 ,
+ 0xe03b3 ,
+ 0xe03b4 ,
+ 0xe03b5 ,
+ 0xe03b6 ,
+ 0xe03b7 ,
+ 0xe03b8 ,
+ 0xe03b9 ,
+ 0xe03ba ,
+ 0xe03bb ,
+ 0xe03bc ,
+ 0xe03bd ,
+ 0xe03be ,
+ 0xe03bf ,
+ 0xe03c0 ,
+ 0xe03c1 ,
+ 0xe03c2 ,
+ 0xe03c3 ,
+ 0xe03c4 ,
+ 0xe03c5 ,
+ 0xe03c6 ,
+ 0xe03c7 ,
+ 0xe03c8 ,
+ 0xe03c9 ,
+ 0xe03ca ,
+ 0xe03cb ,
+ 0xe03cc ,
+ 0xe03cd ,
+ 0xe03ce ,
+ 0xe03cf ,
+ 0xe03d0 ,
+ 0xe03d1 ,
+ 0xe03d2 ,
+ 0xe03d3 ,
+ 0xe03d4 ,
+ 0xe03d5 ,
+ 0xe03d6 ,
+ 0xe03d7 ,
+ 0xe03d8 ,
+ 0xe03d9 ,
+ 0xe03da ,
+ 0xe03db ,
+ 0xe03dc ,
+ 0xe03dd ,
+ 0xe03de ,
+ 0xe03df ,
+ 0xe03e0 ,
+ 0xe03e1 ,
+ 0xe03e2 ,
+ 0xe03e3 ,
+ 0xe03e4 ,
+ 0xe03e5 ,
+ 0xe03e6 ,
+ 0xe03e7 ,
+ 0xe03e8 ,
+ 0xe03e9 ,
+ 0xe03ea ,
+ 0xe03eb ,
+ 0xe03ec ,
+ 0xe03ed ,
+ 0xe03ee ,
+ 0xe03ef ,
+ 0xe03f0 ,
+ 0xe03f1 ,
+ 0xe03f2 ,
+ 0xe03f3 ,
+ 0xe03f4 ,
+ 0xe03f5 ,
+ 0xe03f6 ,
+ 0xe03f7 ,
+ 0xe03f8 ,
+ 0xe03f9 ,
+ 0xe03fa ,
+ 0xe03fb ,
+ 0xe03fc ,
+ 0xe03fd ,
+ 0xe03fe ,
+ 0xe03ff ,
+ 0xe0400 ,
+ 0xe0401 ,
+ 0xe0402 ,
+ 0xe0403 ,
+ 0xe0404 ,
+ 0xe0405 ,
+ 0xe0406 ,
+ 0xe0407 ,
+ 0xe0408 ,
+ 0xe0409 ,
+ 0xe040a ,
+ 0xe040b ,
+ 0xe040c ,
+ 0xe040d ,
+ 0xe040e ,
+ 0xe040f ,
+ 0xe0410 ,
+ 0xe0411 ,
+ 0xe0412 ,
+ 0xe0413 ,
+ 0xe0414 ,
+ 0xe0415 ,
+ 0xe0416 ,
+ 0xe0417 ,
+ 0xe0418 ,
+ 0xe0419 ,
+ 0xe041a ,
+ 0xe041b ,
+ 0xe041c ,
+ 0xe041d ,
+ 0xe041e ,
+ 0xe041f ,
+ 0xe0420 ,
+ 0xe0421 ,
+ 0xe0422 ,
+ 0xe0423 ,
+ 0xe0424 ,
+ 0xe0425 ,
+ 0xe0426 ,
+ 0xe0427 ,
+ 0xe0428 ,
+ 0xe0429 ,
+ 0xe042a ,
+ 0xe042b ,
+ 0xe042c ,
+ 0xe042d ,
+ 0xe042e ,
+ 0xe042f ,
+ 0xe0430 ,
+ 0xe0431 ,
+ 0xe0432 ,
+ 0xe0433 ,
+ 0xe0434 ,
+ 0xe0435 ,
+ 0xe0436 ,
+ 0xe0437 ,
+ 0xe0438 ,
+ 0xe0439 ,
+ 0xe043a ,
+ 0xe043b ,
+ 0xe043c ,
+ 0xe043d ,
+ 0xe043e ,
+ 0xe043f ,
+ 0xe0440 ,
+ 0xe0441 ,
+ 0xe0442 ,
+ 0xe0443 ,
+ 0xe0444 ,
+ 0xe0445 ,
+ 0xe0446 ,
+ 0xe0447 ,
+ 0xe0448 ,
+ 0xe0449 ,
+ 0xe044a ,
+ 0xe044b ,
+ 0xe044c ,
+ 0xe044d ,
+ 0xe044e ,
+ 0xe044f ,
+ 0xe0450 ,
+ 0xe0451 ,
+ 0xe0452 ,
+ 0xe0453 ,
+ 0xe0454 ,
+ 0xe0455 ,
+ 0xe0456 ,
+ 0xe0457 ,
+ 0xe0458 ,
+ 0xe0459 ,
+ 0xe045a ,
+ 0xe045b ,
+ 0xe045c ,
+ 0xe045d ,
+ 0xe045e ,
+ 0xe045f ,
+ 0xe0460 ,
+ 0xe0461 ,
+ 0xe0462 ,
+ 0xe0463 ,
+ 0xe0464 ,
+ 0xe0465 ,
+ 0xe0466 ,
+ 0xe0467 ,
+ 0xe0468 ,
+ 0xe0469 ,
+ 0xe046a ,
+ 0xe046b ,
+ 0xe046c ,
+ 0xe046d ,
+ 0xe046e ,
+ 0xe046f ,
+ 0xe0470 ,
+ 0xe0471 ,
+ 0xe0472 ,
+ 0xe0473 ,
+ 0xe0474 ,
+ 0xe0475 ,
+ 0xe0476 ,
+ 0xe0477 ,
+ 0xe0478 ,
+ 0xe0479 ,
+ 0xe047a ,
+ 0xe047b ,
+ 0xe047c ,
+ 0xe047d ,
+ 0xe047e ,
+ 0xe047f ,
+ 0xe0480 ,
+ 0xe0481 ,
+ 0xe0482 ,
+ 0xe0483 ,
+ 0xe0484 ,
+ 0xe0485 ,
+ 0xe0486 ,
+ 0xe0487 ,
+ 0xe0488 ,
+ 0xe0489 ,
+ 0xe048a ,
+ 0xe048b ,
+ 0xe048c ,
+ 0xe048d ,
+ 0xe048e ,
+ 0xe048f ,
+ 0xe0490 ,
+ 0xe0491 ,
+ 0xe0492 ,
+ 0xe0493 ,
+ 0xe0494 ,
+ 0xe0495 ,
+ 0xe0496 ,
+ 0xe0497 ,
+ 0xe0498 ,
+ 0xe0499 ,
+ 0xe049a ,
+ 0xe049b ,
+ 0xe049c ,
+ 0xe049d ,
+ 0xe049e ,
+ 0xe049f ,
+ 0xe04a0 ,
+ 0xe04a1 ,
+ 0xe04a2 ,
+ 0xe04a3 ,
+ 0xe04a4 ,
+ 0xe04a5 ,
+ 0xe04a6 ,
+ 0xe04a7 ,
+ 0xe04a8 ,
+ 0xe04a9 ,
+ 0xe04aa ,
+ 0xe04ab ,
+ 0xe04ac ,
+ 0xe04ad ,
+ 0xe04ae ,
+ 0xe04af ,
+ 0xe04b0 ,
+ 0xe04b1 ,
+ 0xe04b2 ,
+ 0xe04b3 ,
+ 0xe04b4 ,
+ 0xe04b5 ,
+ 0xe04b6 ,
+ 0xe04b7 ,
+ 0xe04b8 ,
+ 0xe04b9 ,
+ 0xe04ba ,
+ 0xe04bb ,
+ 0xe04bc ,
+ 0xe04bd ,
+ 0xe04be ,
+ 0xe04bf ,
+ 0xe04c0 ,
+ 0xe04c1 ,
+ 0xe04c2 ,
+ 0xe04c3 ,
+ 0xe04c4 ,
+ 0xe04c5 ,
+ 0xe04c6 ,
+ 0xe04c7 ,
+ 0xe04c8 ,
+ 0xe04c9 ,
+ 0xe04ca ,
+ 0xe04cb ,
+ 0xe04cc ,
+ 0xe04cd ,
+ 0xe04ce ,
+ 0xe04cf ,
+ 0xe04d0 ,
+ 0xe04d1 ,
+ 0xe04d2 ,
+ 0xe04d3 ,
+ 0xe04d4 ,
+ 0xe04d5 ,
+ 0xe04d6 ,
+ 0xe04d7 ,
+ 0xe04d8 ,
+ 0xe04d9 ,
+ 0xe04da ,
+ 0xe04db ,
+ 0xe04dc ,
+ 0xe04dd ,
+ 0xe04de ,
+ 0xe04df ,
+ 0xe04e0 ,
+ 0xe04e1 ,
+ 0xe04e2 ,
+ 0xe04e3 ,
+ 0xe04e4 ,
+ 0xe04e5 ,
+ 0xe04e6 ,
+ 0xe04e7 ,
+ 0xe04e8 ,
+ 0xe04e9 ,
+ 0xe04ea ,
+ 0xe04eb ,
+ 0xe04ec ,
+ 0xe04ed ,
+ 0xe04ee ,
+ 0xe04ef ,
+ 0xe04f0 ,
+ 0xe04f1 ,
+ 0xe04f2 ,
+ 0xe04f3 ,
+ 0xe04f4 ,
+ 0xe04f5 ,
+ 0xe04f6 ,
+ 0xe04f7 ,
+ 0xe04f8 ,
+ 0xe04f9 ,
+ 0xe04fa ,
+ 0xe04fb ,
+ 0xe04fc ,
+ 0xe04fd ,
+ 0xe04fe ,
+ 0xe04ff ,
+ 0xe0500 ,
+ 0xe0501 ,
+ 0xe0502 ,
+ 0xe0503 ,
+ 0xe0504 ,
+ 0xe0505 ,
+ 0xe0506 ,
+ 0xe0507 ,
+ 0xe0508 ,
+ 0xe0509 ,
+ 0xe050a ,
+ 0xe050b ,
+ 0xe050c ,
+ 0xe050d ,
+ 0xe050e ,
+ 0xe050f ,
+ 0xe0510 ,
+ 0xe0511 ,
+ 0xe0512 ,
+ 0xe0513 ,
+ 0xe0514 ,
+ 0xe0515 ,
+ 0xe0516 ,
+ 0xe0517 ,
+ 0xe0518 ,
+ 0xe0519 ,
+ 0xe051a ,
+ 0xe051b ,
+ 0xe051c ,
+ 0xe051d ,
+ 0xe051e ,
+ 0xe051f ,
+ 0xe0520 ,
+ 0xe0521 ,
+ 0xe0522 ,
+ 0xe0523 ,
+ 0xe0524 ,
+ 0xe0525 ,
+ 0xe0526 ,
+ 0xe0527 ,
+ 0xe0528 ,
+ 0xe0529 ,
+ 0xe052a ,
+ 0xe052b ,
+ 0xe052c ,
+ 0xe052d ,
+ 0xe052e ,
+ 0xe052f ,
+ 0xe0530 ,
+ 0xe0531 ,
+ 0xe0532 ,
+ 0xe0533 ,
+ 0xe0534 ,
+ 0xe0535 ,
+ 0xe0536 ,
+ 0xe0537 ,
+ 0xe0538 ,
+ 0xe0539 ,
+ 0xe053a ,
+ 0xe053b ,
+ 0xe053c ,
+ 0xe053d ,
+ 0xe053e ,
+ 0xe053f ,
+ 0xe0540 ,
+ 0xe0541 ,
+ 0xe0542 ,
+ 0xe0543 ,
+ 0xe0544 ,
+ 0xe0545 ,
+ 0xe0546 ,
+ 0xe0547 ,
+ 0xe0548 ,
+ 0xe0549 ,
+ 0xe054a ,
+ 0xe054b ,
+ 0xe054c ,
+ 0xe054d ,
+ 0xe054e ,
+ 0xe054f ,
+ 0xe0550 ,
+ 0xe0551 ,
+ 0xe0552 ,
+ 0xe0553 ,
+ 0xe0554 ,
+ 0xe0555 ,
+ 0xe0556 ,
+ 0xe0557 ,
+ 0xe0558 ,
+ 0xe0559 ,
+ 0xe055a ,
+ 0xe055b ,
+ 0xe055c ,
+ 0xe055d ,
+ 0xe055e ,
+ 0xe055f ,
+ 0xe0560 ,
+ 0xe0561 ,
+ 0xe0562 ,
+ 0xe0563 ,
+ 0xe0564 ,
+ 0xe0565 ,
+ 0xe0566 ,
+ 0xe0567 ,
+ 0xe0568 ,
+ 0xe0569 ,
+ 0xe056a ,
+ 0xe056b ,
+ 0xe056c ,
+ 0xe056d ,
+ 0xe056e ,
+ 0xe056f ,
+ 0xe0570 ,
+ 0xe0571 ,
+ 0xe0572 ,
+ 0xe0573 ,
+ 0xe0574 ,
+ 0xe0575 ,
+ 0xe0576 ,
+ 0xe0577 ,
+ 0xe0578 ,
+ 0xe0579 ,
+ 0xe057a ,
+ 0xe057b ,
+ 0xe057c ,
+ 0xe057d ,
+ 0xe057e ,
+ 0xe057f ,
+ 0xe0580 ,
+ 0xe0581 ,
+ 0xe0582 ,
+ 0xe0583 ,
+ 0xe0584 ,
+ 0xe0585 ,
+ 0xe0586 ,
+ 0xe0587 ,
+ 0xe0588 ,
+ 0xe0589 ,
+ 0xe058a ,
+ 0xe058b ,
+ 0xe058c ,
+ 0xe058d ,
+ 0xe058e ,
+ 0xe058f ,
+ 0xe0590 ,
+ 0xe0591 ,
+ 0xe0592 ,
+ 0xe0593 ,
+ 0xe0594 ,
+ 0xe0595 ,
+ 0xe0596 ,
+ 0xe0597 ,
+ 0xe0598 ,
+ 0xe0599 ,
+ 0xe059a ,
+ 0xe059b ,
+ 0xe059c ,
+ 0xe059d ,
+ 0xe059e ,
+ 0xe059f ,
+ 0xe05a0 ,
+ 0xe05a1 ,
+ 0xe05a2 ,
+ 0xe05a3 ,
+ 0xe05a4 ,
+ 0xe05a5 ,
+ 0xe05a6 ,
+ 0xe05a7 ,
+ 0xe05a8 ,
+ 0xe05a9 ,
+ 0xe05aa ,
+ 0xe05ab ,
+ 0xe05ac ,
+ 0xe05ad ,
+ 0xe05ae ,
+ 0xe05af ,
+ 0xe05b0 ,
+ 0xe05b1 ,
+ 0xe05b2 ,
+ 0xe05b3 ,
+ 0xe05b4 ,
+ 0xe05b5 ,
+ 0xe05b6 ,
+ 0xe05b7 ,
+ 0xe05b8 ,
+ 0xe05b9 ,
+ 0xe05ba ,
+ 0xe05bb ,
+ 0xe05bc ,
+ 0xe05bd ,
+ 0xe05be ,
+ 0xe05bf ,
+ 0xe05c0 ,
+ 0xe05c1 ,
+ 0xe05c2 ,
+ 0xe05c3 ,
+ 0xe05c4 ,
+ 0xe05c5 ,
+ 0xe05c6 ,
+ 0xe05c7 ,
+ 0xe05c8 ,
+ 0xe05c9 ,
+ 0xe05ca ,
+ 0xe05cb ,
+ 0xe05cc ,
+ 0xe05cd ,
+ 0xe05ce ,
+ 0xe05cf ,
+ 0xe05d0 ,
+ 0xe05d1 ,
+ 0xe05d2 ,
+ 0xe05d3 ,
+ 0xe05d4 ,
+ 0xe05d5 ,
+ 0xe05d6 ,
+ 0xe05d7 ,
+ 0xe05d8 ,
+ 0xe05d9 ,
+ 0xe05da ,
+ 0xe05db ,
+ 0xe05dc ,
+ 0xe05dd ,
+ 0xe05de ,
+ 0xe05df ,
+ 0xe05e0 ,
+ 0xe05e1 ,
+ 0xe05e2 ,
+ 0xe05e3 ,
+ 0xe05e4 ,
+ 0xe05e5 ,
+ 0xe05e6 ,
+ 0xe05e7 ,
+ 0xe05e8 ,
+ 0xe05e9 ,
+ 0xe05ea ,
+ 0xe05eb ,
+ 0xe05ec ,
+ 0xe05ed ,
+ 0xe05ee ,
+ 0xe05ef ,
+ 0xe05f0 ,
+ 0xe05f1 ,
+ 0xe05f2 ,
+ 0xe05f3 ,
+ 0xe05f4 ,
+ 0xe05f5 ,
+ 0xe05f6 ,
+ 0xe05f7 ,
+ 0xe05f8 ,
+ 0xe05f9 ,
+ 0xe05fa ,
+ 0xe05fb ,
+ 0xe05fc ,
+ 0xe05fd ,
+ 0xe05fe ,
+ 0xe05ff ,
+ 0xe0600 ,
+ 0xe0601 ,
+ 0xe0602 ,
+ 0xe0603 ,
+ 0xe0604 ,
+ 0xe0605 ,
+ 0xe0606 ,
+ 0xe0607 ,
+ 0xe0608 ,
+ 0xe0609 ,
+ 0xe060a ,
+ 0xe060b ,
+ 0xe060c ,
+ 0xe060d ,
+ 0xe060e ,
+ 0xe060f ,
+ 0xe0610 ,
+ 0xe0611 ,
+ 0xe0612 ,
+ 0xe0613 ,
+ 0xe0614 ,
+ 0xe0615 ,
+ 0xe0616 ,
+ 0xe0617 ,
+ 0xe0618 ,
+ 0xe0619 ,
+ 0xe061a ,
+ 0xe061b ,
+ 0xe061c ,
+ 0xe061d ,
+ 0xe061e ,
+ 0xe061f ,
+ 0xe0620 ,
+ 0xe0621 ,
+ 0xe0622 ,
+ 0xe0623 ,
+ 0xe0624 ,
+ 0xe0625 ,
+ 0xe0626 ,
+ 0xe0627 ,
+ 0xe0628 ,
+ 0xe0629 ,
+ 0xe062a ,
+ 0xe062b ,
+ 0xe062c ,
+ 0xe062d ,
+ 0xe062e ,
+ 0xe062f ,
+ 0xe0630 ,
+ 0xe0631 ,
+ 0xe0632 ,
+ 0xe0633 ,
+ 0xe0634 ,
+ 0xe0635 ,
+ 0xe0636 ,
+ 0xe0637 ,
+ 0xe0638 ,
+ 0xe0639 ,
+ 0xe063a ,
+ 0xe063b ,
+ 0xe063c ,
+ 0xe063d ,
+ 0xe063e ,
+ 0xe063f ,
+ 0xe0640 ,
+ 0xe0641 ,
+ 0xe0642 ,
+ 0xe0643 ,
+ 0xe0644 ,
+ 0xe0645 ,
+ 0xe0646 ,
+ 0xe0647 ,
+ 0xe0648 ,
+ 0xe0649 ,
+ 0xe064a ,
+ 0xe064b ,
+ 0xe064c ,
+ 0xe064d ,
+ 0xe064e ,
+ 0xe064f ,
+ 0xe0650 ,
+ 0xe0651 ,
+ 0xe0652 ,
+ 0xe0653 ,
+ 0xe0654 ,
+ 0xe0655 ,
+ 0xe0656 ,
+ 0xe0657 ,
+ 0xe0658 ,
+ 0xe0659 ,
+ 0xe065a ,
+ 0xe065b ,
+ 0xe065c ,
+ 0xe065d ,
+ 0xe065e ,
+ 0xe065f ,
+ 0xe0660 ,
+ 0xe0661 ,
+ 0xe0662 ,
+ 0xe0663 ,
+ 0xe0664 ,
+ 0xe0665 ,
+ 0xe0666 ,
+ 0xe0667 ,
+ 0xe0668 ,
+ 0xe0669 ,
+ 0xe066a ,
+ 0xe066b ,
+ 0xe066c ,
+ 0xe066d ,
+ 0xe066e ,
+ 0xe066f ,
+ 0xe0670 ,
+ 0xe0671 ,
+ 0xe0672 ,
+ 0xe0673 ,
+ 0xe0674 ,
+ 0xe0675 ,
+ 0xe0676 ,
+ 0xe0677 ,
+ 0xe0678 ,
+ 0xe0679 ,
+ 0xe067a ,
+ 0xe067b ,
+ 0xe067c ,
+ 0xe067d ,
+ 0xe067e ,
+ 0xe067f ,
+ 0xe0680 ,
+ 0xe0681 ,
+ 0xe0682 ,
+ 0xe0683 ,
+ 0xe0684 ,
+ 0xe0685 ,
+ 0xe0686 ,
+ 0xe0687 ,
+ 0xe0688 ,
+ 0xe0689 ,
+ 0xe068a ,
+ 0xe068b ,
+ 0xe068c ,
+ 0xe068d ,
+ 0xe068e ,
+ 0xe068f ,
+ 0xe0690 ,
+ 0xe0691 ,
+ 0xe0692 ,
+ 0xe0693 ,
+ 0xe0694 ,
+ 0xe0695 ,
+ 0xe0696 ,
+ 0xe0697 ,
+ 0xe0698 ,
+ 0xe0699 ,
+ 0xe069a ,
+ 0xe069b ,
+ 0xe069c ,
+ 0xe069d ,
+ 0xe069e ,
+ 0xe069f ,
+ 0xe06a0 ,
+ 0xe06a1 ,
+ 0xe06a2 ,
+ 0xe06a3 ,
+ 0xe06a4 ,
+ 0xe06a5 ,
+ 0xe06a6 ,
+ 0xe06a7 ,
+ 0xe06a8 ,
+ 0xe06a9 ,
+ 0xe06aa ,
+ 0xe06ab ,
+ 0xe06ac ,
+ 0xe06ad ,
+ 0xe06ae ,
+ 0xe06af ,
+ 0xe06b0 ,
+ 0xe06b1 ,
+ 0xe06b2 ,
+ 0xe06b3 ,
+ 0xe06b4 ,
+ 0xe06b5 ,
+ 0xe06b6 ,
+ 0xe06b7 ,
+ 0xe06b8 ,
+ 0xe06b9 ,
+ 0xe06ba ,
+ 0xe06bb ,
+ 0xe06bc ,
+ 0xe06bd ,
+ 0xe06be ,
+ 0xe06bf ,
+ 0xe06c0 ,
+ 0xe06c1 ,
+ 0xe06c2 ,
+ 0xe06c3 ,
+ 0xe06c4 ,
+ 0xe06c5 ,
+ 0xe06c6 ,
+ 0xe06c7 ,
+ 0xe06c8 ,
+ 0xe06c9 ,
+ 0xe06ca ,
+ 0xe06cb ,
+ 0xe06cc ,
+ 0xe06cd ,
+ 0xe06ce ,
+ 0xe06cf ,
+ 0xe06d0 ,
+ 0xe06d1 ,
+ 0xe06d2 ,
+ 0xe06d3 ,
+ 0xe06d4 ,
+ 0xe06d5 ,
+ 0xe06d6 ,
+ 0xe06d7 ,
+ 0xe06d8 ,
+ 0xe06d9 ,
+ 0xe06da ,
+ 0xe06db ,
+ 0xe06dc ,
+ 0xe06dd ,
+ 0xe06de ,
+ 0xe06df ,
+ 0xe06e0 ,
+ 0xe06e1 ,
+ 0xe06e2 ,
+ 0xe06e3 ,
+ 0xe06e4 ,
+ 0xe06e5 ,
+ 0xe06e6 ,
+ 0xe06e7 ,
+ 0xe06e8 ,
+ 0xe06e9 ,
+ 0xe06ea ,
+ 0xe06eb ,
+ 0xe06ec ,
+ 0xe06ed ,
+ 0xe06ee ,
+ 0xe06ef ,
+ 0xe06f0 ,
+ 0xe06f1 ,
+ 0xe06f2 ,
+ 0xe06f3 ,
+ 0xe06f4 ,
+ 0xe06f5 ,
+ 0xe06f6 ,
+ 0xe06f7 ,
+ 0xe06f8 ,
+ 0xe06f9 ,
+ 0xe06fa ,
+ 0xe06fb ,
+ 0xe06fc ,
+ 0xe06fd ,
+ 0xe06fe ,
+ 0xe06ff ,
+ 0xe0700 ,
+ 0xe0701 ,
+ 0xe0702 ,
+ 0xe0703 ,
+ 0xe0704 ,
+ 0xe0705 ,
+ 0xe0706 ,
+ 0xe0707 ,
+ 0xe0708 ,
+ 0xe0709 ,
+ 0xe070a ,
+ 0xe070b ,
+ 0xe070c ,
+ 0xe070d ,
+ 0xe070e ,
+ 0xe070f ,
+ 0xe0710 ,
+ 0xe0711 ,
+ 0xe0712 ,
+ 0xe0713 ,
+ 0xe0714 ,
+ 0xe0715 ,
+ 0xe0716 ,
+ 0xe0717 ,
+ 0xe0718 ,
+ 0xe0719 ,
+ 0xe071a ,
+ 0xe071b ,
+ 0xe071c ,
+ 0xe071d ,
+ 0xe071e ,
+ 0xe071f ,
+ 0xe0720 ,
+ 0xe0721 ,
+ 0xe0722 ,
+ 0xe0723 ,
+ 0xe0724 ,
+ 0xe0725 ,
+ 0xe0726 ,
+ 0xe0727 ,
+ 0xe0728 ,
+ 0xe0729 ,
+ 0xe072a ,
+ 0xe072b ,
+ 0xe072c ,
+ 0xe072d ,
+ 0xe072e ,
+ 0xe072f ,
+ 0xe0730 ,
+ 0xe0731 ,
+ 0xe0732 ,
+ 0xe0733 ,
+ 0xe0734 ,
+ 0xe0735 ,
+ 0xe0736 ,
+ 0xe0737 ,
+ 0xe0738 ,
+ 0xe0739 ,
+ 0xe073a ,
+ 0xe073b ,
+ 0xe073c ,
+ 0xe073d ,
+ 0xe073e ,
+ 0xe073f ,
+ 0xe0740 ,
+ 0xe0741 ,
+ 0xe0742 ,
+ 0xe0743 ,
+ 0xe0744 ,
+ 0xe0745 ,
+ 0xe0746 ,
+ 0xe0747 ,
+ 0xe0748 ,
+ 0xe0749 ,
+ 0xe074a ,
+ 0xe074b ,
+ 0xe074c ,
+ 0xe074d ,
+ 0xe074e ,
+ 0xe074f ,
+ 0xe0750 ,
+ 0xe0751 ,
+ 0xe0752 ,
+ 0xe0753 ,
+ 0xe0754 ,
+ 0xe0755 ,
+ 0xe0756 ,
+ 0xe0757 ,
+ 0xe0758 ,
+ 0xe0759 ,
+ 0xe075a ,
+ 0xe075b ,
+ 0xe075c ,
+ 0xe075d ,
+ 0xe075e ,
+ 0xe075f ,
+ 0xe0760 ,
+ 0xe0761 ,
+ 0xe0762 ,
+ 0xe0763 ,
+ 0xe0764 ,
+ 0xe0765 ,
+ 0xe0766 ,
+ 0xe0767 ,
+ 0xe0768 ,
+ 0xe0769 ,
+ 0xe076a ,
+ 0xe076b ,
+ 0xe076c ,
+ 0xe076d ,
+ 0xe076e ,
+ 0xe076f ,
+ 0xe0770 ,
+ 0xe0771 ,
+ 0xe0772 ,
+ 0xe0773 ,
+ 0xe0774 ,
+ 0xe0775 ,
+ 0xe0776 ,
+ 0xe0777 ,
+ 0xe0778 ,
+ 0xe0779 ,
+ 0xe077a ,
+ 0xe077b ,
+ 0xe077c ,
+ 0xe077d ,
+ 0xe077e ,
+ 0xe077f ,
+ 0xe0780 ,
+ 0xe0781 ,
+ 0xe0782 ,
+ 0xe0783 ,
+ 0xe0784 ,
+ 0xe0785 ,
+ 0xe0786 ,
+ 0xe0787 ,
+ 0xe0788 ,
+ 0xe0789 ,
+ 0xe078a ,
+ 0xe078b ,
+ 0xe078c ,
+ 0xe078d ,
+ 0xe078e ,
+ 0xe078f ,
+ 0xe0790 ,
+ 0xe0791 ,
+ 0xe0792 ,
+ 0xe0793 ,
+ 0xe0794 ,
+ 0xe0795 ,
+ 0xe0796 ,
+ 0xe0797 ,
+ 0xe0798 ,
+ 0xe0799 ,
+ 0xe079a ,
+ 0xe079b ,
+ 0xe079c ,
+ 0xe079d ,
+ 0xe079e ,
+ 0xe079f ,
+ 0xe07a0 ,
+ 0xe07a1 ,
+ 0xe07a2 ,
+ 0xe07a3 ,
+ 0xe07a4 ,
+ 0xe07a5 ,
+ 0xe07a6 ,
+ 0xe07a7 ,
+ 0xe07a8 ,
+ 0xe07a9 ,
+ 0xe07aa ,
+ 0xe07ab ,
+ 0xe07ac ,
+ 0xe07ad ,
+ 0xe07ae ,
+ 0xe07af ,
+ 0xe07b0 ,
+ 0xe07b1 ,
+ 0xe07b2 ,
+ 0xe07b3 ,
+ 0xe07b4 ,
+ 0xe07b5 ,
+ 0xe07b6 ,
+ 0xe07b7 ,
+ 0xe07b8 ,
+ 0xe07b9 ,
+ 0xe07ba ,
+ 0xe07bb ,
+ 0xe07bc ,
+ 0xe07bd ,
+ 0xe07be ,
+ 0xe07bf ,
+ 0xe07c0 ,
+ 0xe07c1 ,
+ 0xe07c2 ,
+ 0xe07c3 ,
+ 0xe07c4 ,
+ 0xe07c5 ,
+ 0xe07c6 ,
+ 0xe07c7 ,
+ 0xe07c8 ,
+ 0xe07c9 ,
+ 0xe07ca ,
+ 0xe07cb ,
+ 0xe07cc ,
+ 0xe07cd ,
+ 0xe07ce ,
+ 0xe07cf ,
+ 0xe07d0 ,
+ 0xe07d1 ,
+ 0xe07d2 ,
+ 0xe07d3 ,
+ 0xe07d4 ,
+ 0xe07d5 ,
+ 0xe07d6 ,
+ 0xe07d7 ,
+ 0xe07d8 ,
+ 0xe07d9 ,
+ 0xe07da ,
+ 0xe07db ,
+ 0xe07dc ,
+ 0xe07dd ,
+ 0xe07de ,
+ 0xe07df ,
+ 0xe07e0 ,
+ 0xe07e1 ,
+ 0xe07e2 ,
+ 0xe07e3 ,
+ 0xe07e4 ,
+ 0xe07e5 ,
+ 0xe07e6 ,
+ 0xe07e7 ,
+ 0xe07e8 ,
+ 0xe07e9 ,
+ 0xe07ea ,
+ 0xe07eb ,
+ 0xe07ec ,
+ 0xe07ed ,
+ 0xe07ee ,
+ 0xe07ef ,
+ 0xe07f0 ,
+ 0xe07f1 ,
+ 0xe07f2 ,
+ 0xe07f3 ,
+ 0xe07f4 ,
+ 0xe07f5 ,
+ 0xe07f6 ,
+ 0xe07f7 ,
+ 0xe07f8 ,
+ 0xe07f9 ,
+ 0xe07fa ,
+ 0xe07fb ,
+ 0xe07fc ,
+ 0xe07fd ,
+ 0xe07fe ,
+ 0xe07ff ,
+ 0xe0800 ,
+ 0xe0801 ,
+ 0xe0802 ,
+ 0xe0803 ,
+ 0xe0804 ,
+ 0xe0805 ,
+ 0xe0806 ,
+ 0xe0807 ,
+ 0xe0808 ,
+ 0xe0809 ,
+ 0xe080a ,
+ 0xe080b ,
+ 0xe080c ,
+ 0xe080d ,
+ 0xe080e ,
+ 0xe080f ,
+ 0xe0810 ,
+ 0xe0811 ,
+ 0xe0812 ,
+ 0xe0813 ,
+ 0xe0814 ,
+ 0xe0815 ,
+ 0xe0816 ,
+ 0xe0817 ,
+ 0xe0818 ,
+ 0xe0819 ,
+ 0xe081a ,
+ 0xe081b ,
+ 0xe081c ,
+ 0xe081d ,
+ 0xe081e ,
+ 0xe081f ,
+ 0xe0820 ,
+ 0xe0821 ,
+ 0xe0822 ,
+ 0xe0823 ,
+ 0xe0824 ,
+ 0xe0825 ,
+ 0xe0826 ,
+ 0xe0827 ,
+ 0xe0828 ,
+ 0xe0829 ,
+ 0xe082a ,
+ 0xe082b ,
+ 0xe082c ,
+ 0xe082d ,
+ 0xe082e ,
+ 0xe082f ,
+ 0xe0830 ,
+ 0xe0831 ,
+ 0xe0832 ,
+ 0xe0833 ,
+ 0xe0834 ,
+ 0xe0835 ,
+ 0xe0836 ,
+ 0xe0837 ,
+ 0xe0838 ,
+ 0xe0839 ,
+ 0xe083a ,
+ 0xe083b ,
+ 0xe083c ,
+ 0xe083d ,
+ 0xe083e ,
+ 0xe083f ,
+ 0xe0840 ,
+ 0xe0841 ,
+ 0xe0842 ,
+ 0xe0843 ,
+ 0xe0844 ,
+ 0xe0845 ,
+ 0xe0846 ,
+ 0xe0847 ,
+ 0xe0848 ,
+ 0xe0849 ,
+ 0xe084a ,
+ 0xe084b ,
+ 0xe084c ,
+ 0xe084d ,
+ 0xe084e ,
+ 0xe084f ,
+ 0xe0850 ,
+ 0xe0851 ,
+ 0xe0852 ,
+ 0xe0853 ,
+ 0xe0854 ,
+ 0xe0855 ,
+ 0xe0856 ,
+ 0xe0857 ,
+ 0xe0858 ,
+ 0xe0859 ,
+ 0xe085a ,
+ 0xe085b ,
+ 0xe085c ,
+ 0xe085d ,
+ 0xe085e ,
+ 0xe085f ,
+ 0xe0860 ,
+ 0xe0861 ,
+ 0xe0862 ,
+ 0xe0863 ,
+ 0xe0864 ,
+ 0xe0865 ,
+ 0xe0866 ,
+ 0xe0867 ,
+ 0xe0868 ,
+ 0xe0869 ,
+ 0xe086a ,
+ 0xe086b ,
+ 0xe086c ,
+ 0xe086d ,
+ 0xe086e ,
+ 0xe086f ,
+ 0xe0870 ,
+ 0xe0871 ,
+ 0xe0872 ,
+ 0xe0873 ,
+ 0xe0874 ,
+ 0xe0875 ,
+ 0xe0876 ,
+ 0xe0877 ,
+ 0xe0878 ,
+ 0xe0879 ,
+ 0xe087a ,
+ 0xe087b ,
+ 0xe087c ,
+ 0xe087d ,
+ 0xe087e ,
+ 0xe087f ,
+ 0xe0880 ,
+ 0xe0881 ,
+ 0xe0882 ,
+ 0xe0883 ,
+ 0xe0884 ,
+ 0xe0885 ,
+ 0xe0886 ,
+ 0xe0887 ,
+ 0xe0888 ,
+ 0xe0889 ,
+ 0xe088a ,
+ 0xe088b ,
+ 0xe088c ,
+ 0xe088d ,
+ 0xe088e ,
+ 0xe088f ,
+ 0xe0890 ,
+ 0xe0891 ,
+ 0xe0892 ,
+ 0xe0893 ,
+ 0xe0894 ,
+ 0xe0895 ,
+ 0xe0896 ,
+ 0xe0897 ,
+ 0xe0898 ,
+ 0xe0899 ,
+ 0xe089a ,
+ 0xe089b ,
+ 0xe089c ,
+ 0xe089d ,
+ 0xe089e ,
+ 0xe089f ,
+ 0xe08a0 ,
+ 0xe08a1 ,
+ 0xe08a2 ,
+ 0xe08a3 ,
+ 0xe08a4 ,
+ 0xe08a5 ,
+ 0xe08a6 ,
+ 0xe08a7 ,
+ 0xe08a8 ,
+ 0xe08a9 ,
+ 0xe08aa ,
+ 0xe08ab ,
+ 0xe08ac ,
+ 0xe08ad ,
+ 0xe08ae ,
+ 0xe08af ,
+ 0xe08b0 ,
+ 0xe08b1 ,
+ 0xe08b2 ,
+ 0xe08b3 ,
+ 0xe08b4 ,
+ 0xe08b5 ,
+ 0xe08b6 ,
+ 0xe08b7 ,
+ 0xe08b8 ,
+ 0xe08b9 ,
+ 0xe08ba ,
+ 0xe08bb ,
+ 0xe08bc ,
+ 0xe08bd ,
+ 0xe08be ,
+ 0xe08bf ,
+ 0xe08c0 ,
+ 0xe08c1 ,
+ 0xe08c2 ,
+ 0xe08c3 ,
+ 0xe08c4 ,
+ 0xe08c5 ,
+ 0xe08c6 ,
+ 0xe08c7 ,
+ 0xe08c8 ,
+ 0xe08c9 ,
+ 0xe08ca ,
+ 0xe08cb ,
+ 0xe08cc ,
+ 0xe08cd ,
+ 0xe08ce ,
+ 0xe08cf ,
+ 0xe08d0 ,
+ 0xe08d1 ,
+ 0xe08d2 ,
+ 0xe08d3 ,
+ 0xe08d4 ,
+ 0xe08d5 ,
+ 0xe08d6 ,
+ 0xe08d7 ,
+ 0xe08d8 ,
+ 0xe08d9 ,
+ 0xe08da ,
+ 0xe08db ,
+ 0xe08dc ,
+ 0xe08dd ,
+ 0xe08de ,
+ 0xe08df ,
+ 0xe08e0 ,
+ 0xe08e1 ,
+ 0xe08e2 ,
+ 0xe08e3 ,
+ 0xe08e4 ,
+ 0xe08e5 ,
+ 0xe08e6 ,
+ 0xe08e7 ,
+ 0xe08e8 ,
+ 0xe08e9 ,
+ 0xe08ea ,
+ 0xe08eb ,
+ 0xe08ec ,
+ 0xe08ed ,
+ 0xe08ee ,
+ 0xe08ef ,
+ 0xe08f0 ,
+ 0xe08f1 ,
+ 0xe08f2 ,
+ 0xe08f3 ,
+ 0xe08f4 ,
+ 0xe08f5 ,
+ 0xe08f6 ,
+ 0xe08f7 ,
+ 0xe08f8 ,
+ 0xe08f9 ,
+ 0xe08fa ,
+ 0xe08fb ,
+ 0xe08fc ,
+ 0xe08fd ,
+ 0xe08fe ,
+ 0xe08ff ,
+ 0xe0900 ,
+ 0xe0901 ,
+ 0xe0902 ,
+ 0xe0903 ,
+ 0xe0904 ,
+ 0xe0905 ,
+ 0xe0906 ,
+ 0xe0907 ,
+ 0xe0908 ,
+ 0xe0909 ,
+ 0xe090a ,
+ 0xe090b ,
+ 0xe090c ,
+ 0xe090d ,
+ 0xe090e ,
+ 0xe090f ,
+ 0xe0910 ,
+ 0xe0911 ,
+ 0xe0912 ,
+ 0xe0913 ,
+ 0xe0914 ,
+ 0xe0915 ,
+ 0xe0916 ,
+ 0xe0917 ,
+ 0xe0918 ,
+ 0xe0919 ,
+ 0xe091a ,
+ 0xe091b ,
+ 0xe091c ,
+ 0xe091d ,
+ 0xe091e ,
+ 0xe091f ,
+ 0xe0920 ,
+ 0xe0921 ,
+ 0xe0922 ,
+ 0xe0923 ,
+ 0xe0924 ,
+ 0xe0925 ,
+ 0xe0926 ,
+ 0xe0927 ,
+ 0xe0928 ,
+ 0xe0929 ,
+ 0xe092a ,
+ 0xe092b ,
+ 0xe092c ,
+ 0xe092d ,
+ 0xe092e ,
+ 0xe092f ,
+ 0xe0930 ,
+ 0xe0931 ,
+ 0xe0932 ,
+ 0xe0933 ,
+ 0xe0934 ,
+ 0xe0935 ,
+ 0xe0936 ,
+ 0xe0937 ,
+ 0xe0938 ,
+ 0xe0939 ,
+ 0xe093a ,
+ 0xe093b ,
+ 0xe093c ,
+ 0xe093d ,
+ 0xe093e ,
+ 0xe093f ,
+ 0xe0940 ,
+ 0xe0941 ,
+ 0xe0942 ,
+ 0xe0943 ,
+ 0xe0944 ,
+ 0xe0945 ,
+ 0xe0946 ,
+ 0xe0947 ,
+ 0xe0948 ,
+ 0xe0949 ,
+ 0xe094a ,
+ 0xe094b ,
+ 0xe094c ,
+ 0xe094d ,
+ 0xe094e ,
+ 0xe094f ,
+ 0xe0950 ,
+ 0xe0951 ,
+ 0xe0952 ,
+ 0xe0953 ,
+ 0xe0954 ,
+ 0xe0955 ,
+ 0xe0956 ,
+ 0xe0957 ,
+ 0xe0958 ,
+ 0xe0959 ,
+ 0xe095a ,
+ 0xe095b ,
+ 0xe095c ,
+ 0xe095d ,
+ 0xe095e ,
+ 0xe095f ,
+ 0xe0960 ,
+ 0xe0961 ,
+ 0xe0962 ,
+ 0xe0963 ,
+ 0xe0964 ,
+ 0xe0965 ,
+ 0xe0966 ,
+ 0xe0967 ,
+ 0xe0968 ,
+ 0xe0969 ,
+ 0xe096a ,
+ 0xe096b ,
+ 0xe096c ,
+ 0xe096d ,
+ 0xe096e ,
+ 0xe096f ,
+ 0xe0970 ,
+ 0xe0971 ,
+ 0xe0972 ,
+ 0xe0973 ,
+ 0xe0974 ,
+ 0xe0975 ,
+ 0xe0976 ,
+ 0xe0977 ,
+ 0xe0978 ,
+ 0xe0979 ,
+ 0xe097a ,
+ 0xe097b ,
+ 0xe097c ,
+ 0xe097d ,
+ 0xe097e ,
+ 0xe097f ,
+ 0xe0980 ,
+ 0xe0981 ,
+ 0xe0982 ,
+ 0xe0983 ,
+ 0xe0984 ,
+ 0xe0985 ,
+ 0xe0986 ,
+ 0xe0987 ,
+ 0xe0988 ,
+ 0xe0989 ,
+ 0xe098a ,
+ 0xe098b ,
+ 0xe098c ,
+ 0xe098d ,
+ 0xe098e ,
+ 0xe098f ,
+ 0xe0990 ,
+ 0xe0991 ,
+ 0xe0992 ,
+ 0xe0993 ,
+ 0xe0994 ,
+ 0xe0995 ,
+ 0xe0996 ,
+ 0xe0997 ,
+ 0xe0998 ,
+ 0xe0999 ,
+ 0xe099a ,
+ 0xe099b ,
+ 0xe099c ,
+ 0xe099d ,
+ 0xe099e ,
+ 0xe099f ,
+ 0xe09a0 ,
+ 0xe09a1 ,
+ 0xe09a2 ,
+ 0xe09a3 ,
+ 0xe09a4 ,
+ 0xe09a5 ,
+ 0xe09a6 ,
+ 0xe09a7 ,
+ 0xe09a8 ,
+ 0xe09a9 ,
+ 0xe09aa ,
+ 0xe09ab ,
+ 0xe09ac ,
+ 0xe09ad ,
+ 0xe09ae ,
+ 0xe09af ,
+ 0xe09b0 ,
+ 0xe09b1 ,
+ 0xe09b2 ,
+ 0xe09b3 ,
+ 0xe09b4 ,
+ 0xe09b5 ,
+ 0xe09b6 ,
+ 0xe09b7 ,
+ 0xe09b8 ,
+ 0xe09b9 ,
+ 0xe09ba ,
+ 0xe09bb ,
+ 0xe09bc ,
+ 0xe09bd ,
+ 0xe09be ,
+ 0xe09bf ,
+ 0xe09c0 ,
+ 0xe09c1 ,
+ 0xe09c2 ,
+ 0xe09c3 ,
+ 0xe09c4 ,
+ 0xe09c5 ,
+ 0xe09c6 ,
+ 0xe09c7 ,
+ 0xe09c8 ,
+ 0xe09c9 ,
+ 0xe09ca ,
+ 0xe09cb ,
+ 0xe09cc ,
+ 0xe09cd ,
+ 0xe09ce ,
+ 0xe09cf ,
+ 0xe09d0 ,
+ 0xe09d1 ,
+ 0xe09d2 ,
+ 0xe09d3 ,
+ 0xe09d4 ,
+ 0xe09d5 ,
+ 0xe09d6 ,
+ 0xe09d7 ,
+ 0xe09d8 ,
+ 0xe09d9 ,
+ 0xe09da ,
+ 0xe09db ,
+ 0xe09dc ,
+ 0xe09dd ,
+ 0xe09de ,
+ 0xe09df ,
+ 0xe09e0 ,
+ 0xe09e1 ,
+ 0xe09e2 ,
+ 0xe09e3 ,
+ 0xe09e4 ,
+ 0xe09e5 ,
+ 0xe09e6 ,
+ 0xe09e7 ,
+ 0xe09e8 ,
+ 0xe09e9 ,
+ 0xe09ea ,
+ 0xe09eb ,
+ 0xe09ec ,
+ 0xe09ed ,
+ 0xe09ee ,
+ 0xe09ef ,
+ 0xe09f0 ,
+ 0xe09f1 ,
+ 0xe09f2 ,
+ 0xe09f3 ,
+ 0xe09f4 ,
+ 0xe09f5 ,
+ 0xe09f6 ,
+ 0xe09f7 ,
+ 0xe09f8 ,
+ 0xe09f9 ,
+ 0xe09fa ,
+ 0xe09fb ,
+ 0xe09fc ,
+ 0xe09fd ,
+ 0xe09fe ,
+ 0xe09ff ,
+ 0xe0a00 ,
+ 0xe0a01 ,
+ 0xe0a02 ,
+ 0xe0a03 ,
+ 0xe0a04 ,
+ 0xe0a05 ,
+ 0xe0a06 ,
+ 0xe0a07 ,
+ 0xe0a08 ,
+ 0xe0a09 ,
+ 0xe0a0a ,
+ 0xe0a0b ,
+ 0xe0a0c ,
+ 0xe0a0d ,
+ 0xe0a0e ,
+ 0xe0a0f ,
+ 0xe0a10 ,
+ 0xe0a11 ,
+ 0xe0a12 ,
+ 0xe0a13 ,
+ 0xe0a14 ,
+ 0xe0a15 ,
+ 0xe0a16 ,
+ 0xe0a17 ,
+ 0xe0a18 ,
+ 0xe0a19 ,
+ 0xe0a1a ,
+ 0xe0a1b ,
+ 0xe0a1c ,
+ 0xe0a1d ,
+ 0xe0a1e ,
+ 0xe0a1f ,
+ 0xe0a20 ,
+ 0xe0a21 ,
+ 0xe0a22 ,
+ 0xe0a23 ,
+ 0xe0a24 ,
+ 0xe0a25 ,
+ 0xe0a26 ,
+ 0xe0a27 ,
+ 0xe0a28 ,
+ 0xe0a29 ,
+ 0xe0a2a ,
+ 0xe0a2b ,
+ 0xe0a2c ,
+ 0xe0a2d ,
+ 0xe0a2e ,
+ 0xe0a2f ,
+ 0xe0a30 ,
+ 0xe0a31 ,
+ 0xe0a32 ,
+ 0xe0a33 ,
+ 0xe0a34 ,
+ 0xe0a35 ,
+ 0xe0a36 ,
+ 0xe0a37 ,
+ 0xe0a38 ,
+ 0xe0a39 ,
+ 0xe0a3a ,
+ 0xe0a3b ,
+ 0xe0a3c ,
+ 0xe0a3d ,
+ 0xe0a3e ,
+ 0xe0a3f ,
+ 0xe0a40 ,
+ 0xe0a41 ,
+ 0xe0a42 ,
+ 0xe0a43 ,
+ 0xe0a44 ,
+ 0xe0a45 ,
+ 0xe0a46 ,
+ 0xe0a47 ,
+ 0xe0a48 ,
+ 0xe0a49 ,
+ 0xe0a4a ,
+ 0xe0a4b ,
+ 0xe0a4c ,
+ 0xe0a4d ,
+ 0xe0a4e ,
+ 0xe0a4f ,
+ 0xe0a50 ,
+ 0xe0a51 ,
+ 0xe0a52 ,
+ 0xe0a53 ,
+ 0xe0a54 ,
+ 0xe0a55 ,
+ 0xe0a56 ,
+ 0xe0a57 ,
+ 0xe0a58 ,
+ 0xe0a59 ,
+ 0xe0a5a ,
+ 0xe0a5b ,
+ 0xe0a5c ,
+ 0xe0a5d ,
+ 0xe0a5e ,
+ 0xe0a5f ,
+ 0xe0a60 ,
+ 0xe0a61 ,
+ 0xe0a62 ,
+ 0xe0a63 ,
+ 0xe0a64 ,
+ 0xe0a65 ,
+ 0xe0a66 ,
+ 0xe0a67 ,
+ 0xe0a68 ,
+ 0xe0a69 ,
+ 0xe0a6a ,
+ 0xe0a6b ,
+ 0xe0a6c ,
+ 0xe0a6d ,
+ 0xe0a6e ,
+ 0xe0a6f ,
+ 0xe0a70 ,
+ 0xe0a71 ,
+ 0xe0a72 ,
+ 0xe0a73 ,
+ 0xe0a74 ,
+ 0xe0a75 ,
+ 0xe0a76 ,
+ 0xe0a77 ,
+ 0xe0a78 ,
+ 0xe0a79 ,
+ 0xe0a7a ,
+ 0xe0a7b ,
+ 0xe0a7c ,
+ 0xe0a7d ,
+ 0xe0a7e ,
+ 0xe0a7f ,
+ 0xe0a80 ,
+ 0xe0a81 ,
+ 0xe0a82 ,
+ 0xe0a83 ,
+ 0xe0a84 ,
+ 0xe0a85 ,
+ 0xe0a86 ,
+ 0xe0a87 ,
+ 0xe0a88 ,
+ 0xe0a89 ,
+ 0xe0a8a ,
+ 0xe0a8b ,
+ 0xe0a8c ,
+ 0xe0a8d ,
+ 0xe0a8e ,
+ 0xe0a8f ,
+ 0xe0a90 ,
+ 0xe0a91 ,
+ 0xe0a92 ,
+ 0xe0a93 ,
+ 0xe0a94 ,
+ 0xe0a95 ,
+ 0xe0a96 ,
+ 0xe0a97 ,
+ 0xe0a98 ,
+ 0xe0a99 ,
+ 0xe0a9a ,
+ 0xe0a9b ,
+ 0xe0a9c ,
+ 0xe0a9d ,
+ 0xe0a9e ,
+ 0xe0a9f ,
+ 0xe0aa0 ,
+ 0xe0aa1 ,
+ 0xe0aa2 ,
+ 0xe0aa3 ,
+ 0xe0aa4 ,
+ 0xe0aa5 ,
+ 0xe0aa6 ,
+ 0xe0aa7 ,
+ 0xe0aa8 ,
+ 0xe0aa9 ,
+ 0xe0aaa ,
+ 0xe0aab ,
+ 0xe0aac ,
+ 0xe0aad ,
+ 0xe0aae ,
+ 0xe0aaf ,
+ 0xe0ab0 ,
+ 0xe0ab1 ,
+ 0xe0ab2 ,
+ 0xe0ab3 ,
+ 0xe0ab4 ,
+ 0xe0ab5 ,
+ 0xe0ab6 ,
+ 0xe0ab7 ,
+ 0xe0ab8 ,
+ 0xe0ab9 ,
+ 0xe0aba ,
+ 0xe0abb ,
+ 0xe0abc ,
+ 0xe0abd ,
+ 0xe0abe ,
+ 0xe0abf ,
+ 0xe0ac0 ,
+ 0xe0ac1 ,
+ 0xe0ac2 ,
+ 0xe0ac3 ,
+ 0xe0ac4 ,
+ 0xe0ac5 ,
+ 0xe0ac6 ,
+ 0xe0ac7 ,
+ 0xe0ac8 ,
+ 0xe0ac9 ,
+ 0xe0aca ,
+ 0xe0acb ,
+ 0xe0acc ,
+ 0xe0acd ,
+ 0xe0ace ,
+ 0xe0acf ,
+ 0xe0ad0 ,
+ 0xe0ad1 ,
+ 0xe0ad2 ,
+ 0xe0ad3 ,
+ 0xe0ad4 ,
+ 0xe0ad5 ,
+ 0xe0ad6 ,
+ 0xe0ad7 ,
+ 0xe0ad8 ,
+ 0xe0ad9 ,
+ 0xe0ada ,
+ 0xe0adb ,
+ 0xe0adc ,
+ 0xe0add ,
+ 0xe0ade ,
+ 0xe0adf ,
+ 0xe0ae0 ,
+ 0xe0ae1 ,
+ 0xe0ae2 ,
+ 0xe0ae3 ,
+ 0xe0ae4 ,
+ 0xe0ae5 ,
+ 0xe0ae6 ,
+ 0xe0ae7 ,
+ 0xe0ae8 ,
+ 0xe0ae9 ,
+ 0xe0aea ,
+ 0xe0aeb ,
+ 0xe0aec ,
+ 0xe0aed ,
+ 0xe0aee ,
+ 0xe0aef ,
+ 0xe0af0 ,
+ 0xe0af1 ,
+ 0xe0af2 ,
+ 0xe0af3 ,
+ 0xe0af4 ,
+ 0xe0af5 ,
+ 0xe0af6 ,
+ 0xe0af7 ,
+ 0xe0af8 ,
+ 0xe0af9 ,
+ 0xe0afa ,
+ 0xe0afb ,
+ 0xe0afc ,
+ 0xe0afd ,
+ 0xe0afe ,
+ 0xe0aff ,
+ 0xe0b00 ,
+ 0xe0b01 ,
+ 0xe0b02 ,
+ 0xe0b03 ,
+ 0xe0b04 ,
+ 0xe0b05 ,
+ 0xe0b06 ,
+ 0xe0b07 ,
+ 0xe0b08 ,
+ 0xe0b09 ,
+ 0xe0b0a ,
+ 0xe0b0b ,
+ 0xe0b0c ,
+ 0xe0b0d ,
+ 0xe0b0e ,
+ 0xe0b0f ,
+ 0xe0b10 ,
+ 0xe0b11 ,
+ 0xe0b12 ,
+ 0xe0b13 ,
+ 0xe0b14 ,
+ 0xe0b15 ,
+ 0xe0b16 ,
+ 0xe0b17 ,
+ 0xe0b18 ,
+ 0xe0b19 ,
+ 0xe0b1a ,
+ 0xe0b1b ,
+ 0xe0b1c ,
+ 0xe0b1d ,
+ 0xe0b1e ,
+ 0xe0b1f ,
+ 0xe0b20 ,
+ 0xe0b21 ,
+ 0xe0b22 ,
+ 0xe0b23 ,
+ 0xe0b24 ,
+ 0xe0b25 ,
+ 0xe0b26 ,
+ 0xe0b27 ,
+ 0xe0b28 ,
+ 0xe0b29 ,
+ 0xe0b2a ,
+ 0xe0b2b ,
+ 0xe0b2c ,
+ 0xe0b2d ,
+ 0xe0b2e ,
+ 0xe0b2f ,
+ 0xe0b30 ,
+ 0xe0b31 ,
+ 0xe0b32 ,
+ 0xe0b33 ,
+ 0xe0b34 ,
+ 0xe0b35 ,
+ 0xe0b36 ,
+ 0xe0b37 ,
+ 0xe0b38 ,
+ 0xe0b39 ,
+ 0xe0b3a ,
+ 0xe0b3b ,
+ 0xe0b3c ,
+ 0xe0b3d ,
+ 0xe0b3e ,
+ 0xe0b3f ,
+ 0xe0b40 ,
+ 0xe0b41 ,
+ 0xe0b42 ,
+ 0xe0b43 ,
+ 0xe0b44 ,
+ 0xe0b45 ,
+ 0xe0b46 ,
+ 0xe0b47 ,
+ 0xe0b48 ,
+ 0xe0b49 ,
+ 0xe0b4a ,
+ 0xe0b4b ,
+ 0xe0b4c ,
+ 0xe0b4d ,
+ 0xe0b4e ,
+ 0xe0b4f ,
+ 0xe0b50 ,
+ 0xe0b51 ,
+ 0xe0b52 ,
+ 0xe0b53 ,
+ 0xe0b54 ,
+ 0xe0b55 ,
+ 0xe0b56 ,
+ 0xe0b57 ,
+ 0xe0b58 ,
+ 0xe0b59 ,
+ 0xe0b5a ,
+ 0xe0b5b ,
+ 0xe0b5c ,
+ 0xe0b5d ,
+ 0xe0b5e ,
+ 0xe0b5f ,
+ 0xe0b60 ,
+ 0xe0b61 ,
+ 0xe0b62 ,
+ 0xe0b63 ,
+ 0xe0b64 ,
+ 0xe0b65 ,
+ 0xe0b66 ,
+ 0xe0b67 ,
+ 0xe0b68 ,
+ 0xe0b69 ,
+ 0xe0b6a ,
+ 0xe0b6b ,
+ 0xe0b6c ,
+ 0xe0b6d ,
+ 0xe0b6e ,
+ 0xe0b6f ,
+ 0xe0b70 ,
+ 0xe0b71 ,
+ 0xe0b72 ,
+ 0xe0b73 ,
+ 0xe0b74 ,
+ 0xe0b75 ,
+ 0xe0b76 ,
+ 0xe0b77 ,
+ 0xe0b78 ,
+ 0xe0b79 ,
+ 0xe0b7a ,
+ 0xe0b7b ,
+ 0xe0b7c ,
+ 0xe0b7d ,
+ 0xe0b7e ,
+ 0xe0b7f ,
+ 0xe0b80 ,
+ 0xe0b81 ,
+ 0xe0b82 ,
+ 0xe0b83 ,
+ 0xe0b84 ,
+ 0xe0b85 ,
+ 0xe0b86 ,
+ 0xe0b87 ,
+ 0xe0b88 ,
+ 0xe0b89 ,
+ 0xe0b8a ,
+ 0xe0b8b ,
+ 0xe0b8c ,
+ 0xe0b8d ,
+ 0xe0b8e ,
+ 0xe0b8f ,
+ 0xe0b90 ,
+ 0xe0b91 ,
+ 0xe0b92 ,
+ 0xe0b93 ,
+ 0xe0b94 ,
+ 0xe0b95 ,
+ 0xe0b96 ,
+ 0xe0b97 ,
+ 0xe0b98 ,
+ 0xe0b99 ,
+ 0xe0b9a ,
+ 0xe0b9b ,
+ 0xe0b9c ,
+ 0xe0b9d ,
+ 0xe0b9e ,
+ 0xe0b9f ,
+ 0xe0ba0 ,
+ 0xe0ba1 ,
+ 0xe0ba2 ,
+ 0xe0ba3 ,
+ 0xe0ba4 ,
+ 0xe0ba5 ,
+ 0xe0ba6 ,
+ 0xe0ba7 ,
+ 0xe0ba8 ,
+ 0xe0ba9 ,
+ 0xe0baa ,
+ 0xe0bab ,
+ 0xe0bac ,
+ 0xe0bad ,
+ 0xe0bae ,
+ 0xe0baf ,
+ 0xe0bb0 ,
+ 0xe0bb1 ,
+ 0xe0bb2 ,
+ 0xe0bb3 ,
+ 0xe0bb4 ,
+ 0xe0bb5 ,
+ 0xe0bb6 ,
+ 0xe0bb7 ,
+ 0xe0bb8 ,
+ 0xe0bb9 ,
+ 0xe0bba ,
+ 0xe0bbb ,
+ 0xe0bbc ,
+ 0xe0bbd ,
+ 0xe0bbe ,
+ 0xe0bbf ,
+ 0xe0bc0 ,
+ 0xe0bc1 ,
+ 0xe0bc2 ,
+ 0xe0bc3 ,
+ 0xe0bc4 ,
+ 0xe0bc5 ,
+ 0xe0bc6 ,
+ 0xe0bc7 ,
+ 0xe0bc8 ,
+ 0xe0bc9 ,
+ 0xe0bca ,
+ 0xe0bcb ,
+ 0xe0bcc ,
+ 0xe0bcd ,
+ 0xe0bce ,
+ 0xe0bcf ,
+ 0xe0bd0 ,
+ 0xe0bd1 ,
+ 0xe0bd2 ,
+ 0xe0bd3 ,
+ 0xe0bd4 ,
+ 0xe0bd5 ,
+ 0xe0bd6 ,
+ 0xe0bd7 ,
+ 0xe0bd8 ,
+ 0xe0bd9 ,
+ 0xe0bda ,
+ 0xe0bdb ,
+ 0xe0bdc ,
+ 0xe0bdd ,
+ 0xe0bde ,
+ 0xe0bdf ,
+ 0xe0be0 ,
+ 0xe0be1 ,
+ 0xe0be2 ,
+ 0xe0be3 ,
+ 0xe0be4 ,
+ 0xe0be5 ,
+ 0xe0be6 ,
+ 0xe0be7 ,
+ 0xe0be8 ,
+ 0xe0be9 ,
+ 0xe0bea ,
+ 0xe0beb ,
+ 0xe0bec ,
+ 0xe0bed ,
+ 0xe0bee ,
+ 0xe0bef ,
+ 0xe0bf0 ,
+ 0xe0bf1 ,
+ 0xe0bf2 ,
+ 0xe0bf3 ,
+ 0xe0bf4 ,
+ 0xe0bf5 ,
+ 0xe0bf6 ,
+ 0xe0bf7 ,
+ 0xe0bf8 ,
+ 0xe0bf9 ,
+ 0xe0bfa ,
+ 0xe0bfb ,
+ 0xe0bfc ,
+ 0xe0bfd ,
+ 0xe0bfe ,
+ 0xe0bff ,
+ 0xe0c00 ,
+ 0xe0c01 ,
+ 0xe0c02 ,
+ 0xe0c03 ,
+ 0xe0c04 ,
+ 0xe0c05 ,
+ 0xe0c06 ,
+ 0xe0c07 ,
+ 0xe0c08 ,
+ 0xe0c09 ,
+ 0xe0c0a ,
+ 0xe0c0b ,
+ 0xe0c0c ,
+ 0xe0c0d ,
+ 0xe0c0e ,
+ 0xe0c0f ,
+ 0xe0c10 ,
+ 0xe0c11 ,
+ 0xe0c12 ,
+ 0xe0c13 ,
+ 0xe0c14 ,
+ 0xe0c15 ,
+ 0xe0c16 ,
+ 0xe0c17 ,
+ 0xe0c18 ,
+ 0xe0c19 ,
+ 0xe0c1a ,
+ 0xe0c1b ,
+ 0xe0c1c ,
+ 0xe0c1d ,
+ 0xe0c1e ,
+ 0xe0c1f ,
+ 0xe0c20 ,
+ 0xe0c21 ,
+ 0xe0c22 ,
+ 0xe0c23 ,
+ 0xe0c24 ,
+ 0xe0c25 ,
+ 0xe0c26 ,
+ 0xe0c27 ,
+ 0xe0c28 ,
+ 0xe0c29 ,
+ 0xe0c2a ,
+ 0xe0c2b ,
+ 0xe0c2c ,
+ 0xe0c2d ,
+ 0xe0c2e ,
+ 0xe0c2f ,
+ 0xe0c30 ,
+ 0xe0c31 ,
+ 0xe0c32 ,
+ 0xe0c33 ,
+ 0xe0c34 ,
+ 0xe0c35 ,
+ 0xe0c36 ,
+ 0xe0c37 ,
+ 0xe0c38 ,
+ 0xe0c39 ,
+ 0xe0c3a ,
+ 0xe0c3b ,
+ 0xe0c3c ,
+ 0xe0c3d ,
+ 0xe0c3e ,
+ 0xe0c3f ,
+ 0xe0c40 ,
+ 0xe0c41 ,
+ 0xe0c42 ,
+ 0xe0c43 ,
+ 0xe0c44 ,
+ 0xe0c45 ,
+ 0xe0c46 ,
+ 0xe0c47 ,
+ 0xe0c48 ,
+ 0xe0c49 ,
+ 0xe0c4a ,
+ 0xe0c4b ,
+ 0xe0c4c ,
+ 0xe0c4d ,
+ 0xe0c4e ,
+ 0xe0c4f ,
+ 0xe0c50 ,
+ 0xe0c51 ,
+ 0xe0c52 ,
+ 0xe0c53 ,
+ 0xe0c54 ,
+ 0xe0c55 ,
+ 0xe0c56 ,
+ 0xe0c57 ,
+ 0xe0c58 ,
+ 0xe0c59 ,
+ 0xe0c5a ,
+ 0xe0c5b ,
+ 0xe0c5c ,
+ 0xe0c5d ,
+ 0xe0c5e ,
+ 0xe0c5f ,
+ 0xe0c60 ,
+ 0xe0c61 ,
+ 0xe0c62 ,
+ 0xe0c63 ,
+ 0xe0c64 ,
+ 0xe0c65 ,
+ 0xe0c66 ,
+ 0xe0c67 ,
+ 0xe0c68 ,
+ 0xe0c69 ,
+ 0xe0c6a ,
+ 0xe0c6b ,
+ 0xe0c6c ,
+ 0xe0c6d ,
+ 0xe0c6e ,
+ 0xe0c6f ,
+ 0xe0c70 ,
+ 0xe0c71 ,
+ 0xe0c72 ,
+ 0xe0c73 ,
+ 0xe0c74 ,
+ 0xe0c75 ,
+ 0xe0c76 ,
+ 0xe0c77 ,
+ 0xe0c78 ,
+ 0xe0c79 ,
+ 0xe0c7a ,
+ 0xe0c7b ,
+ 0xe0c7c ,
+ 0xe0c7d ,
+ 0xe0c7e ,
+ 0xe0c7f ,
+ 0xe0c80 ,
+ 0xe0c81 ,
+ 0xe0c82 ,
+ 0xe0c83 ,
+ 0xe0c84 ,
+ 0xe0c85 ,
+ 0xe0c86 ,
+ 0xe0c87 ,
+ 0xe0c88 ,
+ 0xe0c89 ,
+ 0xe0c8a ,
+ 0xe0c8b ,
+ 0xe0c8c ,
+ 0xe0c8d ,
+ 0xe0c8e ,
+ 0xe0c8f ,
+ 0xe0c90 ,
+ 0xe0c91 ,
+ 0xe0c92 ,
+ 0xe0c93 ,
+ 0xe0c94 ,
+ 0xe0c95 ,
+ 0xe0c96 ,
+ 0xe0c97 ,
+ 0xe0c98 ,
+ 0xe0c99 ,
+ 0xe0c9a ,
+ 0xe0c9b ,
+ 0xe0c9c ,
+ 0xe0c9d ,
+ 0xe0c9e ,
+ 0xe0c9f ,
+ 0xe0ca0 ,
+ 0xe0ca1 ,
+ 0xe0ca2 ,
+ 0xe0ca3 ,
+ 0xe0ca4 ,
+ 0xe0ca5 ,
+ 0xe0ca6 ,
+ 0xe0ca7 ,
+ 0xe0ca8 ,
+ 0xe0ca9 ,
+ 0xe0caa ,
+ 0xe0cab ,
+ 0xe0cac ,
+ 0xe0cad ,
+ 0xe0cae ,
+ 0xe0caf ,
+ 0xe0cb0 ,
+ 0xe0cb1 ,
+ 0xe0cb2 ,
+ 0xe0cb3 ,
+ 0xe0cb4 ,
+ 0xe0cb5 ,
+ 0xe0cb6 ,
+ 0xe0cb7 ,
+ 0xe0cb8 ,
+ 0xe0cb9 ,
+ 0xe0cba ,
+ 0xe0cbb ,
+ 0xe0cbc ,
+ 0xe0cbd ,
+ 0xe0cbe ,
+ 0xe0cbf ,
+ 0xe0cc0 ,
+ 0xe0cc1 ,
+ 0xe0cc2 ,
+ 0xe0cc3 ,
+ 0xe0cc4 ,
+ 0xe0cc5 ,
+ 0xe0cc6 ,
+ 0xe0cc7 ,
+ 0xe0cc8 ,
+ 0xe0cc9 ,
+ 0xe0cca ,
+ 0xe0ccb ,
+ 0xe0ccc ,
+ 0xe0ccd ,
+ 0xe0cce ,
+ 0xe0ccf ,
+ 0xe0cd0 ,
+ 0xe0cd1 ,
+ 0xe0cd2 ,
+ 0xe0cd3 ,
+ 0xe0cd4 ,
+ 0xe0cd5 ,
+ 0xe0cd6 ,
+ 0xe0cd7 ,
+ 0xe0cd8 ,
+ 0xe0cd9 ,
+ 0xe0cda ,
+ 0xe0cdb ,
+ 0xe0cdc ,
+ 0xe0cdd ,
+ 0xe0cde ,
+ 0xe0cdf ,
+ 0xe0ce0 ,
+ 0xe0ce1 ,
+ 0xe0ce2 ,
+ 0xe0ce3 ,
+ 0xe0ce4 ,
+ 0xe0ce5 ,
+ 0xe0ce6 ,
+ 0xe0ce7 ,
+ 0xe0ce8 ,
+ 0xe0ce9 ,
+ 0xe0cea ,
+ 0xe0ceb ,
+ 0xe0cec ,
+ 0xe0ced ,
+ 0xe0cee ,
+ 0xe0cef ,
+ 0xe0cf0 ,
+ 0xe0cf1 ,
+ 0xe0cf2 ,
+ 0xe0cf3 ,
+ 0xe0cf4 ,
+ 0xe0cf5 ,
+ 0xe0cf6 ,
+ 0xe0cf7 ,
+ 0xe0cf8 ,
+ 0xe0cf9 ,
+ 0xe0cfa ,
+ 0xe0cfb ,
+ 0xe0cfc ,
+ 0xe0cfd ,
+ 0xe0cfe ,
+ 0xe0cff ,
+ 0xe0d00 ,
+ 0xe0d01 ,
+ 0xe0d02 ,
+ 0xe0d03 ,
+ 0xe0d04 ,
+ 0xe0d05 ,
+ 0xe0d06 ,
+ 0xe0d07 ,
+ 0xe0d08 ,
+ 0xe0d09 ,
+ 0xe0d0a ,
+ 0xe0d0b ,
+ 0xe0d0c ,
+ 0xe0d0d ,
+ 0xe0d0e ,
+ 0xe0d0f ,
+ 0xe0d10 ,
+ 0xe0d11 ,
+ 0xe0d12 ,
+ 0xe0d13 ,
+ 0xe0d14 ,
+ 0xe0d15 ,
+ 0xe0d16 ,
+ 0xe0d17 ,
+ 0xe0d18 ,
+ 0xe0d19 ,
+ 0xe0d1a ,
+ 0xe0d1b ,
+ 0xe0d1c ,
+ 0xe0d1d ,
+ 0xe0d1e ,
+ 0xe0d1f ,
+ 0xe0d20 ,
+ 0xe0d21 ,
+ 0xe0d22 ,
+ 0xe0d23 ,
+ 0xe0d24 ,
+ 0xe0d25 ,
+ 0xe0d26 ,
+ 0xe0d27 ,
+ 0xe0d28 ,
+ 0xe0d29 ,
+ 0xe0d2a ,
+ 0xe0d2b ,
+ 0xe0d2c ,
+ 0xe0d2d ,
+ 0xe0d2e ,
+ 0xe0d2f ,
+ 0xe0d30 ,
+ 0xe0d31 ,
+ 0xe0d32 ,
+ 0xe0d33 ,
+ 0xe0d34 ,
+ 0xe0d35 ,
+ 0xe0d36 ,
+ 0xe0d37 ,
+ 0xe0d38 ,
+ 0xe0d39 ,
+ 0xe0d3a ,
+ 0xe0d3b ,
+ 0xe0d3c ,
+ 0xe0d3d ,
+ 0xe0d3e ,
+ 0xe0d3f ,
+ 0xe0d40 ,
+ 0xe0d41 ,
+ 0xe0d42 ,
+ 0xe0d43 ,
+ 0xe0d44 ,
+ 0xe0d45 ,
+ 0xe0d46 ,
+ 0xe0d47 ,
+ 0xe0d48 ,
+ 0xe0d49 ,
+ 0xe0d4a ,
+ 0xe0d4b ,
+ 0xe0d4c ,
+ 0xe0d4d ,
+ 0xe0d4e ,
+ 0xe0d4f ,
+ 0xe0d50 ,
+ 0xe0d51 ,
+ 0xe0d52 ,
+ 0xe0d53 ,
+ 0xe0d54 ,
+ 0xe0d55 ,
+ 0xe0d56 ,
+ 0xe0d57 ,
+ 0xe0d58 ,
+ 0xe0d59 ,
+ 0xe0d5a ,
+ 0xe0d5b ,
+ 0xe0d5c ,
+ 0xe0d5d ,
+ 0xe0d5e ,
+ 0xe0d5f ,
+ 0xe0d60 ,
+ 0xe0d61 ,
+ 0xe0d62 ,
+ 0xe0d63 ,
+ 0xe0d64 ,
+ 0xe0d65 ,
+ 0xe0d66 ,
+ 0xe0d67 ,
+ 0xe0d68 ,
+ 0xe0d69 ,
+ 0xe0d6a ,
+ 0xe0d6b ,
+ 0xe0d6c ,
+ 0xe0d6d ,
+ 0xe0d6e ,
+ 0xe0d6f ,
+ 0xe0d70 ,
+ 0xe0d71 ,
+ 0xe0d72 ,
+ 0xe0d73 ,
+ 0xe0d74 ,
+ 0xe0d75 ,
+ 0xe0d76 ,
+ 0xe0d77 ,
+ 0xe0d78 ,
+ 0xe0d79 ,
+ 0xe0d7a ,
+ 0xe0d7b ,
+ 0xe0d7c ,
+ 0xe0d7d ,
+ 0xe0d7e ,
+ 0xe0d7f ,
+ 0xe0d80 ,
+ 0xe0d81 ,
+ 0xe0d82 ,
+ 0xe0d83 ,
+ 0xe0d84 ,
+ 0xe0d85 ,
+ 0xe0d86 ,
+ 0xe0d87 ,
+ 0xe0d88 ,
+ 0xe0d89 ,
+ 0xe0d8a ,
+ 0xe0d8b ,
+ 0xe0d8c ,
+ 0xe0d8d ,
+ 0xe0d8e ,
+ 0xe0d8f ,
+ 0xe0d90 ,
+ 0xe0d91 ,
+ 0xe0d92 ,
+ 0xe0d93 ,
+ 0xe0d94 ,
+ 0xe0d95 ,
+ 0xe0d96 ,
+ 0xe0d97 ,
+ 0xe0d98 ,
+ 0xe0d99 ,
+ 0xe0d9a ,
+ 0xe0d9b ,
+ 0xe0d9c ,
+ 0xe0d9d ,
+ 0xe0d9e ,
+ 0xe0d9f ,
+ 0xe0da0 ,
+ 0xe0da1 ,
+ 0xe0da2 ,
+ 0xe0da3 ,
+ 0xe0da4 ,
+ 0xe0da5 ,
+ 0xe0da6 ,
+ 0xe0da7 ,
+ 0xe0da8 ,
+ 0xe0da9 ,
+ 0xe0daa ,
+ 0xe0dab ,
+ 0xe0dac ,
+ 0xe0dad ,
+ 0xe0dae ,
+ 0xe0daf ,
+ 0xe0db0 ,
+ 0xe0db1 ,
+ 0xe0db2 ,
+ 0xe0db3 ,
+ 0xe0db4 ,
+ 0xe0db5 ,
+ 0xe0db6 ,
+ 0xe0db7 ,
+ 0xe0db8 ,
+ 0xe0db9 ,
+ 0xe0dba ,
+ 0xe0dbb ,
+ 0xe0dbc ,
+ 0xe0dbd ,
+ 0xe0dbe ,
+ 0xe0dbf ,
+ 0xe0dc0 ,
+ 0xe0dc1 ,
+ 0xe0dc2 ,
+ 0xe0dc3 ,
+ 0xe0dc4 ,
+ 0xe0dc5 ,
+ 0xe0dc6 ,
+ 0xe0dc7 ,
+ 0xe0dc8 ,
+ 0xe0dc9 ,
+ 0xe0dca ,
+ 0xe0dcb ,
+ 0xe0dcc ,
+ 0xe0dcd ,
+ 0xe0dce ,
+ 0xe0dcf ,
+ 0xe0dd0 ,
+ 0xe0dd1 ,
+ 0xe0dd2 ,
+ 0xe0dd3 ,
+ 0xe0dd4 ,
+ 0xe0dd5 ,
+ 0xe0dd6 ,
+ 0xe0dd7 ,
+ 0xe0dd8 ,
+ 0xe0dd9 ,
+ 0xe0dda ,
+ 0xe0ddb ,
+ 0xe0ddc ,
+ 0xe0ddd ,
+ 0xe0dde ,
+ 0xe0ddf ,
+ 0xe0de0 ,
+ 0xe0de1 ,
+ 0xe0de2 ,
+ 0xe0de3 ,
+ 0xe0de4 ,
+ 0xe0de5 ,
+ 0xe0de6 ,
+ 0xe0de7 ,
+ 0xe0de8 ,
+ 0xe0de9 ,
+ 0xe0dea ,
+ 0xe0deb ,
+ 0xe0dec ,
+ 0xe0ded ,
+ 0xe0dee ,
+ 0xe0def ,
+ 0xe0df0 ,
+ 0xe0df1 ,
+ 0xe0df2 ,
+ 0xe0df3 ,
+ 0xe0df4 ,
+ 0xe0df5 ,
+ 0xe0df6 ,
+ 0xe0df7 ,
+ 0xe0df8 ,
+ 0xe0df9 ,
+ 0xe0dfa ,
+ 0xe0dfb ,
+ 0xe0dfc ,
+ 0xe0dfd ,
+ 0xe0dfe ,
+ 0xe0dff ,
+ 0xe0e00 ,
+ 0xe0e01 ,
+ 0xe0e02 ,
+ 0xe0e03 ,
+ 0xe0e04 ,
+ 0xe0e05 ,
+ 0xe0e06 ,
+ 0xe0e07 ,
+ 0xe0e08 ,
+ 0xe0e09 ,
+ 0xe0e0a ,
+ 0xe0e0b ,
+ 0xe0e0c ,
+ 0xe0e0d ,
+ 0xe0e0e ,
+ 0xe0e0f ,
+ 0xe0e10 ,
+ 0xe0e11 ,
+ 0xe0e12 ,
+ 0xe0e13 ,
+ 0xe0e14 ,
+ 0xe0e15 ,
+ 0xe0e16 ,
+ 0xe0e17 ,
+ 0xe0e18 ,
+ 0xe0e19 ,
+ 0xe0e1a ,
+ 0xe0e1b ,
+ 0xe0e1c ,
+ 0xe0e1d ,
+ 0xe0e1e ,
+ 0xe0e1f ,
+ 0xe0e20 ,
+ 0xe0e21 ,
+ 0xe0e22 ,
+ 0xe0e23 ,
+ 0xe0e24 ,
+ 0xe0e25 ,
+ 0xe0e26 ,
+ 0xe0e27 ,
+ 0xe0e28 ,
+ 0xe0e29 ,
+ 0xe0e2a ,
+ 0xe0e2b ,
+ 0xe0e2c ,
+ 0xe0e2d ,
+ 0xe0e2e ,
+ 0xe0e2f ,
+ 0xe0e30 ,
+ 0xe0e31 ,
+ 0xe0e32 ,
+ 0xe0e33 ,
+ 0xe0e34 ,
+ 0xe0e35 ,
+ 0xe0e36 ,
+ 0xe0e37 ,
+ 0xe0e38 ,
+ 0xe0e39 ,
+ 0xe0e3a ,
+ 0xe0e3b ,
+ 0xe0e3c ,
+ 0xe0e3d ,
+ 0xe0e3e ,
+ 0xe0e3f ,
+ 0xe0e40 ,
+ 0xe0e41 ,
+ 0xe0e42 ,
+ 0xe0e43 ,
+ 0xe0e44 ,
+ 0xe0e45 ,
+ 0xe0e46 ,
+ 0xe0e47 ,
+ 0xe0e48 ,
+ 0xe0e49 ,
+ 0xe0e4a ,
+ 0xe0e4b ,
+ 0xe0e4c ,
+ 0xe0e4d ,
+ 0xe0e4e ,
+ 0xe0e4f ,
+ 0xe0e50 ,
+ 0xe0e51 ,
+ 0xe0e52 ,
+ 0xe0e53 ,
+ 0xe0e54 ,
+ 0xe0e55 ,
+ 0xe0e56 ,
+ 0xe0e57 ,
+ 0xe0e58 ,
+ 0xe0e59 ,
+ 0xe0e5a ,
+ 0xe0e5b ,
+ 0xe0e5c ,
+ 0xe0e5d ,
+ 0xe0e5e ,
+ 0xe0e5f ,
+ 0xe0e60 ,
+ 0xe0e61 ,
+ 0xe0e62 ,
+ 0xe0e63 ,
+ 0xe0e64 ,
+ 0xe0e65 ,
+ 0xe0e66 ,
+ 0xe0e67 ,
+ 0xe0e68 ,
+ 0xe0e69 ,
+ 0xe0e6a ,
+ 0xe0e6b ,
+ 0xe0e6c ,
+ 0xe0e6d ,
+ 0xe0e6e ,
+ 0xe0e6f ,
+ 0xe0e70 ,
+ 0xe0e71 ,
+ 0xe0e72 ,
+ 0xe0e73 ,
+ 0xe0e74 ,
+ 0xe0e75 ,
+ 0xe0e76 ,
+ 0xe0e77 ,
+ 0xe0e78 ,
+ 0xe0e79 ,
+ 0xe0e7a ,
+ 0xe0e7b ,
+ 0xe0e7c ,
+ 0xe0e7d ,
+ 0xe0e7e ,
+ 0xe0e7f ,
+ 0xe0e80 ,
+ 0xe0e81 ,
+ 0xe0e82 ,
+ 0xe0e83 ,
+ 0xe0e84 ,
+ 0xe0e85 ,
+ 0xe0e86 ,
+ 0xe0e87 ,
+ 0xe0e88 ,
+ 0xe0e89 ,
+ 0xe0e8a ,
+ 0xe0e8b ,
+ 0xe0e8c ,
+ 0xe0e8d ,
+ 0xe0e8e ,
+ 0xe0e8f ,
+ 0xe0e90 ,
+ 0xe0e91 ,
+ 0xe0e92 ,
+ 0xe0e93 ,
+ 0xe0e94 ,
+ 0xe0e95 ,
+ 0xe0e96 ,
+ 0xe0e97 ,
+ 0xe0e98 ,
+ 0xe0e99 ,
+ 0xe0e9a ,
+ 0xe0e9b ,
+ 0xe0e9c ,
+ 0xe0e9d ,
+ 0xe0e9e ,
+ 0xe0e9f ,
+ 0xe0ea0 ,
+ 0xe0ea1 ,
+ 0xe0ea2 ,
+ 0xe0ea3 ,
+ 0xe0ea4 ,
+ 0xe0ea5 ,
+ 0xe0ea6 ,
+ 0xe0ea7 ,
+ 0xe0ea8 ,
+ 0xe0ea9 ,
+ 0xe0eaa ,
+ 0xe0eab ,
+ 0xe0eac ,
+ 0xe0ead ,
+ 0xe0eae ,
+ 0xe0eaf ,
+ 0xe0eb0 ,
+ 0xe0eb1 ,
+ 0xe0eb2 ,
+ 0xe0eb3 ,
+ 0xe0eb4 ,
+ 0xe0eb5 ,
+ 0xe0eb6 ,
+ 0xe0eb7 ,
+ 0xe0eb8 ,
+ 0xe0eb9 ,
+ 0xe0eba ,
+ 0xe0ebb ,
+ 0xe0ebc ,
+ 0xe0ebd ,
+ 0xe0ebe ,
+ 0xe0ebf ,
+ 0xe0ec0 ,
+ 0xe0ec1 ,
+ 0xe0ec2 ,
+ 0xe0ec3 ,
+ 0xe0ec4 ,
+ 0xe0ec5 ,
+ 0xe0ec6 ,
+ 0xe0ec7 ,
+ 0xe0ec8 ,
+ 0xe0ec9 ,
+ 0xe0eca ,
+ 0xe0ecb ,
+ 0xe0ecc ,
+ 0xe0ecd ,
+ 0xe0ece ,
+ 0xe0ecf ,
+ 0xe0ed0 ,
+ 0xe0ed1 ,
+ 0xe0ed2 ,
+ 0xe0ed3 ,
+ 0xe0ed4 ,
+ 0xe0ed5 ,
+ 0xe0ed6 ,
+ 0xe0ed7 ,
+ 0xe0ed8 ,
+ 0xe0ed9 ,
+ 0xe0eda ,
+ 0xe0edb ,
+ 0xe0edc ,
+ 0xe0edd ,
+ 0xe0ede ,
+ 0xe0edf ,
+ 0xe0ee0 ,
+ 0xe0ee1 ,
+ 0xe0ee2 ,
+ 0xe0ee3 ,
+ 0xe0ee4 ,
+ 0xe0ee5 ,
+ 0xe0ee6 ,
+ 0xe0ee7 ,
+ 0xe0ee8 ,
+ 0xe0ee9 ,
+ 0xe0eea ,
+ 0xe0eeb ,
+ 0xe0eec ,
+ 0xe0eed ,
+ 0xe0eee ,
+ 0xe0eef ,
+ 0xe0ef0 ,
+ 0xe0ef1 ,
+ 0xe0ef2 ,
+ 0xe0ef3 ,
+ 0xe0ef4 ,
+ 0xe0ef5 ,
+ 0xe0ef6 ,
+ 0xe0ef7 ,
+ 0xe0ef8 ,
+ 0xe0ef9 ,
+ 0xe0efa ,
+ 0xe0efb ,
+ 0xe0efc ,
+ 0xe0efd ,
+ 0xe0efe ,
+ 0xe0eff ,
+ 0xe0f00 ,
+ 0xe0f01 ,
+ 0xe0f02 ,
+ 0xe0f03 ,
+ 0xe0f04 ,
+ 0xe0f05 ,
+ 0xe0f06 ,
+ 0xe0f07 ,
+ 0xe0f08 ,
+ 0xe0f09 ,
+ 0xe0f0a ,
+ 0xe0f0b ,
+ 0xe0f0c ,
+ 0xe0f0d ,
+ 0xe0f0e ,
+ 0xe0f0f ,
+ 0xe0f10 ,
+ 0xe0f11 ,
+ 0xe0f12 ,
+ 0xe0f13 ,
+ 0xe0f14 ,
+ 0xe0f15 ,
+ 0xe0f16 ,
+ 0xe0f17 ,
+ 0xe0f18 ,
+ 0xe0f19 ,
+ 0xe0f1a ,
+ 0xe0f1b ,
+ 0xe0f1c ,
+ 0xe0f1d ,
+ 0xe0f1e ,
+ 0xe0f1f ,
+ 0xe0f20 ,
+ 0xe0f21 ,
+ 0xe0f22 ,
+ 0xe0f23 ,
+ 0xe0f24 ,
+ 0xe0f25 ,
+ 0xe0f26 ,
+ 0xe0f27 ,
+ 0xe0f28 ,
+ 0xe0f29 ,
+ 0xe0f2a ,
+ 0xe0f2b ,
+ 0xe0f2c ,
+ 0xe0f2d ,
+ 0xe0f2e ,
+ 0xe0f2f ,
+ 0xe0f30 ,
+ 0xe0f31 ,
+ 0xe0f32 ,
+ 0xe0f33 ,
+ 0xe0f34 ,
+ 0xe0f35 ,
+ 0xe0f36 ,
+ 0xe0f37 ,
+ 0xe0f38 ,
+ 0xe0f39 ,
+ 0xe0f3a ,
+ 0xe0f3b ,
+ 0xe0f3c ,
+ 0xe0f3d ,
+ 0xe0f3e ,
+ 0xe0f3f ,
+ 0xe0f40 ,
+ 0xe0f41 ,
+ 0xe0f42 ,
+ 0xe0f43 ,
+ 0xe0f44 ,
+ 0xe0f45 ,
+ 0xe0f46 ,
+ 0xe0f47 ,
+ 0xe0f48 ,
+ 0xe0f49 ,
+ 0xe0f4a ,
+ 0xe0f4b ,
+ 0xe0f4c ,
+ 0xe0f4d ,
+ 0xe0f4e ,
+ 0xe0f4f ,
+ 0xe0f50 ,
+ 0xe0f51 ,
+ 0xe0f52 ,
+ 0xe0f53 ,
+ 0xe0f54 ,
+ 0xe0f55 ,
+ 0xe0f56 ,
+ 0xe0f57 ,
+ 0xe0f58 ,
+ 0xe0f59 ,
+ 0xe0f5a ,
+ 0xe0f5b ,
+ 0xe0f5c ,
+ 0xe0f5d ,
+ 0xe0f5e ,
+ 0xe0f5f ,
+ 0xe0f60 ,
+ 0xe0f61 ,
+ 0xe0f62 ,
+ 0xe0f63 ,
+ 0xe0f64 ,
+ 0xe0f65 ,
+ 0xe0f66 ,
+ 0xe0f67 ,
+ 0xe0f68 ,
+ 0xe0f69 ,
+ 0xe0f6a ,
+ 0xe0f6b ,
+ 0xe0f6c ,
+ 0xe0f6d ,
+ 0xe0f6e ,
+ 0xe0f6f ,
+ 0xe0f70 ,
+ 0xe0f71 ,
+ 0xe0f72 ,
+ 0xe0f73 ,
+ 0xe0f74 ,
+ 0xe0f75 ,
+ 0xe0f76 ,
+ 0xe0f77 ,
+ 0xe0f78 ,
+ 0xe0f79 ,
+ 0xe0f7a ,
+ 0xe0f7b ,
+ 0xe0f7c ,
+ 0xe0f7d ,
+ 0xe0f7e ,
+ 0xe0f7f ,
+ 0xe0f80 ,
+ 0xe0f81 ,
+ 0xe0f82 ,
+ 0xe0f83 ,
+ 0xe0f84 ,
+ 0xe0f85 ,
+ 0xe0f86 ,
+ 0xe0f87 ,
+ 0xe0f88 ,
+ 0xe0f89 ,
+ 0xe0f8a ,
+ 0xe0f8b ,
+ 0xe0f8c ,
+ 0xe0f8d ,
+ 0xe0f8e ,
+ 0xe0f8f ,
+ 0xe0f90 ,
+ 0xe0f91 ,
+ 0xe0f92 ,
+ 0xe0f93 ,
+ 0xe0f94 ,
+ 0xe0f95 ,
+ 0xe0f96 ,
+ 0xe0f97 ,
+ 0xe0f98 ,
+ 0xe0f99 ,
+ 0xe0f9a ,
+ 0xe0f9b ,
+ 0xe0f9c ,
+ 0xe0f9d ,
+ 0xe0f9e ,
+ 0xe0f9f ,
+ 0xe0fa0 ,
+ 0xe0fa1 ,
+ 0xe0fa2 ,
+ 0xe0fa3 ,
+ 0xe0fa4 ,
+ 0xe0fa5 ,
+ 0xe0fa6 ,
+ 0xe0fa7 ,
+ 0xe0fa8 ,
+ 0xe0fa9 ,
+ 0xe0faa ,
+ 0xe0fab ,
+ 0xe0fac ,
+ 0xe0fad ,
+ 0xe0fae ,
+ 0xe0faf ,
+ 0xe0fb0 ,
+ 0xe0fb1 ,
+ 0xe0fb2 ,
+ 0xe0fb3 ,
+ 0xe0fb4 ,
+ 0xe0fb5 ,
+ 0xe0fb6 ,
+ 0xe0fb7 ,
+ 0xe0fb8 ,
+ 0xe0fb9 ,
+ 0xe0fba ,
+ 0xe0fbb ,
+ 0xe0fbc ,
+ 0xe0fbd ,
+ 0xe0fbe ,
+ 0xe0fbf ,
+ 0xe0fc0 ,
+ 0xe0fc1 ,
+ 0xe0fc2 ,
+ 0xe0fc3 ,
+ 0xe0fc4 ,
+ 0xe0fc5 ,
+ 0xe0fc6 ,
+ 0xe0fc7 ,
+ 0xe0fc8 ,
+ 0xe0fc9 ,
+ 0xe0fca ,
+ 0xe0fcb ,
+ 0xe0fcc ,
+ 0xe0fcd ,
+ 0xe0fce ,
+ 0xe0fcf ,
+ 0xe0fd0 ,
+ 0xe0fd1 ,
+ 0xe0fd2 ,
+ 0xe0fd3 ,
+ 0xe0fd4 ,
+ 0xe0fd5 ,
+ 0xe0fd6 ,
+ 0xe0fd7 ,
+ 0xe0fd8 ,
+ 0xe0fd9 ,
+ 0xe0fda ,
+ 0xe0fdb ,
+ 0xe0fdc ,
+ 0xe0fdd ,
+ 0xe0fde ,
+ 0xe0fdf ,
+ 0xe0fe0 ,
+ 0xe0fe1 ,
+ 0xe0fe2 ,
+ 0xe0fe3 ,
+ 0xe0fe4 ,
+ 0xe0fe5 ,
+ 0xe0fe6 ,
+ 0xe0fe7 ,
+ 0xe0fe8 ,
+ 0xe0fe9 ,
+ 0xe0fea ,
+ 0xe0feb ,
+ 0xe0fec ,
+ 0xe0fed ,
+ 0xe0fee ,
+ 0xe0fef ,
+ 0xe0ff0 ,
+ 0xe0ff1 ,
+ 0xe0ff2 ,
+ 0xe0ff3 ,
+ 0xe0ff4 ,
+ 0xe0ff5 ,
+ 0xe0ff6 ,
+ 0xe0ff7 ,
+ 0xe0ff8 ,
+ 0xe0ff9 ,
+ 0xe0ffa ,
+ 0xe0ffb ,
+ 0xe0ffc ,
+ 0xe0ffd ,
+ 0xe0ffe ,
+ 0xe0fff };
+
+static FcBlanks fcBlanks = {
+ 4191,
+ -1,
+ _fcBlanks
+};
+
diff --git a/fc-blanks/fcblanks.tmpl.h b/fc-blanks/fcblanks.tmpl.h
new file mode 100644
index 00000000..2bcaa21d
--- /dev/null
+++ b/fc-blanks/fcblanks.tmpl.h
@@ -0,0 +1,25 @@
+/*
+ * fontconfig/fc-blanks/fcblanks.tmpl.h
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+@@@
diff --git a/fc-cache/Makefile.am b/fc-cache/Makefile.am
index 7f7d1b1a..0e107862 100644
--- a/fc-cache/Makefile.am
+++ b/fc-cache/Makefile.am
@@ -36,7 +36,7 @@ uninstall-local:
-$(RM) -rf "$(DESTDIR)$(fc_cachedir)"
endif
-INCLUDES=-I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
bin_PROGRAMS=fc-cache
diff --git a/fc-cache/Makefile.in b/fc-cache/Makefile.in
index a914194b..598c91c1 100644
--- a/fc-cache/Makefile.in
+++ b/fc-cache/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-cache$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-cache
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_CACHE_SRC = ${top_srcdir}/fc-cache
SGML = ${FC_CACHE_SRC}/fc-cache.sgml
-INCLUDES = -I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
BUILT_MANS = fc-cache.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-cache.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-cache$(EXEEXT): $(fc_cache_OBJECTS) $(fc_cache_DEPENDENCIES) $(EXTRA_fc_cache_DEPENDENCIES)
@rm -f fc-cache$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_cache_OBJECTS) $(fc_cache_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -724,9 +757,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-data-local install-dvi \
@@ -736,7 +769,7 @@ uninstall-man: uninstall-man1
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-binPROGRAMS uninstall-local \
uninstall-man uninstall-man1
diff --git a/fc-cache/fc-cache.1 b/fc-cache/fc-cache.1
index f111f868..e514779b 100644
--- a/fc-cache/fc-cache.1
+++ b/fc-cache/fc-cache.1
@@ -4,7 +4,7 @@
fc-cache \- build font information cache files
.SH SYNOPSIS
.sp
-\fBfc-cache\fR [ \fB-frsvVh\fR ] [ \fB--force\fR ] [ \fB--really-force\fR ] [ \fB--system-only\fR ] [ \fB--verbose\fR ] [ \fB--version\fR ] [ \fB--help\fR ] [ \fB\fIdir\fB\fR\fI...\fR ]
+\fBfc-cache\fR [ \fB-EfrsvVh\fR ] [ \fB--error-on-no-fonts\fR ] [ \fB--force\fR ] [ \fB--really-force\fR ] [ \fB [ -y \fIdir\fB ] [ --sysroot \fIdir\fB ] \fR ] [ \fB--system-only\fR ] [ \fB--verbose\fR ] [ \fB--version\fR ] [ \fB--help\fR ] [ \fB\fIdir\fB\fR\fI...\fR ]
.SH "DESCRIPTION"
.PP
\fBfc-cache\fR scans the font directories on
@@ -28,6 +28,11 @@ This program follows the usual GNU command line syntax,
with long options starting with two dashes (`-'). A summary of
options is included below.
.TP
+\fB-E\fR
+Raise an error if there are no fonts in
+\fB\fIdir\fB\fR or directories
+in the configuration if not given.
+.TP
\fB-f\fR
Force re-generation of apparently up-to-date cache files,
overriding the timestamp checking.
@@ -42,6 +47,9 @@ located in the user's home directory.
\fB-v\fR
Display status information while busy.
.TP
+\fB-y\fR
+Prepend \fB\fIdir\fB\fR to all paths for scanning.
+.TP
\fB-h\fR
Show summary of options.
.TP
@@ -50,9 +58,12 @@ Show version of the program and exit.
.TP
\fB\fIdir\fB\fR
Directory to scan for fonts.
+.SH "RETURN CODES"
+.PP
+\fBfc-cache\fR returns zero if the caches successfully generated. otherwise non-zero.
.SH "FILES"
.TP
-\fB\fI%cachdir%/*-%arch%\&.cache-2\fB\fR
+\fB\fI%cachedir%/*-%arch%\&.cache-%version%\fB\fR
These files are generated by \fBfc-cache\fR
and contain maps from file names to font properties. They are
read by the fontconfig library at application startup to locate
diff --git a/fc-cache/fc-cache.c b/fc-cache/fc-cache.c
index 22060960..18cd6c5d 100644
--- a/fc-cache/fc-cache.c
+++ b/fc-cache/fc-cache.c
@@ -65,8 +65,10 @@
#define _GNU_SOURCE
#include <getopt.h>
const struct option longopts[] = {
+ {"error-on-no-fonts", 0, 0, 'E'},
{"force", 0, 0, 'f'},
{"really-force", 0, 0, 'r'},
+ {"sysroot", required_argument, 0, 'y'},
{"system-only", 0, 0, 's'},
{"version", 0, 0, 'V'},
{"verbose", 0, 0, 'v'},
@@ -85,26 +87,31 @@ usage (char *program, int error)
{
FILE *file = error ? stderr : stdout;
#if HAVE_GETOPT_LONG
- fprintf (file, "usage: %s [-frsvVh] [--force|--really-force] [--system-only] [--verbose] [--version] [--help] [dirs]\n",
+ fprintf (file, "usage: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--really-force] [--sysroot=SYSROOT] [--system-only] [--verbose] [--version] [--help] [dirs]\n",
program);
#else
- fprintf (file, "usage: %s [-frsvVh] [dirs]\n",
+ fprintf (file, "usage: %s [-EfrsvVh] [-y SYSROOT] [dirs]\n",
program);
#endif
fprintf (file, "Build font information caches in [dirs]\n"
"(all directories in font configuration by default).\n");
fprintf (file, "\n");
#if HAVE_GETOPT_LONG
- fprintf (file, " -f, --force scan directories with apparently valid caches\n");
- fprintf (file, " -r, --really-force erase all existing caches, then rescan\n");
- fprintf (file, " -s, --system-only scan system-wide directories only\n");
- fprintf (file, " -v, --verbose display status information while busy\n");
- fprintf (file, " -V, --version display font config version and exit\n");
- fprintf (file, " -h, --help display this help and exit\n");
+ fprintf (file, " -E, --error-on-no-fonts raise an error if no fonts in a directory\n");
+ fprintf (file, " -f, --force scan directories with apparently valid caches\n");
+ fprintf (file, " -r, --really-force erase all existing caches, then rescan\n");
+ fprintf (file, " -s, --system-only scan system-wide directories only\n");
+ fprintf (file, " -y, --sysroot=SYSROOT prepend SYSROOT to all paths for scanning\n");
+ fprintf (file, " -v, --verbose display status information while busy\n");
+ fprintf (file, " -V, --version display font config version and exit\n");
+ fprintf (file, " -h, --help display this help and exit\n");
#else
+ fprintf (file, " -E (error-on-no-fonts)\n");
+ fprintf (file, " raise an error if no fonts in a directory\n");
fprintf (file, " -f (force) scan directories with apparently valid caches\n");
fprintf (file, " -r, (really force) erase all existing caches, then rescan\n");
fprintf (file, " -s (system) scan system-wide directories only\n");
+ fprintf (file, " -y SYSROOT (sysroot) prepend SYSROOT to all paths for scanning\n");
fprintf (file, " -v (verbose) display status information while busy\n");
fprintf (file, " -V (version) display font config version and exit\n");
fprintf (file, " -h (help) display this help and exit\n");
@@ -115,7 +122,7 @@ usage (char *program, int error)
static FcStrSet *processed_dirs;
static int
-scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose, int *changed)
+scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose, FcBool recursive, FcBool error_on_no_fonts, int *changed, FcStrSet *updateDirs)
{
int ret = 0;
const FcChar8 *dir;
@@ -123,9 +130,10 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
FcStrList *sublist;
FcCache *cache;
struct stat statb;
- FcBool was_valid;
+ FcBool was_valid, was_processed = FcFalse;
int i;
-
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+
/*
* Now scan all of the directories into separate databases
* and write out the results
@@ -134,11 +142,15 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
{
if (verbose)
{
+ if (!recursive)
+ printf ("Re-scanning ");
+ if (sysroot)
+ printf ("[%s]", sysroot);
printf ("%s: ", dir);
fflush (stdout);
}
- if (FcStrSetMember (processed_dirs, dir))
+ if (recursive && FcStrSetMember (processed_dirs, dir))
{
if (verbose)
printf ("skipping, looped directory detected\n");
@@ -167,6 +179,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
fprintf (stderr, "\"%s\": not a directory, skipping\n", dir);
continue;
}
+ was_processed = FcTrue;
if (really_force)
FcDirCacheUnlink (dir, config);
@@ -181,8 +194,13 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
if (!cache)
{
- (*changed)++;
- cache = FcDirCacheRead (dir, FcTrue, config);
+ if (!recursive)
+ cache = FcDirCacheRescan (dir, config);
+ else
+ {
+ (*changed)++;
+ cache = FcDirCacheRead (dir, FcTrue, config);
+ }
if (!cache)
{
fprintf (stderr, "%s: error scanning\n", dir);
@@ -210,32 +228,41 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
ret++;
}
}
-
- subdirs = FcStrSetCreate ();
- if (!subdirs)
+
+ if (recursive)
{
- fprintf (stderr, "%s: Can't create subdir set\n", dir);
- ret++;
- FcDirCacheUnload (cache);
- continue;
- }
- for (i = 0; i < FcCacheNumSubdir (cache); i++)
- FcStrSetAdd (subdirs, FcCacheSubdir (cache, i));
+ subdirs = FcStrSetCreate ();
+ if (!subdirs)
+ {
+ fprintf (stderr, "%s: Can't create subdir set\n", dir);
+ ret++;
+ FcDirCacheUnload (cache);
+ continue;
+ }
+ for (i = 0; i < FcCacheNumSubdir (cache); i++)
+ FcStrSetAdd (subdirs, FcCacheSubdir (cache, i));
+ if (updateDirs && FcCacheNumSubdir (cache) > 0)
+ FcStrSetAdd (updateDirs, dir);
- FcDirCacheUnload (cache);
+ FcDirCacheUnload (cache);
- sublist = FcStrListCreate (subdirs);
- FcStrSetDestroy (subdirs);
- if (!sublist)
- {
- fprintf (stderr, "%s: Can't create subdir list\n", dir);
- ret++;
- continue;
+ sublist = FcStrListCreate (subdirs);
+ FcStrSetDestroy (subdirs);
+ if (!sublist)
+ {
+ fprintf (stderr, "%s: Can't create subdir list\n", dir);
+ ret++;
+ continue;
+ }
+ FcStrSetAdd (processed_dirs, dir);
+ ret += scanDirs (sublist, config, force, really_force, verbose, recursive, error_on_no_fonts, changed, updateDirs);
+ FcStrListDone (sublist);
}
- FcStrSetAdd (processed_dirs, dir);
- ret += scanDirs (sublist, config, force, really_force, verbose, changed);
+ else
+ FcDirCacheUnload (cache);
}
- FcStrListDone (list);
+ if (error_on_no_fonts && !was_processed)
+ ret++;
return ret;
}
@@ -263,13 +290,15 @@ cleanCacheDirectories (FcConfig *config, FcBool verbose)
int
main (int argc, char **argv)
{
- FcStrSet *dirs;
+ FcStrSet *dirs, *updateDirs;
FcStrList *list;
FcBool verbose = FcFalse;
FcBool force = FcFalse;
FcBool really_force = FcFalse;
FcBool systemOnly = FcFalse;
+ FcBool error_on_no_fonts = FcFalse;
FcConfig *config;
+ FcChar8 *sysroot = NULL;
int i;
int changed;
int ret;
@@ -277,12 +306,15 @@ main (int argc, char **argv)
int c;
#if HAVE_GETOPT_LONG
- while ((c = getopt_long (argc, argv, "frsVvh", longopts, NULL)) != -1)
+ while ((c = getopt_long (argc, argv, "Efrsy:Vvh", longopts, NULL)) != -1)
#else
- while ((c = getopt (argc, argv, "frsVvh")) != -1)
+ while ((c = getopt (argc, argv, "Efrsy:Vvh")) != -1)
#endif
{
switch (c) {
+ case 'E':
+ error_on_no_fonts = FcTrue;
+ break;
case 'r':
really_force = FcTrue;
/* fall through */
@@ -292,6 +324,9 @@ main (int argc, char **argv)
case 's':
systemOnly = FcTrue;
break;
+ case 'y':
+ sysroot = FcStrCopy ((const FcChar8 *)optarg);
+ break;
case 'V':
fprintf (stderr, "fontconfig version %d.%d.%d\n",
FC_MAJOR, FC_MINOR, FC_REVISION);
@@ -312,7 +347,16 @@ main (int argc, char **argv)
if (systemOnly)
FcConfigEnableHome (FcFalse);
- config = FcInitLoadConfig ();
+ if (sysroot)
+ {
+ FcConfigSetSysRoot (NULL, sysroot);
+ FcStrFree (sysroot);
+ config = FcConfigGetCurrent();
+ }
+ else
+ {
+ config = FcInitLoadConfig ();
+ }
if (!config)
{
fprintf (stderr, "%s: Can't init font config library\n", argv[0]);
@@ -348,9 +392,19 @@ main (int argc, char **argv)
fprintf(stderr, "Cannot malloc\n");
return 1;
}
-
+
+ updateDirs = FcStrSetCreate ();
changed = 0;
- ret = scanDirs (list, config, force, really_force, verbose, &changed);
+ ret = scanDirs (list, config, force, really_force, verbose, FcTrue, error_on_no_fonts, &changed, updateDirs);
+ /* Update the directory cache again to avoid the race condition as much as possible */
+ FcStrListDone (list);
+ list = FcStrListCreate (updateDirs);
+ if (list)
+ {
+ ret += scanDirs (list, config, FcTrue, FcFalse, verbose, FcFalse, error_on_no_fonts, &changed, NULL);
+ FcStrListDone (list);
+ }
+ FcStrSetDestroy (updateDirs);
/*
* Try to create CACHEDIR.TAG anyway.
@@ -363,6 +417,8 @@ main (int argc, char **argv)
cleanCacheDirectories (config, verbose);
+ FcConfigDestroy (config);
+ FcFini ();
/*
* Now we need to sleep a second (or two, to be extra sure), to make
* sure that timestamps for changes after this run of fc-cache are later
@@ -370,8 +426,7 @@ main (int argc, char **argv)
* sleep(3) can't be interrupted by a signal here -- this isn't in the
* library, and there aren't any signals flying around here.
*/
- FcConfigDestroy (config);
- FcFini ();
+ /* the resolution of mtime on FAT is 2 seconds */
if (changed)
sleep (2);
if (verbose)
diff --git a/fc-cache/fc-cache.sgml b/fc-cache/fc-cache.sgml
index 3740be77..5ae01076 100644
--- a/fc-cache/fc-cache.sgml
+++ b/fc-cache/fc-cache.sgml
@@ -63,9 +63,14 @@ manpage.1: manpage.sgml
<cmdsynopsis>
<command>&dhpackage;</command>
- <arg><option>-frsvVh</option></arg>
+ <arg><option>-EfrsvVh</option></arg>
+ <arg><option>--error-on-no-fonts</option></arg>
<arg><option>--force</option></arg>
<arg><option>--really-force</option></arg>
+ <group>
+ <arg><option>-y</option> <option><replaceable>dir</replaceable></option></arg>
+ <arg><option>--sysroot</option> <option><replaceable>dir</replaceable></option></arg>
+ </group>
<arg><option>--system-only</option></arg>
<arg><option>--verbose</option></arg>
<arg><option>--version</option></arg>
@@ -103,6 +108,16 @@ manpage.1: manpage.sgml
<variablelist>
<varlistentry>
+ <term><option>-E</option>
+ <option>--error-on-no-fonts</option>
+ </term>
+ <listitem>
+ <para>Raise an error if there are no fonts in
+ <option><replaceable>dir</replaceable></option> or directories
+ in the configuration if not given.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>-f</option>
<option>--force</option>
</term>
@@ -137,6 +152,15 @@ manpage.1: manpage.sgml
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>-y</option>
+ <option>-sysroot</option>
+ <option><replaceable>dir</replaceable></option>
+ </term>
+ <listitem>
+ <para>Prepend <option><replaceable>dir</replaceable></option> to all paths for scanning.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>-h</option>
<option>--help</option>
</term>
@@ -163,10 +187,15 @@ manpage.1: manpage.sgml
</refsect1>
<refsect1>
+ <title>RETURN CODES</title>
+ <para><command>fc-cache</command> returns zero if the caches successfully generated. otherwise non-zero.</para>
+ </refsect1>
+
+ <refsect1>
<title>FILES</title>
<variablelist>
<varlistentry>
- <term><filename><replaceable>%cachdir%</replaceable>/*-<replaceable>%arch%</replaceable>.cache-2</filename></term>
+ <term><filename><replaceable>%cachedir%</replaceable>/*-<replaceable>%arch%</replaceable>.cache-%version%</filename></term>
<listitem>
<para>These files are generated by <command>&dhpackage;</command>
and contain maps from file names to font properties. They are
diff --git a/fc-case/CaseFolding.txt b/fc-case/CaseFolding.txt
index df1813d2..13c10a6c 100644
--- a/fc-case/CaseFolding.txt
+++ b/fc-case/CaseFolding.txt
@@ -1,8 +1,8 @@
-# CaseFolding-6.2.0.txt
-# Date: 2012-08-14, 17:54:49 GMT [MD]
+# CaseFolding-7.0.0.txt
+# Date: 2014-04-09, 20:00:56 GMT [MD]
#
# Unicode Character Database
-# Copyright (c) 1991-2012 Unicode, Inc.
+# Copyright (c) 1991-2014 Unicode, Inc.
# For terms of use, see http://www.unicode.org/terms_of_use.html
# For documentation, see http://www.unicode.org/reports/tr44/
#
@@ -25,7 +25,7 @@
#
# For information on case folding, including how to have case folding
# preserve normalization formats, see Section 3.13 Default Case Algorithms in
-# The Unicode Standard, Version 5.0.
+# The Unicode Standard.
#
# ================================================================================
# Format
@@ -58,8 +58,6 @@
# All code points not explicitly listed for Case_Folding
# have the value C for the status field, and the code point itself for the mapping field.
-# @missing: 0000..10FFFF; C; <code point>
-
# =================================================================
0041; C; 0061; # LATIN CAPITAL LETTER A
0042; C; 0062; # LATIN CAPITAL LETTER B
@@ -298,6 +296,7 @@
0370; C; 0371; # GREEK CAPITAL LETTER HETA
0372; C; 0373; # GREEK CAPITAL LETTER ARCHAIC SAMPI
0376; C; 0377; # GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA
+037F; C; 03F3; # GREEK CAPITAL LETTER YOT
0386; C; 03AC; # GREEK CAPITAL LETTER ALPHA WITH TONOS
0388; C; 03AD; # GREEK CAPITAL LETTER EPSILON WITH TONOS
0389; C; 03AE; # GREEK CAPITAL LETTER ETA WITH TONOS
@@ -505,6 +504,10 @@
0522; C; 0523; # CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK
0524; C; 0525; # CYRILLIC CAPITAL LETTER PE WITH DESCENDER
0526; C; 0527; # CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER
+0528; C; 0529; # CYRILLIC CAPITAL LETTER EN WITH LEFT HOOK
+052A; C; 052B; # CYRILLIC CAPITAL LETTER DZZHE
+052C; C; 052D; # CYRILLIC CAPITAL LETTER DCHE
+052E; C; 052F; # CYRILLIC CAPITAL LETTER EL WITH DESCENDER
0531; C; 0561; # ARMENIAN CAPITAL LETTER AYB
0532; C; 0562; # ARMENIAN CAPITAL LETTER BEN
0533; C; 0563; # ARMENIAN CAPITAL LETTER GIM
@@ -1088,6 +1091,8 @@ A690; C; A691; # CYRILLIC CAPITAL LETTER TSSE
A692; C; A693; # CYRILLIC CAPITAL LETTER TCHE
A694; C; A695; # CYRILLIC CAPITAL LETTER HWE
A696; C; A697; # CYRILLIC CAPITAL LETTER SHWE
+A698; C; A699; # CYRILLIC CAPITAL LETTER DOUBLE O
+A69A; C; A69B; # CYRILLIC CAPITAL LETTER CROSSED O
A722; C; A723; # LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF
A724; C; A725; # LATIN CAPITAL LETTER EGYPTOLOGICAL AIN
A726; C; A727; # LATIN CAPITAL LETTER HENG
@@ -1138,12 +1143,22 @@ A78B; C; A78C; # LATIN CAPITAL LETTER SALTILLO
A78D; C; 0265; # LATIN CAPITAL LETTER TURNED H
A790; C; A791; # LATIN CAPITAL LETTER N WITH DESCENDER
A792; C; A793; # LATIN CAPITAL LETTER C WITH BAR
+A796; C; A797; # LATIN CAPITAL LETTER B WITH FLOURISH
+A798; C; A799; # LATIN CAPITAL LETTER F WITH STROKE
+A79A; C; A79B; # LATIN CAPITAL LETTER VOLAPUK AE
+A79C; C; A79D; # LATIN CAPITAL LETTER VOLAPUK OE
+A79E; C; A79F; # LATIN CAPITAL LETTER VOLAPUK UE
A7A0; C; A7A1; # LATIN CAPITAL LETTER G WITH OBLIQUE STROKE
A7A2; C; A7A3; # LATIN CAPITAL LETTER K WITH OBLIQUE STROKE
A7A4; C; A7A5; # LATIN CAPITAL LETTER N WITH OBLIQUE STROKE
A7A6; C; A7A7; # LATIN CAPITAL LETTER R WITH OBLIQUE STROKE
A7A8; C; A7A9; # LATIN CAPITAL LETTER S WITH OBLIQUE STROKE
A7AA; C; 0266; # LATIN CAPITAL LETTER H WITH HOOK
+A7AB; C; 025C; # LATIN CAPITAL LETTER REVERSED OPEN E
+A7AC; C; 0261; # LATIN CAPITAL LETTER SCRIPT G
+A7AD; C; 026C; # LATIN CAPITAL LETTER L WITH BELT
+A7B0; C; 029E; # LATIN CAPITAL LETTER TURNED K
+A7B1; C; 0287; # LATIN CAPITAL LETTER TURNED T
FB00; F; 0066 0066; # LATIN SMALL LIGATURE FF
FB01; F; 0066 0069; # LATIN SMALL LIGATURE FI
FB02; F; 0066 006C; # LATIN SMALL LIGATURE FL
@@ -1222,5 +1237,37 @@ FF3A; C; FF5A; # FULLWIDTH LATIN CAPITAL LETTER Z
10425; C; 1044D; # DESERET CAPITAL LETTER ENG
10426; C; 1044E; # DESERET CAPITAL LETTER OI
10427; C; 1044F; # DESERET CAPITAL LETTER EW
+118A0; C; 118C0; # WARANG CITI CAPITAL LETTER NGAA
+118A1; C; 118C1; # WARANG CITI CAPITAL LETTER A
+118A2; C; 118C2; # WARANG CITI CAPITAL LETTER WI
+118A3; C; 118C3; # WARANG CITI CAPITAL LETTER YU
+118A4; C; 118C4; # WARANG CITI CAPITAL LETTER YA
+118A5; C; 118C5; # WARANG CITI CAPITAL LETTER YO
+118A6; C; 118C6; # WARANG CITI CAPITAL LETTER II
+118A7; C; 118C7; # WARANG CITI CAPITAL LETTER UU
+118A8; C; 118C8; # WARANG CITI CAPITAL LETTER E
+118A9; C; 118C9; # WARANG CITI CAPITAL LETTER O
+118AA; C; 118CA; # WARANG CITI CAPITAL LETTER ANG
+118AB; C; 118CB; # WARANG CITI CAPITAL LETTER GA
+118AC; C; 118CC; # WARANG CITI CAPITAL LETTER KO
+118AD; C; 118CD; # WARANG CITI CAPITAL LETTER ENY
+118AE; C; 118CE; # WARANG CITI CAPITAL LETTER YUJ
+118AF; C; 118CF; # WARANG CITI CAPITAL LETTER UC
+118B0; C; 118D0; # WARANG CITI CAPITAL LETTER ENN
+118B1; C; 118D1; # WARANG CITI CAPITAL LETTER ODD
+118B2; C; 118D2; # WARANG CITI CAPITAL LETTER TTE
+118B3; C; 118D3; # WARANG CITI CAPITAL LETTER NUNG
+118B4; C; 118D4; # WARANG CITI CAPITAL LETTER DA
+118B5; C; 118D5; # WARANG CITI CAPITAL LETTER AT
+118B6; C; 118D6; # WARANG CITI CAPITAL LETTER AM
+118B7; C; 118D7; # WARANG CITI CAPITAL LETTER BU
+118B8; C; 118D8; # WARANG CITI CAPITAL LETTER PU
+118B9; C; 118D9; # WARANG CITI CAPITAL LETTER HIYO
+118BA; C; 118DA; # WARANG CITI CAPITAL LETTER HOLO
+118BB; C; 118DB; # WARANG CITI CAPITAL LETTER HORR
+118BC; C; 118DC; # WARANG CITI CAPITAL LETTER HAR
+118BD; C; 118DD; # WARANG CITI CAPITAL LETTER SSUU
+118BE; C; 118DE; # WARANG CITI CAPITAL LETTER SII
+118BF; C; 118DF; # WARANG CITI CAPITAL LETTER VIYO
#
# EOF
diff --git a/fc-case/Makefile.in b/fc-case/Makefile.in
index 50dd0a5d..d6cccb50 100644
--- a/fc-case/Makefile.in
+++ b/fc-case/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -65,23 +65,51 @@
# Google Author(s): Behdad Esfahbod
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
esac; \
- test $$am__dry = yes; \
- }
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(noinst_HEADERS)
subdir = fc-case
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
TAG = case
DEPS = $(srcdir)/CaseFolding.txt
ARGS = $(srcdir)/CaseFolding.txt
@@ -306,7 +362,7 @@ TARG = $(OUT).h
TSRC = $(DIR).c
TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(builddir) \
-I$(srcdir) \
-I$(top_builddir)/src \
@@ -363,26 +419,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -394,15 +439,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -411,9 +452,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -566,22 +608,22 @@ uninstall-am:
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool cscopelist ctags distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am
$(TOOL): $(TSRC) $(ALIAS_FILES)
- $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+ $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
$(TARG): $(TMPL) $(TSRC) $(DEPS)
$(AM_V_GEN) $(MAKE) $(TOOL) && \
diff --git a/fc-case/fccase.h b/fc-case/fccase.h
index e80a0095..3df563ec 100644
--- a/fc-case/fccase.h
+++ b/fc-case/fccase.h
@@ -22,12 +22,12 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-#define FC_NUM_CASE_FOLD 264
+#define FC_NUM_CASE_FOLD 271
#define FC_NUM_CASE_FOLD_CHARS 471
#define FC_MAX_CASE_FOLD_CHARS 6
#define FC_MAX_CASE_FOLD_EXPAND 4
#define FC_MIN_FOLD_CHAR 0x00000041
-#define FC_MAX_FOLD_CHAR 0x00010427
+#define FC_MAX_FOLD_CHAR 0x000118bf
static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x00000041, FC_CASE_FOLD_RANGE, 0x001a, 32 },
@@ -101,6 +101,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x00000345, FC_CASE_FOLD_RANGE, 0x0001, 116 },
{ 0x00000370, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 },
{ 0x00000376, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 },
+ { 0x0000037f, FC_CASE_FOLD_RANGE, 0x0001, 116 },
{ 0x00000386, FC_CASE_FOLD_RANGE, 0x0001, 38 },
{ 0x00000388, FC_CASE_FOLD_RANGE, 0x0003, 37 },
{ 0x0000038c, FC_CASE_FOLD_RANGE, 0x0001, 64 },
@@ -130,7 +131,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x0000048a, FC_CASE_FOLD_EVEN_ODD, 0x0035, 1 },
{ 0x000004c0, FC_CASE_FOLD_RANGE, 0x0001, 15 },
{ 0x000004c1, FC_CASE_FOLD_EVEN_ODD, 0x000d, 1 },
- { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x0057, 1 },
+ { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x005f, 1 },
{ 0x00000531, FC_CASE_FOLD_RANGE, 0x0026, 48 },
{ 0x00000587, FC_CASE_FOLD_FULL, 0x0004, 23 },
{ 0x000010a0, FC_CASE_FOLD_RANGE, 0x0026, 7264 },
@@ -269,7 +270,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x00002ceb, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 },
{ 0x00002cf2, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 },
{ 0x0000a640, FC_CASE_FOLD_EVEN_ODD, 0x002d, 1 },
- { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x0017, 1 },
+ { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x001b, 1 },
{ 0x0000a722, FC_CASE_FOLD_EVEN_ODD, 0x000d, 1 },
{ 0x0000a732, FC_CASE_FOLD_EVEN_ODD, 0x003d, 1 },
{ 0x0000a779, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 },
@@ -278,8 +279,13 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x0000a78b, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 },
{ 0x0000a78d, FC_CASE_FOLD_RANGE, 0x0001, 23256 },
{ 0x0000a790, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 },
- { 0x0000a7a0, FC_CASE_FOLD_EVEN_ODD, 0x0009, 1 },
+ { 0x0000a796, FC_CASE_FOLD_EVEN_ODD, 0x0013, 1 },
{ 0x0000a7aa, FC_CASE_FOLD_RANGE, 0x0001, 23228 },
+ { 0x0000a7ab, FC_CASE_FOLD_RANGE, 0x0001, 23217 },
+ { 0x0000a7ac, FC_CASE_FOLD_RANGE, 0x0001, 23221 },
+ { 0x0000a7ad, FC_CASE_FOLD_RANGE, 0x0001, 23231 },
+ { 0x0000a7b0, FC_CASE_FOLD_RANGE, 0x0001, 23278 },
+ { 0x0000a7b1, FC_CASE_FOLD_RANGE, 0x0001, 23254 },
{ 0x0000fb00, FC_CASE_FOLD_FULL, 0x0002, 435 },
{ 0x0000fb01, FC_CASE_FOLD_FULL, 0x0002, 437 },
{ 0x0000fb02, FC_CASE_FOLD_FULL, 0x0002, 439 },
@@ -294,6 +300,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x0000fb17, FC_CASE_FOLD_FULL, 0x0004, 467 },
{ 0x0000ff21, FC_CASE_FOLD_RANGE, 0x001a, 32 },
{ 0x00010400, FC_CASE_FOLD_RANGE, 0x0028, 40 },
+ { 0x000118a0, FC_CASE_FOLD_RANGE, 0x0020, 32 },
};
static const FcChar8 fcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = {
diff --git a/fc-cat/Makefile.am b/fc-cat/Makefile.am
index b426723b..04c1cc48 100644
--- a/fc-cat/Makefile.am
+++ b/fc-cat/Makefile.am
@@ -27,7 +27,7 @@ FC_CAT_SRC=${top_srcdir}/fc-cat
SGML = ${FC_CAT_SRC}/fc-cat.sgml
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
bin_PROGRAMS=fc-cat
diff --git a/fc-cat/Makefile.in b/fc-cat/Makefile.in
index 73367908..32239f0a 100644
--- a/fc-cat/Makefile.in
+++ b/fc-cat/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-cat$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-cat
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_CAT_SRC = ${top_srcdir}/fc-cat
SGML = ${FC_CAT_SRC}/fc-cat.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS = fc-cat.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-cat.sgml ${BUILT_MANS}
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-cat$(EXEEXT): $(fc_cat_OBJECTS) $(fc_cat_DEPENDENCIES) $(EXTRA_fc_cat_DEPENDENCIES)
@rm -f fc-cat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_cat_OBJECTS) $(fc_cat_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-cat/fc-cat.1 b/fc-cat/fc-cat.1
index 7c7a3699..ff74798c 100644
--- a/fc-cat/fc-cat.1
+++ b/fc-cat/fc-cat.1
@@ -6,7 +6,7 @@ fc-cat \- read font information cache files
.sp
\fBfc-cat\fR [ \fB-rvVh\fR ] [ \fB--recurse\fR ] [ \fB--verbose\fR ] [ \fB--version\fR ] [ \fB--help\fR ]
- [ \fB [ \fIfonts-cache-2-files\fB ] [ \fIdirs\fB ] \fR\fI...\fR ]
+ [ \fB [ \fIfonts-cache-%version%-files\fB ] [ \fIdirs\fB ] \fR\fI...\fR ]
.SH "DESCRIPTION"
.PP
\fBfc-cat\fR reads the font information from
diff --git a/fc-cat/fc-cat.c b/fc-cat/fc-cat.c
index 9a2abb3f..f0131b6d 100644
--- a/fc-cat/fc-cat.c
+++ b/fc-cat/fc-cat.c
@@ -298,6 +298,7 @@ main (int argc, char **argv)
return 1;
}
FcConfigSetCurrent (config);
+ FcConfigDestroy (config);
args = FcStrSetCreate ();
if (!args)
@@ -315,12 +316,6 @@ main (int argc, char **argv)
return 1;
}
}
- arglist = FcStrListCreate (args);
- if (!arglist)
- {
- fprintf (stderr, "%s: malloc failure\n", argv[0]);
- return 1;
- }
}
else
{
@@ -340,6 +335,7 @@ main (int argc, char **argv)
fprintf (stderr, "%s: malloc failure\n", argv[0]);
return 1;
}
+ FcStrSetDestroy (args);
while ((arg = FcStrListNext (arglist)))
{
@@ -384,6 +380,7 @@ main (int argc, char **argv)
if (cache_file)
FcStrFree (cache_file);
}
+ FcStrListDone (arglist);
FcFini ();
return 0;
diff --git a/fc-cat/fc-cat.sgml b/fc-cat/fc-cat.sgml
index ce4736de..a5132543 100644
--- a/fc-cat/fc-cat.sgml
+++ b/fc-cat/fc-cat.sgml
@@ -70,7 +70,7 @@ manpage.1: manpage.sgml
<arg><option>--help</option></arg>
<sbr>
<group rep="repeat">
- <arg><option><replaceable>fonts-cache-2-files</replaceable></option></arg>
+ <arg><option><replaceable>fonts-cache-%version%-files</replaceable></option></arg>
<arg><option><replaceable>dirs</replaceable></option></arg>
</group>
diff --git a/fc-glyphname/Makefile.in b/fc-glyphname/Makefile.in
index 0b2973d3..4173cc2a 100644
--- a/fc-glyphname/Makefile.in
+++ b/fc-glyphname/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -65,23 +65,51 @@
# Google Author(s): Behdad Esfahbod
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
esac; \
- test $$am__dry = yes; \
- }
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(noinst_HEADERS)
subdir = fc-glyphname
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
TAG = glyphname
DEPS = $(srcdir)/zapfdingbats.txt
ARGS = $(srcdir)/zapfdingbats.txt
@@ -306,7 +362,7 @@ TARG = $(OUT).h
TSRC = $(DIR).c
TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(builddir) \
-I$(srcdir) \
-I$(top_builddir)/src \
@@ -363,26 +419,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -394,15 +439,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -411,9 +452,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -566,22 +608,22 @@ uninstall-am:
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool cscopelist ctags distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am
$(TOOL): $(TSRC) $(ALIAS_FILES)
- $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+ $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
$(TARG): $(TMPL) $(TSRC) $(DEPS)
$(AM_V_GEN) $(MAKE) $(TOOL) && \
diff --git a/fc-glyphname/fc-glyphname.c b/fc-glyphname/fc-glyphname.c
index 84027816..078490ae 100644
--- a/fc-glyphname/fc-glyphname.c
+++ b/fc-glyphname/fc-glyphname.c
@@ -233,7 +233,7 @@ dump (FcGlyphName * const *table, const char *name)
int
main (int argc FC_UNUSED, char **argv)
{
- char *files[MAX_GLYPHFILE];
+ char *files[MAX_GLYPHFILE + 1];
char line[1024];
FILE *f;
int i;
diff --git a/fc-lang/Makefile.am b/fc-lang/Makefile.am
index 2340de4a..6f76ee01 100644
--- a/fc-lang/Makefile.am
+++ b/fc-lang/Makefile.am
@@ -263,6 +263,7 @@ ORTH = \
pap_an.orth \
pap_aw.orth \
qu.orth \
+ quz.orth \
rn.orth \
rw.orth \
sc.orth \
diff --git a/fc-lang/Makefile.in b/fc-lang/Makefile.in
index 8c1963c7..c417fca3 100644
--- a/fc-lang/Makefile.in
+++ b/fc-lang/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -65,23 +65,51 @@
# Google Author(s): Behdad Esfahbod
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
esac; \
- test $$am__dry = yes; \
- }
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(noinst_HEADERS) README
subdir = fc-lang
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
TAG = lang
DEPS = $(ORTH)
ARGS = -d $(srcdir) $(ORTH)
@@ -306,7 +362,7 @@ TARG = $(OUT).h
TSRC = $(DIR).c
TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(builddir) \
-I$(srcdir) \
-I$(top_builddir)/src \
@@ -555,6 +611,7 @@ ORTH = \
pap_an.orth \
pap_aw.orth \
qu.orth \
+ quz.orth \
rn.orth \
rw.orth \
sc.orth \
@@ -615,26 +672,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -646,15 +692,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -663,9 +705,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -818,22 +861,22 @@ uninstall-am:
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool cscopelist ctags distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am
$(TOOL): $(TSRC) $(ALIAS_FILES)
- $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+ $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
$(TARG): $(TMPL) $(TSRC) $(DEPS)
$(AM_V_GEN) $(MAKE) $(TOOL) && \
diff --git a/fc-lang/README b/fc-lang/README
new file mode 100644
index 00000000..4aef7d11
--- /dev/null
+++ b/fc-lang/README
@@ -0,0 +1,28 @@
+Requirements for adding new orth file:
+
+* we are following up to the locale name, 2 or 3 letter code
+ in ISO 639 and ISO 3166-1 alpha-2 code to determine a
+ filename. if it's not yet available, in advance, you
+ should get it fixed in glibc or so.
+
+* Please add a reference URL (written in English as far as
+ possible) into the orth file that explains the code
+ coverage for the certain language. this would helps to
+ review if it has enough coverage.
+
+* no need to add all of the codepoints for the certain
+ language. good enough if it covers most frequently used
+ codepoints in it.
+
+To update existing orth files:
+
+* Please make sure how the changes affects to the existing
+ fonts and no regressions except it is expected behavior.
+
+* Please add any reference URL in bugzilla or any
+ explanation why it needs to be added/removed and also why
+ current orth file doesn't work.
+
+* Please provide a test case what fonts are supposed to be
+ accepted against the change and what fonts aren't.
+
diff --git a/fc-lang/fc-lang.c b/fc-lang/fc-lang.c
index 0f4217f7..38fc6973 100644
--- a/fc-lang/fc-lang.c
+++ b/fc-lang/fc-lang.c
@@ -254,7 +254,7 @@ static int compare (const void *a, const void *b)
int
main (int argc FC_UNUSED, char **argv)
{
- static Entry entries[MAX_LANG];
+ static Entry entries[MAX_LANG + 1];
static FcCharSet *sets[MAX_LANG];
static int duplicate[MAX_LANG];
static int country[MAX_LANG];
diff --git a/fc-lang/fclang.h b/fc-lang/fclang.h
index 14567dbe..9a499137 100644
--- a/fc-lang/fclang.h
+++ b/fc-lang/fclang.h
@@ -22,11 +22,11 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* total size: 909 unique leaves: 617 */
+/* total size: 1087 unique leaves: 702 */
-#define LEAF0 (243 * sizeof (FcLangCharSet))
-#define OFF0 (LEAF0 + 617 * sizeof (FcCharLeaf))
-#define NUM0 (OFF0 + 667 * sizeof (uintptr_t))
+#define LEAF0 (244 * sizeof (FcLangCharSet))
+#define OFF0 (LEAF0 + 702 * sizeof (FcCharLeaf))
+#define NUM0 (OFF0 + 755 * sizeof (uintptr_t))
#define SET(n) (n * sizeof (FcLangCharSet) + offsetof (FcLangCharSet, charset))
#define OFF(s,o) (OFF0 + o * sizeof (uintptr_t) - SET(s))
#define NUM(s,n) (NUM0 + n * sizeof (FcChar16) - SET(s))
@@ -36,12 +36,12 @@
#define fcLangCharSetIndicesInv (fcLangData.langIndicesInv)
static const struct {
- FcLangCharSet langCharSets[243];
- FcCharLeaf leaves[617];
- uintptr_t leaf_offsets[667];
- FcChar16 numbers[667];
- FcChar8 langIndices[243];
- FcChar8 langIndicesInv[243];
+ FcLangCharSet langCharSets[244];
+ FcCharLeaf leaves[702];
+ uintptr_t leaf_offsets[755];
+ FcChar16 numbers[755];
+ FcChar8 langIndices[244];
+ FcChar8 langIndicesInv[244];
} fcLangData = {
{
{ "aa", { FC_REF_CONSTANT, 1, OFF(0,0), NUM(0,0) } }, /* 0 */
@@ -212,81 +212,82 @@ static const struct {
{ "ps-pk", { FC_REF_CONSTANT, 1, OFF(165,343), NUM(165,343) } }, /* 165 */
{ "pt", { FC_REF_CONSTANT, 1, OFF(166,344), NUM(166,344) } }, /* 166 */
{ "qu", { FC_REF_CONSTANT, 2, OFF(167,345), NUM(167,345) } }, /* 167 */
- { "rm", { FC_REF_CONSTANT, 1, OFF(168,347), NUM(168,347) } }, /* 168 */
- { "rn", { FC_REF_CONSTANT, 1, OFF(169,87), NUM(169,87) } }, /* 169 */
- { "ro", { FC_REF_CONSTANT, 3, OFF(170,348), NUM(170,348) } }, /* 170 */
- { "ru", { FC_REF_CONSTANT, 1, OFF(171,279), NUM(171,279) } }, /* 171 */
- { "rw", { FC_REF_CONSTANT, 1, OFF(172,87), NUM(172,87) } }, /* 172 */
- { "sa", { FC_REF_CONSTANT, 1, OFF(173,30), NUM(173,30) } }, /* 173 */
- { "sah", { FC_REF_CONSTANT, 1, OFF(174,351), NUM(174,351) } }, /* 174 */
- { "sat", { FC_REF_CONSTANT, 1, OFF(175,352), NUM(175,352) } }, /* 175 */
- { "sc", { FC_REF_CONSTANT, 1, OFF(176,353), NUM(176,353) } }, /* 176 */
- { "sco", { FC_REF_CONSTANT, 3, OFF(177,354), NUM(177,354) } }, /* 177 */
- { "sd", { FC_REF_CONSTANT, 1, OFF(178,357), NUM(178,357) } }, /* 178 */
- { "se", { FC_REF_CONSTANT, 2, OFF(179,358), NUM(179,358) } }, /* 179 */
- { "sel", { FC_REF_CONSTANT, 1, OFF(180,279), NUM(180,279) } }, /* 180 */
- { "sg", { FC_REF_CONSTANT, 1, OFF(181,360), NUM(181,360) } }, /* 181 */
- { "sh", { FC_REF_CONSTANT, 3, OFF(182,361), NUM(182,361) } }, /* 182 */
- { "shs", { FC_REF_CONSTANT, 2, OFF(183,364), NUM(183,364) } }, /* 183 */
- { "si", { FC_REF_CONSTANT, 1, OFF(184,366), NUM(184,366) } }, /* 184 */
- { "sid", { FC_REF_CONSTANT, 2, OFF(185,367), NUM(185,367) } }, /* 185 */
- { "sk", { FC_REF_CONSTANT, 2, OFF(186,369), NUM(186,369) } }, /* 186 */
- { "sl", { FC_REF_CONSTANT, 2, OFF(187,42), NUM(187,42) } }, /* 187 */
- { "sm", { FC_REF_CONSTANT, 2, OFF(188,371), NUM(188,371) } }, /* 188 */
- { "sma", { FC_REF_CONSTANT, 1, OFF(189,373), NUM(189,373) } }, /* 189 */
- { "smj", { FC_REF_CONSTANT, 1, OFF(190,374), NUM(190,374) } }, /* 190 */
- { "smn", { FC_REF_CONSTANT, 2, OFF(191,375), NUM(191,375) } }, /* 191 */
- { "sms", { FC_REF_CONSTANT, 3, OFF(192,377), NUM(192,377) } }, /* 192 */
- { "sn", { FC_REF_CONSTANT, 1, OFF(193,87), NUM(193,87) } }, /* 193 */
- { "so", { FC_REF_CONSTANT, 1, OFF(194,87), NUM(194,87) } }, /* 194 */
- { "sq", { FC_REF_CONSTANT, 1, OFF(195,380), NUM(195,380) } }, /* 195 */
- { "sr", { FC_REF_CONSTANT, 1, OFF(196,381), NUM(196,381) } }, /* 196 */
- { "ss", { FC_REF_CONSTANT, 1, OFF(197,87), NUM(197,87) } }, /* 197 */
- { "st", { FC_REF_CONSTANT, 1, OFF(198,87), NUM(198,87) } }, /* 198 */
- { "su", { FC_REF_CONSTANT, 1, OFF(199,118), NUM(199,118) } }, /* 199 */
- { "sv", { FC_REF_CONSTANT, 1, OFF(200,382), NUM(200,382) } }, /* 200 */
- { "sw", { FC_REF_CONSTANT, 1, OFF(201,87), NUM(201,87) } }, /* 201 */
- { "syr", { FC_REF_CONSTANT, 1, OFF(202,383), NUM(202,383) } }, /* 202 */
- { "ta", { FC_REF_CONSTANT, 1, OFF(203,384), NUM(203,384) } }, /* 203 */
- { "te", { FC_REF_CONSTANT, 1, OFF(204,385), NUM(204,385) } }, /* 204 */
- { "tg", { FC_REF_CONSTANT, 1, OFF(205,386), NUM(205,386) } }, /* 205 */
- { "th", { FC_REF_CONSTANT, 1, OFF(206,387), NUM(206,387) } }, /* 206 */
- { "ti-er", { FC_REF_CONSTANT, 2, OFF(207,45), NUM(207,45) } }, /* 207 */
- { "ti-et", { FC_REF_CONSTANT, 2, OFF(208,367), NUM(208,367) } }, /* 208 */
- { "tig", { FC_REF_CONSTANT, 2, OFF(209,388), NUM(209,388) } }, /* 209 */
- { "tk", { FC_REF_CONSTANT, 2, OFF(210,390), NUM(210,390) } }, /* 210 */
- { "tl", { FC_REF_CONSTANT, 1, OFF(211,86), NUM(211,86) } }, /* 211 */
- { "tn", { FC_REF_CONSTANT, 2, OFF(212,326), NUM(212,326) } }, /* 212 */
- { "to", { FC_REF_CONSTANT, 2, OFF(213,371), NUM(213,371) } }, /* 213 */
- { "tr", { FC_REF_CONSTANT, 2, OFF(214,392), NUM(214,392) } }, /* 214 */
- { "ts", { FC_REF_CONSTANT, 1, OFF(215,87), NUM(215,87) } }, /* 215 */
- { "tt", { FC_REF_CONSTANT, 1, OFF(216,394), NUM(216,394) } }, /* 216 */
- { "tw", { FC_REF_CONSTANT, 5, OFF(217,4), NUM(217,4) } }, /* 217 */
- { "ty", { FC_REF_CONSTANT, 3, OFF(218,395), NUM(218,395) } }, /* 218 */
- { "tyv", { FC_REF_CONSTANT, 1, OFF(219,284), NUM(219,284) } }, /* 219 */
- { "ug", { FC_REF_CONSTANT, 1, OFF(220,398), NUM(220,398) } }, /* 220 */
- { "uk", { FC_REF_CONSTANT, 1, OFF(221,399), NUM(221,399) } }, /* 221 */
- { "ur", { FC_REF_CONSTANT, 1, OFF(222,287), NUM(222,287) } }, /* 222 */
- { "uz", { FC_REF_CONSTANT, 1, OFF(223,87), NUM(223,87) } }, /* 223 */
- { "ve", { FC_REF_CONSTANT, 2, OFF(224,400), NUM(224,400) } }, /* 224 */
- { "vi", { FC_REF_CONSTANT, 4, OFF(225,402), NUM(225,402) } }, /* 225 */
- { "vo", { FC_REF_CONSTANT, 1, OFF(226,406), NUM(226,406) } }, /* 226 */
- { "vot", { FC_REF_CONSTANT, 2, OFF(227,407), NUM(227,407) } }, /* 227 */
- { "wa", { FC_REF_CONSTANT, 1, OFF(228,409), NUM(228,409) } }, /* 228 */
- { "wal", { FC_REF_CONSTANT, 2, OFF(229,367), NUM(229,367) } }, /* 229 */
- { "wen", { FC_REF_CONSTANT, 2, OFF(230,410), NUM(230,410) } }, /* 230 */
- { "wo", { FC_REF_CONSTANT, 2, OFF(231,412), NUM(231,412) } }, /* 231 */
- { "xh", { FC_REF_CONSTANT, 1, OFF(232,87), NUM(232,87) } }, /* 232 */
- { "yap", { FC_REF_CONSTANT, 1, OFF(233,414), NUM(233,414) } }, /* 233 */
- { "yi", { FC_REF_CONSTANT, 1, OFF(234,108), NUM(234,108) } }, /* 234 */
- { "yo", { FC_REF_CONSTANT, 4, OFF(235,415), NUM(235,415) } }, /* 235 */
- { "za", { FC_REF_CONSTANT, 1, OFF(236,87), NUM(236,87) } }, /* 236 */
- { "zh-cn", { FC_REF_CONSTANT, 82, OFF(237,419), NUM(237,419) } }, /* 237 */
- { "zh-hk", { FC_REF_CONSTANT, 83, OFF(238,501), NUM(238,501) } }, /* 238 */
- { "zh-mo", { FC_REF_CONSTANT, 83, OFF(239,501), NUM(239,501) } }, /* 239 */
- { "zh-sg", { FC_REF_CONSTANT, 82, OFF(240,419), NUM(240,419) } }, /* 240 */
- { "zh-tw", { FC_REF_CONSTANT, 83, OFF(241,584), NUM(241,584) } }, /* 241 */
- { "zu", { FC_REF_CONSTANT, 1, OFF(242,87), NUM(242,87) } }, /* 242 */
+ { "quz", { FC_REF_CONSTANT, 2, OFF(168,345), NUM(168,345) } }, /* 168 */
+ { "rm", { FC_REF_CONSTANT, 1, OFF(169,347), NUM(169,347) } }, /* 169 */
+ { "rn", { FC_REF_CONSTANT, 1, OFF(170,87), NUM(170,87) } }, /* 170 */
+ { "ro", { FC_REF_CONSTANT, 3, OFF(171,348), NUM(171,348) } }, /* 171 */
+ { "ru", { FC_REF_CONSTANT, 1, OFF(172,279), NUM(172,279) } }, /* 172 */
+ { "rw", { FC_REF_CONSTANT, 1, OFF(173,87), NUM(173,87) } }, /* 173 */
+ { "sa", { FC_REF_CONSTANT, 1, OFF(174,30), NUM(174,30) } }, /* 174 */
+ { "sah", { FC_REF_CONSTANT, 1, OFF(175,351), NUM(175,351) } }, /* 175 */
+ { "sat", { FC_REF_CONSTANT, 1, OFF(176,352), NUM(176,352) } }, /* 176 */
+ { "sc", { FC_REF_CONSTANT, 1, OFF(177,353), NUM(177,353) } }, /* 177 */
+ { "sco", { FC_REF_CONSTANT, 3, OFF(178,354), NUM(178,354) } }, /* 178 */
+ { "sd", { FC_REF_CONSTANT, 1, OFF(179,357), NUM(179,357) } }, /* 179 */
+ { "se", { FC_REF_CONSTANT, 2, OFF(180,358), NUM(180,358) } }, /* 180 */
+ { "sel", { FC_REF_CONSTANT, 1, OFF(181,279), NUM(181,279) } }, /* 181 */
+ { "sg", { FC_REF_CONSTANT, 1, OFF(182,360), NUM(182,360) } }, /* 182 */
+ { "sh", { FC_REF_CONSTANT, 3, OFF(183,361), NUM(183,361) } }, /* 183 */
+ { "shs", { FC_REF_CONSTANT, 2, OFF(184,364), NUM(184,364) } }, /* 184 */
+ { "si", { FC_REF_CONSTANT, 1, OFF(185,366), NUM(185,366) } }, /* 185 */
+ { "sid", { FC_REF_CONSTANT, 2, OFF(186,367), NUM(186,367) } }, /* 186 */
+ { "sk", { FC_REF_CONSTANT, 2, OFF(187,369), NUM(187,369) } }, /* 187 */
+ { "sl", { FC_REF_CONSTANT, 2, OFF(188,42), NUM(188,42) } }, /* 188 */
+ { "sm", { FC_REF_CONSTANT, 2, OFF(189,371), NUM(189,371) } }, /* 189 */
+ { "sma", { FC_REF_CONSTANT, 1, OFF(190,373), NUM(190,373) } }, /* 190 */
+ { "smj", { FC_REF_CONSTANT, 1, OFF(191,374), NUM(191,374) } }, /* 191 */
+ { "smn", { FC_REF_CONSTANT, 2, OFF(192,375), NUM(192,375) } }, /* 192 */
+ { "sms", { FC_REF_CONSTANT, 3, OFF(193,377), NUM(193,377) } }, /* 193 */
+ { "sn", { FC_REF_CONSTANT, 1, OFF(194,87), NUM(194,87) } }, /* 194 */
+ { "so", { FC_REF_CONSTANT, 1, OFF(195,87), NUM(195,87) } }, /* 195 */
+ { "sq", { FC_REF_CONSTANT, 1, OFF(196,380), NUM(196,380) } }, /* 196 */
+ { "sr", { FC_REF_CONSTANT, 1, OFF(197,381), NUM(197,381) } }, /* 197 */
+ { "ss", { FC_REF_CONSTANT, 1, OFF(198,87), NUM(198,87) } }, /* 198 */
+ { "st", { FC_REF_CONSTANT, 1, OFF(199,87), NUM(199,87) } }, /* 199 */
+ { "su", { FC_REF_CONSTANT, 1, OFF(200,118), NUM(200,118) } }, /* 200 */
+ { "sv", { FC_REF_CONSTANT, 1, OFF(201,382), NUM(201,382) } }, /* 201 */
+ { "sw", { FC_REF_CONSTANT, 1, OFF(202,87), NUM(202,87) } }, /* 202 */
+ { "syr", { FC_REF_CONSTANT, 1, OFF(203,383), NUM(203,383) } }, /* 203 */
+ { "ta", { FC_REF_CONSTANT, 1, OFF(204,384), NUM(204,384) } }, /* 204 */
+ { "te", { FC_REF_CONSTANT, 1, OFF(205,385), NUM(205,385) } }, /* 205 */
+ { "tg", { FC_REF_CONSTANT, 1, OFF(206,386), NUM(206,386) } }, /* 206 */
+ { "th", { FC_REF_CONSTANT, 1, OFF(207,387), NUM(207,387) } }, /* 207 */
+ { "ti-er", { FC_REF_CONSTANT, 2, OFF(208,45), NUM(208,45) } }, /* 208 */
+ { "ti-et", { FC_REF_CONSTANT, 2, OFF(209,367), NUM(209,367) } }, /* 209 */
+ { "tig", { FC_REF_CONSTANT, 2, OFF(210,388), NUM(210,388) } }, /* 210 */
+ { "tk", { FC_REF_CONSTANT, 2, OFF(211,390), NUM(211,390) } }, /* 211 */
+ { "tl", { FC_REF_CONSTANT, 1, OFF(212,86), NUM(212,86) } }, /* 212 */
+ { "tn", { FC_REF_CONSTANT, 2, OFF(213,326), NUM(213,326) } }, /* 213 */
+ { "to", { FC_REF_CONSTANT, 2, OFF(214,371), NUM(214,371) } }, /* 214 */
+ { "tr", { FC_REF_CONSTANT, 2, OFF(215,392), NUM(215,392) } }, /* 215 */
+ { "ts", { FC_REF_CONSTANT, 1, OFF(216,87), NUM(216,87) } }, /* 216 */
+ { "tt", { FC_REF_CONSTANT, 1, OFF(217,394), NUM(217,394) } }, /* 217 */
+ { "tw", { FC_REF_CONSTANT, 5, OFF(218,4), NUM(218,4) } }, /* 218 */
+ { "ty", { FC_REF_CONSTANT, 3, OFF(219,395), NUM(219,395) } }, /* 219 */
+ { "tyv", { FC_REF_CONSTANT, 1, OFF(220,284), NUM(220,284) } }, /* 220 */
+ { "ug", { FC_REF_CONSTANT, 1, OFF(221,398), NUM(221,398) } }, /* 221 */
+ { "uk", { FC_REF_CONSTANT, 1, OFF(222,399), NUM(222,399) } }, /* 222 */
+ { "ur", { FC_REF_CONSTANT, 1, OFF(223,287), NUM(223,287) } }, /* 223 */
+ { "uz", { FC_REF_CONSTANT, 1, OFF(224,87), NUM(224,87) } }, /* 224 */
+ { "ve", { FC_REF_CONSTANT, 2, OFF(225,400), NUM(225,400) } }, /* 225 */
+ { "vi", { FC_REF_CONSTANT, 4, OFF(226,402), NUM(226,402) } }, /* 226 */
+ { "vo", { FC_REF_CONSTANT, 1, OFF(227,406), NUM(227,406) } }, /* 227 */
+ { "vot", { FC_REF_CONSTANT, 2, OFF(228,407), NUM(228,407) } }, /* 228 */
+ { "wa", { FC_REF_CONSTANT, 1, OFF(229,409), NUM(229,409) } }, /* 229 */
+ { "wal", { FC_REF_CONSTANT, 2, OFF(230,367), NUM(230,367) } }, /* 230 */
+ { "wen", { FC_REF_CONSTANT, 2, OFF(231,410), NUM(231,410) } }, /* 231 */
+ { "wo", { FC_REF_CONSTANT, 2, OFF(232,412), NUM(232,412) } }, /* 232 */
+ { "xh", { FC_REF_CONSTANT, 1, OFF(233,87), NUM(233,87) } }, /* 233 */
+ { "yap", { FC_REF_CONSTANT, 1, OFF(234,414), NUM(234,414) } }, /* 234 */
+ { "yi", { FC_REF_CONSTANT, 1, OFF(235,108), NUM(235,108) } }, /* 235 */
+ { "yo", { FC_REF_CONSTANT, 4, OFF(236,415), NUM(236,415) } }, /* 236 */
+ { "za", { FC_REF_CONSTANT, 1, OFF(237,87), NUM(237,87) } }, /* 237 */
+ { "zh-cn", { FC_REF_CONSTANT, 82, OFF(238,419), NUM(238,419) } }, /* 238 */
+ { "zh-hk", { FC_REF_CONSTANT, 171, OFF(239,501), NUM(239,501) } }, /* 239 */
+ { "zh-mo", { FC_REF_CONSTANT, 171, OFF(240,501), NUM(240,501) } }, /* 240 */
+ { "zh-sg", { FC_REF_CONSTANT, 82, OFF(241,419), NUM(241,419) } }, /* 241 */
+ { "zh-tw", { FC_REF_CONSTANT, 83, OFF(242,672), NUM(242,672) } }, /* 242 */
+ { "zu", { FC_REF_CONSTANT, 1, OFF(243,87), NUM(243,87) } }, /* 243 */
},
{
{ { /* 0 */
@@ -758,336 +759,336 @@ static const struct {
0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 117 */
- 0x000000e7, 0x00000000, 0xfffffffe, 0xffffffff,
+ 0x000000a7, 0x00000000, 0xfffffffe, 0xffffffff,
0x780fffff, 0xfffffffe, 0xffffffff, 0x787fffff,
} },
{ { /* 118 */
- 0x43f36f8b, 0x9b462442, 0xe3e0e82c, 0x400a0004,
- 0xdb365f65, 0x04497977, 0xe3f0ecd7, 0x08c56038,
+ 0x03506f8b, 0x1b042042, 0x62808020, 0x400a0000,
+ 0x10341b41, 0x04003812, 0x03608c02, 0x08454038,
} },
{ { /* 119 */
- 0x3403e602, 0x35518000, 0x7eabe0c8, 0x98698200,
- 0x2942a948, 0x8060e803, 0xad93441c, 0x4568c03a,
+ 0x2403c002, 0x15108000, 0x1229e040, 0x80280000,
+ 0x28002800, 0x8060c002, 0x2080040c, 0x05284002,
} },
{ { /* 120 */
- 0x8656aa60, 0x02403f7a, 0x14618388, 0x21741020,
- 0x07022021, 0x40bc3000, 0x4462a624, 0x0a2060a8,
+ 0x82042a00, 0x02000818, 0x10008200, 0x20700020,
+ 0x03022000, 0x40a41000, 0x0420a020, 0x00000080,
} },
{ { /* 121 */
- 0x85740217, 0x9c840402, 0x14157bfb, 0x11e27f24,
- 0x02efb665, 0x20ff1f75, 0x28403a70, 0x676326c3,
+ 0x80040011, 0x00000400, 0x04012b78, 0x11a23920,
+ 0x02842460, 0x00c01021, 0x20002050, 0x07400042,
} },
{ { /* 122 */
- 0x20924dd9, 0x0fc946b0, 0x4850bc98, 0xa03f8638,
- 0x88162388, 0x52323e09, 0xe3a422aa, 0xc72c00dd,
+ 0x208205c9, 0x0fc10230, 0x08402480, 0x00258018,
+ 0x88000080, 0x42120609, 0xa32002a8, 0x40040094,
} },
{ { /* 123 */
- 0x26e1a166, 0x8f0a840b, 0x559e27eb, 0x89bbc241,
- 0x85400014, 0x08496361, 0x8ad07f0c, 0x05cfff3e,
+ 0x00c00024, 0x8e000001, 0x059e058a, 0x013b0001,
+ 0x85000010, 0x08080000, 0x02d07d04, 0x018d9838,
} },
{ { /* 124 */
- 0xa803ff1a, 0x7b407a41, 0x80024745, 0x38eb0500,
- 0x0005d851, 0x710c9934, 0x01000397, 0x24046366,
+ 0x8803f310, 0x03000840, 0x00000704, 0x30080500,
+ 0x00001000, 0x20040000, 0x00000003, 0x04040002,
} },
{ { /* 125 */
- 0x005180d0, 0x430ac000, 0x30c89071, 0x58000008,
- 0xf7000e99, 0x00415f80, 0x941000b0, 0x62800018,
+ 0x000100d0, 0x40028000, 0x00088040, 0x00000000,
+ 0x34000210, 0x00400e00, 0x00000020, 0x00000008,
} },
{ { /* 126 */
- 0x09d00240, 0x01568200, 0x08015004, 0x05101d10,
- 0x001084c1, 0x10504025, 0x4d8a410f, 0xa60d4009,
+ 0x00000040, 0x00060000, 0x00000000, 0x00100100,
+ 0x00000080, 0x00000000, 0x4c000000, 0x240d0009,
} },
{ { /* 127 */
- 0x914cab19, 0x098121c0, 0x0003c485, 0x80000652,
- 0x00080b04, 0x0009041d, 0x905c4849, 0x16900009,
+ 0x80048000, 0x00010180, 0x00020484, 0x00000400,
+ 0x00000804, 0x00000008, 0x80004800, 0x16800000,
} },
{ { /* 128 */
- 0x22200c65, 0x24338412, 0x47960c03, 0x42250a04,
- 0x90880028, 0x4f084900, 0xd3aa14a2, 0x3e87d830,
+ 0x00200065, 0x00120410, 0x44920403, 0x40000200,
+ 0x10880008, 0x40080100, 0x00001482, 0x00074800,
} },
{ { /* 129 */
- 0x1f618604, 0x41867ea4, 0x05b3c390, 0x211857a5,
- 0x2a48241e, 0x4a041128, 0x161b0a40, 0x88400d60,
+ 0x14608200, 0x00024e84, 0x00128380, 0x20184520,
+ 0x0240041c, 0x0a001120, 0x00180a00, 0x88000800,
} },
{ { /* 130 */
- 0x9502020a, 0x10608221, 0x04000243, 0x80001444,
- 0x0c040000, 0x70000000, 0x00c11a06, 0x0c00024a,
+ 0x01000002, 0x00008001, 0x04000040, 0x80000040,
+ 0x08040000, 0x00000000, 0x00001202, 0x00000002,
} },
{ { /* 131 */
- 0x00401a00, 0x40451404, 0xbdb30029, 0x052b0a78,
- 0xbfa0bba9, 0x8379407c, 0xe81d12fc, 0xc5694bf6,
+ 0x00000000, 0x00000004, 0x21910000, 0x00000858,
+ 0xbf8013a0, 0x8279401c, 0xa8041054, 0xc5004282,
} },
{ { /* 132 */
- 0x044aeff6, 0xff022115, 0x402bed63, 0x0242d033,
- 0x00131000, 0x59ca1b02, 0x020000a0, 0x2c41a703,
+ 0x0402ce56, 0xfc020000, 0x40200d21, 0x00028030,
+ 0x00010000, 0x01081202, 0x00000000, 0x00410003,
} },
{ { /* 133 */
- 0x8ff24880, 0x00000204, 0x10055800, 0x00489200,
- 0x20011894, 0x34805004, 0x684c3200, 0x68be49ea,
+ 0x00404080, 0x00000200, 0x00010000, 0x00000000,
+ 0x00000000, 0x00000000, 0x60000000, 0x480241ea,
} },
{ { /* 134 */
- 0x2e42184c, 0x21c9a820, 0x80b050b9, 0xff7c001e,
- 0x14e0849a, 0x01e028c1, 0xac49870e, 0xdddb130f,
+ 0x2000104c, 0x2109a820, 0x00200020, 0x7b1c0008,
+ 0x10a0840a, 0x01c028c0, 0x00000608, 0x04c00000,
} },
{ { /* 135 */
- 0x89fbbe1a, 0x51a2a2e0, 0x32ca5502, 0x928b3e46,
- 0x438f1dbf, 0x32186703, 0x33c03028, 0xa9230811,
+ 0x80398412, 0x40a200e0, 0x02080000, 0x12030a04,
+ 0x008d1833, 0x02184602, 0x13803028, 0x00200801,
} },
{ { /* 136 */
- 0x3a65c000, 0x04028fe3, 0x86252c4e, 0x00a1bf3d,
- 0x8cd43a1a, 0x317c06c9, 0x950a00e0, 0x0edb018b,
+ 0x20440000, 0x000005a1, 0x00050800, 0x0020a328,
+ 0x80100000, 0x10040649, 0x10020020, 0x00090180,
} },
{ { /* 137 */
- 0x8c20e34b, 0xf0101182, 0xa7287d94, 0x40fbc9ac,
- 0x06534484, 0x44445a90, 0x00013fc8, 0xf5d40048,
+ 0x8c008202, 0x00000000, 0x00205910, 0x0041410c,
+ 0x00004004, 0x40441290, 0x00010080, 0x01040000,
} },
{ { /* 138 */
- 0xec577701, 0x891dc442, 0x49286b83, 0xd2424109,
- 0x59fe061d, 0x3a221800, 0x3b9fb7e4, 0xc0eaf003,
+ 0x04070000, 0x89108040, 0x00282a81, 0x82420000,
+ 0x51a20411, 0x32220800, 0x2b0d2220, 0x40c83003,
} },
{ { /* 139 */
- 0x82021386, 0xe4008980, 0x10a1b200, 0x0cc44b80,
- 0x8944d309, 0x48341faf, 0x0c458259, 0x0450420a,
+ 0x82020082, 0x80008900, 0x10a00200, 0x08004100,
+ 0x09041108, 0x000405a6, 0x0c018000, 0x04104002,
} },
{ { /* 140 */
- 0x10c8a040, 0x44503140, 0x01004004, 0x05408280,
- 0x442c0108, 0x1a056a30, 0x051420a6, 0x645690cf,
+ 0x00002000, 0x44003000, 0x01000004, 0x00008200,
+ 0x00000008, 0x00044010, 0x00002002, 0x00001040,
} },
{ { /* 141 */
- 0x31000021, 0xcbf09c18, 0x63e2a120, 0x01b5104c,
- 0x9a83538c, 0x3281b8b2, 0x0a84987a, 0x0c0233e7,
+ 0x00000000, 0xca008000, 0x02828020, 0x00b1100c,
+ 0x12824280, 0x22013030, 0x00808820, 0x040013e4,
} },
{ { /* 142 */
- 0x9018d4cc, 0x9070a1a1, 0xe0048a1e, 0x0451c3d4,
- 0x21c2439a, 0x53104844, 0x36400292, 0xf3bd0241,
+ 0x801840c0, 0x1000a1a1, 0x00000004, 0x0050c200,
+ 0x00c20082, 0x00104840, 0x10400080, 0xa3140000,
} },
{ { /* 143 */
- 0xe8f0ab09, 0xa5d27dc0, 0xd24bc242, 0xd0afa43f,
- 0x34a11aa0, 0x03d88247, 0x651bc452, 0xc83ad294,
+ 0xa8a02301, 0x24123d00, 0x80030200, 0xc0028022,
+ 0x34a10000, 0x00408005, 0x00190010, 0x882a0000,
} },
{ { /* 144 */
- 0x40c8001c, 0x33140e06, 0xb21b614f, 0xc0d00088,
- 0xa898a02a, 0x166ba1c5, 0x85b42e50, 0x0604c08b,
+ 0x00080018, 0x33000402, 0x9002010a, 0x00000000,
+ 0x00800020, 0x00010100, 0x84040810, 0x04004000,
} },
{ { /* 145 */
- 0x1e04f933, 0xa251056e, 0x76380400, 0x73b8ec07,
- 0x18324406, 0xc8164081, 0x63097c8a, 0xaa042980,
+ 0x10006020, 0x00000000, 0x00000000, 0x30a02000,
+ 0x00000004, 0x00000000, 0x01000800, 0x20000000,
} },
{ { /* 146 */
- 0xca9c1c24, 0x27604e0e, 0x83000990, 0x81040046,
- 0x10816011, 0x0908540d, 0xcc0a000e, 0x0c000500,
+ 0x02000000, 0x02000602, 0x80000800, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 147 */
- 0xa0440430, 0x6784008b, 0x8a195288, 0x8b18865e,
- 0x41602e59, 0x9cbe8c10, 0x891c6861, 0x00089800,
+ 0x00000010, 0x44040083, 0x00081000, 0x0818824c,
+ 0x00400e00, 0x8c300000, 0x08146001, 0x00000000,
} },
{ { /* 148 */
- 0x089a8100, 0x41900018, 0xe4a14007, 0x640d0505,
- 0x0e4d310e, 0xff0a4806, 0x2aa81632, 0x000b852e,
+ 0x00828000, 0x41900000, 0x84804006, 0x24010001,
+ 0x02400108, 0x9b080006, 0x00201602, 0x0009012e,
} },
{ { /* 149 */
- 0xca841800, 0x696c0e20, 0x16000032, 0x03905658,
- 0x1a285120, 0x11248000, 0x432618e1, 0x0eaa5d52,
+ 0x40800800, 0x48000420, 0x10000032, 0x01904440,
+ 0x02000100, 0x10048000, 0x00020000, 0x08820802,
} },
{ { /* 150 */
- 0xae280fa0, 0x4500fa7b, 0x89406408, 0xc044c880,
- 0xb1419005, 0x24c48424, 0x603a1a34, 0xc1949000,
+ 0x08080ba0, 0x00009242, 0x00400000, 0xc0008080,
+ 0x20410001, 0x04400000, 0x60020820, 0x00100000,
} },
{ { /* 151 */
- 0x003a8246, 0xc106180d, 0x99100022, 0x1511e050,
- 0x00824057, 0x020a041a, 0x8930004f, 0x444ad813,
+ 0x00108046, 0x01001805, 0x90100000, 0x00014010,
+ 0x00000010, 0x00000000, 0x0000000b, 0x00008800,
} },
{ { /* 152 */
- 0xed228a02, 0x400510c0, 0x01021000, 0x31018808,
- 0x02044600, 0x0708f000, 0xa2008900, 0x22020000,
+ 0x00000000, 0x00001000, 0x00000000, 0x20018800,
+ 0x00004600, 0x06002000, 0x00000100, 0x00000000,
} },
{ { /* 153 */
- 0x16100200, 0x10400042, 0x02605200, 0x200052f4,
- 0x80308510, 0x42021100, 0x80b54308, 0x9a2070e1,
+ 0x00000000, 0x10400042, 0x02004000, 0x00004280,
+ 0x80000400, 0x00020000, 0x00000008, 0x00000020,
} },
{ { /* 154 */
- 0x08012040, 0xfc653500, 0xab0419c1, 0x62140286,
- 0x00440087, 0x02449085, 0x0a85405c, 0x33803207,
+ 0x00000040, 0x20600400, 0x0a000180, 0x02040280,
+ 0x00000000, 0x00409001, 0x02000004, 0x00003200,
} },
{ { /* 155 */
- 0xb8c00400, 0xc0d0ce20, 0x0080c030, 0x0d250508,
- 0x00400a90, 0x080c0200, 0x40006505, 0x41026421,
+ 0x88000000, 0x80404800, 0x00000010, 0x00040008,
+ 0x00000a90, 0x00000200, 0x00002000, 0x40002001,
} },
{ { /* 156 */
- 0x00000268, 0x847c0024, 0xde200002, 0x40498619,
- 0x40000808, 0x20010084, 0x10108400, 0x01c742cd,
+ 0x00000048, 0x00100000, 0x00000000, 0x00000001,
+ 0x00000008, 0x20010080, 0x00000000, 0x00400040,
} },
{ { /* 157 */
- 0xd52a7038, 0x1d8f1968, 0x3e12be50, 0x81d92ef5,
- 0x2412cec4, 0x732e0828, 0x4b3424ac, 0xd41d020c,
+ 0x85000000, 0x0c8f0108, 0x32129000, 0x80090420,
+ 0x00024000, 0x40040800, 0x092000a0, 0x00100204,
} },
{ { /* 158 */
- 0x80002a02, 0x08110097, 0x114411c4, 0x7d451786,
- 0x064949d9, 0x87914000, 0xd8c4254c, 0x491444ba,
+ 0x00002000, 0x00000000, 0x00440004, 0x6c000000,
+ 0x000000d0, 0x80004000, 0x88800440, 0x41144018,
} },
{ { /* 159 */
- 0xc8001b92, 0x15800271, 0x0c000081, 0xc200096a,
- 0x40024800, 0xba493021, 0x1c802080, 0x1008e2ac,
+ 0x80001a02, 0x14000001, 0x00000001, 0x0000004a,
+ 0x00000000, 0x00083000, 0x08000000, 0x0008a024,
} },
{ { /* 160 */
- 0x00341004, 0x841400e1, 0x20000020, 0x10149800,
- 0x04aa70c2, 0x54208688, 0x04130c62, 0x20109180,
+ 0x00300004, 0x00140000, 0x20000000, 0x00001800,
+ 0x00020002, 0x04000000, 0x00000002, 0x00000100,
} },
{ { /* 161 */
- 0x02064082, 0x54001c40, 0xe4e90383, 0x84802125,
- 0x2000e433, 0xe60944c0, 0x81260a03, 0x080112da,
+ 0x00004002, 0x54000000, 0x60400300, 0x00002120,
+ 0x0000a022, 0x00000000, 0x81060803, 0x08010200,
} },
{ { /* 162 */
- 0x97906901, 0xf8864001, 0x0081e24d, 0xa6510a0e,
- 0x81ec011a, 0x8441c600, 0xb62cadb8, 0x8741a46f,
+ 0x04004800, 0xb0044000, 0x0000a005, 0x04500800,
+ 0x800c000a, 0x0000c000, 0x10000800, 0x02408021,
} },
{ { /* 163 */
- 0x4b028d54, 0x02681161, 0x2057bb60, 0x043350a0,
- 0xb7b4a8c0, 0x01122402, 0x20009ad3, 0x00c82271,
+ 0x08020000, 0x00001040, 0x00540a40, 0x00000000,
+ 0x00800880, 0x01020002, 0x00000211, 0x00000010,
} },
{ { /* 164 */
- 0x809e2081, 0xe1800c8a, 0x8151b009, 0x40281031,
- 0x89a52a0e, 0x620e69b6, 0xd1444425, 0x4d548085,
+ 0x00000000, 0x80000002, 0x00002000, 0x00080001,
+ 0x09840a00, 0x40000080, 0x00400000, 0x49000080,
} },
{ { /* 165 */
- 0x1fb12c75, 0x862dd807, 0x4841d87c, 0x226e414e,
- 0x9e088200, 0xed37f80c, 0x75268c80, 0x08149313,
+ 0x0e102831, 0x06098807, 0x40011014, 0x02620042,
+ 0x06000000, 0x88062000, 0x04068400, 0x08108301,
} },
{ { /* 166 */
- 0xc8040e32, 0x6ea6484e, 0x66702c4a, 0xba0126c0,
- 0x185dd30c, 0x00000000, 0x00000000, 0x00000000,
+ 0x08000012, 0x40004840, 0x00300402, 0x00012000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 167 */
- 0x00000000, 0x05400000, 0x81337020, 0x03a54f81,
- 0x641055ec, 0x2344c318, 0x00341462, 0x1a090a43,
+ 0x00000000, 0x00400000, 0x00000000, 0x00a54400,
+ 0x40004420, 0x20000310, 0x00041002, 0x18000000,
} },
{ { /* 168 */
- 0x13a5187b, 0xa8480102, 0xc5440440, 0xe2dd8106,
- 0x2d481af0, 0x0416b626, 0x6e405058, 0x31128032,
+ 0x00a1002a, 0x00080000, 0x40400000, 0x00900000,
+ 0x21401200, 0x04048626, 0x40005048, 0x21100000,
} },
{ { /* 169 */
- 0x0c0007e4, 0x420a8208, 0x803b4840, 0x87134860,
- 0x3428850d, 0xe5290319, 0x870a2345, 0x5c1825a9,
+ 0x040005a4, 0x000a0000, 0x00214000, 0x07010800,
+ 0x34000000, 0x00080100, 0x00080040, 0x10182508,
} },
{ { /* 170 */
- 0xd9c577a6, 0x03e85e00, 0xa7000081, 0x41c6cd54,
- 0xa2042800, 0x2b0ab860, 0xda9e0020, 0x0e1a08ea,
+ 0xc0805100, 0x02c01400, 0x00000080, 0x00448040,
+ 0x20000800, 0x210a8000, 0x08800000, 0x00020060,
} },
{ { /* 171 */
- 0x11c0427c, 0x03768908, 0x01058621, 0x18a80000,
- 0xc44846a0, 0x20220d05, 0x91485422, 0x28978a01,
+ 0x00004004, 0x00400100, 0x01040200, 0x00800000,
+ 0x00000000, 0x00000000, 0x10081400, 0x00008000,
} },
{ { /* 172 */
- 0x00087898, 0x31221605, 0x08804240, 0x06a2fa4e,
- 0x92110814, 0x9b042002, 0x06432e52, 0x90105000,
+ 0x00004000, 0x20000000, 0x08800200, 0x00001000,
+ 0x00000000, 0x01000000, 0x00000810, 0x00000000,
} },
{ { /* 173 */
- 0x85ba0041, 0x20203042, 0x05a04f0b, 0x40802708,
- 0x1a930591, 0x0600df50, 0x3021a202, 0x4e800630,
+ 0x00020000, 0x20200000, 0x00000000, 0x00000000,
+ 0x00000010, 0x00001c40, 0x00002000, 0x08000210,
} },
{ { /* 174 */
- 0x04c80cc4, 0x8001a004, 0xd4316000, 0x0a020880,
- 0x00281c00, 0x00418e18, 0xca106ad0, 0x4b00f210,
+ 0x00000000, 0x00000000, 0x54014000, 0x02000800,
+ 0x00200400, 0x00000000, 0x00002080, 0x00004000,
} },
{ { /* 175 */
- 0x1506274d, 0x88900220, 0x82a85a00, 0x81504549,
- 0x80002004, 0x2c088804, 0x000508d1, 0x4ac48001,
+ 0x10000004, 0x00000000, 0x00000000, 0x00000000,
+ 0x00002000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 176 */
- 0x0062e020, 0x0a42008e, 0x6a8c3055, 0xe0a5090e,
- 0x42c42906, 0x80b34814, 0xb330803e, 0x731c0102,
+ 0x00000000, 0x00000000, 0x28881041, 0x0081010a,
+ 0x00400800, 0x00000800, 0x10208026, 0x61000000,
} },
{ { /* 177 */
- 0x600d1494, 0x09400c20, 0xc040301a, 0xc094a451,
- 0x05c88dca, 0xa40c96c2, 0x34040001, 0x011000c8,
+ 0x00050080, 0x00000000, 0x80000000, 0x80040000,
+ 0x044088c2, 0x00080480, 0x00040000, 0x00000048,
} },
{ { /* 178 */
- 0xa9c9550d, 0x1c5a2428, 0x48370142, 0x100f7a4d,
- 0x452a32b4, 0x9205317b, 0x5c44b894, 0x458a68d7,
+ 0x8188410d, 0x141a2400, 0x40310000, 0x000f4249,
+ 0x41283280, 0x80053011, 0x00400880, 0x410060c0,
} },
{ { /* 179 */
- 0x2ed15097, 0x42081943, 0x9d40d202, 0x20979840,
- 0x064d5409, 0x00000000, 0x00000000, 0x00000000,
+ 0x2a004013, 0x02000002, 0x11000000, 0x00850040,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 180 */
- 0x00000000, 0x84800000, 0x04215542, 0x17001c06,
- 0x61107624, 0xb9ddff87, 0x5c0a659f, 0x3c00245d,
+ 0x00000000, 0x00800000, 0x04000440, 0x00000402,
+ 0x60001000, 0x99909f87, 0x5808049d, 0x10002445,
} },
{ { /* 181 */
- 0x0059adb0, 0x00000000, 0x00000000, 0x009b28d0,
- 0x02000422, 0x44080108, 0xac409804, 0x90288d0a,
+ 0x00000100, 0x00000000, 0x00000000, 0x00910050,
+ 0x00000420, 0x00080008, 0x20000000, 0x00288002,
} },
{ { /* 182 */
- 0xe0018700, 0x00310400, 0x82211794, 0x10540019,
- 0x021a2cb2, 0x40039c02, 0x88043d60, 0x7900080c,
+ 0x00008400, 0x00000400, 0x00000000, 0x00100000,
+ 0x00002000, 0x00000800, 0x80043400, 0x21000004,
} },
{ { /* 183 */
- 0xba3c1628, 0xcb088640, 0x90807274, 0x0000001e,
- 0xd8000000, 0x9c87e188, 0x04124034, 0x2791ae64,
+ 0x20000208, 0x01000600, 0x00000010, 0x00000000,
+ 0x48000000, 0x14060008, 0x00124020, 0x20812800,
} },
{ { /* 184 */
- 0xe6fbe86b, 0x5366408f, 0x537feea6, 0xb5e4e32b,
- 0x0002869f, 0x01228548, 0x08004402, 0x20a02116,
+ 0xa419804b, 0x01064009, 0x10386ca4, 0x85a0620b,
+ 0x00000010, 0x01000448, 0x00004400, 0x20a02102,
} },
{ { /* 185 */
- 0x02040004, 0x00052000, 0x01547e00, 0x01ac162c,
- 0x10852a84, 0x05308c14, 0xb943fbc3, 0x906000ca,
+ 0x00000000, 0x00000000, 0x00147000, 0x01a01404,
+ 0x10040000, 0x01000000, 0x3002f180, 0x00000008,
} },
{ { /* 186 */
- 0x40326000, 0x80901200, 0x4c810b30, 0x40020054,
- 0x1d6a0029, 0x02802000, 0x00048000, 0x150c2610,
+ 0x00002000, 0x00100000, 0x08000010, 0x00020004,
+ 0x01000029, 0x00002000, 0x00000000, 0x10082000,
} },
{ { /* 187 */
- 0x07018040, 0x0c24d94d, 0x18502810, 0x50205001,
- 0x04d01000, 0x02017080, 0x21c30108, 0x00000132,
+ 0x00000000, 0x0004d041, 0x08000800, 0x00200000,
+ 0x00401000, 0x00004000, 0x00000000, 0x00000002,
} },
{ { /* 188 */
- 0x07190088, 0x05600802, 0x4c0e0012, 0xf0a10405,
- 0x00000002, 0x00000000, 0x00000000, 0x00000000,
+ 0x01000000, 0x00000000, 0x00020000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 189 */
0x00000000, 0x00000000, 0x00000000, 0x00800000,
- 0x035a8e8d, 0x5a0421bd, 0x11703488, 0x00000026,
+ 0x000a0a01, 0x0004002c, 0x01000080, 0x00000000,
} },
{ { /* 190 */
- 0x10000000, 0x8804c502, 0xf801b815, 0x25ed147c,
- 0x1bb0ed60, 0x1bd70589, 0x1a627af3, 0x0ac50d0c,
+ 0x10000000, 0x08040400, 0x08012010, 0x2569043c,
+ 0x1a10c460, 0x08800009, 0x000210f0, 0x08c5050c,
} },
{ { /* 191 */
- 0x524ae5d1, 0x63050490, 0x52440354, 0x16122b57,
- 0x1101a872, 0x00182949, 0x10080948, 0x886c6000,
+ 0x10000481, 0x00040080, 0x42040000, 0x00100204,
+ 0x00000000, 0x00000000, 0x00080000, 0x88080000,
} },
{ { /* 192 */
- 0x058f916e, 0x39903012, 0x4930f840, 0x001b8880,
- 0x00000000, 0x00428500, 0x98000058, 0x7014ea04,
+ 0x010f016c, 0x18002000, 0x41307000, 0x00000080,
+ 0x00000000, 0x00000100, 0x88000000, 0x70048004,
} },
{ { /* 193 */
- 0x611d1628, 0x60005113, 0x00a71a24, 0x00000000,
- 0x03c00000, 0x10187120, 0xa9270172, 0x89066004,
+ 0x00081420, 0x00000100, 0x00000000, 0x00000000,
+ 0x02400000, 0x00001000, 0x00050070, 0x00000000,
} },
{ { /* 194 */
- 0x020cc022, 0x40810900, 0x8ca0202d, 0x00000e34,
- 0x00000000, 0x11012100, 0xc11a8011, 0x0892ec4c,
+ 0x000c4000, 0x00010000, 0x04000000, 0x00000000,
+ 0x00000000, 0x01000100, 0x01000010, 0x00000400,
} },
{ { /* 195 */
- 0x85000040, 0x1806c7ac, 0x0512e03e, 0x00108000,
- 0x80ce4008, 0x02106d01, 0x08568641, 0x0027011e,
+ 0x00000000, 0x10020000, 0x04100024, 0x00000000,
+ 0x00000000, 0x00004000, 0x00000000, 0x00000100,
} },
{ { /* 196 */
- 0x083d3750, 0x4e05e032, 0x048401c0, 0x01400081,
- 0x00000000, 0x00000000, 0x00000000, 0x00591aa0,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00100020,
} },
{ { /* 197 */
- 0x882443c8, 0xc8001d48, 0x72030152, 0x04049013,
- 0x04008280, 0x0d148a10, 0x02088056, 0x2704a040,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00008000, 0x00100000, 0x00000000, 0x00000000,
} },
{ { /* 198 */
- 0x4c000000, 0x00000000, 0x00000000, 0xa3200000,
- 0xa0ae1902, 0xdf002660, 0x7b15f010, 0x3ad08121,
+ 0x00000000, 0x00000000, 0x00000000, 0x80000000,
+ 0x00880000, 0x0c000040, 0x02040010, 0x00000000,
} },
{ { /* 199 */
- 0x00284180, 0x48001003, 0x8014cc00, 0x00c414cf,
- 0x30202000, 0x00000001, 0x00000000, 0x00000000,
+ 0x00080000, 0x08000000, 0x00000000, 0x00000004,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 200 */
0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe,
@@ -1126,7 +1127,7 @@ static const struct {
0xfffddfec, 0xc3effdff, 0x40603ddf, 0x00000003,
} },
{ { /* 209 */
- 0x00000000, 0xfffe0000, 0xffffffff, 0xffffffff,
+ 0x00000000, 0xfffe0000, 0xffffffff, 0xffffffef,
0x00007fff, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 210 */
@@ -2094,666 +2095,1006 @@ static const struct {
0x8e001ff9, 0x00000001, 0x00000000, 0x00000000,
} },
{ { /* 451 */
- 0x14000010, 0xa0c09512, 0x0c000200, 0x01000400,
- 0x050002a3, 0x98800009, 0x00004000, 0x01004c00,
+ 0x00000080, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 452 */
- 0x04800008, 0x02840300, 0x00000824, 0x00040000,
- 0x00000400, 0x20010904, 0x00001100, 0x22050030,
+ 0x00000000, 0x00000000, 0x00001000, 0x64080010,
+ 0x00480000, 0x10000020, 0x80000102, 0x08000010,
} },
{ { /* 453 */
- 0x00000108, 0x08104000, 0x01400000, 0x00001040,
- 0x00010102, 0x10000040, 0x82012000, 0x10100002,
+ 0x00000040, 0x40000000, 0x00020000, 0x01852002,
+ 0x00800010, 0x80002022, 0x084444a2, 0x480e0000,
} },
{ { /* 454 */
- 0x00006002, 0x00000800, 0x00400000, 0x02100401,
- 0x14400144, 0x013c4980, 0x880e8288, 0x50102014,
+ 0x04000200, 0x02202008, 0x80004380, 0x04000000,
+ 0x00000002, 0x12231420, 0x2058003a, 0x00200060,
} },
{ { /* 455 */
- 0x80000824, 0x101000c1, 0x02800000, 0x02080101,
- 0x04118000, 0x02200112, 0x00031020, 0x02000003,
+ 0x10002508, 0x040d0028, 0x00000009, 0x00008004,
+ 0x00800000, 0x42000001, 0x00000000, 0x09040000,
} },
{ { /* 456 */
- 0x00000002, 0x090c1090, 0xa0004004, 0x60102290,
- 0x00080000, 0x00414f45, 0x07071026, 0x40c00001,
+ 0x02008000, 0x01402001, 0x00000000, 0x00000008,
+ 0x00000000, 0x00000001, 0x00021008, 0x04000000,
} },
{ { /* 457 */
- 0x04580000, 0x0014800a, 0x00002800, 0x00002600,
- 0x50988020, 0x02140018, 0x04013800, 0x00008008,
+ 0x00100100, 0x80040080, 0x00002000, 0x00000008,
+ 0x08040601, 0x01000012, 0x10000000, 0x49001024,
} },
{ { /* 458 */
- 0x41082004, 0x80000928, 0x20080280, 0x020e0a00,
- 0x00010040, 0x16110200, 0x41800002, 0x08231400,
+ 0x0180004a, 0x00100600, 0x50840800, 0x000000c0,
+ 0x00800000, 0x20000800, 0x40000000, 0x08050000,
} },
{ { /* 459 */
- 0x40020020, 0x0080202f, 0x2015a008, 0x1c000002,
- 0xc0040e00, 0x82028012, 0x00400000, 0x2002a004,
+ 0x02004000, 0x02000804, 0x01000004, 0x18060001,
+ 0x02400001, 0x40000002, 0x20800014, 0x000c1000,
} },
{ { /* 460 */
- 0x20200001, 0xa0040000, 0x8890004c, 0xc4000080,
- 0x10012500, 0x48100482, 0x60800110, 0x40008040,
+ 0x00222000, 0x00000000, 0x00100000, 0x00000000,
+ 0x00000000, 0x00000000, 0x10422800, 0x00000800,
} },
{ { /* 461 */
- 0x00040008, 0x04000044, 0x90000091, 0x000c1200,
- 0x06040000, 0x08610480, 0x10010800, 0x080d0001,
+ 0x20080000, 0x00040000, 0x80025040, 0x20208604,
+ 0x00028020, 0x80102020, 0x080820c0, 0x10880800,
} },
{ { /* 462 */
- 0x800204b4, 0x00140000, 0x00000000, 0x00200020,
- 0x84100200, 0x01811000, 0x02000210, 0x03018800,
+ 0x00000000, 0x00000000, 0x00200109, 0x00100000,
+ 0x00000000, 0x81022700, 0x40c21404, 0x84010882,
} },
{ { /* 463 */
- 0x04042804, 0x20001c92, 0x02100020, 0x4202490a,
- 0x02420146, 0x00000803, 0x0008c008, 0x44050010,
+ 0x00004010, 0x00000000, 0x03000000, 0x00000008,
+ 0x00080000, 0x00000000, 0x10800001, 0x06002020,
} },
{ { /* 464 */
- 0x80222000, 0x00000800, 0x00008452, 0x10502140,
- 0xe0410005, 0x00000400, 0x00a00008, 0x80080000,
+ 0x00000010, 0x02000000, 0x00880020, 0x00008424,
+ 0x00000000, 0x88000000, 0x81000100, 0x04000000,
} },
{ { /* 465 */
- 0x50180020, 0x00000009, 0x40080600, 0x00000000,
- 0x56000020, 0x04000000, 0x00020006, 0x00208220,
+ 0x00004218, 0x00040000, 0x00000000, 0x80005080,
+ 0x00010000, 0x00040000, 0x08008000, 0x02008000,
} },
{ { /* 466 */
- 0x01210000, 0x40009000, 0x08c00140, 0x08110000,
- 0x00004820, 0x02400810, 0x08800002, 0x00200000,
+ 0x00020000, 0x00000000, 0x00000001, 0x04000401,
+ 0x00100000, 0x12200004, 0x00000000, 0x18100000,
} },
{ { /* 467 */
- 0x00040a00, 0x00004000, 0x40000104, 0x84000000,
- 0x02040048, 0x20000000, 0x00012000, 0x1b100000,
+ 0x00000000, 0x00000800, 0x00000000, 0x00004000,
+ 0x00800000, 0x04000000, 0x82000002, 0x00042000,
} },
{ { /* 468 */
- 0x00007000, 0x04000020, 0x10032000, 0x0804000a,
- 0x00000008, 0x04020090, 0x88000014, 0x00000000,
+ 0x00080006, 0x00000000, 0x00000000, 0x04000000,
+ 0x80008000, 0x00810001, 0xa0000000, 0x00100410,
} },
{ { /* 469 */
- 0x00000000, 0x08020008, 0x00040400, 0x40a00000,
- 0x40000000, 0x00080090, 0x40800000, 0x20000388,
+ 0x00400218, 0x88084080, 0x00260008, 0x00800404,
+ 0x00000020, 0x00000000, 0x00000000, 0x00000200,
} },
{ { /* 470 */
- 0x02001080, 0x20010004, 0x12010004, 0x20008011,
- 0x13200082, 0x02800000, 0x04098001, 0x00000004,
+ 0x00a08048, 0x00000000, 0x08000000, 0x04000000,
+ 0x00000000, 0x00000000, 0x00018000, 0x00200000,
} },
{ { /* 471 */
- 0x00000000, 0x02801000, 0x00001000, 0x00000100,
- 0x20010024, 0x00000050, 0x80200028, 0x00000020,
+ 0x01000000, 0x00000000, 0x00000000, 0x10000000,
+ 0x00000000, 0x00000000, 0x00200000, 0x00102000,
} },
{ { /* 472 */
- 0x01000000, 0x00a24000, 0x00000000, 0x82001010,
- 0x00000800, 0x02000000, 0x40020002, 0x59000044,
+ 0x00000801, 0x00000000, 0x00000000, 0x00020000,
+ 0x08000000, 0x00002000, 0x20010000, 0x04002000,
} },
{ { /* 473 */
- 0x00000080, 0x0d040000, 0x04000000, 0x10020000,
- 0x00022000, 0x00508000, 0x20080001, 0x000004a2,
+ 0x40000040, 0x50202400, 0x000a0020, 0x00040420,
+ 0x00000200, 0x00000080, 0x80000000, 0x00000020,
} },
{ { /* 474 */
- 0xc0020400, 0x00310000, 0x80002000, 0x00002800,
- 0x00000b60, 0x40200000, 0x00120000, 0x80000009,
+ 0x20008000, 0x00200010, 0x00000000, 0x00000000,
+ 0x00400000, 0x01100000, 0x00020000, 0x80000010,
} },
{ { /* 475 */
- 0x41000000, 0x00010008, 0x00880910, 0x20080888,
- 0x04044020, 0x80482010, 0x00006000, 0x00020000,
+ 0x02000000, 0x00801000, 0x00000000, 0x48058000,
+ 0x20c94000, 0x60000000, 0x00000001, 0x00000000,
} },
{ { /* 476 */
- 0x42405004, 0x00400020, 0x00000010, 0x00000886,
- 0x00008000, 0x80021011, 0x00c00000, 0x42000000,
+ 0x00004090, 0x48000000, 0x08000000, 0x28802000,
+ 0x00000002, 0x00014000, 0x00002000, 0x00002002,
} },
{ { /* 477 */
- 0x4801201f, 0x40c00004, 0x20600480, 0x00000020,
- 0x01000110, 0x22400040, 0x00000428, 0x00000000,
+ 0x00010200, 0x00100000, 0x00000000, 0x00800000,
+ 0x10020000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 478 */
- 0x0f00020f, 0x40401000, 0x00200048, 0x000c0092,
- 0x81000421, 0x00040004, 0x00620001, 0x06000202,
+ 0x00000010, 0x00000402, 0x0c000000, 0x01000400,
+ 0x01000021, 0x00000000, 0x00004000, 0x00004000,
} },
{ { /* 479 */
- 0x14001808, 0x00083800, 0x008c1028, 0x04120028,
- 0x22008404, 0x40260880, 0x01100700, 0x00400000,
+ 0x00000000, 0x00800000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x02000020,
} },
{ { /* 480 */
- 0x20000020, 0x00200000, 0x00840000, 0x04108000,
- 0x00000002, 0x00000000, 0x10000002, 0x04000402,
+ 0x00000100, 0x08000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00002000, 0x00000000,
} },
{ { /* 481 */
- 0x10000000, 0x26a20000, 0x05000200, 0x82204000,
- 0x80000000, 0x00048404, 0x80004800, 0x80000400,
+ 0x00006000, 0x00000000, 0x00000000, 0x00000400,
+ 0x04000040, 0x003c0180, 0x00000200, 0x00102000,
} },
{ { /* 482 */
- 0x00000064, 0x00000050, 0x18804000, 0x00060000,
- 0x00408002, 0x02020030, 0x00000000, 0x40000000,
+ 0x00000800, 0x101000c0, 0x00800000, 0x00000000,
+ 0x00008000, 0x02200000, 0x00020020, 0x00000000,
} },
{ { /* 483 */
- 0x01208414, 0x00000600, 0x02018000, 0x10400000,
- 0x04000840, 0x09200000, 0x2e000000, 0x04000304,
+ 0x00000000, 0x01000000, 0x00000000, 0x20100000,
+ 0x00080000, 0x00000141, 0x02001002, 0x40400001,
} },
{ { /* 484 */
- 0x00c01810, 0x20100010, 0x10400010, 0x02100000,
- 0xa0000402, 0x48200000, 0x06080000, 0x01400000,
+ 0x00580000, 0x00000002, 0x00003000, 0x00002400,
+ 0x00988000, 0x00040010, 0x00002800, 0x00000008,
} },
{ { /* 485 */
- 0x40000008, 0x00001000, 0x10112800, 0xc2a09080,
- 0x00008a02, 0x3a0000e9, 0x80611011, 0x40220000,
+ 0x40080004, 0x00000020, 0x20080000, 0x02060a00,
+ 0x00010040, 0x14010200, 0x40800000, 0x08031000,
} },
{ { /* 486 */
- 0x20000020, 0x48381a00, 0x00028421, 0x54ea0800,
- 0x01425100, 0x0490200c, 0x20020000, 0x00600800,
+ 0x40020020, 0x0000202c, 0x2014a008, 0x00000000,
+ 0x80040200, 0x82020012, 0x00400000, 0x20000000,
} },
{ { /* 487 */
- 0x00e0c201, 0x00004810, 0x10a10001, 0x00000040,
- 0x80108084, 0x00042000, 0x00002000, 0x00000004,
+ 0x00000000, 0x00000000, 0x00000004, 0x04000000,
+ 0x00000000, 0x00000000, 0x40800100, 0x00000000,
} },
{ { /* 488 */
- 0x00010014, 0x03005d00, 0x00008102, 0x00120000,
- 0x51009000, 0x04000480, 0x0021c200, 0x0a888056,
+ 0x00000008, 0x04000040, 0x00000001, 0x000c0200,
+ 0x00000000, 0x08000400, 0x00000000, 0x080c0001,
} },
{ { /* 489 */
- 0xd2b60004, 0x13800000, 0x204803a8, 0x04501921,
- 0x0a003004, 0x02100010, 0x00091100, 0x01070080,
+ 0x00000400, 0x00000000, 0x00000000, 0x00200000,
+ 0x80000000, 0x00001000, 0x00000200, 0x01000800,
} },
{ { /* 490 */
- 0x42004020, 0x08300000, 0x002a2444, 0x04046081,
- 0x40046008, 0x00120000, 0x10000108, 0x00000000,
+ 0x00000000, 0x00000800, 0x00000000, 0x40000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x04040000,
} },
{ { /* 491 */
- 0x00000084, 0x08001000, 0x0012e001, 0x045880c0,
- 0x00010000, 0x00800022, 0x02401000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000040, 0x00002000,
+ 0xa0000000, 0x00000000, 0x08000008, 0x00080000,
} },
{ { /* 492 */
- 0x4000d000, 0x00000850, 0x01000009, 0x0d840000,
- 0x01080000, 0x42008000, 0x20000828, 0x40100040,
+ 0x00000020, 0x00000000, 0x40000400, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00008000,
} },
{ { /* 493 */
- 0x51000100, 0x32000000, 0x001a0894, 0x04000040,
- 0x00002102, 0x03428000, 0x018c0080, 0x00234010,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000800, 0x00000000, 0x00000000, 0x00200000,
} },
{ { /* 494 */
- 0x00000040, 0x185c4000, 0x03000000, 0x40020004,
- 0xa20200c9, 0x00000220, 0x00101050, 0x00120004,
+ 0x00000000, 0x00000000, 0x00000000, 0x04000000,
+ 0x00000008, 0x00000000, 0x00010000, 0x1b000000,
} },
{ { /* 495 */
- 0x00000040, 0x44002400, 0x00000228, 0x20000020,
- 0x000a0008, 0x18010000, 0x3c08830c, 0x40000684,
+ 0x00007000, 0x00000000, 0x10000000, 0x00000000,
+ 0x00000000, 0x00000080, 0x80000000, 0x00000000,
} },
{ { /* 496 */
- 0x80101800, 0x02000280, 0x0020000c, 0x08009004,
- 0x00040000, 0x0004000c, 0x00018000, 0x14001000,
+ 0x00000000, 0x00020000, 0x00000000, 0x00200000,
+ 0x40000000, 0x00000010, 0x00800000, 0x00000008,
} },
{ { /* 497 */
- 0x08240000, 0x00200000, 0x20420014, 0x58112000,
- 0x10004048, 0x010050c0, 0x0408228c, 0x12282040,
+ 0x00000000, 0x00000000, 0x02000000, 0x20000010,
+ 0x00000080, 0x00000000, 0x00010000, 0x00000000,
} },
{ { /* 498 */
- 0x00000000, 0x00000020, 0x24002000, 0x00000000,
- 0x00800a00, 0x00080910, 0x1019a000, 0x60200030,
+ 0x00000000, 0x02000000, 0x00000000, 0x00000000,
+ 0x20000000, 0x00000040, 0x00200028, 0x00000000,
} },
{ { /* 499 */
- 0x00000080, 0x00000080, 0x08000000, 0x800050a0,
- 0x80044000, 0x04001010, 0x80008080, 0x00000000,
+ 0x00000000, 0x00020000, 0x00000000, 0x02000000,
+ 0x00000000, 0x02000000, 0x40020000, 0x51000040,
} },
{ { /* 500 */
- 0x00000040, 0x00800000, 0x000c4283, 0x01020000,
- 0x00888000, 0x00104008, 0x20000000, 0x04000080,
+ 0x00000080, 0x04040000, 0x00000000, 0x10000000,
+ 0x00022000, 0x00100000, 0x20000000, 0x00000082,
} },
{ { /* 501 */
- 0x20000104, 0x1802c021, 0x08100000, 0x0000004e,
- 0x80000001, 0x30c00080, 0x00000040, 0x00401200,
+ 0x40000000, 0x00010000, 0x00002000, 0x00000000,
+ 0x00000240, 0x00000000, 0x00000000, 0x00000008,
} },
{ { /* 502 */
- 0x04945288, 0x00940400, 0x06400104, 0x10002000,
- 0x00080010, 0x00400420, 0x00000102, 0x00408010,
+ 0x00000000, 0x00010000, 0x00000810, 0x00080880,
+ 0x00004000, 0x00000000, 0x00000000, 0x00020000,
} },
{ { /* 503 */
- 0x05000000, 0x40002240, 0x00100000, 0x0e400024,
- 0x00000080, 0x80000440, 0x01018410, 0xb1804004,
+ 0x00000000, 0x00400020, 0x00000000, 0x00000082,
+ 0x00000000, 0x00020001, 0x00000000, 0x00000000,
} },
{ { /* 504 */
- 0x25000800, 0x20000000, 0x00800000, 0x0000804c,
- 0x10020020, 0x42001000, 0x00082000, 0x00002000,
+ 0x40000018, 0x00000004, 0x00000000, 0x00000000,
+ 0x01000000, 0x00400000, 0x00000000, 0x00000000,
} },
{ { /* 505 */
- 0x11500020, 0x40004053, 0x11280500, 0x80060014,
- 0x004c0101, 0x60002008, 0x44000000, 0x01000036,
+ 0x00000001, 0x00400000, 0x00000000, 0x00080002,
+ 0x00000400, 0x00040000, 0x00000000, 0x00000000,
} },
{ { /* 506 */
- 0x00010028, 0x01180000, 0x84041804, 0x00098000,
- 0x00800000, 0x00000000, 0x00400002, 0x10004001,
+ 0x00000800, 0x00000800, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000100, 0x00000000,
} },
{ { /* 507 */
- 0x0051a004, 0x00008100, 0x00000024, 0x40041000,
- 0x00040000, 0x00042001, 0x00000000, 0x00008000,
+ 0x00000000, 0x00200000, 0x00000000, 0x04108000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000002,
} },
{ { /* 508 */
- 0x00000000, 0x00000000, 0x00000000, 0x20030000,
- 0x00001840, 0x00020220, 0x04404002, 0x00204000,
+ 0x00000000, 0x02800000, 0x04000000, 0x00000000,
+ 0x00000000, 0x00000004, 0x00000000, 0x00000400,
} },
{ { /* 509 */
- 0x01008010, 0x00002080, 0x40008064, 0x00004031,
- 0x10018090, 0x80304001, 0x000080a0, 0x80200040,
+ 0x00000000, 0x00000000, 0x10000000, 0x00040000,
+ 0x00400000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 510 */
- 0x00000001, 0x00000010, 0x00102088, 0x00800020,
- 0x00120681, 0x100002a0, 0x00000042, 0x00000080,
+ 0x00200000, 0x00000200, 0x00000000, 0x10000000,
+ 0x00000000, 0x00000000, 0x2a000000, 0x00000000,
} },
{ { /* 511 */
- 0x10000000, 0x21000a00, 0x00000200, 0x40000080,
- 0x10110000, 0x00108200, 0x04000000, 0x00000400,
+ 0x00400000, 0x00000000, 0x00400000, 0x00000000,
+ 0x00000002, 0x40000000, 0x00000000, 0x00400000,
} },
{ { /* 512 */
- 0x80001000, 0x80002000, 0x40003008, 0x00000204,
- 0x0801000a, 0x40000001, 0x00000000, 0x00000004,
+ 0x40000000, 0x00001000, 0x00000000, 0x00000000,
+ 0x00000202, 0x02000000, 0x80000000, 0x00020000,
} },
{ { /* 513 */
- 0x00000000, 0x00000000, 0x00020000, 0x00000000,
- 0x88000000, 0x00002000, 0x08502000, 0x00840a00,
+ 0x00000020, 0x00000800, 0x00020421, 0x00020000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00400000,
} },
{ { /* 514 */
- 0x31061808, 0x00000000, 0x00000000, 0x04000000,
- 0x00000004, 0x00000240, 0x00100009, 0x00000000,
+ 0x00200000, 0x00000000, 0x00000001, 0x00000000,
+ 0x00000084, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 515 */
- 0x00004002, 0x04002500, 0x00008040, 0x40a20100,
- 0x00000001, 0x12412080, 0x04004008, 0x00042014,
+ 0x00000000, 0x00004400, 0x00000002, 0x00100000,
+ 0x00000000, 0x00000000, 0x00008200, 0x00000000,
} },
{ { /* 516 */
- 0x02000000, 0x00012000, 0x10000402, 0x000040c0,
- 0x00080000, 0x5fe800a1, 0x04019402, 0x02000000,
+ 0x00000000, 0x12000000, 0x00000100, 0x00000001,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 517 */
- 0x00040100, 0x00880000, 0x00401000, 0x00001012,
- 0x00000000, 0x08004100, 0x00000010, 0x00000000,
+ 0x00000020, 0x08100000, 0x000a0400, 0x00000081,
+ 0x00006000, 0x00120000, 0x00000000, 0x00000000,
} },
{ { /* 518 */
- 0x00000000, 0x00000000, 0x52020000, 0x10410080,
- 0x00005000, 0x08400200, 0x80400010, 0x44400020,
+ 0x00000004, 0x08000000, 0x00004000, 0x044000c0,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 519 */
- 0x00084100, 0x10200d02, 0xa1200012, 0x00804804,
- 0x00008212, 0xc6024000, 0x08100000, 0x205c1828,
+ 0x40001000, 0x00000000, 0x01000001, 0x05000000,
+ 0x00080000, 0x02000000, 0x00000800, 0x00000000,
} },
{ { /* 520 */
- 0x00000088, 0x00031000, 0x8000013f, 0x21184b44,
- 0x100100f2, 0xa9002001, 0x08080840, 0x001b0001,
+ 0x00000100, 0x00000000, 0x00000000, 0x00000000,
+ 0x00002002, 0x01020000, 0x00800000, 0x00000000,
} },
{ { /* 521 */
- 0x28800112, 0x400020f0, 0x0910200c, 0x0a0010a0,
- 0x80000020, 0x00000004, 0x1000000a, 0x00400000,
+ 0x00000040, 0x00004000, 0x01000000, 0x00000004,
+ 0x00020000, 0x00000000, 0x00000010, 0x00000000,
} },
{ { /* 522 */
- 0x00000000, 0x00002000, 0x00000080, 0x81000000,
- 0x02c00020, 0x000004c5, 0x00000000, 0x00100100,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00080000, 0x00010000, 0x30000300, 0x00000400,
} },
{ { /* 523 */
- 0x20000000, 0x01080000, 0x00400022, 0x08000200,
- 0x00408002, 0x20400028, 0x00000000, 0x00100000,
+ 0x00000800, 0x02000000, 0x00000000, 0x00008000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 524 */
- 0x08000008, 0x00420002, 0xa0a20003, 0x00022000,
- 0x88000280, 0x65160000, 0x00040105, 0x00244041,
+ 0x00200000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x000040c0, 0x00002200, 0x12002000,
} },
{ { /* 525 */
- 0x80300000, 0x00184008, 0x00000880, 0x00201140,
- 0x00000000, 0x02900000, 0x50004588, 0x00221043,
+ 0x00000000, 0x00000020, 0x20000000, 0x00000000,
+ 0x00000200, 0x00080800, 0x1000a000, 0x00000000,
} },
{ { /* 526 */
- 0x12004000, 0x0b800000, 0x20002405, 0x0000000c,
- 0x08000000, 0x11000410, 0x04000030, 0x00200043,
+ 0x00000000, 0x00000000, 0x00000000, 0x00004000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 527 */
- 0x80011000, 0x18008042, 0x11000000, 0x00001008,
- 0x00008000, 0x24440000, 0x00800000, 0x80100005,
+ 0x00000000, 0x00000000, 0x00004280, 0x01000000,
+ 0x00800000, 0x00000008, 0x00000000, 0x00000000,
} },
{ { /* 528 */
- 0x00108204, 0x02102400, 0x00010001, 0x80000200,
- 0xa080e80a, 0x00010000, 0x20008000, 0x80122200,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000002,
+ 0x00000000, 0x20400000, 0x00000040, 0x00000000,
} },
{ { /* 529 */
- 0x88211404, 0x04208041, 0x20088020, 0x18040000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00800080, 0x00800000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00400020, 0x00000000, 0x00008000,
} },
{ { /* 530 */
- 0x00401004, 0x02100002, 0x40014210, 0x50006000,
- 0x00080008, 0x20000820, 0x00100211, 0x10000000,
+ 0x01000000, 0x00000040, 0x00000000, 0x00400000,
+ 0x00000000, 0x00000440, 0x00000000, 0x00800000,
} },
{ { /* 531 */
- 0x91005400, 0x00000000, 0x00000000, 0x08000000,
- 0x41610032, 0xa0029d44, 0x000000d2, 0x41020004,
+ 0x01000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00080000, 0x00000000,
} },
{ { /* 532 */
- 0x00800104, 0x020000c0, 0x04090030, 0x80000204,
- 0x82004000, 0x00000020, 0x00000000, 0x00000000,
+ 0x01000000, 0x00000001, 0x00000000, 0x00020000,
+ 0x00000000, 0x20002000, 0x00000000, 0x00000004,
} },
{ { /* 533 */
- 0x00000000, 0x00000000, 0x00000080, 0x00000000,
+ 0x00000008, 0x00100000, 0x00000000, 0x00010000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
{ { /* 534 */
+ 0x00000004, 0x00008000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00008000,
+ } },
+ { { /* 535 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000040, 0x00000000, 0x00004000, 0x00000000,
+ } },
+ { { /* 536 */
+ 0x00000010, 0x00002000, 0x40000040, 0x00000000,
+ 0x10000000, 0x00000000, 0x00008080, 0x00000000,
+ } },
+ { { /* 537 */
+ 0x00000000, 0x00000000, 0x00000080, 0x00000000,
+ 0x00100080, 0x000000a0, 0x00000000, 0x00000000,
+ } },
+ { { /* 538 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00100000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 539 */
+ 0x00000000, 0x00000000, 0x00001000, 0x00000000,
+ 0x0001000a, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 540 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x08002000, 0x00000000,
+ } },
+ { { /* 541 */
+ 0x00000808, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 542 */
+ 0x00004000, 0x00002400, 0x00008000, 0x40000000,
+ 0x00000001, 0x00002000, 0x04000000, 0x00040004,
+ } },
+ { { /* 543 */
+ 0x00000000, 0x00002000, 0x00000000, 0x00000000,
+ 0x00000000, 0x1c200000, 0x00000000, 0x02000000,
+ } },
+ { { /* 544 */
+ 0x00000000, 0x00080000, 0x00400000, 0x00000002,
+ 0x00000000, 0x00000100, 0x00000000, 0x00000000,
+ } },
+ { { /* 545 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00400000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 546 */
+ 0x00004100, 0x00000400, 0x20200010, 0x00004004,
+ 0x00000000, 0x42000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 547 */
+ 0x00000080, 0x00000000, 0x00000121, 0x00000200,
+ 0x000000b0, 0x80002000, 0x00000000, 0x00010000,
+ } },
+ { { /* 548 */
+ 0x00000010, 0x000000c0, 0x08100000, 0x00000020,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 549 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x02000000, 0x00000404, 0x00000000, 0x00000000,
+ } },
+ { { /* 550 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00400000, 0x00000008, 0x00000000, 0x00000000,
+ } },
+ { { /* 551 */
+ 0x00000000, 0x00000002, 0x00020000, 0x00002000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00204000,
+ } },
+ { { /* 552 */
+ 0x00000000, 0x00100000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00800000, 0x00000100, 0x00000001,
+ } },
+ { { /* 553 */
+ 0x10000000, 0x01000000, 0x00002400, 0x00000004,
+ 0x00000000, 0x00000000, 0x00000020, 0x00000002,
+ } },
+ { { /* 554 */
+ 0x00010000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 555 */
+ 0x00000000, 0x00002400, 0x00000000, 0x00000000,
+ 0x00004802, 0x00000000, 0x00000000, 0x80022000,
+ } },
+ { { /* 556 */
+ 0x00001004, 0x04208000, 0x20000020, 0x00040000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 557 */
+ 0x00000000, 0x00100000, 0x40010000, 0x00000000,
+ 0x00080000, 0x00000000, 0x00100211, 0x00000000,
+ } },
+ { { /* 558 */
+ 0x00001400, 0x00000000, 0x00000000, 0x00000000,
+ 0x00610000, 0x80008c00, 0x00000000, 0x00000000,
+ } },
+ { { /* 559 */
+ 0x00000100, 0x00000040, 0x00000000, 0x00000004,
+ 0x00004000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 560 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000400, 0x00000000,
+ } },
+ { { /* 561 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000210, 0x00000000, 0x00000000,
+ } },
+ { { /* 562 */
+ 0x00000000, 0x00000020, 0x00000002, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 563 */
+ 0x00004000, 0x00000000, 0x00000000, 0x02000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 564 */
+ 0x00000000, 0x00000000, 0x00080002, 0x01000020,
+ 0x00400000, 0x00200000, 0x00008000, 0x00000000,
+ } },
+ { { /* 565 */
+ 0x00000000, 0x00020000, 0x00000000, 0xc0020000,
+ 0x10000000, 0x00000080, 0x00000000, 0x00000000,
+ } },
+ { { /* 566 */
+ 0x00000210, 0x00000000, 0x00001000, 0x04480000,
+ 0x20000000, 0x00000004, 0x00800000, 0x02000000,
+ } },
+ { { /* 567 */
+ 0x00000000, 0x08006000, 0x00001000, 0x00000000,
+ 0x00000000, 0x00100000, 0x00000000, 0x00000400,
+ } },
+ { { /* 568 */
+ 0x00100000, 0x00000000, 0x10000000, 0x08608000,
+ 0x00000000, 0x00000000, 0x00080002, 0x00000000,
+ } },
+ { { /* 569 */
+ 0x00000000, 0x20000000, 0x00008020, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 570 */
+ 0x00000000, 0x00000000, 0x00000000, 0x10000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 571 */
+ 0x00000000, 0x00100000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 572 */
+ 0x00000000, 0x00000400, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 573 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x02000000,
+ } },
+ { { /* 574 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000080, 0x00000000,
+ } },
+ { { /* 575 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000002, 0x00000000, 0x00000000,
+ } },
+ { { /* 576 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00008000, 0x00000000,
+ } },
+ { { /* 577 */
+ 0x00000000, 0x00000000, 0x00000008, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000400, 0x00000000,
+ } },
+ { { /* 578 */
+ 0x00000000, 0x00000000, 0x00220000, 0x00000004,
+ 0x00000000, 0x00040000, 0x00000004, 0x00000000,
+ } },
+ { { /* 579 */
+ 0x00000000, 0x00000000, 0x00001000, 0x00000080,
+ 0x00002000, 0x00000000, 0x00000000, 0x00004000,
+ } },
+ { { /* 580 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00100000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 581 */
+ 0x00000000, 0x00020000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 582 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00200000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 583 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x04000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 584 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000200, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 585 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000001, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 586 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00080000, 0x00000000,
+ } },
+ { { /* 587 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x01000000, 0x00000000, 0x00000400,
+ } },
+ { { /* 588 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000080, 0x00000000, 0x00000000,
+ } },
+ { { /* 589 */
+ 0x00000000, 0x00000800, 0x00000100, 0x40000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 590 */
+ 0x00000000, 0x00200000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 591 */
+ 0x00000000, 0x00000000, 0x01000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 592 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x04000000, 0x00000000,
+ } },
+ { { /* 593 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00001000, 0x00000000,
+ } },
+ { { /* 594 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000400, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 595 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x04040000,
+ } },
+ { { /* 596 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000020, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 597 */
+ 0x00000000, 0x00000000, 0x00800000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 598 */
+ 0x00000000, 0x00200000, 0x40000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 599 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x20000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 600 */
+ 0x00000000, 0x00000000, 0x00000000, 0x04000000,
+ 0x00000000, 0x00000001, 0x00000000, 0x00000000,
+ } },
+ { { /* 601 */
+ 0x00000000, 0x40000000, 0x02000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 602 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00080000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 603 */
+ 0x00000000, 0x00000010, 0x00000000, 0x00000000,
+ 0x00000000, 0x20000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 604 */
+ 0x00000000, 0x00000000, 0x20000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 605 */
+ 0x00000080, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000004,
+ } },
+ { { /* 606 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00002000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 607 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x10000001, 0x00000000,
+ } },
+ { { /* 608 */
+ 0x00008000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 609 */
+ 0x00000000, 0x00000000, 0x00004040, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 610 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00042400, 0x00000000,
+ } },
+ { { /* 611 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x02000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 612 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000080,
+ } },
+ { { /* 613 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000020,
+ } },
+ { { /* 614 */
+ 0x00000000, 0x00000001, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 615 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00020000, 0x00000000,
+ } },
+ { { /* 616 */
+ 0x00000000, 0x00000000, 0x00002000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 617 */
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ 0x01000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 618 */
+ 0x00000000, 0x00040000, 0x08000000, 0x00000000,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+ } },
+ { { /* 619 */
0xc373ff8b, 0x1b0f6840, 0xf34ce9ac, 0xc0080200,
0xca3e795c, 0x06487976, 0xf7f02fdf, 0xa8ff033a,
} },
- { { /* 535 */
+ { { /* 620 */
0x233fef37, 0xfd59b004, 0xfffff3ca, 0xfff9de9f,
0x7df7abff, 0x8eecc000, 0xffdbeebf, 0x45fad003,
} },
- { { /* 536 */
+ { { /* 621 */
0xdffefae1, 0x10abbfef, 0xfcaaffeb, 0x24fdef3f,
0x7f7678ad, 0xedfff00c, 0x2cfacff6, 0xeb6bf7f9,
} },
- { { /* 537 */
+ { { /* 622 */
0x95bf1ffd, 0xbfbf6677, 0xfeb43bfb, 0x11e27bae,
0x41bea681, 0x72c31435, 0x71917d70, 0x276b0003,
} },
- { { /* 538 */
+ { { /* 623 */
0x70cf57cb, 0x0def4732, 0xfc747eda, 0xbdb4fe06,
0x8bca3f9f, 0x58007e49, 0xebec228f, 0xddbb8a5c,
} },
- { { /* 539 */
+ { { /* 624 */
0xb6e7ef60, 0xf293a40f, 0x549e37bb, 0x9bafd04b,
0xf7d4c414, 0x0a1430b0, 0x88d02f08, 0x192fff7e,
} },
- { { /* 540 */
+ { { /* 625 */
0xfb07ffda, 0x7beb7ff1, 0x0010c5ef, 0xfdff99ff,
0x056779d7, 0xfdcbffe7, 0x4040c3ff, 0xbd8e6ff7,
} },
- { { /* 541 */
+ { { /* 626 */
0x0497dffa, 0x5bfff4c0, 0xd0e7ed7b, 0xf8e0047e,
0xb73eff9f, 0x882e7dfe, 0xbe7ffffd, 0xf6c483fe,
} },
- { { /* 542 */
+ { { /* 627 */
0xb8fdf357, 0xef7dd680, 0x47885767, 0xc3dfff7d,
0x37a9f0ff, 0x70fc7de0, 0xec9a3f6f, 0x86814cb3,
} },
- { { /* 543 */
+ { { /* 628 */
0xdd5c3f9e, 0x4819f70d, 0x0007fea3, 0x38ffaf56,
0xefb8980d, 0xb760403d, 0x9035d8ce, 0x3fff72bf,
} },
- { { /* 544 */
+ { { /* 629 */
0x7a117ff7, 0xabfff7bb, 0x6fbeff00, 0xfe72a93c,
0xf11bcfef, 0xf40adb6b, 0xef7ec3e6, 0xf6109b9c,
} },
- { { /* 545 */
+ { { /* 630 */
0x16f4f048, 0x5182feb5, 0x15bbc7b1, 0xfbdf6e87,
0x63cde43f, 0x7e7ec1ff, 0x7d5ffdeb, 0xfcfe777b,
} },
- { { /* 546 */
+ { { /* 631 */
0xdbea960b, 0x53e86229, 0xfdef37df, 0xbd8136f5,
0xfcbddc18, 0xffffd2e4, 0xffe03fd7, 0xabf87f6f,
} },
- { { /* 547 */
+ { { /* 632 */
0x6ed99bae, 0xf115f5fb, 0xbdfb79a9, 0xadaf5a3c,
0x1facdbba, 0x837971fc, 0xc35f7cf7, 0x0567dfff,
} },
- { { /* 548 */
+ { { /* 633 */
0x8467ff9a, 0xdf8b1534, 0x3373f9f3, 0x5e1af7bd,
0xa03fbf40, 0x01ebffff, 0xcfdddfc0, 0xabd37500,
} },
- { { /* 549 */
+ { { /* 634 */
0xeed6f8c3, 0xb7ff43fd, 0x42275eaf, 0xf6869bac,
0xf6bc27d7, 0x35b7f787, 0xe176aacd, 0xe29f49e7,
} },
- { { /* 550 */
+ { { /* 635 */
0xaff2545c, 0x61d82b3f, 0xbbb8fc3b, 0x7b7dffcf,
0x1ce0bf95, 0x43ff7dfd, 0xfffe5ff6, 0xc4ced3ef,
} },
- { { /* 551 */
+ { { /* 636 */
0xadbc8db6, 0x11eb63dc, 0x23d0df59, 0xf3dbbeb4,
0xdbc71fe7, 0xfae4ff63, 0x63f7b22b, 0xadbaed3b,
} },
- { { /* 552 */
+ { { /* 637 */
0x7efffe01, 0x02bcfff7, 0xef3932ff, 0x8005fffc,
0xbcf577fb, 0xfff7010d, 0xbf3afffb, 0xdfff0057,
} },
- { { /* 553 */
+ { { /* 638 */
0xbd7def7b, 0xc8d4db88, 0xed7cfff3, 0x56ff5dee,
0xac5f7e0d, 0xd57fff96, 0xc1403fee, 0xffe76ff9,
} },
- { { /* 554 */
+ { { /* 639 */
0x8e77779b, 0xe45d6ebf, 0x5f1f6fcf, 0xfedfe07f,
0x01fed7db, 0xfb7bff00, 0x1fdfffd4, 0xfffff800,
} },
- { { /* 555 */
+ { { /* 640 */
0x007bfb8f, 0x7f5cbf00, 0x07f3ffff, 0x3de7eba0,
0xfbd7f7bf, 0x6003ffbf, 0xbfedfffd, 0x027fefbb,
} },
- { { /* 556 */
+ { { /* 641 */
0xddfdfe40, 0xe2f9fdff, 0xfb1f680b, 0xaffdfbe3,
0xf7ed9fa4, 0xf80f7a7d, 0x0fd5eebe, 0xfd9fbb5d,
} },
- { { /* 557 */
+ { { /* 642 */
0x3bf9f2db, 0xebccfe7f, 0x73fa876a, 0x9ffc95fc,
0xfaf7109f, 0xbbcdddb7, 0xeccdf87e, 0x3c3ff366,
} },
- { { /* 558 */
+ { { /* 643 */
0xb03ffffd, 0x067ee9f7, 0xfe0696ae, 0x5fd7d576,
0xa3f33fd1, 0x6fb7cf07, 0x7f449fd1, 0xd3dd7b59,
} },
- { { /* 559 */
+ { { /* 644 */
0xa9bdaf3b, 0xff3a7dcf, 0xf6ebfbe0, 0xffffb401,
0xb7bf7afa, 0x0ffdc000, 0xff1fff7f, 0x95fffefc,
} },
- { { /* 560 */
+ { { /* 645 */
0xb5dc0000, 0x3f3eef63, 0x001bfb7f, 0xfbf6e800,
0xb8df9eef, 0x003fff9f, 0xf5ff7bd0, 0x3fffdfdb,
} },
- { { /* 561 */
+ { { /* 646 */
0x00bffdf0, 0xbbbd8420, 0xffdedf37, 0x0ff3ff6d,
0x5efb604c, 0xfafbfffb, 0x0219fe5e, 0xf9de79f4,
} },
- { { /* 562 */
+ { { /* 647 */
0xebfaa7f7, 0xff3401eb, 0xef73ebd3, 0xc040afd7,
0xdcff72bb, 0x2fd8f17f, 0xfe0bb8ec, 0x1f0bdda3,
} },
- { { /* 563 */
+ { { /* 648 */
0x47cf8f1d, 0xffdeb12b, 0xda737fee, 0xcbc424ff,
0xcbf2f75d, 0xb4edecfd, 0x4dddbff9, 0xfb8d99dd,
} },
- { { /* 564 */
+ { { /* 649 */
0xaf7bbb7f, 0xc959ddfb, 0xfab5fc4f, 0x6d5fafe3,
0x3f7dffff, 0xffdb7800, 0x7effb6ff, 0x022ffbaf,
} },
- { { /* 565 */
+ { { /* 650 */
0xefc7ff9b, 0xffffffa5, 0xc7000007, 0xfff1f7ff,
0x01bf7ffd, 0xfdbcdc00, 0xffffbff5, 0x3effff7f,
} },
- { { /* 566 */
+ { { /* 651 */
0xbe000029, 0xff7ff9ff, 0xfd7e6efb, 0x039ecbff,
0xfbdde300, 0xf6dfccff, 0x117fffff, 0xfbf6f800,
} },
- { { /* 567 */
+ { { /* 652 */
0xd73ce7ef, 0xdfeffeef, 0xedbfc00b, 0xfdcdfedf,
0x40fd7bf5, 0xb75fffff, 0xf930ffdf, 0xdc97fbdf,
} },
- { { /* 568 */
+ { { /* 653 */
0xbff2fef3, 0xdfbf8fdf, 0xede6177f, 0x35530f7f,
0x877e447c, 0x45bbfa12, 0x779eede0, 0xbfd98017,
} },
- { { /* 569 */
+ { { /* 654 */
0xde897e55, 0x0447c16f, 0xf75d7ade, 0x290557ff,
0xfe9586f7, 0xf32f97b3, 0x9f75cfff, 0xfb1771f7,
} },
- { { /* 570 */
+ { { /* 655 */
0xee1934ee, 0xef6137cc, 0xef4c9fd6, 0xfbddd68f,
0x6def7b73, 0xa431d7fe, 0x97d75e7f, 0xffd80f5b,
} },
- { { /* 571 */
+ { { /* 656 */
0x7bce9d83, 0xdcff22ec, 0xef87763d, 0xfdeddfe7,
0xa0fc4fff, 0xdbfc3b77, 0x7fdc3ded, 0xf5706fa9,
} },
- { { /* 572 */
+ { { /* 657 */
0x2c403ffb, 0x847fff7f, 0xdeb7ec57, 0xf22fe69c,
0xd5b50feb, 0xede7afeb, 0xfff08c2f, 0xe8f0537f,
} },
- { { /* 573 */
+ { { /* 658 */
0xb5ffb99d, 0xe78fff66, 0xbe10d981, 0xe3c19c7c,
0x27339cd1, 0xff6d0cbc, 0xefb7fcb7, 0xffffa0df,
} },
- { { /* 574 */
+ { { /* 659 */
0xfe7bbf0b, 0x353fa3ff, 0x97cd13cc, 0xfb277637,
0x7e6ccfd6, 0xed31ec50, 0xfc1c677c, 0x5fbff6fa,
} },
- { { /* 575 */
+ { { /* 660 */
0xae2f0fba, 0x7ffea3ad, 0xde74fcf0, 0xf200ffef,
0xfea2fbbf, 0xbcff3daf, 0x5fb9f694, 0x3f8ff3ad,
} },
- { { /* 576 */
+ { { /* 661 */
0xa01ff26c, 0x01bfffef, 0x70057728, 0xda03ff35,
0xc7fad2f9, 0x5c1d3fbf, 0xec33ff3a, 0xfe9cb7af,
} },
- { { /* 577 */
+ { { /* 662 */
0x7a9f5236, 0xe722bffa, 0xfcff9ff7, 0xb61d2fbb,
0x1dfded06, 0xefdf7dd7, 0xf166eb23, 0x0dc07ed9,
} },
- { { /* 578 */
+ { { /* 663 */
0xdfbf3d3d, 0xba83c945, 0x9dd07dd1, 0xcf737b87,
0xc3f59ff3, 0xc5fedf0d, 0x83020cb3, 0xaec0e879,
} },
- { { /* 579 */
+ { { /* 664 */
0x6f0fc773, 0x093ffd7d, 0x0157fff1, 0x01ff62fb,
0x3bf3fdb4, 0x43b2b013, 0xff305ed3, 0xeb9f0fff,
} },
- { { /* 580 */
+ { { /* 665 */
0xf203feef, 0xfb893fef, 0x9e9937a9, 0xa72cdef9,
0xc1f63733, 0xfe3e812e, 0xf2f75d20, 0x69d7d585,
} },
- { { /* 581 */
+ { { /* 666 */
0xffffffff, 0xff6fdb07, 0xd97fc4ff, 0xbe0fefce,
0xf05ef17b, 0xffb7f6cf, 0xef845ef7, 0x0edfd7cb,
} },
- { { /* 582 */
+ { { /* 667 */
0xfcffff08, 0xffffee3f, 0xd7ff13ff, 0x7ffdaf0f,
0x1ffabdc7, 0x00000000, 0x00000000, 0x00000000,
} },
- { { /* 583 */
+ { { /* 668 */
0x00000000, 0xe7400000, 0xf933bd38, 0xfeed7feb,
0x7c767fe8, 0xffefb3f7, 0xd8b7feaf, 0xfbbfff6f,
} },
- { { /* 584 */
+ { { /* 669 */
0xdbf7f8fb, 0xe2f91752, 0x754785c8, 0xe3ef9090,
0x3f6d9ef4, 0x0536ee2e, 0x7ff3f7bc, 0x7f3fa07b,
} },
- { { /* 585 */
+ { { /* 670 */
0xeb600567, 0x6601babe, 0x583ffcd8, 0x87dfcaf7,
0xffa0bfcd, 0xfebf5bcd, 0xefa7b6fd, 0xdf9c77ef,
} },
- { { /* 586 */
+ { { /* 671 */
0xf8773fb7, 0xb7fc9d27, 0xdfefcab5, 0xf1b6fb5a,
0xef1fec39, 0x7ffbfbbf, 0xdafe000d, 0x4e7fbdfb,
} },
- { { /* 587 */
+ { { /* 672 */
0x5ac033ff, 0x9ffebff5, 0x005fffbf, 0xfdf80000,
0x6ffdffca, 0xa001cffd, 0xfbf2dfff, 0xff7fdfbf,
} },
- { { /* 588 */
+ { { /* 673 */
0x080ffeda, 0xbfffba08, 0xeed77afd, 0x67f9fbeb,
0xff93e044, 0x9f57df97, 0x08dffef7, 0xfedfdf80,
} },
- { { /* 589 */
+ { { /* 674 */
0xf7feffc5, 0x6803fffb, 0x6bfa67fb, 0x5fe27fff,
0xff73ffff, 0xe7fb87df, 0xf7a7ebfd, 0xefc7bf7e,
} },
- { { /* 590 */
+ { { /* 675 */
0xdf821ef3, 0xdf7e76ff, 0xda7d79c9, 0x1e9befbe,
0x77fb7ce0, 0xfffb87be, 0xffdb1bff, 0x4fe03f5c,
} },
- { { /* 591 */
+ { { /* 676 */
0x5f0e7fff, 0xddbf77ff, 0xfffff04f, 0x0ff8ffff,
0xfddfa3be, 0xfffdfc1c, 0xfb9e1f7d, 0xdedcbdff,
} },
- { { /* 592 */
+ { { /* 677 */
0xbafb3f6f, 0xfbefdf7f, 0x2eec7d1b, 0xf2f7af8e,
0xcfee7b0f, 0x77c61d96, 0xfff57e07, 0x7fdfd982,
} },
- { { /* 593 */
+ { { /* 678 */
0xc7ff5ee6, 0x79effeee, 0xffcf9a56, 0xde5efe5f,
0xf9e8896e, 0xe6c4f45e, 0xbe7c0001, 0xdddf3b7f,
} },
- { { /* 594 */
+ { { /* 679 */
0xe9efd59d, 0xde5334ac, 0x4bf7f573, 0x9eff7b4f,
0x476eb8fe, 0xff450dfb, 0xfbfeabfd, 0xddffe9d7,
} },
- { { /* 595 */
+ { { /* 680 */
0x7fffedf7, 0x7eebddfd, 0xb7ffcfe7, 0xef91bde9,
0xd77c5d75, 0x00000000, 0x00000000, 0x00000000,
} },
- { { /* 596 */
+ { { /* 681 */
0x00000000, 0xfa800000, 0xb4f1ffee, 0x2fefbf76,
0x77bfb677, 0xfffd9fbf, 0xf6ae95bf, 0x7f3b75ff,
} },
- { { /* 597 */
+ { { /* 682 */
0x0af9a7f5, 0x00000000, 0x00000000, 0x2bddfbd0,
0x9a7ff633, 0xd6fcfdab, 0xbfebf9e6, 0xf41fdfdf,
} },
- { { /* 598 */
+ { { /* 683 */
0xffffa6fd, 0xf37b4aff, 0xfef97fb7, 0x1d5cb6ff,
0xe5ff7ff6, 0x24041f7b, 0xf99ebe05, 0xdff2dbe3,
} },
- { { /* 599 */
+ { { /* 684 */
0xfdff6fef, 0xcbfcd679, 0xefffebfd, 0x0000001f,
0x98000000, 0x8017e148, 0x00fe6a74, 0xfdf16d7f,
} },
- { { /* 600 */
+ { { /* 685 */
0xfef3b87f, 0xf176e01f, 0x7b3fee96, 0xfffdeb8d,
0xcbb3adff, 0xe17f84ef, 0xbff04daa, 0xfe3fbf3f,
} },
- { { /* 601 */
+ { { /* 686 */
0xffd7ebff, 0xcf7fffdf, 0x85edfffb, 0x07bcd73f,
0xfe0faeff, 0x76bffdaf, 0x37bbfaef, 0xa3ba7fdc,
} },
- { { /* 602 */
+ { { /* 687 */
0x56f7b6ff, 0xe7df60f8, 0x4cdfff61, 0xff45b0fb,
0x3ffa7ded, 0x18fc1fff, 0xe3afffff, 0xdf83c7d3,
} },
- { { /* 603 */
+ { { /* 688 */
0xef7dfb57, 0x1378efff, 0x5ff7fec0, 0x5ee334bb,
0xeff6f70d, 0x00bfd7fe, 0xf7f7f59d, 0xffe051de,
} },
- { { /* 604 */
+ { { /* 689 */
0x037ffec9, 0xbfef5f01, 0x60a79ff1, 0xf1ffef1d,
0x0000000f, 0x00000000, 0x00000000, 0x00000000,
} },
- { { /* 605 */
+ { { /* 690 */
0x00000000, 0x00000000, 0x00000000, 0x3c800000,
0xd91ffb4d, 0xfee37b3a, 0xdc7f3fe9, 0x0000003f,
} },
- { { /* 606 */
+ { { /* 691 */
0x50000000, 0xbe07f51f, 0xf91bfc1d, 0x71ffbc1e,
0x5bbe6ff9, 0x9b1b5796, 0xfffc7fff, 0xafe7872e,
} },
- { { /* 607 */
+ { { /* 692 */
0xf34febf5, 0xe725dffd, 0x5d440bdc, 0xfddd5747,
0x7790ed3f, 0x8ac87d7f, 0xf3f9fafa, 0xef4b202a,
} },
- { { /* 608 */
+ { { /* 693 */
0x79cff5ff, 0x0ba5abd3, 0xfb8ff77a, 0x001f8ebd,
0x00000000, 0xfd4ef300, 0x88001a57, 0x7654aeac,
} },
- { { /* 609 */
+ { { /* 694 */
0xcdff17ad, 0xf42fffb2, 0xdbff5baa, 0x00000002,
0x73c00000, 0x2e3ff9ea, 0xbbfffa8e, 0xffd376bc,
} },
- { { /* 610 */
+ { { /* 695 */
0x7e72eefe, 0xe7f77ebd, 0xcefdf77f, 0x00000ff5,
0x00000000, 0xdb9ba900, 0x917fa4c7, 0x7ecef8ca,
} },
- { { /* 611 */
+ { { /* 696 */
0xc7e77d7a, 0xdcaecbbd, 0x8f76fd7e, 0x7cf391d3,
0x4c2f01e5, 0xa360ed77, 0x5ef807db, 0x21811df7,
} },
- { { /* 612 */
+ { { /* 697 */
0x309c6be0, 0xfade3b3a, 0xc3f57f53, 0x07ba61cd,
0x00000000, 0x00000000, 0x00000000, 0xbefe26e0,
} },
- { { /* 613 */
+ { { /* 698 */
0xebb503f9, 0xe9cbe36d, 0xbfde9c2f, 0xabbf9f83,
0xffd51ff7, 0xdffeb7df, 0xffeffdae, 0xeffdfb7e,
} },
- { { /* 614 */
+ { { /* 699 */
0x6ebfaaff, 0x00000000, 0x00000000, 0xb6200000,
0xbe9e7fcd, 0x58f162b3, 0xfd7bf10d, 0xbefde9f1,
} },
- { { /* 615 */
+ { { /* 700 */
0x5f6dc6c3, 0x69ffff3d, 0xfbf4ffcf, 0x4ff7dcfb,
0x11372000, 0x00000015, 0x00000000, 0x00000000,
} },
- { { /* 616 */
+ { { /* 701 */
0x00003000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
} },
@@ -3195,29 +3536,51 @@ static const struct {
LEAF(501,519), LEAF(501,520), LEAF(501,521), LEAF(501,522),
LEAF(501,523), LEAF(501,524), LEAF(501,525), LEAF(501,526),
LEAF(501,527), LEAF(501,528), LEAF(501,529), LEAF(501,530),
- LEAF(501,531), LEAF(501,532), LEAF(501,533),
+ LEAF(501,531), LEAF(501,532), LEAF(501,533), LEAF(501,534),
+ LEAF(501,535), LEAF(501,536), LEAF(501,537), LEAF(501,538),
+ LEAF(501,539), LEAF(501,540), LEAF(501,541), LEAF(501,542),
+ LEAF(501,543), LEAF(501,544), LEAF(501,545), LEAF(501,546),
+ LEAF(501,547), LEAF(501,548), LEAF(501,549), LEAF(501,550),
+ LEAF(501,551), LEAF(501,552), LEAF(501,553), LEAF(501,554),
+ LEAF(501,555), LEAF(501,556), LEAF(501,557), LEAF(501,558),
+ LEAF(501,559), LEAF(501,560), LEAF(501,561), LEAF(501,562),
+ LEAF(501,563), LEAF(501,564), LEAF(501,565), LEAF(501,566),
+ LEAF(501,567), LEAF(501,568), LEAF(501,569), LEAF(501,570),
+ LEAF(501,571), LEAF(501,572), LEAF(501,573), LEAF(501,574),
+ LEAF(501,575), LEAF(501,576), LEAF(501,577), LEAF(501,578),
+ LEAF(501,579), LEAF(501,580), LEAF(501,581), LEAF(501,582),
+ LEAF(501,583), LEAF(501,318), LEAF(501,584), LEAF(501,585),
+ LEAF(501,586), LEAF(501,587), LEAF(501,588), LEAF(501,589),
+ LEAF(501,590), LEAF(501, 3), LEAF(501,591), LEAF(501,592),
+ LEAF(501,593), LEAF(501,594), LEAF(501,595), LEAF(501,596),
+ LEAF(501,580), LEAF(501,597), LEAF(501,598), LEAF(501,599),
+ LEAF(501,600), LEAF(501,601), LEAF(501,602), LEAF(501,603),
+ LEAF(501,604), LEAF(501,605), LEAF(501,606), LEAF(501,607),
+ LEAF(501,608), LEAF(501,609), LEAF(501,610), LEAF(501,611),
+ LEAF(501,612), LEAF(501,613), LEAF(501,614), LEAF(501,615),
+ LEAF(501,616), LEAF(501,617), LEAF(501,618),
/* zh_tw */
- LEAF(584,534), LEAF(584,535), LEAF(584,536), LEAF(584,537),
- LEAF(584,538), LEAF(584,539), LEAF(584,540), LEAF(584,541),
- LEAF(584,542), LEAF(584,543), LEAF(584,544), LEAF(584,545),
- LEAF(584,546), LEAF(584,547), LEAF(584,548), LEAF(584,549),
- LEAF(584,550), LEAF(584,551), LEAF(584,552), LEAF(584,553),
- LEAF(584,554), LEAF(584,555), LEAF(584,556), LEAF(584,557),
- LEAF(584,558), LEAF(584,559), LEAF(584,560), LEAF(584,561),
- LEAF(584,562), LEAF(584,563), LEAF(584,564), LEAF(584,565),
- LEAF(584,566), LEAF(584,567), LEAF(584,568), LEAF(584,569),
- LEAF(584,570), LEAF(584,571), LEAF(584,572), LEAF(584,573),
- LEAF(584,574), LEAF(584,575), LEAF(584,576), LEAF(584,577),
- LEAF(584,578), LEAF(584,579), LEAF(584,580), LEAF(584,581),
- LEAF(584,582), LEAF(584,583), LEAF(584,584), LEAF(584,585),
- LEAF(584,586), LEAF(584,587), LEAF(584,588), LEAF(584,589),
- LEAF(584,590), LEAF(584,591), LEAF(584,592), LEAF(584,593),
- LEAF(584,594), LEAF(584,595), LEAF(584,596), LEAF(584,597),
- LEAF(584,598), LEAF(584,599), LEAF(584,600), LEAF(584,601),
- LEAF(584,602), LEAF(584,603), LEAF(584,604), LEAF(584,605),
- LEAF(584,606), LEAF(584,607), LEAF(584,608), LEAF(584,609),
- LEAF(584,610), LEAF(584,611), LEAF(584,612), LEAF(584,613),
- LEAF(584,614), LEAF(584,615), LEAF(584,616),
+ LEAF(672,619), LEAF(672,620), LEAF(672,621), LEAF(672,622),
+ LEAF(672,623), LEAF(672,624), LEAF(672,625), LEAF(672,626),
+ LEAF(672,627), LEAF(672,628), LEAF(672,629), LEAF(672,630),
+ LEAF(672,631), LEAF(672,632), LEAF(672,633), LEAF(672,634),
+ LEAF(672,635), LEAF(672,636), LEAF(672,637), LEAF(672,638),
+ LEAF(672,639), LEAF(672,640), LEAF(672,641), LEAF(672,642),
+ LEAF(672,643), LEAF(672,644), LEAF(672,645), LEAF(672,646),
+ LEAF(672,647), LEAF(672,648), LEAF(672,649), LEAF(672,650),
+ LEAF(672,651), LEAF(672,652), LEAF(672,653), LEAF(672,654),
+ LEAF(672,655), LEAF(672,656), LEAF(672,657), LEAF(672,658),
+ LEAF(672,659), LEAF(672,660), LEAF(672,661), LEAF(672,662),
+ LEAF(672,663), LEAF(672,664), LEAF(672,665), LEAF(672,666),
+ LEAF(672,667), LEAF(672,668), LEAF(672,669), LEAF(672,670),
+ LEAF(672,671), LEAF(672,672), LEAF(672,673), LEAF(672,674),
+ LEAF(672,675), LEAF(672,676), LEAF(672,677), LEAF(672,678),
+ LEAF(672,679), LEAF(672,680), LEAF(672,681), LEAF(672,682),
+ LEAF(672,683), LEAF(672,684), LEAF(672,685), LEAF(672,686),
+ LEAF(672,687), LEAF(672,688), LEAF(672,689), LEAF(672,690),
+ LEAF(672,691), LEAF(672,692), LEAF(672,693), LEAF(672,694),
+ LEAF(672,695), LEAF(672,696), LEAF(672,697), LEAF(672,698),
+ LEAF(672,699), LEAF(672,700), LEAF(672,701),
},
{
/* aa */
@@ -3608,17 +3971,28 @@ static const struct {
0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c,
0x009e, 0x009f,
/* zh_hk */
- 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055,
- 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d,
- 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065,
- 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d,
- 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075,
- 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d,
- 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085,
- 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d,
- 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095,
- 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d,
- 0x009e, 0x009f, 0x0205,
+ 0x0030, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082,
+ 0x0083, 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a,
+ 0x008b, 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092,
+ 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a,
+ 0x009b, 0x009c, 0x009d, 0x009e, 0x009f, 0x0200, 0x0201, 0x0203,
+ 0x0207, 0x020c, 0x020d, 0x020e, 0x020f, 0x0210, 0x0211, 0x0219,
+ 0x021a, 0x021c, 0x021d, 0x0220, 0x0221, 0x022a, 0x022b, 0x022c,
+ 0x022d, 0x022f, 0x0232, 0x0235, 0x0236, 0x023c, 0x023e, 0x023f,
+ 0x0244, 0x024d, 0x024e, 0x0251, 0x0255, 0x025e, 0x0262, 0x0266,
+ 0x0267, 0x0268, 0x0269, 0x0272, 0x0275, 0x0276, 0x0277, 0x0278,
+ 0x0279, 0x027a, 0x027d, 0x0280, 0x0281, 0x0282, 0x0283, 0x0289,
+ 0x028a, 0x028b, 0x028c, 0x028d, 0x028e, 0x0294, 0x0297, 0x0298,
+ 0x029a, 0x029d, 0x02a6,
/* zh_tw */
0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055,
0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d,
@@ -3659,7 +4033,7 @@ static const struct {
19, /* bn */
20, /* bo */
21, /* br */
- 239, /* brx */
+ 240, /* brx */
22, /* bs */
23, /* bua */
194, /* byn */
@@ -3677,7 +4051,7 @@ static const struct {
33, /* cy */
34, /* da */
35, /* de */
- 241, /* doi */
+ 242, /* doi */
197, /* dv */
36, /* dz */
198, /* ee */
@@ -3751,7 +4125,7 @@ static const struct {
212, /* kwm */
91, /* ky */
92, /* la */
- 237, /* lah */
+ 238, /* lah */
93, /* lb */
94, /* lez */
213, /* lg */
@@ -3768,7 +4142,7 @@ static const struct {
103, /* ml */
104, /* mn_cn */
216, /* mn_mn */
- 242, /* mni */
+ 243, /* mni */
105, /* mo */
106, /* mr */
217, /* ms */
@@ -3782,7 +4156,7 @@ static const struct {
112, /* nl */
113, /* nn */
114, /* no */
- 238, /* nqo */
+ 239, /* nqo */
115, /* nr */
116, /* nso */
220, /* nv */
@@ -3801,24 +4175,25 @@ static const struct {
125, /* ps_pk */
126, /* pt */
225, /* qu */
+ 226, /* quz */
127, /* rm */
- 226, /* rn */
+ 227, /* rn */
128, /* ro */
129, /* ru */
- 227, /* rw */
+ 228, /* rw */
130, /* sa */
131, /* sah */
- 240, /* sat */
- 228, /* sc */
+ 241, /* sat */
+ 229, /* sc */
132, /* sco */
- 229, /* sd */
+ 230, /* sd */
133, /* se */
134, /* sel */
- 230, /* sg */
+ 231, /* sg */
135, /* sh */
136, /* shs */
137, /* si */
- 231, /* sid */
+ 232, /* sid */
138, /* sk */
139, /* sl */
140, /* sm */
@@ -3826,13 +4201,13 @@ static const struct {
142, /* smj */
143, /* smn */
144, /* sms */
- 232, /* sn */
+ 233, /* sn */
145, /* so */
146, /* sq */
147, /* sr */
148, /* ss */
149, /* st */
- 233, /* su */
+ 234, /* su */
150, /* sv */
151, /* sw */
152, /* syr */
@@ -3851,7 +4226,7 @@ static const struct {
165, /* ts */
166, /* tt */
167, /* tw */
- 234, /* ty */
+ 235, /* ty */
168, /* tyv */
169, /* ug */
170, /* uk */
@@ -3862,14 +4237,14 @@ static const struct {
175, /* vo */
176, /* vot */
177, /* wa */
- 235, /* wal */
+ 236, /* wal */
178, /* wen */
179, /* wo */
180, /* xh */
181, /* yap */
182, /* yi */
183, /* yo */
- 236, /* za */
+ 237, /* za */
184, /* zh_cn */
185, /* zh_hk */
186, /* zh_mo */
@@ -4005,69 +4380,69 @@ static const struct {
164, /* ps_af */
165, /* ps_pk */
166, /* pt */
- 168, /* rm */
- 170, /* ro */
- 171, /* ru */
- 173, /* sa */
- 174, /* sah */
- 177, /* sco */
- 179, /* se */
- 180, /* sel */
- 182, /* sh */
- 183, /* shs */
- 184, /* si */
- 186, /* sk */
- 187, /* sl */
- 188, /* sm */
- 189, /* sma */
- 190, /* smj */
- 191, /* smn */
- 192, /* sms */
- 194, /* so */
- 195, /* sq */
- 196, /* sr */
- 197, /* ss */
- 198, /* st */
- 200, /* sv */
- 201, /* sw */
- 202, /* syr */
- 203, /* ta */
- 204, /* te */
- 205, /* tg */
- 206, /* th */
- 207, /* ti_er */
- 208, /* ti_et */
- 209, /* tig */
- 210, /* tk */
- 211, /* tl */
- 212, /* tn */
- 213, /* to */
- 214, /* tr */
- 215, /* ts */
- 216, /* tt */
- 217, /* tw */
- 219, /* tyv */
- 220, /* ug */
- 221, /* uk */
- 222, /* ur */
- 223, /* uz */
- 224, /* ve */
- 225, /* vi */
- 226, /* vo */
- 227, /* vot */
- 228, /* wa */
- 230, /* wen */
- 231, /* wo */
- 232, /* xh */
- 233, /* yap */
- 234, /* yi */
- 235, /* yo */
- 237, /* zh_cn */
- 238, /* zh_hk */
- 239, /* zh_mo */
- 240, /* zh_sg */
- 241, /* zh_tw */
- 242, /* zu */
+ 169, /* rm */
+ 171, /* ro */
+ 172, /* ru */
+ 174, /* sa */
+ 175, /* sah */
+ 178, /* sco */
+ 180, /* se */
+ 181, /* sel */
+ 183, /* sh */
+ 184, /* shs */
+ 185, /* si */
+ 187, /* sk */
+ 188, /* sl */
+ 189, /* sm */
+ 190, /* sma */
+ 191, /* smj */
+ 192, /* smn */
+ 193, /* sms */
+ 195, /* so */
+ 196, /* sq */
+ 197, /* sr */
+ 198, /* ss */
+ 199, /* st */
+ 201, /* sv */
+ 202, /* sw */
+ 203, /* syr */
+ 204, /* ta */
+ 205, /* te */
+ 206, /* tg */
+ 207, /* th */
+ 208, /* ti_er */
+ 209, /* ti_et */
+ 210, /* tig */
+ 211, /* tk */
+ 212, /* tl */
+ 213, /* tn */
+ 214, /* to */
+ 215, /* tr */
+ 216, /* ts */
+ 217, /* tt */
+ 218, /* tw */
+ 220, /* tyv */
+ 221, /* ug */
+ 222, /* uk */
+ 223, /* ur */
+ 224, /* uz */
+ 225, /* ve */
+ 226, /* vi */
+ 227, /* vo */
+ 228, /* vot */
+ 229, /* wa */
+ 231, /* wen */
+ 232, /* wo */
+ 233, /* xh */
+ 234, /* yap */
+ 235, /* yi */
+ 236, /* yo */
+ 238, /* zh_cn */
+ 239, /* zh_hk */
+ 240, /* zh_mo */
+ 241, /* zh_sg */
+ 242, /* zh_tw */
+ 243, /* zu */
3, /* ak */
5, /* an */
15, /* ber_dz */
@@ -4104,27 +4479,28 @@ static const struct {
161, /* pap_an */
162, /* pap_aw */
167, /* qu */
- 169, /* rn */
- 172, /* rw */
- 176, /* sc */
- 178, /* sd */
- 181, /* sg */
- 185, /* sid */
- 193, /* sn */
- 199, /* su */
- 218, /* ty */
- 229, /* wal */
- 236, /* za */
+ 168, /* quz */
+ 170, /* rn */
+ 173, /* rw */
+ 177, /* sc */
+ 179, /* sd */
+ 182, /* sg */
+ 186, /* sid */
+ 194, /* sn */
+ 200, /* su */
+ 219, /* ty */
+ 230, /* wal */
+ 237, /* za */
118, /* lah */
149, /* nqo */
26, /* brx */
- 175, /* sat */
+ 176, /* sat */
44, /* doi */
135, /* mni */
}
};
-#define NUM_LANG_CHAR_SET 243
+#define NUM_LANG_CHAR_SET 244
#define NUM_LANG_SET_MAP 8
static const FcChar32 fcLangCountrySets[][NUM_LANG_SET_MAP] = {
@@ -4159,15 +4535,15 @@ static const FcLangCharSetRange fcLangCharSetRanges[] = {
{ 141, 153 }, /* n */
{ 154, 158 }, /* o */
{ 159, 166 }, /* p */
- { 167, 167 }, /* q */
- { 168, 172 }, /* r */
- { 173, 202 }, /* s */
- { 203, 219 }, /* t */
- { 220, 223 }, /* u */
- { 224, 227 }, /* v */
- { 228, 231 }, /* w */
- { 232, 232 }, /* x */
- { 233, 235 }, /* y */
- { 236, 242 }, /* z */
+ { 167, 168 }, /* q */
+ { 169, 173 }, /* r */
+ { 174, 203 }, /* s */
+ { 204, 220 }, /* t */
+ { 221, 224 }, /* u */
+ { 225, 228 }, /* v */
+ { 229, 232 }, /* w */
+ { 233, 233 }, /* x */
+ { 234, 236 }, /* y */
+ { 237, 243 }, /* z */
};
diff --git a/fc-lang/ja.orth b/fc-lang/ja.orth
index e87269b8..dbc16d4d 100644
--- a/fc-lang/ja.orth
+++ b/fc-lang/ja.orth
@@ -21,13 +21,14 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
#
-# Coverage from JIS X 0208 (1990)
+# Coverage from JIS X 0208 (1997) for non kanji characters, and
+# Joyo Kanji List (2010, cabinet notification of regular-use chinese characters)
#
0x3000 # IDEOGRAPHIC SPACE
0x3001 # IDEOGRAPHIC COMMA
0x3002 # IDEOGRAPHIC FULL STOP
0x3005 # IDEOGRAPHIC ITERATION MARK
-0x3006 # IDEOGRAPHIC CLOSING MARK
+#0x3006 # IDEOGRAPHIC CLOSING MARK # not in Sawarabi Gothic
0x3007 # IDEOGRAPHIC NUMBER ZERO
0x3041 # HIRAGANA LETTER SMALL A
0x3042 # HIRAGANA LETTER A
@@ -216,171 +217,88 @@
0x4E0B # <CJK>
0x4E0D # <CJK>
0x4E0E # <CJK>
-0x4E10 # <CJK>
-0x4E11 # <CJK>
0x4E14 # <CJK>
-0x4E15 # <CJK>
0x4E16 # <CJK>
-0x4E17 # <CJK>
0x4E18 # <CJK>
0x4E19 # <CJK>
-0x4E1E # <CJK>
0x4E21 # <CJK>
0x4E26 # <CJK>
-0x4E2A # <CJK>
0x4E2D # <CJK>
-0x4E31 # <CJK>
0x4E32 # <CJK>
-0x4E36 # <CJK>
0x4E38 # <CJK>
0x4E39 # <CJK>
0x4E3B # <CJK>
0x4E3C # <CJK>
-0x4E3F # <CJK>
-0x4E42 # <CJK>
-0x4E43 # <CJK>
0x4E45 # <CJK>
-0x4E4B # <CJK>
-0x4E4D # <CJK>
-0x4E4E # <CJK>
0x4E4F # <CJK>
-0x4E55 # <CJK>
-0x4E56 # <CJK>
0x4E57 # <CJK>
-0x4E58 # <CJK>
0x4E59 # <CJK>
0x4E5D # <CJK>
0x4E5E # <CJK>
-0x4E5F # <CJK>
-0x4E62 # <CJK>
0x4E71 # <CJK>
0x4E73 # <CJK>
0x4E7E # <CJK>
0x4E80 # <CJK>
-0x4E82 # <CJK>
-0x4E85 # <CJK>
0x4E86 # <CJK>
0x4E88 # <CJK>
0x4E89 # <CJK>
-0x4E8A # <CJK>
0x4E8B # <CJK>
0x4E8C # <CJK>
-0x4E8E # <CJK>
-0x4E91 # <CJK>
0x4E92 # <CJK>
0x4E94 # <CJK>
0x4E95 # <CJK>
-0x4E98 # <CJK>
-0x4E99 # <CJK>
-0x4E9B # <CJK>
0x4E9C # <CJK>
-0x4E9E # <CJK>
-0x4E9F # <CJK>
-0x4EA0 # <CJK>
0x4EA1 # <CJK>
-0x4EA2 # <CJK>
0x4EA4 # <CJK>
-0x4EA5 # <CJK>
-0x4EA6 # <CJK>
-0x4EA8 # <CJK>
0x4EAB # <CJK>
0x4EAC # <CJK>
0x4EAD # <CJK>
-0x4EAE # <CJK>
-0x4EB0 # <CJK>
-0x4EB3 # <CJK>
-0x4EB6 # <CJK>
0x4EBA # <CJK>
-0x4EC0 # <CJK>
0x4EC1 # <CJK>
-0x4EC2 # <CJK>
-0x4EC4 # <CJK>
-0x4EC6 # <CJK>
-0x4EC7 # <CJK>
0x4ECA # <CJK>
0x4ECB # <CJK>
-0x4ECD # <CJK>
-0x4ECE # <CJK>
0x4ECF # <CJK>
-0x4ED4 # <CJK>
0x4ED5 # <CJK>
0x4ED6 # <CJK>
-0x4ED7 # <CJK>
0x4ED8 # <CJK>
0x4ED9 # <CJK>
-0x4EDD # <CJK>
-0x4EDE # <CJK>
-0x4EDF # <CJK>
0x4EE3 # <CJK>
0x4EE4 # <CJK>
0x4EE5 # <CJK>
-0x4EED # <CJK>
0x4EEE # <CJK>
0x4EF0 # <CJK>
0x4EF2 # <CJK>
0x4EF6 # <CJK>
-0x4EF7 # <CJK>
0x4EFB # <CJK>
0x4F01 # <CJK>
-0x4F09 # <CJK>
-0x4F0A # <CJK>
-0x4F0D # <CJK>
0x4F0E # <CJK>
0x4F0F # <CJK>
0x4F10 # <CJK>
0x4F11 # <CJK>
0x4F1A # <CJK>
-0x4F1C # <CJK>
0x4F1D # <CJK>
0x4F2F # <CJK>
-0x4F30 # <CJK>
0x4F34 # <CJK>
-0x4F36 # <CJK>
0x4F38 # <CJK>
0x4F3A # <CJK>
0x4F3C # <CJK>
-0x4F3D # <CJK>
-0x4F43 # <CJK>
0x4F46 # <CJK>
-0x4F47 # <CJK>
0x4F4D # <CJK>
0x4F4E # <CJK>
0x4F4F # <CJK>
0x4F50 # <CJK>
-0x4F51 # <CJK>
0x4F53 # <CJK>
0x4F55 # <CJK>
-0x4F57 # <CJK>
0x4F59 # <CJK>
-0x4F5A # <CJK>
-0x4F5B # <CJK>
0x4F5C # <CJK>
-0x4F5D # <CJK>
-0x4F5E # <CJK>
-0x4F69 # <CJK>
-0x4F6F # <CJK>
-0x4F70 # <CJK>
0x4F73 # <CJK>
0x4F75 # <CJK>
-0x4F76 # <CJK>
-0x4F7B # <CJK>
-0x4F7C # <CJK>
0x4F7F # <CJK>
-0x4F83 # <CJK>
-0x4F86 # <CJK>
-0x4F88 # <CJK>
0x4F8B # <CJK>
0x4F8D # <CJK>
-0x4F8F # <CJK>
-0x4F91 # <CJK>
-0x4F96 # <CJK>
-0x4F98 # <CJK>
0x4F9B # <CJK>
0x4F9D # <CJK>
-0x4FA0 # <CJK>
0x4FA1 # <CJK>
-0x4FAB # <CJK>
-0x4FAD # <CJK>
0x4FAE # <CJK>
0x4FAF # <CJK>
0x4FB5 # <CJK>
@@ -388,364 +306,165 @@
0x4FBF # <CJK>
0x4FC2 # <CJK>
0x4FC3 # <CJK>
-0x4FC4 # <CJK>
0x4FCA # <CJK>
-0x4FCE # <CJK>
-0x4FD0 # <CJK>
-0x4FD1 # <CJK>
-0x4FD4 # <CJK>
0x4FD7 # <CJK>
-0x4FD8 # <CJK>
-0x4FDA # <CJK>
-0x4FDB # <CJK>
0x4FDD # <CJK>
-0x4FDF # <CJK>
0x4FE1 # <CJK>
-0x4FE3 # <CJK>
-0x4FE4 # <CJK>
-0x4FE5 # <CJK>
0x4FEE # <CJK>
-0x4FEF # <CJK>
0x4FF3 # <CJK>
0x4FF5 # <CJK>
-0x4FF6 # <CJK>
0x4FF8 # <CJK>
0x4FFA # <CJK>
-0x4FFE # <CJK>
-0x5005 # <CJK>
-0x5006 # <CJK>
0x5009 # <CJK>
0x500B # <CJK>
0x500D # <CJK>
-0x500F # <CJK>
-0x5011 # <CJK>
0x5012 # <CJK>
-0x5014 # <CJK>
-0x5016 # <CJK>
0x5019 # <CJK>
-0x501A # <CJK>
0x501F # <CJK>
-0x5021 # <CJK>
0x5023 # <CJK>
0x5024 # <CJK>
-0x5025 # <CJK>
-0x5026 # <CJK>
-0x5028 # <CJK>
-0x5029 # <CJK>
-0x502A # <CJK>
0x502B # <CJK>
-0x502C # <CJK>
-0x502D # <CJK>
-0x5036 # <CJK>
0x5039 # <CJK>
-0x5043 # <CJK>
-0x5047 # <CJK>
-0x5048 # <CJK>
0x5049 # <CJK>
0x504F # <CJK>
-0x5050 # <CJK>
-0x5055 # <CJK>
-0x5056 # <CJK>
-0x505A # <CJK>
0x505C # <CJK>
0x5065 # <CJK>
-0x506C # <CJK>
-0x5072 # <CJK>
0x5074 # <CJK>
0x5075 # <CJK>
0x5076 # <CJK>
-0x5078 # <CJK>
0x507D # <CJK>
-0x5080 # <CJK>
-0x5085 # <CJK>
0x508D # <CJK>
0x5091 # <CJK>
0x5098 # <CJK>
0x5099 # <CJK>
-0x509A # <CJK>
0x50AC # <CJK>
-0x50AD # <CJK>
0x50B2 # <CJK>
-0x50B3 # <CJK>
-0x50B4 # <CJK>
0x50B5 # <CJK>
0x50B7 # <CJK>
0x50BE # <CJK>
-0x50C2 # <CJK>
0x50C5 # <CJK>
-0x50C9 # <CJK>
-0x50CA # <CJK>
0x50CD # <CJK>
0x50CF # <CJK>
-0x50D1 # <CJK>
0x50D5 # <CJK>
-0x50D6 # <CJK>
0x50DA # <CJK>
-0x50DE # <CJK>
-0x50E3 # <CJK>
-0x50E5 # <CJK>
0x50E7 # <CJK>
-0x50ED # <CJK>
-0x50EE # <CJK>
-0x50F5 # <CJK>
-0x50F9 # <CJK>
-0x50FB # <CJK>
0x5100 # <CJK>
-0x5101 # <CJK>
-0x5102 # <CJK>
0x5104 # <CJK>
-0x5109 # <CJK>
0x5112 # <CJK>
-0x5114 # <CJK>
-0x5115 # <CJK>
-0x5116 # <CJK>
-0x5118 # <CJK>
-0x511A # <CJK>
0x511F # <CJK>
-0x5121 # <CJK>
0x512A # <CJK>
-0x5132 # <CJK>
-0x5137 # <CJK>
-0x513A # <CJK>
-0x513B # <CJK>
-0x513C # <CJK>
-0x513F # <CJK>
-0x5140 # <CJK>
-0x5141 # <CJK>
0x5143 # <CJK>
0x5144 # <CJK>
0x5145 # <CJK>
0x5146 # <CJK>
-0x5147 # <CJK>
0x5148 # <CJK>
0x5149 # <CJK>
0x514B # <CJK>
-0x514C # <CJK>
0x514D # <CJK>
-0x514E # <CJK>
0x5150 # <CJK>
-0x5152 # <CJK>
-0x5154 # <CJK>
0x515A # <CJK>
-0x515C # <CJK>
-0x5162 # <CJK>
0x5165 # <CJK>
0x5168 # <CJK>
-0x5169 # <CJK>
-0x516A # <CJK>
0x516B # <CJK>
0x516C # <CJK>
0x516D # <CJK>
-0x516E # <CJK>
0x5171 # <CJK>
0x5175 # <CJK>
-0x5176 # <CJK>
0x5177 # <CJK>
0x5178 # <CJK>
0x517C # <CJK>
-0x5180 # <CJK>
-0x5182 # <CJK>
0x5185 # <CJK>
0x5186 # <CJK>
-0x5189 # <CJK>
0x518A # <CJK>
-0x518C # <CJK>
0x518D # <CJK>
-0x518F # <CJK>
-0x5190 # <CJK>
-0x5191 # <CJK>
0x5192 # <CJK>
-0x5193 # <CJK>
-0x5195 # <CJK>
-0x5196 # <CJK>
0x5197 # <CJK>
0x5199 # <CJK>
0x51A0 # <CJK>
-0x51A2 # <CJK>
-0x51A4 # <CJK>
0x51A5 # <CJK>
-0x51A6 # <CJK>
-0x51A8 # <CJK>
-0x51A9 # <CJK>
-0x51AA # <CJK>
-0x51AB # <CJK>
0x51AC # <CJK>
-0x51B0 # <CJK>
-0x51B1 # <CJK>
-0x51B2 # <CJK>
-0x51B3 # <CJK>
-0x51B4 # <CJK>
-0x51B5 # <CJK>
0x51B6 # <CJK>
0x51B7 # <CJK>
-0x51BD # <CJK>
0x51C4 # <CJK>
-0x51C5 # <CJK>
0x51C6 # <CJK>
-0x51C9 # <CJK>
-0x51CB # <CJK>
-0x51CC # <CJK>
0x51CD # <CJK>
-0x51D6 # <CJK>
-0x51DB # <CJK>
-#0x51DC # <CJK> # not in kochi fonts
0x51DD # <CJK>
-0x51E0 # <CJK>
0x51E1 # <CJK>
0x51E6 # <CJK>
-0x51E7 # <CJK>
-0x51E9 # <CJK>
-0x51EA # <CJK>
-0x51ED # <CJK>
-0x51F0 # <CJK>
-0x51F1 # <CJK>
-0x51F5 # <CJK>
0x51F6 # <CJK>
0x51F8 # <CJK>
0x51F9 # <CJK>
0x51FA # <CJK>
-0x51FD # <CJK>
-0x51FE # <CJK>
0x5200 # <CJK>
0x5203 # <CJK>
-0x5204 # <CJK>
0x5206 # <CJK>
0x5207 # <CJK>
0x5208 # <CJK>
0x520A # <CJK>
-0x520B # <CJK>
-0x520E # <CJK>
0x5211 # <CJK>
-0x5214 # <CJK>
0x5217 # <CJK>
0x521D # <CJK>
0x5224 # <CJK>
0x5225 # <CJK>
-0x5227 # <CJK>
0x5229 # <CJK>
-0x522A # <CJK>
-0x522E # <CJK>
0x5230 # <CJK>
-0x5233 # <CJK>
0x5236 # <CJK>
0x5237 # <CJK>
0x5238 # <CJK>
0x5239 # <CJK>
0x523A # <CJK>
0x523B # <CJK>
-0x5243 # <CJK>
-0x5244 # <CJK>
0x5247 # <CJK>
0x524A # <CJK>
-0x524B # <CJK>
-0x524C # <CJK>
0x524D # <CJK>
-0x524F # <CJK>
-0x5254 # <CJK>
0x5256 # <CJK>
0x525B # <CJK>
-0x525E # <CJK>
+#0x525D # <CJK> # not in sazanami gothic/mincho, DroidSansJapanese
0x5263 # <CJK>
0x5264 # <CJK>
-0x5265 # <CJK>
-0x5269 # <CJK>
-0x526A # <CJK>
0x526F # <CJK>
0x5270 # <CJK>
-0x5271 # <CJK>
0x5272 # <CJK>
-0x5273 # <CJK>
-0x5274 # <CJK>
0x5275 # <CJK>
-0x527D # <CJK>
-0x527F # <CJK>
-0x5283 # <CJK>
0x5287 # <CJK>
-0x5288 # <CJK>
-0x5289 # <CJK>
-0x528D # <CJK>
-0x5291 # <CJK>
-0x5292 # <CJK>
-0x5294 # <CJK>
0x529B # <CJK>
0x529F # <CJK>
0x52A0 # <CJK>
0x52A3 # <CJK>
0x52A9 # <CJK>
0x52AA # <CJK>
-0x52AB # <CJK>
-0x52AC # <CJK>
-0x52AD # <CJK>
0x52B1 # <CJK>
0x52B4 # <CJK>
-0x52B5 # <CJK>
0x52B9 # <CJK>
-0x52BC # <CJK>
0x52BE # <CJK>
-0x52C1 # <CJK>
0x52C3 # <CJK>
0x52C5 # <CJK>
0x52C7 # <CJK>
0x52C9 # <CJK>
-0x52CD # <CJK>
-0x52D2 # <CJK>
0x52D5 # <CJK>
-0x52D7 # <CJK>
0x52D8 # <CJK>
0x52D9 # <CJK>
0x52DD # <CJK>
-0x52DE # <CJK>
0x52DF # <CJK>
-0x52E0 # <CJK>
0x52E2 # <CJK>
-0x52E3 # <CJK>
0x52E4 # <CJK>
-0x52E6 # <CJK>
0x52E7 # <CJK>
0x52F2 # <CJK>
-0x52F3 # <CJK>
-0x52F5 # <CJK>
-0x52F8 # <CJK>
-0x52F9 # <CJK>
-0x52FA # <CJK>
0x52FE # <CJK>
-0x52FF # <CJK>
-0x5301 # <CJK>
0x5302 # <CJK>
0x5305 # <CJK>
-0x5306 # <CJK>
-0x5308 # <CJK>
-0x530D # <CJK>
-0x530F # <CJK>
-0x5310 # <CJK>
-0x5315 # <CJK>
0x5316 # <CJK>
0x5317 # <CJK>
-0x5319 # <CJK>
-0x531A # <CJK>
-0x531D # <CJK>
0x5320 # <CJK>
-0x5321 # <CJK>
-0x5323 # <CJK>
-0x532A # <CJK>
-0x532F # <CJK>
-0x5331 # <CJK>
-0x5333 # <CJK>
-0x5338 # <CJK>
0x5339 # <CJK>
0x533A # <CJK>
0x533B # <CJK>
0x533F # <CJK>
-0x5340 # <CJK>
0x5341 # <CJK>
0x5343 # <CJK>
-0x5345 # <CJK>
-0x5346 # <CJK>
0x5347 # <CJK>
0x5348 # <CJK>
-0x5349 # <CJK>
0x534A # <CJK>
-0x534D # <CJK>
0x5351 # <CJK>
0x5352 # <CJK>
0x5353 # <CJK>
@@ -753,43 +472,21 @@
0x5357 # <CJK>
0x5358 # <CJK>
0x535A # <CJK>
-0x535C # <CJK>
-0x535E # <CJK>
0x5360 # <CJK>
-0x5366 # <CJK>
-0x5369 # <CJK>
-0x536E # <CJK>
-0x536F # <CJK>
0x5370 # <CJK>
0x5371 # <CJK>
0x5373 # <CJK>
0x5374 # <CJK>
0x5375 # <CJK>
-0x5377 # <CJK>
0x5378 # <CJK>
-0x537B # <CJK>
-0x537F # <CJK>
-0x5382 # <CJK>
0x5384 # <CJK>
-0x5396 # <CJK>
0x5398 # <CJK>
0x539A # <CJK>
0x539F # <CJK>
-0x53A0 # <CJK>
-0x53A5 # <CJK>
-0x53A6 # <CJK>
-0x53A8 # <CJK>
-0x53A9 # <CJK>
-0x53AD # <CJK>
-0x53AE # <CJK>
-0x53B0 # <CJK>
0x53B3 # <CJK>
-0x53B6 # <CJK>
0x53BB # <CJK>
0x53C2 # <CJK>
-0x53C3 # <CJK>
0x53C8 # <CJK>
-0x53C9 # <CJK>
0x53CA # <CJK>
0x53CB # <CJK>
0x53CC # <CJK>
@@ -799,36 +496,20 @@
0x53D6 # <CJK>
0x53D7 # <CJK>
0x53D9 # <CJK>
-0x53DB # <CJK>
-0x53DF # <CJK>
-0x53E1 # <CJK>
-0x53E2 # <CJK>
0x53E3 # <CJK>
0x53E4 # <CJK>
0x53E5 # <CJK>
-0x53E8 # <CJK>
-0x53E9 # <CJK>
-0x53EA # <CJK>
0x53EB # <CJK>
0x53EC # <CJK>
-0x53ED # <CJK>
-0x53EE # <CJK>
0x53EF # <CJK>
0x53F0 # <CJK>
-0x53F1 # <CJK>
0x53F2 # <CJK>
0x53F3 # <CJK>
-0x53F6 # <CJK>
0x53F7 # <CJK>
0x53F8 # <CJK>
-0x53FA # <CJK>
-0x5401 # <CJK>
-0x5403 # <CJK>
0x5404 # <CJK>
0x5408 # <CJK>
0x5409 # <CJK>
-0x540A # <CJK>
-0x540B # <CJK>
0x540C # <CJK>
0x540D # <CJK>
0x540E # <CJK>
@@ -836,273 +517,82 @@
0x5410 # <CJK>
0x5411 # <CJK>
0x541B # <CJK>
-0x541D # <CJK>
0x541F # <CJK>
-0x5420 # <CJK>
0x5426 # <CJK>
-0x5429 # <CJK>
0x542B # <CJK>
-0x542C # <CJK>
-0x542D # <CJK>
-0x542E # <CJK>
-0x5436 # <CJK>
0x5438 # <CJK>
0x5439 # <CJK>
-0x543B # <CJK>
-0x543C # <CJK>
-0x543D # <CJK>
-0x543E # <CJK>
-0x5440 # <CJK>
0x5442 # <CJK>
-0x5446 # <CJK>
0x5448 # <CJK>
0x5449 # <CJK>
0x544A # <CJK>
-0x544E # <CJK>
-0x5451 # <CJK>
-0x545F # <CJK>
0x5468 # <CJK>
0x546A # <CJK>
-0x5470 # <CJK>
-0x5471 # <CJK>
0x5473 # <CJK>
-0x5475 # <CJK>
-0x5476 # <CJK>
-0x5477 # <CJK>
-0x547B # <CJK>
0x547C # <CJK>
0x547D # <CJK>
-0x5480 # <CJK>
-0x5484 # <CJK>
-0x5486 # <CJK>
-0x548B # <CJK>
0x548C # <CJK>
-0x548E # <CJK>
-0x548F # <CJK>
-0x5490 # <CJK>
-0x5492 # <CJK>
-0x54A2 # <CJK>
-0x54A4 # <CJK>
-0x54A5 # <CJK>
-0x54A8 # <CJK>
-0x54AB # <CJK>
-0x54AC # <CJK>
-0x54AF # <CJK>
0x54B2 # <CJK>
-0x54B3 # <CJK>
-0x54B8 # <CJK>
-0x54BC # <CJK>
0x54BD # <CJK>
-0x54BE # <CJK>
0x54C0 # <CJK>
0x54C1 # <CJK>
-0x54C2 # <CJK>
-0x54C4 # <CJK>
-0x54C7 # <CJK>
-0x54C8 # <CJK>
-0x54C9 # <CJK>
-0x54D8 # <CJK>
0x54E1 # <CJK>
-0x54E2 # <CJK>
-0x54E5 # <CJK>
-0x54E6 # <CJK>
-0x54E8 # <CJK>
-0x54E9 # <CJK>
-0x54ED # <CJK>
-0x54EE # <CJK>
0x54F2 # <CJK>
0x54FA # <CJK>
-0x54FD # <CJK>
0x5504 # <CJK>
0x5506 # <CJK>
0x5507 # <CJK>
-0x550F # <CJK>
0x5510 # <CJK>
-0x5514 # <CJK>
-0x5516 # <CJK>
-0x552E # <CJK>
0x552F # <CJK>
0x5531 # <CJK>
-0x5533 # <CJK>
-0x5538 # <CJK>
-0x5539 # <CJK>
0x553E # <CJK>
-0x5540 # <CJK>
-0x5544 # <CJK>
-0x5545 # <CJK>
0x5546 # <CJK>
-0x554C # <CJK>
0x554F # <CJK>
0x5553 # <CJK>
-0x5556 # <CJK>
-0x5557 # <CJK>
-0x555C # <CJK>
-0x555D # <CJK>
-0x5563 # <CJK>
-0x557B # <CJK>
-0x557C # <CJK>
-0x557E # <CJK>
-0x5580 # <CJK>
-0x5583 # <CJK>
0x5584 # <CJK>
-0x5587 # <CJK>
0x5589 # <CJK>
-0x558A # <CJK>
-0x558B # <CJK>
-0x5598 # <CJK>
-0x5599 # <CJK>
0x559A # <CJK>
0x559C # <CJK>
0x559D # <CJK>
-0x559E # <CJK>
-0x559F # <CJK>
-0x55A7 # <CJK>
-0x55A8 # <CJK>
0x55A9 # <CJK>
0x55AA # <CJK>
0x55AB # <CJK>
-0x55AC # <CJK>
-0x55AE # <CJK>
-0x55B0 # <CJK>
0x55B6 # <CJK>
-0x55C4 # <CJK>
0x55C5 # <CJK>
-0x55C7 # <CJK>
-0x55D4 # <CJK>
-0x55DA # <CJK>
-0x55DC # <CJK>
-0x55DF # <CJK>
0x55E3 # <CJK>
-0x55E4 # <CJK>
-0x55F7 # <CJK>
-0x55F9 # <CJK>
-0x55FD # <CJK>
-0x55FE # <CJK>
0x5606 # <CJK>
-0x5609 # <CJK>
-0x5614 # <CJK>
-0x5616 # <CJK>
-0x5617 # <CJK>
-0x5618 # <CJK>
-0x561B # <CJK>
-0x5629 # <CJK>
-0x562F # <CJK>
0x5631 # <CJK>
0x5632 # <CJK>
-0x5634 # <CJK>
-0x5636 # <CJK>
-0x5638 # <CJK>
-0x5642 # <CJK>
-0x564C # <CJK>
-0x564E # <CJK>
-0x5650 # <CJK>
-0x565B # <CJK>
-0x5664 # <CJK>
0x5668 # <CJK>
-0x566A # <CJK>
-0x566B # <CJK>
-0x566C # <CJK>
0x5674 # <CJK>
-0x5678 # <CJK>
-0x567A # <CJK>
-0x5680 # <CJK>
-0x5686 # <CJK>
0x5687 # <CJK>
-0x568A # <CJK>
-0x568F # <CJK>
-0x5694 # <CJK>
-0x56A0 # <CJK>
-0x56A2 # <CJK>
-0x56A5 # <CJK>
-0x56AE # <CJK>
-0x56B4 # <CJK>
-0x56B6 # <CJK>
-0x56BC # <CJK>
-0x56C0 # <CJK>
-0x56C1 # <CJK>
-0x56C2 # <CJK>
-0x56C3 # <CJK>
-0x56C8 # <CJK>
-0x56CE # <CJK>
-0x56D1 # <CJK>
-0x56D3 # <CJK>
-0x56D7 # <CJK>
-0x56D8 # <CJK>
0x56DA # <CJK>
0x56DB # <CJK>
0x56DE # <CJK>
0x56E0 # <CJK>
0x56E3 # <CJK>
-0x56EE # <CJK>
0x56F0 # <CJK>
0x56F2 # <CJK>
0x56F3 # <CJK>
-0x56F9 # <CJK>
0x56FA # <CJK>
0x56FD # <CJK>
-0x56FF # <CJK>
-0x5700 # <CJK>
-0x5703 # <CJK>
-0x5704 # <CJK>
-0x5708 # <CJK>
-0x5709 # <CJK>
-0x570B # <CJK>
-0x570D # <CJK>
0x570F # <CJK>
0x5712 # <CJK>
-0x5713 # <CJK>
-0x5716 # <CJK>
-0x5718 # <CJK>
-0x571C # <CJK>
0x571F # <CJK>
-0x5726 # <CJK>
0x5727 # <CJK>
0x5728 # <CJK>
-0x572D # <CJK>
0x5730 # <CJK>
-0x5737 # <CJK>
-0x5738 # <CJK>
-0x573B # <CJK>
-0x5740 # <CJK>
0x5742 # <CJK>
0x5747 # <CJK>
0x574A # <CJK>
-0x574E # <CJK>
-0x574F # <CJK>
-0x5750 # <CJK>
0x5751 # <CJK>
-0x5761 # <CJK>
-0x5764 # <CJK>
-0x5766 # <CJK>
-0x5769 # <CJK>
0x576A # <CJK>
-0x577F # <CJK>
0x5782 # <CJK>
-0x5788 # <CJK>
-0x5789 # <CJK>
0x578B # <CJK>
-0x5793 # <CJK>
-0x57A0 # <CJK>
-0x57A2 # <CJK>
0x57A3 # <CJK>
-0x57A4 # <CJK>
-0x57AA # <CJK>
-0x57B0 # <CJK>
-0x57B3 # <CJK>
-0x57C0 # <CJK>
-0x57C3 # <CJK>
-0x57C6 # <CJK>
0x57CB # <CJK>
0x57CE # <CJK>
-0x57D2 # <CJK>
-0x57D3 # <CJK>
-0x57D4 # <CJK>
-0x57D6 # <CJK>
-0x57DC # <CJK>
0x57DF # <CJK>
-0x57E0 # <CJK>
-0x57E3 # <CJK>
-0x57F4 # <CJK>
0x57F7 # <CJK>
0x57F9 # <CJK>
0x57FA # <CJK>
@@ -1111,267 +601,111 @@
0x5802 # <CJK>
0x5805 # <CJK>
0x5806 # <CJK>
-0x580A # <CJK>
-0x580B # <CJK>
0x5815 # <CJK>
-0x5819 # <CJK>
-0x581D # <CJK>
-0x5821 # <CJK>
0x5824 # <CJK>
0x582A # <CJK>
-0x582F # <CJK>
-0x5830 # <CJK>
0x5831 # <CJK>
0x5834 # <CJK>
-0x5835 # <CJK>
-0x583A # <CJK>
-0x583D # <CJK>
0x5840 # <CJK>
0x5841 # <CJK>
0x584A # <CJK>
-0x584B # <CJK>
0x5851 # <CJK>
-0x5852 # <CJK>
0x5854 # <CJK>
0x5857 # <CJK>
-0x5858 # <CJK>
-0x5859 # <CJK>
0x585A # <CJK>
0x585E # <CJK>
-0x5862 # <CJK>
+#0x5861 # <CJK> # not in DroidSansJapanese
0x5869 # <CJK>
-0x586B # <CJK>
-0x5870 # <CJK>
-0x5872 # <CJK>
-0x5875 # <CJK>
-0x5879 # <CJK>
0x587E # <CJK>
0x5883 # <CJK>
-0x5885 # <CJK>
0x5893 # <CJK>
0x5897 # <CJK>
0x589C # <CJK>
-0x589F # <CJK>
0x58A8 # <CJK>
-0x58AB # <CJK>
-0x58AE # <CJK>
0x58B3 # <CJK>
-0x58B8 # <CJK>
-0x58B9 # <CJK>
-0x58BA # <CJK>
-0x58BB # <CJK>
0x58BE # <CJK>
0x58C1 # <CJK>
-0x58C5 # <CJK>
0x58C7 # <CJK>
0x58CA # <CJK>
0x58CC # <CJK>
-0x58D1 # <CJK>
-0x58D3 # <CJK>
-0x58D5 # <CJK>
-0x58D7 # <CJK>
-0x58D8 # <CJK>
-0x58D9 # <CJK>
-0x58DC # <CJK>
-0x58DE # <CJK>
-0x58DF # <CJK>
-0x58E4 # <CJK>
-0x58E5 # <CJK>
0x58EB # <CJK>
-0x58EC # <CJK>
0x58EE # <CJK>
-0x58EF # <CJK>
0x58F0 # <CJK>
0x58F1 # <CJK>
0x58F2 # <CJK>
-0x58F7 # <CJK>
-0x58F9 # <CJK>
-0x58FA # <CJK>
-0x58FB # <CJK>
-0x58FC # <CJK>
-0x58FD # <CJK>
-0x5902 # <CJK>
0x5909 # <CJK>
-0x590A # <CJK>
0x590F # <CJK>
-0x5910 # <CJK>
0x5915 # <CJK>
0x5916 # <CJK>
-0x5918 # <CJK>
-0x5919 # <CJK>
0x591A # <CJK>
-0x591B # <CJK>
0x591C # <CJK>
0x5922 # <CJK>
-0x5925 # <CJK>
0x5927 # <CJK>
0x5929 # <CJK>
0x592A # <CJK>
0x592B # <CJK>
-0x592C # <CJK>
-0x592D # <CJK>
0x592E # <CJK>
0x5931 # <CJK>
-0x5932 # <CJK>
-0x5937 # <CJK>
-0x5938 # <CJK>
-0x593E # <CJK>
-0x5944 # <CJK>
0x5947 # <CJK>
0x5948 # <CJK>
0x5949 # <CJK>
-0x594E # <CJK>
0x594F # <CJK>
-0x5950 # <CJK>
0x5951 # <CJK>
0x5954 # <CJK>
-0x5955 # <CJK>
-0x5957 # <CJK>
-0x5958 # <CJK>
-0x595A # <CJK>
-0x5960 # <CJK>
-0x5962 # <CJK>
0x5965 # <CJK>
-0x5967 # <CJK>
0x5968 # <CJK>
-0x5969 # <CJK>
0x596A # <CJK>
-0x596C # <CJK>
0x596E # <CJK>
0x5973 # <CJK>
0x5974 # <CJK>
-0x5978 # <CJK>
0x597D # <CJK>
-0x5981 # <CJK>
0x5982 # <CJK>
0x5983 # <CJK>
0x5984 # <CJK>
0x598A # <CJK>
-0x598D # <CJK>
-0x5993 # <CJK>
0x5996 # <CJK>
0x5999 # <CJK>
-0x599B # <CJK>
-0x599D # <CJK>
-0x59A3 # <CJK>
0x59A5 # <CJK>
0x59A8 # <CJK>
0x59AC # <CJK>
-0x59B2 # <CJK>
0x59B9 # <CJK>
0x59BB # <CJK>
-0x59BE # <CJK>
-0x59C6 # <CJK>
0x59C9 # <CJK>
0x59CB # <CJK>
-0x59D0 # <CJK>
-0x59D1 # <CJK>
0x59D3 # <CJK>
0x59D4 # <CJK>
-0x59D9 # <CJK>
-0x59DA # <CJK>
-0x59DC # <CJK>
-0x59E5 # <CJK>
-0x59E6 # <CJK>
-0x59E8 # <CJK>
-0x59EA # <CJK>
0x59EB # <CJK>
-0x59F6 # <CJK>
0x59FB # <CJK>
0x59FF # <CJK>
0x5A01 # <CJK>
-0x5A03 # <CJK>
-0x5A09 # <CJK>
-0x5A11 # <CJK>
0x5A18 # <CJK>
-0x5A1A # <CJK>
-0x5A1C # <CJK>
-0x5A1F # <CJK>
0x5A20 # <CJK>
-0x5A25 # <CJK>
-0x5A29 # <CJK>
0x5A2F # <CJK>
-0x5A35 # <CJK>
-0x5A36 # <CJK>
-0x5A3C # <CJK>
-0x5A40 # <CJK>
-0x5A41 # <CJK>
0x5A46 # <CJK>
-0x5A49 # <CJK>
0x5A5A # <CJK>
-0x5A62 # <CJK>
0x5A66 # <CJK>
-0x5A6A # <CJK>
-0x5A6C # <CJK>
0x5A7F # <CJK>
0x5A92 # <CJK>
-0x5A9A # <CJK>
0x5A9B # <CJK>
-0x5ABC # <CJK>
-0x5ABD # <CJK>
-0x5ABE # <CJK>
0x5AC1 # <CJK>
-0x5AC2 # <CJK>
0x5AC9 # <CJK>
-0x5ACB # <CJK>
0x5ACC # <CJK>
-0x5AD0 # <CJK>
-0x5AD6 # <CJK>
-0x5AD7 # <CJK>
0x5AE1 # <CJK>
-0x5AE3 # <CJK>
-0x5AE6 # <CJK>
-0x5AE9 # <CJK>
-0x5AFA # <CJK>
-0x5AFB # <CJK>
-0x5B09 # <CJK>
-0x5B0B # <CJK>
-0x5B0C # <CJK>
-0x5B16 # <CJK>
0x5B22 # <CJK>
-0x5B2A # <CJK>
-0x5B2C # <CJK>
-0x5B30 # <CJK>
-0x5B32 # <CJK>
-0x5B36 # <CJK>
-0x5B3E # <CJK>
-0x5B40 # <CJK>
-0x5B43 # <CJK>
-0x5B45 # <CJK>
0x5B50 # <CJK>
-0x5B51 # <CJK>
0x5B54 # <CJK>
-0x5B55 # <CJK>
0x5B57 # <CJK>
0x5B58 # <CJK>
-0x5B5A # <CJK>
-0x5B5B # <CJK>
-0x5B5C # <CJK>
0x5B5D # <CJK>
-0x5B5F # <CJK>
0x5B63 # <CJK>
0x5B64 # <CJK>
-0x5B65 # <CJK>
0x5B66 # <CJK>
-0x5B69 # <CJK>
0x5B6B # <CJK>
-0x5B70 # <CJK>
-0x5B71 # <CJK>
-0x5B73 # <CJK>
-0x5B75 # <CJK>
-0x5B78 # <CJK>
-0x5B7A # <CJK>
-0x5B80 # <CJK>
-0x5B83 # <CJK>
0x5B85 # <CJK>
0x5B87 # <CJK>
0x5B88 # <CJK>
0x5B89 # <CJK>
-0x5B8B # <CJK>
0x5B8C # <CJK>
-0x5B8D # <CJK>
-0x5B8F # <CJK>
-0x5B95 # <CJK>
0x5B97 # <CJK>
0x5B98 # <CJK>
0x5B99 # <CJK>
@@ -1383,47 +717,26 @@
0x5BA2 # <CJK>
0x5BA3 # <CJK>
0x5BA4 # <CJK>
-0x5BA5 # <CJK>
-0x5BA6 # <CJK>
0x5BAE # <CJK>
0x5BB0 # <CJK>
0x5BB3 # <CJK>
0x5BB4 # <CJK>
0x5BB5 # <CJK>
0x5BB6 # <CJK>
-0x5BB8 # <CJK>
0x5BB9 # <CJK>
0x5BBF # <CJK>
0x5BC2 # <CJK>
-0x5BC3 # <CJK>
0x5BC4 # <CJK>
-0x5BC5 # <CJK>
0x5BC6 # <CJK>
-0x5BC7 # <CJK>
-0x5BC9 # <CJK>
0x5BCC # <CJK>
-0x5BD0 # <CJK>
0x5BD2 # <CJK>
-0x5BD3 # <CJK>
-0x5BD4 # <CJK>
0x5BDB # <CJK>
0x5BDD # <CJK>
-0x5BDE # <CJK>
0x5BDF # <CJK>
0x5BE1 # <CJK>
-0x5BE2 # <CJK>
-0x5BE4 # <CJK>
-0x5BE5 # <CJK>
-0x5BE6 # <CJK>
0x5BE7 # <CJK>
-0x5BE8 # <CJK>
0x5BE9 # <CJK>
-0x5BEB # <CJK>
0x5BEE # <CJK>
-0x5BF0 # <CJK>
-0x5BF3 # <CJK>
-0x5BF5 # <CJK>
-0x5BF6 # <CJK>
0x5BF8 # <CJK>
0x5BFA # <CJK>
0x5BFE # <CJK>
@@ -1431,28 +744,15 @@
0x5C01 # <CJK>
0x5C02 # <CJK>
0x5C04 # <CJK>
-0x5C05 # <CJK>
0x5C06 # <CJK>
-0x5C07 # <CJK>
-0x5C08 # <CJK>
0x5C09 # <CJK>
0x5C0A # <CJK>
0x5C0B # <CJK>
-0x5C0D # <CJK>
0x5C0E # <CJK>
0x5C0F # <CJK>
0x5C11 # <CJK>
-0x5C13 # <CJK>
-0x5C16 # <CJK>
0x5C1A # <CJK>
-0x5C20 # <CJK>
-0x5C22 # <CJK>
-0x5C24 # <CJK>
-0x5C28 # <CJK>
-0x5C2D # <CJK>
0x5C31 # <CJK>
-0x5C38 # <CJK>
-0x5C39 # <CJK>
0x5C3A # <CJK>
0x5C3B # <CJK>
0x5C3C # <CJK>
@@ -1460,109 +760,31 @@
0x5C3E # <CJK>
0x5C3F # <CJK>
0x5C40 # <CJK>
-0x5C41 # <CJK>
0x5C45 # <CJK>
-0x5C46 # <CJK>
0x5C48 # <CJK>
0x5C4A # <CJK>
0x5C4B # <CJK>
-0x5C4D # <CJK>
-0x5C4E # <CJK>
-0x5C4F # <CJK>
-0x5C50 # <CJK>
-0x5C51 # <CJK>
-0x5C53 # <CJK>
0x5C55 # <CJK>
0x5C5E # <CJK>
-0x5C60 # <CJK>
-0x5C61 # <CJK>
0x5C64 # <CJK>
0x5C65 # <CJK>
-0x5C6C # <CJK>
-0x5C6E # <CJK>
0x5C6F # <CJK>
0x5C71 # <CJK>
-0x5C76 # <CJK>
-0x5C79 # <CJK>
-0x5C8C # <CJK>
0x5C90 # <CJK>
-0x5C91 # <CJK>
-0x5C94 # <CJK>
0x5CA1 # <CJK>
-0x5CA8 # <CJK>
0x5CA9 # <CJK>
-0x5CAB # <CJK>
0x5CAC # <CJK>
-0x5CB1 # <CJK>
0x5CB3 # <CJK>
-0x5CB6 # <CJK>
-0x5CB7 # <CJK>
0x5CB8 # <CJK>
-0x5CBB # <CJK>
-0x5CBC # <CJK>
-0x5CBE # <CJK>
-0x5CC5 # <CJK>
-0x5CC7 # <CJK>
-0x5CD9 # <CJK>
0x5CE0 # <CJK>
0x5CE1 # <CJK>
-0x5CE8 # <CJK>
-0x5CE9 # <CJK>
-0x5CEA # <CJK>
-0x5CED # <CJK>
-0x5CEF # <CJK>
0x5CF0 # <CJK>
0x5CF6 # <CJK>
-0x5CFA # <CJK>
-0x5CFB # <CJK>
-0x5CFD # <CJK>
0x5D07 # <CJK>
-0x5D0B # <CJK>
0x5D0E # <CJK>
-0x5D11 # <CJK>
-0x5D14 # <CJK>
-0x5D15 # <CJK>
0x5D16 # <CJK>
-0x5D17 # <CJK>
-0x5D18 # <CJK>
-0x5D19 # <CJK>
-0x5D1A # <CJK>
-0x5D1B # <CJK>
-0x5D1F # <CJK>
-0x5D22 # <CJK>
0x5D29 # <CJK>
-0x5D4B # <CJK>
-0x5D4C # <CJK>
-0x5D4E # <CJK>
0x5D50 # <CJK>
-0x5D52 # <CJK>
-0x5D5C # <CJK>
-0x5D69 # <CJK>
-0x5D6C # <CJK>
-0x5D6F # <CJK>
-0x5D73 # <CJK>
-0x5D76 # <CJK>
-0x5D82 # <CJK>
-0x5D84 # <CJK>
-0x5D87 # <CJK>
-0x5D8B # <CJK>
-0x5D8C # <CJK>
-0x5D90 # <CJK>
-0x5D9D # <CJK>
-0x5DA2 # <CJK>
-0x5DAC # <CJK>
-0x5DAE # <CJK>
-0x5DB7 # <CJK>
-0x5DBA # <CJK>
-0x5DBC # <CJK>
-0x5DBD # <CJK>
-0x5DC9 # <CJK>
-0x5DCC # <CJK>
-0x5DCD # <CJK>
-0x5DD2 # <CJK>
-0x5DD3 # <CJK>
-0x5DD6 # <CJK>
-0x5DDB # <CJK>
0x5DDD # <CJK>
0x5DDE # <CJK>
0x5DE1 # <CJK>
@@ -1571,27 +793,14 @@
0x5DE6 # <CJK>
0x5DE7 # <CJK>
0x5DE8 # <CJK>
-0x5DEB # <CJK>
0x5DEE # <CJK>
0x5DF1 # <CJK>
-0x5DF2 # <CJK>
-0x5DF3 # <CJK>
-0x5DF4 # <CJK>
-0x5DF5 # <CJK>
-0x5DF7 # <CJK>
0x5DFB # <CJK>
-0x5DFD # <CJK>
0x5DFE # <CJK>
0x5E02 # <CJK>
0x5E03 # <CJK>
0x5E06 # <CJK>
-0x5E0B # <CJK>
0x5E0C # <CJK>
-0x5E11 # <CJK>
-0x5E16 # <CJK>
-0x5E19 # <CJK>
-0x5E1A # <CJK>
-0x5E1B # <CJK>
0x5E1D # <CJK>
0x5E25 # <CJK>
0x5E2B # <CJK>
@@ -1599,738 +808,301 @@
0x5E2F # <CJK>
0x5E30 # <CJK>
0x5E33 # <CJK>
-0x5E36 # <CJK>
-0x5E37 # <CJK>
0x5E38 # <CJK>
0x5E3D # <CJK>
-0x5E40 # <CJK>
-0x5E43 # <CJK>
-0x5E44 # <CJK>
0x5E45 # <CJK>
-0x5E47 # <CJK>
-0x5E4C # <CJK>
-0x5E4E # <CJK>
-0x5E54 # <CJK>
0x5E55 # <CJK>
-0x5E57 # <CJK>
-0x5E5F # <CJK>
-0x5E61 # <CJK>
-0x5E62 # <CJK>
0x5E63 # <CJK>
-0x5E64 # <CJK>
0x5E72 # <CJK>
0x5E73 # <CJK>
0x5E74 # <CJK>
-0x5E75 # <CJK>
-0x5E76 # <CJK>
0x5E78 # <CJK>
0x5E79 # <CJK>
-0x5E7A # <CJK>
0x5E7B # <CJK>
0x5E7C # <CJK>
0x5E7D # <CJK>
0x5E7E # <CJK>
-0x5E7F # <CJK>
0x5E81 # <CJK>
0x5E83 # <CJK>
-0x5E84 # <CJK>
-0x5E87 # <CJK>
0x5E8A # <CJK>
0x5E8F # <CJK>
0x5E95 # <CJK>
-0x5E96 # <CJK>
0x5E97 # <CJK>
-0x5E9A # <CJK>
0x5E9C # <CJK>
-0x5EA0 # <CJK>
0x5EA6 # <CJK>
0x5EA7 # <CJK>
0x5EAB # <CJK>
0x5EAD # <CJK>
-0x5EB5 # <CJK>
0x5EB6 # <CJK>
0x5EB7 # <CJK>
0x5EB8 # <CJK>
-0x5EC1 # <CJK>
-0x5EC2 # <CJK>
0x5EC3 # <CJK>
-0x5EC8 # <CJK>
0x5EC9 # <CJK>
0x5ECA # <CJK>
-0x5ECF # <CJK>
-0x5ED0 # <CJK>
-0x5ED3 # <CJK>
-0x5ED6 # <CJK>
-0x5EDA # <CJK>
-0x5EDB # <CJK>
-0x5EDD # <CJK>
-0x5EDF # <CJK>
-0x5EE0 # <CJK>
-0x5EE1 # <CJK>
-0x5EE2 # <CJK>
-0x5EE3 # <CJK>
-0x5EE8 # <CJK>
-0x5EE9 # <CJK>
-0x5EEC # <CJK>
-0x5EF0 # <CJK>
-0x5EF1 # <CJK>
-0x5EF3 # <CJK>
-0x5EF4 # <CJK>
0x5EF6 # <CJK>
0x5EF7 # <CJK>
-0x5EF8 # <CJK>
0x5EFA # <CJK>
-0x5EFB # <CJK>
-0x5EFC # <CJK>
-0x5EFE # <CJK>
-0x5EFF # <CJK>
0x5F01 # <CJK>
-0x5F03 # <CJK>
0x5F04 # <CJK>
-0x5F09 # <CJK>
0x5F0A # <CJK>
-0x5F0B # <CJK>
-0x5F0C # <CJK>
-0x5F0D # <CJK>
0x5F0F # <CJK>
0x5F10 # <CJK>
-0x5F11 # <CJK>
0x5F13 # <CJK>
0x5F14 # <CJK>
0x5F15 # <CJK>
-0x5F16 # <CJK>
-0x5F17 # <CJK>
-0x5F18 # <CJK>
-0x5F1B # <CJK>
0x5F1F # <CJK>
0x5F25 # <CJK>
0x5F26 # <CJK>
0x5F27 # <CJK>
-0x5F29 # <CJK>
-0x5F2D # <CJK>
-0x5F2F # <CJK>
0x5F31 # <CJK>
0x5F35 # <CJK>
0x5F37 # <CJK>
-0x5F38 # <CJK>
-0x5F3C # <CJK>
0x5F3E # <CJK>
-0x5F41 # <CJK>
-0x5F48 # <CJK>
-0x5F4A # <CJK>
-0x5F4C # <CJK>
-0x5F4E # <CJK>
-0x5F51 # <CJK>
0x5F53 # <CJK>
-0x5F56 # <CJK>
-0x5F57 # <CJK>
0x5F59 # <CJK>
-0x5F5C # <CJK>
-0x5F5D # <CJK>
-0x5F61 # <CJK>
0x5F62 # <CJK>
-0x5F66 # <CJK>
0x5F69 # <CJK>
-0x5F6A # <CJK>
0x5F6B # <CJK>
-0x5F6C # <CJK>
-0x5F6D # <CJK>
0x5F70 # <CJK>
0x5F71 # <CJK>
-0x5F73 # <CJK>
-0x5F77 # <CJK>
0x5F79 # <CJK>
0x5F7C # <CJK>
-0x5F7F # <CJK>
0x5F80 # <CJK>
0x5F81 # <CJK>
-0x5F82 # <CJK>
-0x5F83 # <CJK>
0x5F84 # <CJK>
0x5F85 # <CJK>
-0x5F87 # <CJK>
-0x5F88 # <CJK>
-0x5F8A # <CJK>
0x5F8B # <CJK>
0x5F8C # <CJK>
0x5F90 # <CJK>
-0x5F91 # <CJK>
0x5F92 # <CJK>
0x5F93 # <CJK>
0x5F97 # <CJK>
-0x5F98 # <CJK>
-0x5F99 # <CJK>
-0x5F9E # <CJK>
-0x5FA0 # <CJK>
0x5FA1 # <CJK>
-0x5FA8 # <CJK>
0x5FA9 # <CJK>
0x5FAA # <CJK>
-0x5FAD # <CJK>
0x5FAE # <CJK>
0x5FB3 # <CJK>
0x5FB4 # <CJK>
0x5FB9 # <CJK>
-0x5FBC # <CJK>
-0x5FBD # <CJK>
0x5FC3 # <CJK>
0x5FC5 # <CJK>
0x5FCC # <CJK>
0x5FCD # <CJK>
-0x5FD6 # <CJK>
0x5FD7 # <CJK>
0x5FD8 # <CJK>
0x5FD9 # <CJK>
0x5FDC # <CJK>
-0x5FDD # <CJK>
0x5FE0 # <CJK>
-0x5FE4 # <CJK>
0x5FEB # <CJK>
-0x5FF0 # <CJK>
-0x5FF1 # <CJK>
0x5FF5 # <CJK>
-0x5FF8 # <CJK>
-0x5FFB # <CJK>
-0x5FFD # <CJK>
-0x5FFF # <CJK>
-0x600E # <CJK>
-0x600F # <CJK>
-0x6010 # <CJK>
0x6012 # <CJK>
-0x6015 # <CJK>
0x6016 # <CJK>
-0x6019 # <CJK>
-0x601B # <CJK>
-0x601C # <CJK>
0x601D # <CJK>
0x6020 # <CJK>
-0x6021 # <CJK>
0x6025 # <CJK>
-0x6026 # <CJK>
0x6027 # <CJK>
0x6028 # <CJK>
-0x6029 # <CJK>
0x602A # <CJK>
-0x602B # <CJK>
-0x602F # <CJK>
-0x6031 # <CJK>
-0x603A # <CJK>
-0x6041 # <CJK>
-0x6042 # <CJK>
-0x6043 # <CJK>
-0x6046 # <CJK>
-0x604A # <CJK>
0x604B # <CJK>
-0x604D # <CJK>
0x6050 # <CJK>
0x6052 # <CJK>
-0x6055 # <CJK>
-0x6059 # <CJK>
-0x605A # <CJK>
-0x605F # <CJK>
-0x6060 # <CJK>
-0x6062 # <CJK>
0x6063 # <CJK>
-0x6064 # <CJK>
0x6065 # <CJK>
0x6068 # <CJK>
0x6069 # <CJK>
-0x606A # <CJK>
-0x606B # <CJK>
-0x606C # <CJK>
0x606D # <CJK>
0x606F # <CJK>
-0x6070 # <CJK>
0x6075 # <CJK>
-0x6077 # <CJK>
-0x6081 # <CJK>
-0x6083 # <CJK>
-0x6084 # <CJK>
-0x6089 # <CJK>
-0x608B # <CJK>
-0x608C # <CJK>
-0x608D # <CJK>
-0x6092 # <CJK>
0x6094 # <CJK>
-0x6096 # <CJK>
-0x6097 # <CJK>
-0x609A # <CJK>
-0x609B # <CJK>
0x609F # <CJK>
0x60A0 # <CJK>
0x60A3 # <CJK>
0x60A6 # <CJK>
-0x60A7 # <CJK>
0x60A9 # <CJK>
0x60AA # <CJK>
0x60B2 # <CJK>
-0x60B3 # <CJK>
-0x60B4 # <CJK>
-0x60B5 # <CJK>
-0x60B6 # <CJK>
-0x60B8 # <CJK>
0x60BC # <CJK>
-0x60BD # <CJK>
0x60C5 # <CJK>
-0x60C6 # <CJK>
-0x60C7 # <CJK>
0x60D1 # <CJK>
-0x60D3 # <CJK>
-0x60D8 # <CJK>
-0x60DA # <CJK>
0x60DC # <CJK>
-0x60DF # <CJK>
-0x60E0 # <CJK>
-0x60E1 # <CJK>
-0x60E3 # <CJK>
0x60E7 # <CJK>
0x60E8 # <CJK>
0x60F0 # <CJK>
-0x60F1 # <CJK>
0x60F3 # <CJK>
-0x60F4 # <CJK>
-0x60F6 # <CJK>
-0x60F7 # <CJK>
-0x60F9 # <CJK>
-0x60FA # <CJK>
-0x60FB # <CJK>
-0x6100 # <CJK>
0x6101 # <CJK>
-0x6103 # <CJK>
-0x6106 # <CJK>
-0x6108 # <CJK>
0x6109 # <CJK>
-0x610D # <CJK>
-0x610E # <CJK>
0x610F # <CJK>
-0x6115 # <CJK>
0x611A # <CJK>
0x611B # <CJK>
0x611F # <CJK>
-0x6121 # <CJK>
-0x6127 # <CJK>
-0x6128 # <CJK>
-0x612C # <CJK>
-0x6134 # <CJK>
-0x613C # <CJK>
-0x613D # <CJK>
-0x613E # <CJK>
-0x613F # <CJK>
-0x6142 # <CJK>
0x6144 # <CJK>
-0x6147 # <CJK>
0x6148 # <CJK>
-0x614A # <CJK>
0x614B # <CJK>
0x614C # <CJK>
-0x614D # <CJK>
0x614E # <CJK>
-0x6153 # <CJK>
0x6155 # <CJK>
-0x6158 # <CJK>
-0x6159 # <CJK>
-0x615A # <CJK>
-0x615D # <CJK>
-0x615F # <CJK>
0x6162 # <CJK>
0x6163 # <CJK>
-0x6165 # <CJK>
-0x6167 # <CJK>
0x6168 # <CJK>
-0x616B # <CJK>
0x616E # <CJK>
-0x616F # <CJK>
0x6170 # <CJK>
-0x6171 # <CJK>
-0x6173 # <CJK>
-0x6174 # <CJK>
-0x6175 # <CJK>
0x6176 # <CJK>
-0x6177 # <CJK>
-0x617E # <CJK>
0x6182 # <CJK>
-0x6187 # <CJK>
-0x618A # <CJK>
0x618E # <CJK>
-0x6190 # <CJK>
-0x6191 # <CJK>
-0x6194 # <CJK>
-0x6196 # <CJK>
-0x6199 # <CJK>
-0x619A # <CJK>
0x61A4 # <CJK>
0x61A7 # <CJK>
0x61A9 # <CJK>
-0x61AB # <CJK>
0x61AC # <CJK>
-0x61AE # <CJK>
0x61B2 # <CJK>
0x61B6 # <CJK>
-0x61BA # <CJK>
0x61BE # <CJK>
-0x61C3 # <CJK>
-0x61C6 # <CJK>
0x61C7 # <CJK>
-0x61C8 # <CJK>
-0x61C9 # <CJK>
-0x61CA # <CJK>
-0x61CB # <CJK>
-0x61CC # <CJK>
-0x61CD # <CJK>
0x61D0 # <CJK>
-0x61E3 # <CJK>
-0x61E6 # <CJK>
0x61F2 # <CJK>
-0x61F4 # <CJK>
-0x61F6 # <CJK>
-0x61F7 # <CJK>
0x61F8 # <CJK>
-0x61FA # <CJK>
-0x61FC # <CJK>
-0x61FD # <CJK>
-0x61FE # <CJK>
-0x61FF # <CJK>
-0x6200 # <CJK>
-0x6208 # <CJK>
-0x6209 # <CJK>
-0x620A # <CJK>
-0x620C # <CJK>
-0x620D # <CJK>
-0x620E # <CJK>
0x6210 # <CJK>
0x6211 # <CJK>
0x6212 # <CJK>
-0x6214 # <CJK>
-0x6216 # <CJK>
0x621A # <CJK>
-0x621B # <CJK>
-0x621D # <CJK>
-0x621E # <CJK>
-0x621F # <CJK>
-0x6221 # <CJK>
0x6226 # <CJK>
-0x622A # <CJK>
-0x622E # <CJK>
0x622F # <CJK>
-0x6230 # <CJK>
-0x6232 # <CJK>
-0x6233 # <CJK>
0x6234 # <CJK>
0x6238 # <CJK>
0x623B # <CJK>
0x623F # <CJK>
0x6240 # <CJK>
-0x6241 # <CJK>
0x6247 # <CJK>
-0x6248 # <CJK>
0x6249 # <CJK>
0x624B # <CJK>
0x624D # <CJK>
-0x624E # <CJK>
0x6253 # <CJK>
0x6255 # <CJK>
-0x6258 # <CJK>
-0x625B # <CJK>
-0x625E # <CJK>
-0x6260 # <CJK>
-0x6263 # <CJK>
-0x6268 # <CJK>
-0x626E # <CJK>
0x6271 # <CJK>
0x6276 # <CJK>
0x6279 # <CJK>
-0x627C # <CJK>
-0x627E # <CJK>
0x627F # <CJK>
0x6280 # <CJK>
-0x6282 # <CJK>
-0x6283 # <CJK>
0x6284 # <CJK>
-0x6289 # <CJK>
0x628A # <CJK>
0x6291 # <CJK>
-0x6292 # <CJK>
-0x6293 # <CJK>
-0x6294 # <CJK>
0x6295 # <CJK>
-0x6296 # <CJK>
0x6297 # <CJK>
0x6298 # <CJK>
-0x629B # <CJK>
0x629C # <CJK>
0x629E # <CJK>
0x62AB # <CJK>
-0x62AC # <CJK>
0x62B1 # <CJK>
0x62B5 # <CJK>
0x62B9 # <CJK>
-0x62BB # <CJK>
0x62BC # <CJK>
0x62BD # <CJK>
-0x62C2 # <CJK>
0x62C5 # <CJK>
-0x62C6 # <CJK>
-0x62C7 # <CJK>
-0x62C8 # <CJK>
0x62C9 # <CJK>
-0x62CA # <CJK>
-0x62CC # <CJK>
0x62CD # <CJK>
-0x62CF # <CJK>
0x62D0 # <CJK>
-0x62D1 # <CJK>
0x62D2 # <CJK>
0x62D3 # <CJK>
-0x62D4 # <CJK>
-0x62D7 # <CJK>
0x62D8 # <CJK>
0x62D9 # <CJK>
0x62DB # <CJK>
-0x62DC # <CJK>
0x62DD # <CJK>
0x62E0 # <CJK>
0x62E1 # <CJK>
0x62EC # <CJK>
0x62ED # <CJK>
-0x62EE # <CJK>
-0x62EF # <CJK>
-0x62F1 # <CJK>
0x62F3 # <CJK>
-0x62F5 # <CJK>
0x62F6 # <CJK>
0x62F7 # <CJK>
0x62FE # <CJK>
-0x62FF # <CJK>
0x6301 # <CJK>
-0x6302 # <CJK>
0x6307 # <CJK>
-0x6308 # <CJK>
-0x6309 # <CJK>
-0x630C # <CJK>
0x6311 # <CJK>
0x6319 # <CJK>
0x631F # <CJK>
-0x6327 # <CJK>
0x6328 # <CJK>
0x632B # <CJK>
0x632F # <CJK>
-0x633A # <CJK>
-0x633D # <CJK>
-0x633E # <CJK>
0x633F # <CJK>
0x6349 # <CJK>
-0x634C # <CJK>
-0x634D # <CJK>
-0x634F # <CJK>
-0x6350 # <CJK>
0x6355 # <CJK>
0x6357 # <CJK>
0x635C # <CJK>
-0x6367 # <CJK>
0x6368 # <CJK>
-0x6369 # <CJK>
-0x636B # <CJK>
0x636E # <CJK>
-0x6372 # <CJK>
-0x6376 # <CJK>
-0x6377 # <CJK>
-0x637A # <CJK>
0x637B # <CJK>
-0x6380 # <CJK>
0x6383 # <CJK>
0x6388 # <CJK>
-0x6389 # <CJK>
0x638C # <CJK>
-0x638E # <CJK>
-0x638F # <CJK>
0x6392 # <CJK>
-0x6396 # <CJK>
0x6398 # <CJK>
0x639B # <CJK>
-0x639F # <CJK>
-0x63A0 # <CJK>
0x63A1 # <CJK>
0x63A2 # <CJK>
-0x63A3 # <CJK>
0x63A5 # <CJK>
0x63A7 # <CJK>
0x63A8 # <CJK>
-0x63A9 # <CJK>
0x63AA # <CJK>
-0x63AB # <CJK>
-0x63AC # <CJK>
0x63B2 # <CJK>
-0x63B4 # <CJK>
-0x63B5 # <CJK>
-0x63BB # <CJK>
-0x63BE # <CJK>
-0x63C0 # <CJK>
-0x63C3 # <CJK>
-0x63C4 # <CJK>
-0x63C6 # <CJK>
-0x63C9 # <CJK>
0x63CF # <CJK>
0x63D0 # <CJK>
-0x63D2 # <CJK>
-0x63D6 # <CJK>
0x63DA # <CJK>
0x63DB # <CJK>
0x63E1 # <CJK>
-0x63E3 # <CJK>
-0x63E9 # <CJK>
0x63EE # <CJK>
0x63F4 # <CJK>
-0x63F6 # <CJK>
0x63FA # <CJK>
-0x6406 # <CJK>
0x640D # <CJK>
-0x640F # <CJK>
-0x6413 # <CJK>
-0x6416 # <CJK>
-0x6417 # <CJK>
-0x641C # <CJK>
-0x6426 # <CJK>
-0x6428 # <CJK>
0x642C # <CJK>
0x642D # <CJK>
-0x6434 # <CJK>
-0x6436 # <CJK>
0x643A # <CJK>
0x643E # <CJK>
0x6442 # <CJK>
-0x644E # <CJK>
0x6458 # <CJK>
-0x6467 # <CJK>
0x6469 # <CJK>
0x646F # <CJK>
-0x6476 # <CJK>
-0x6478 # <CJK>
-0x647A # <CJK>
0x6483 # <CJK>
-0x6488 # <CJK>
-0x6492 # <CJK>
-0x6493 # <CJK>
-0x6495 # <CJK>
-0x649A # <CJK>
-0x649E # <CJK>
0x64A4 # <CJK>
-0x64A5 # <CJK>
-0x64A9 # <CJK>
-0x64AB # <CJK>
-0x64AD # <CJK>
0x64AE # <CJK>
-0x64B0 # <CJK>
0x64B2 # <CJK>
-0x64B9 # <CJK>
-0x64BB # <CJK>
-0x64BC # <CJK>
0x64C1 # <CJK>
-0x64C2 # <CJK>
-0x64C5 # <CJK>
-0x64C7 # <CJK>
0x64CD # <CJK>
-0x64D2 # <CJK>
-0x64D4 # <CJK>
-0x64D8 # <CJK>
-0x64DA # <CJK>
-0x64E0 # <CJK>
-0x64E1 # <CJK>
-0x64E2 # <CJK>
-0x64E3 # <CJK>
0x64E6 # <CJK>
-0x64E7 # <CJK>
0x64EC # <CJK>
-0x64EF # <CJK>
-0x64F1 # <CJK>
-0x64F2 # <CJK>
-0x64F4 # <CJK>
-0x64F6 # <CJK>
-0x64FA # <CJK>
-0x64FD # <CJK>
-0x64FE # <CJK>
-0x6500 # <CJK>
-0x6505 # <CJK>
-0x6518 # <CJK>
-0x651C # <CJK>
-0x651D # <CJK>
-0x6523 # <CJK>
-0x6524 # <CJK>
-0x652A # <CJK>
-0x652B # <CJK>
-0x652C # <CJK>
0x652F # <CJK>
-0x6534 # <CJK>
-0x6535 # <CJK>
-0x6536 # <CJK>
-0x6537 # <CJK>
-0x6538 # <CJK>
0x6539 # <CJK>
0x653B # <CJK>
0x653E # <CJK>
0x653F # <CJK>
0x6545 # <CJK>
-0x6548 # <CJK>
-0x654D # <CJK>
0x654F # <CJK>
0x6551 # <CJK>
-0x6555 # <CJK>
-0x6556 # <CJK>
0x6557 # <CJK>
-0x6558 # <CJK>
0x6559 # <CJK>
-0x655D # <CJK>
-0x655E # <CJK>
0x6562 # <CJK>
0x6563 # <CJK>
-0x6566 # <CJK>
0x656C # <CJK>
0x6570 # <CJK>
-0x6572 # <CJK>
0x6574 # <CJK>
0x6575 # <CJK>
0x6577 # <CJK>
-0x6578 # <CJK>
-0x6582 # <CJK>
-0x6583 # <CJK>
0x6587 # <CJK>
-0x6588 # <CJK>
0x6589 # <CJK>
-0x658C # <CJK>
0x658E # <CJK>
-0x6590 # <CJK>
0x6591 # <CJK>
0x6597 # <CJK>
0x6599 # <CJK>
-0x659B # <CJK>
0x659C # <CJK>
-0x659F # <CJK>
-0x65A1 # <CJK>
0x65A4 # <CJK>
0x65A5 # <CJK>
-0x65A7 # <CJK>
-0x65AB # <CJK>
0x65AC # <CJK>
0x65AD # <CJK>
-0x65AF # <CJK>
0x65B0 # <CJK>
-0x65B7 # <CJK>
0x65B9 # <CJK>
-0x65BC # <CJK>
0x65BD # <CJK>
-0x65C1 # <CJK>
-0x65C3 # <CJK>
-0x65C4 # <CJK>
0x65C5 # <CJK>
-0x65C6 # <CJK>
0x65CB # <CJK>
-0x65CC # <CJK>
0x65CF # <CJK>
-0x65D2 # <CJK>
0x65D7 # <CJK>
-0x65D9 # <CJK>
-0x65DB # <CJK>
-0x65E0 # <CJK>
-0x65E1 # <CJK>
0x65E2 # <CJK>
0x65E5 # <CJK>
0x65E6 # <CJK>
@@ -2338,21 +1110,12 @@
0x65E8 # <CJK>
0x65E9 # <CJK>
0x65EC # <CJK>
-0x65ED # <CJK>
-0x65F1 # <CJK>
0x65FA # <CJK>
-0x65FB # <CJK>
-0x6602 # <CJK>
-0x6603 # <CJK>
0x6606 # <CJK>
0x6607 # <CJK>
-0x660A # <CJK>
-0x660C # <CJK>
0x660E # <CJK>
-0x660F # <CJK>
0x6613 # <CJK>
0x6614 # <CJK>
-0x661C # <CJK>
0x661F # <CJK>
0x6620 # <CJK>
0x6625 # <CJK>
@@ -2360,146 +1123,59 @@
0x6628 # <CJK>
0x662D # <CJK>
0x662F # <CJK>
-0x6634 # <CJK>
-0x6635 # <CJK>
-0x6636 # <CJK>
0x663C # <CJK>
-0x663F # <CJK>
-0x6641 # <CJK>
0x6642 # <CJK>
-0x6643 # <CJK>
-0x6644 # <CJK>
-0x6649 # <CJK>
-0x664B # <CJK>
-0x664F # <CJK>
-0x6652 # <CJK>
-0x665D # <CJK>
-0x665E # <CJK>
-0x665F # <CJK>
-0x6662 # <CJK>
-0x6664 # <CJK>
-0x6666 # <CJK>
-0x6667 # <CJK>
-0x6668 # <CJK>
0x6669 # <CJK>
0x666E # <CJK>
0x666F # <CJK>
-0x6670 # <CJK>
0x6674 # <CJK>
0x6676 # <CJK>
-0x667A # <CJK>
0x6681 # <CJK>
-0x6683 # <CJK>
-0x6684 # <CJK>
0x6687 # <CJK>
-0x6688 # <CJK>
-0x6689 # <CJK>
-0x668E # <CJK>
0x6691 # <CJK>
0x6696 # <CJK>
0x6697 # <CJK>
-0x6698 # <CJK>
-0x669D # <CJK>
-0x66A2 # <CJK>
0x66A6 # <CJK>
0x66AB # <CJK>
0x66AE # <CJK>
0x66B4 # <CJK>
-0x66B8 # <CJK>
-0x66B9 # <CJK>
-0x66BC # <CJK>
-0x66BE # <CJK>
-0x66C1 # <CJK>
-0x66C4 # <CJK>
0x66C7 # <CJK>
-0x66C9 # <CJK>
0x66D6 # <CJK>
-0x66D9 # <CJK>
-0x66DA # <CJK>
0x66DC # <CJK>
-0x66DD # <CJK>
-0x66E0 # <CJK>
-0x66E6 # <CJK>
-0x66E9 # <CJK>
-0x66F0 # <CJK>
0x66F2 # <CJK>
-0x66F3 # <CJK>
0x66F4 # <CJK>
-0x66F5 # <CJK>
-0x66F7 # <CJK>
0x66F8 # <CJK>
0x66F9 # <CJK>
-0x66FC # <CJK>
0x66FD # <CJK>
-0x66FE # <CJK>
0x66FF # <CJK>
0x6700 # <CJK>
-0x6703 # <CJK>
0x6708 # <CJK>
0x6709 # <CJK>
-0x670B # <CJK>
0x670D # <CJK>
-0x670F # <CJK>
-0x6714 # <CJK>
0x6715 # <CJK>
-0x6716 # <CJK>
0x6717 # <CJK>
0x671B # <CJK>
0x671D # <CJK>
-0x671E # <CJK>
0x671F # <CJK>
-0x6726 # <CJK>
-0x6727 # <CJK>
0x6728 # <CJK>
0x672A # <CJK>
0x672B # <CJK>
0x672C # <CJK>
0x672D # <CJK>
-0x672E # <CJK>
0x6731 # <CJK>
0x6734 # <CJK>
-0x6736 # <CJK>
-0x6737 # <CJK>
-0x6738 # <CJK>
0x673A # <CJK>
0x673D # <CJK>
-0x673F # <CJK>
-0x6741 # <CJK>
-0x6746 # <CJK>
0x6749 # <CJK>
-0x674E # <CJK>
-0x674F # <CJK>
0x6750 # <CJK>
0x6751 # <CJK>
-0x6753 # <CJK>
-0x6756 # <CJK>
-0x6759 # <CJK>
-0x675C # <CJK>
-0x675E # <CJK>
0x675F # <CJK>
-0x6760 # <CJK>
0x6761 # <CJK>
-0x6762 # <CJK>
-0x6763 # <CJK>
-0x6764 # <CJK>
0x6765 # <CJK>
-0x676A # <CJK>
-0x676D # <CJK>
0x676F # <CJK>
-0x6770 # <CJK>
0x6771 # <CJK>
-0x6772 # <CJK>
-0x6773 # <CJK>
-0x6775 # <CJK>
-0x6777 # <CJK>
-0x677C # <CJK>
0x677E # <CJK>
0x677F # <CJK>
-0x6785 # <CJK>
-0x6787 # <CJK>
-0x6789 # <CJK>
-0x678B # <CJK>
-0x678C # <CJK>
0x6790 # <CJK>
0x6795 # <CJK>
0x6797 # <CJK>
@@ -2507,2836 +1183,820 @@
0x679C # <CJK>
0x679D # <CJK>
0x67A0 # <CJK>
-0x67A1 # <CJK>
0x67A2 # <CJK>
-0x67A6 # <CJK>
-0x67A9 # <CJK>
0x67AF # <CJK>
-0x67B3 # <CJK>
-0x67B4 # <CJK>
0x67B6 # <CJK>
-0x67B7 # <CJK>
-0x67B8 # <CJK>
-0x67B9 # <CJK>
-0x67C1 # <CJK>
0x67C4 # <CJK>
-0x67C6 # <CJK>
-0x67CA # <CJK>
-0x67CE # <CJK>
-0x67CF # <CJK>
0x67D0 # <CJK>
-0x67D1 # <CJK>
0x67D3 # <CJK>
0x67D4 # <CJK>
-0x67D8 # <CJK>
-0x67DA # <CJK>
-0x67DD # <CJK>
-0x67DE # <CJK>
-0x67E2 # <CJK>
-0x67E4 # <CJK>
-0x67E7 # <CJK>
-0x67E9 # <CJK>
-0x67EC # <CJK>
-0x67EE # <CJK>
-0x67EF # <CJK>
0x67F1 # <CJK>
0x67F3 # <CJK>
-0x67F4 # <CJK>
0x67F5 # <CJK>
0x67FB # <CJK>
-0x67FE # <CJK>
0x67FF # <CJK>
-0x6802 # <CJK>
0x6803 # <CJK>
0x6804 # <CJK>
0x6813 # <CJK>
-0x6816 # <CJK>
-0x6817 # <CJK>
-0x681E # <CJK>
0x6821 # <CJK>
-0x6822 # <CJK>
-0x6829 # <CJK>
0x682A # <CJK>
-0x682B # <CJK>
-0x6832 # <CJK>
-0x6834 # <CJK>
0x6838 # <CJK>
0x6839 # <CJK>
0x683C # <CJK>
0x683D # <CJK>
-0x6840 # <CJK>
0x6841 # <CJK>
-0x6842 # <CJK>
0x6843 # <CJK>
-0x6846 # <CJK>
0x6848 # <CJK>
-0x684D # <CJK>
-0x684E # <CJK>
-0x6850 # <CJK>
0x6851 # <CJK>
-0x6853 # <CJK>
-0x6854 # <CJK>
-0x6859 # <CJK>
0x685C # <CJK>
-0x685D # <CJK>
0x685F # <CJK>
-0x6863 # <CJK>
-0x6867 # <CJK>
-0x6874 # <CJK>
-0x6876 # <CJK>
-0x6877 # <CJK>
-0x687E # <CJK>
-0x687F # <CJK>
-0x6881 # <CJK>
-0x6883 # <CJK>
0x6885 # <CJK>
-0x688D # <CJK>
-0x688F # <CJK>
-0x6893 # <CJK>
-0x6894 # <CJK>
0x6897 # <CJK>
-0x689B # <CJK>
-0x689D # <CJK>
-0x689F # <CJK>
-0x68A0 # <CJK>
-0x68A2 # <CJK>
-0x68A6 # <CJK>
-0x68A7 # <CJK>
0x68A8 # <CJK>
-0x68AD # <CJK>
-0x68AF # <CJK>
0x68B0 # <CJK>
-0x68B1 # <CJK>
-0x68B3 # <CJK>
-0x68B5 # <CJK>
-0x68B6 # <CJK>
-0x68B9 # <CJK>
-0x68BA # <CJK>
-0x68BC # <CJK>
0x68C4 # <CJK>
-0x68C6 # <CJK>
-0x68C9 # <CJK>
-0x68CA # <CJK>
0x68CB # <CJK>
-0x68CD # <CJK>
0x68D2 # <CJK>
-0x68D4 # <CJK>
-0x68D5 # <CJK>
-0x68D7 # <CJK>
-0x68D8 # <CJK>
0x68DA # <CJK>
0x68DF # <CJK>
-0x68E0 # <CJK>
-0x68E1 # <CJK>
-0x68E3 # <CJK>
-0x68E7 # <CJK>
0x68EE # <CJK>
-0x68EF # <CJK>
-0x68F2 # <CJK>
-0x68F9 # <CJK>
0x68FA # <CJK>
-0x6900 # <CJK>
-0x6901 # <CJK>
-0x6904 # <CJK>
0x6905 # <CJK>
-0x6908 # <CJK>
-0x690B # <CJK>
-0x690C # <CJK>
0x690D # <CJK>
0x690E # <CJK>
-0x690F # <CJK>
-0x6912 # <CJK>
-0x6919 # <CJK>
-0x691A # <CJK>
-0x691B # <CJK>
0x691C # <CJK>
-0x6921 # <CJK>
-0x6922 # <CJK>
-0x6923 # <CJK>
-0x6925 # <CJK>
-0x6926 # <CJK>
-0x6928 # <CJK>
-0x692A # <CJK>
-0x6930 # <CJK>
-0x6934 # <CJK>
-0x6936 # <CJK>
-0x6939 # <CJK>
-0x693D # <CJK>
-0x693F # <CJK>
-0x694A # <CJK>
-0x6953 # <CJK>
-0x6954 # <CJK>
-0x6955 # <CJK>
-0x6959 # <CJK>
-0x695A # <CJK>
-0x695C # <CJK>
-0x695D # <CJK>
-0x695E # <CJK>
-0x6960 # <CJK>
-0x6961 # <CJK>
-0x6962 # <CJK>
-0x696A # <CJK>
-0x696B # <CJK>
0x696D # <CJK>
-0x696E # <CJK>
-0x696F # <CJK>
-0x6973 # <CJK>
-0x6974 # <CJK>
0x6975 # <CJK>
0x6977 # <CJK>
-0x6978 # <CJK>
-0x6979 # <CJK>
0x697C # <CJK>
0x697D # <CJK>
-0x697E # <CJK>
-0x6981 # <CJK>
0x6982 # <CJK>
-0x698A # <CJK>
-0x698E # <CJK>
-0x6991 # <CJK>
-0x6994 # <CJK>
-0x6995 # <CJK>
-0x699B # <CJK>
-0x699C # <CJK>
-0x69A0 # <CJK>
-0x69A7 # <CJK>
-0x69AE # <CJK>
-0x69B1 # <CJK>
-0x69B2 # <CJK>
-0x69B4 # <CJK>
-0x69BB # <CJK>
-0x69BE # <CJK>
-0x69BF # <CJK>
-0x69C1 # <CJK>
-0x69C3 # <CJK>
-0x69C7 # <CJK>
-0x69CA # <CJK>
0x69CB # <CJK>
-0x69CC # <CJK>
-0x69CD # <CJK>
-0x69CE # <CJK>
-0x69D0 # <CJK>
-0x69D3 # <CJK>
0x69D8 # <CJK>
-0x69D9 # <CJK>
-0x69DD # <CJK>
-0x69DE # <CJK>
-0x69E7 # <CJK>
-0x69E8 # <CJK>
-0x69EB # <CJK>
-0x69ED # <CJK>
-0x69F2 # <CJK>
-0x69F9 # <CJK>
-0x69FB # <CJK>
0x69FD # <CJK>
-0x69FF # <CJK>
-0x6A02 # <CJK>
-0x6A05 # <CJK>
-0x6A0A # <CJK>
-0x6A0B # <CJK>
-0x6A0C # <CJK>
-0x6A12 # <CJK>
-0x6A13 # <CJK>
-0x6A14 # <CJK>
-0x6A17 # <CJK>
0x6A19 # <CJK>
-0x6A1B # <CJK>
-0x6A1E # <CJK>
-0x6A1F # <CJK>
0x6A21 # <CJK>
-0x6A22 # <CJK>
-0x6A23 # <CJK>
0x6A29 # <CJK>
0x6A2A # <CJK>
-0x6A2B # <CJK>
-0x6A2E # <CJK>
-0x6A35 # <CJK>
-0x6A36 # <CJK>
-0x6A38 # <CJK>
0x6A39 # <CJK>
-0x6A3A # <CJK>
-0x6A3D # <CJK>
-0x6A44 # <CJK>
-0x6A47 # <CJK>
-0x6A48 # <CJK>
0x6A4B # <CJK>
-0x6A58 # <CJK>
-0x6A59 # <CJK>
0x6A5F # <CJK>
-0x6A61 # <CJK>
-0x6A62 # <CJK>
-0x6A66 # <CJK>
-0x6A72 # <CJK>
-0x6A78 # <CJK>
-0x6A7F # <CJK>
-0x6A80 # <CJK>
-0x6A84 # <CJK>
-0x6A8D # <CJK>
-0x6A8E # <CJK>
-0x6A90 # <CJK>
-0x6A97 # <CJK>
-0x6A9C # <CJK>
-0x6AA0 # <CJK>
-0x6AA2 # <CJK>
-0x6AA3 # <CJK>
-0x6AAA # <CJK>
-0x6AAC # <CJK>
-0x6AAE # <CJK>
-0x6AB3 # <CJK>
-0x6AB8 # <CJK>
-0x6ABB # <CJK>
-0x6AC1 # <CJK>
-0x6AC2 # <CJK>
-0x6AC3 # <CJK>
-0x6AD1 # <CJK>
-0x6AD3 # <CJK>
-0x6ADA # <CJK>
-0x6ADB # <CJK>
-0x6ADE # <CJK>
-0x6ADF # <CJK>
-0x6AE8 # <CJK>
-0x6AEA # <CJK>
-0x6AFA # <CJK>
-0x6AFB # <CJK>
0x6B04 # <CJK>
-0x6B05 # <CJK>
-0x6B0A # <CJK>
-0x6B12 # <CJK>
-0x6B16 # <CJK>
-0x6B1D # <CJK>
-0x6B1F # <CJK>
0x6B20 # <CJK>
0x6B21 # <CJK>
-0x6B23 # <CJK>
0x6B27 # <CJK>
0x6B32 # <CJK>
-0x6B37 # <CJK>
-0x6B38 # <CJK>
-0x6B39 # <CJK>
0x6B3A # <CJK>
-0x6B3D # <CJK>
0x6B3E # <CJK>
-0x6B43 # <CJK>
-0x6B47 # <CJK>
-0x6B49 # <CJK>
0x6B4C # <CJK>
-0x6B4E # <CJK>
-0x6B50 # <CJK>
0x6B53 # <CJK>
-0x6B54 # <CJK>
-0x6B59 # <CJK>
-0x6B5B # <CJK>
-0x6B5F # <CJK>
-0x6B61 # <CJK>
0x6B62 # <CJK>
0x6B63 # <CJK>
-0x6B64 # <CJK>
0x6B66 # <CJK>
0x6B69 # <CJK>
-0x6B6A # <CJK>
0x6B6F # <CJK>
0x6B73 # <CJK>
0x6B74 # <CJK>
-0x6B78 # <CJK>
-0x6B79 # <CJK>
0x6B7B # <CJK>
-0x6B7F # <CJK>
-0x6B80 # <CJK>
-0x6B83 # <CJK>
-0x6B84 # <CJK>
-0x6B86 # <CJK>
0x6B89 # <CJK>
0x6B8A # <CJK>
0x6B8B # <CJK>
-0x6B8D # <CJK>
-0x6B95 # <CJK>
0x6B96 # <CJK>
-0x6B98 # <CJK>
-0x6B9E # <CJK>
-0x6BA4 # <CJK>
-0x6BAA # <CJK>
-0x6BAB # <CJK>
-0x6BAF # <CJK>
-0x6BB1 # <CJK>
-0x6BB2 # <CJK>
-0x6BB3 # <CJK>
0x6BB4 # <CJK>
0x6BB5 # <CJK>
-0x6BB7 # <CJK>
0x6BBA # <CJK>
0x6BBB # <CJK>
-0x6BBC # <CJK>
0x6BBF # <CJK>
0x6BC0 # <CJK>
-0x6BC5 # <CJK>
-0x6BC6 # <CJK>
-0x6BCB # <CJK>
0x6BCD # <CJK>
0x6BCE # <CJK>
0x6BD2 # <CJK>
-0x6BD3 # <CJK>
0x6BD4 # <CJK>
-0x6BD8 # <CJK>
0x6BDB # <CJK>
-0x6BDF # <CJK>
-0x6BEB # <CJK>
-0x6BEC # <CJK>
-0x6BEF # <CJK>
-0x6BF3 # <CJK>
-0x6C08 # <CJK>
0x6C0F # <CJK>
0x6C11 # <CJK>
-0x6C13 # <CJK>
-0x6C14 # <CJK>
0x6C17 # <CJK>
-0x6C1B # <CJK>
-0x6C23 # <CJK>
-0x6C24 # <CJK>
0x6C34 # <CJK>
0x6C37 # <CJK>
0x6C38 # <CJK>
0x6C3E # <CJK>
-0x6C40 # <CJK>
0x6C41 # <CJK>
0x6C42 # <CJK>
0x6C4E # <CJK>
-0x6C50 # <CJK>
-0x6C55 # <CJK>
0x6C57 # <CJK>
0x6C5A # <CJK>
-0x6C5D # <CJK>
-0x6C5E # <CJK>
0x6C5F # <CJK>
0x6C60 # <CJK>
-0x6C62 # <CJK>
-0x6C68 # <CJK>
-0x6C6A # <CJK>
0x6C70 # <CJK>
-0x6C72 # <CJK>
-0x6C73 # <CJK>
0x6C7A # <CJK>
0x6C7D # <CJK>
-0x6C7E # <CJK>
-0x6C81 # <CJK>
-0x6C82 # <CJK>
0x6C83 # <CJK>
0x6C88 # <CJK>
-0x6C8C # <CJK>
-0x6C8D # <CJK>
-0x6C90 # <CJK>
-0x6C92 # <CJK>
-0x6C93 # <CJK>
0x6C96 # <CJK>
0x6C99 # <CJK>
-0x6C9A # <CJK>
-0x6C9B # <CJK>
0x6CA1 # <CJK>
0x6CA2 # <CJK>
-0x6CAB # <CJK>
-0x6CAE # <CJK>
-0x6CB1 # <CJK>
0x6CB3 # <CJK>
0x6CB8 # <CJK>
0x6CB9 # <CJK>
-0x6CBA # <CJK>
0x6CBB # <CJK>
0x6CBC # <CJK>
-0x6CBD # <CJK>
-0x6CBE # <CJK>
0x6CBF # <CJK>
0x6CC1 # <CJK>
-0x6CC4 # <CJK>
-0x6CC5 # <CJK>
0x6CC9 # <CJK>
0x6CCA # <CJK>
0x6CCC # <CJK>
-0x6CD3 # <CJK>
0x6CD5 # <CJK>
-0x6CD7 # <CJK>
-0x6CD9 # <CJK>
-0x6CDB # <CJK>
-0x6CDD # <CJK>
0x6CE1 # <CJK>
0x6CE2 # <CJK>
0x6CE3 # <CJK>
0x6CE5 # <CJK>
0x6CE8 # <CJK>
-0x6CEA # <CJK>
-0x6CEF # <CJK>
0x6CF0 # <CJK>
-0x6CF1 # <CJK>
0x6CF3 # <CJK>
0x6D0B # <CJK>
-0x6D0C # <CJK>
-0x6D12 # <CJK>
0x6D17 # <CJK>
-0x6D19 # <CJK>
-0x6D1B # <CJK>
0x6D1E # <CJK>
-0x6D1F # <CJK>
0x6D25 # <CJK>
-0x6D29 # <CJK>
0x6D2A # <CJK>
-0x6D2B # <CJK>
-0x6D32 # <CJK>
-0x6D33 # <CJK>
-0x6D35 # <CJK>
-0x6D36 # <CJK>
-0x6D38 # <CJK>
0x6D3B # <CJK>
-0x6D3D # <CJK>
0x6D3E # <CJK>
0x6D41 # <CJK>
0x6D44 # <CJK>
0x6D45 # <CJK>
-0x6D59 # <CJK>
-0x6D5A # <CJK>
0x6D5C # <CJK>
-0x6D63 # <CJK>
-0x6D64 # <CJK>
0x6D66 # <CJK>
-0x6D69 # <CJK>
0x6D6A # <CJK>
-0x6D6C # <CJK>
0x6D6E # <CJK>
0x6D74 # <CJK>
0x6D77 # <CJK>
0x6D78 # <CJK>
-0x6D79 # <CJK>
-0x6D85 # <CJK>
0x6D88 # <CJK>
-0x6D8C # <CJK>
-0x6D8E # <CJK>
-0x6D93 # <CJK>
-0x6D95 # <CJK>
0x6D99 # <CJK>
-0x6D9B # <CJK>
-0x6D9C # <CJK>
0x6DAF # <CJK>
0x6DB2 # <CJK>
-0x6DB5 # <CJK>
-0x6DB8 # <CJK>
0x6DBC # <CJK>
-0x6DC0 # <CJK>
-0x6DC5 # <CJK>
-0x6DC6 # <CJK>
-0x6DC7 # <CJK>
-0x6DCB # <CJK>
-0x6DCC # <CJK>
0x6DD1 # <CJK>
-0x6DD2 # <CJK>
-0x6DD5 # <CJK>
-0x6DD8 # <CJK>
-0x6DD9 # <CJK>
-0x6DDE # <CJK>
0x6DE1 # <CJK>
-0x6DE4 # <CJK>
-0x6DE6 # <CJK>
-0x6DE8 # <CJK>
-0x6DEA # <CJK>
0x6DEB # <CJK>
-0x6DEC # <CJK>
-0x6DEE # <CJK>
0x6DF1 # <CJK>
-0x6DF3 # <CJK>
-0x6DF5 # <CJK>
0x6DF7 # <CJK>
-0x6DF9 # <CJK>
-0x6DFA # <CJK>
0x6DFB # <CJK>
0x6E05 # <CJK>
0x6E07 # <CJK>
0x6E08 # <CJK>
0x6E09 # <CJK>
-0x6E0A # <CJK>
0x6E0B # <CJK>
0x6E13 # <CJK>
-0x6E15 # <CJK>
-0x6E19 # <CJK>
-0x6E1A # <CJK>
0x6E1B # <CJK>
-0x6E1D # <CJK>
-0x6E1F # <CJK>
-0x6E20 # <CJK>
0x6E21 # <CJK>
-0x6E23 # <CJK>
-0x6E24 # <CJK>
-0x6E25 # <CJK>
0x6E26 # <CJK>
0x6E29 # <CJK>
-0x6E2B # <CJK>
0x6E2C # <CJK>
-0x6E2D # <CJK>
-0x6E2E # <CJK>
0x6E2F # <CJK>
-0x6E38 # <CJK>
-0x6E3A # <CJK>
-0x6E3E # <CJK>
-0x6E43 # <CJK>
-0x6E4A # <CJK>
-0x6E4D # <CJK>
-0x6E4E # <CJK>
0x6E56 # <CJK>
-0x6E58 # <CJK>
-0x6E5B # <CJK>
-0x6E5F # <CJK>
0x6E67 # <CJK>
-0x6E6B # <CJK>
-0x6E6E # <CJK>
0x6E6F # <CJK>
-0x6E72 # <CJK>
-0x6E76 # <CJK>
0x6E7E # <CJK>
0x6E7F # <CJK>
0x6E80 # <CJK>
-0x6E82 # <CJK>
-0x6E8C # <CJK>
-0x6E8F # <CJK>
0x6E90 # <CJK>
0x6E96 # <CJK>
-0x6E98 # <CJK>
-0x6E9C # <CJK>
0x6E9D # <CJK>
-0x6E9F # <CJK>
-0x6EA2 # <CJK>
-0x6EA5 # <CJK>
-0x6EAA # <CJK>
-0x6EAF # <CJK>
-0x6EB2 # <CJK>
0x6EB6 # <CJK>
-0x6EB7 # <CJK>
0x6EBA # <CJK>
-0x6EBD # <CJK>
-0x6EC2 # <CJK>
-0x6EC4 # <CJK>
0x6EC5 # <CJK>
-0x6EC9 # <CJK>
0x6ECB # <CJK>
-0x6ECC # <CJK>
0x6ED1 # <CJK>
-0x6ED3 # <CJK>
-0x6ED4 # <CJK>
-0x6ED5 # <CJK>
0x6EDD # <CJK>
0x6EDE # <CJK>
-0x6EEC # <CJK>
-0x6EEF # <CJK>
-0x6EF2 # <CJK>
0x6EF4 # <CJK>
-0x6EF7 # <CJK>
-0x6EF8 # <CJK>
-0x6EFE # <CJK>
-0x6EFF # <CJK>
0x6F01 # <CJK>
0x6F02 # <CJK>
0x6F06 # <CJK>
-0x6F09 # <CJK>
0x6F0F # <CJK>
-0x6F11 # <CJK>
-0x6F13 # <CJK>
0x6F14 # <CJK>
-0x6F15 # <CJK>
0x6F20 # <CJK>
0x6F22 # <CJK>
-0x6F23 # <CJK>
0x6F2B # <CJK>
0x6F2C # <CJK>
-0x6F31 # <CJK>
-0x6F32 # <CJK>
0x6F38 # <CJK>
-0x6F3E # <CJK>
-0x6F3F # <CJK>
-0x6F41 # <CJK>
-0x6F45 # <CJK>
0x6F54 # <CJK>
-0x6F58 # <CJK>
-0x6F5B # <CJK>
0x6F5C # <CJK>
0x6F5F # <CJK>
0x6F64 # <CJK>
-0x6F66 # <CJK>
-0x6F6D # <CJK>
0x6F6E # <CJK>
-0x6F6F # <CJK>
0x6F70 # <CJK>
-0x6F74 # <CJK>
-0x6F78 # <CJK>
-0x6F7A # <CJK>
-0x6F7C # <CJK>
-0x6F80 # <CJK>
-0x6F81 # <CJK>
-0x6F82 # <CJK>
0x6F84 # <CJK>
-0x6F86 # <CJK>
-0x6F8E # <CJK>
-0x6F91 # <CJK>
-0x6F97 # <CJK>
-0x6FA1 # <CJK>
-0x6FA3 # <CJK>
-0x6FA4 # <CJK>
-0x6FAA # <CJK>
-0x6FB1 # <CJK>
-0x6FB3 # <CJK>
-0x6FB9 # <CJK>
0x6FC0 # <CJK>
0x6FC1 # <CJK>
-0x6FC2 # <CJK>
0x6FC3 # <CJK>
-0x6FC6 # <CJK>
-0x6FD4 # <CJK>
-0x6FD5 # <CJK>
-0x6FD8 # <CJK>
-0x6FDB # <CJK>
-0x6FDF # <CJK>
-0x6FE0 # <CJK>
-0x6FE1 # <CJK>
-0x6FE4 # <CJK>
0x6FEB # <CJK>
-0x6FEC # <CJK>
-0x6FEE # <CJK>
0x6FEF # <CJK>
-0x6FF1 # <CJK>
-0x6FF3 # <CJK>
-0x6FF6 # <CJK>
-0x6FFA # <CJK>
-0x6FFE # <CJK>
-0x7001 # <CJK>
-0x7009 # <CJK>
-0x700B # <CJK>
-0x700F # <CJK>
-0x7011 # <CJK>
-0x7015 # <CJK>
-0x7018 # <CJK>
-0x701A # <CJK>
-0x701B # <CJK>
-0x701D # <CJK>
-0x701E # <CJK>
-0x701F # <CJK>
-0x7026 # <CJK>
-0x7027 # <CJK>
0x702C # <CJK>
-0x7030 # <CJK>
-0x7032 # <CJK>
-0x703E # <CJK>
-0x704C # <CJK>
-0x7051 # <CJK>
-0x7058 # <CJK>
-0x7063 # <CJK>
0x706B # <CJK>
0x706F # <CJK>
0x7070 # <CJK>
-0x7078 # <CJK>
-0x707C # <CJK>
0x707D # <CJK>
0x7089 # <CJK>
0x708A # <CJK>
0x708E # <CJK>
-0x7092 # <CJK>
-0x7099 # <CJK>
-0x70AC # <CJK>
0x70AD # <CJK>
-0x70AE # <CJK>
-0x70AF # <CJK>
-0x70B3 # <CJK>
-0x70B8 # <CJK>
0x70B9 # <CJK>
0x70BA # <CJK>
0x70C8 # <CJK>
-0x70CB # <CJK>
-0x70CF # <CJK>
-0x70D9 # <CJK>
-0x70DD # <CJK>
-0x70DF # <CJK>
-0x70F1 # <CJK>
-0x70F9 # <CJK>
-0x70FD # <CJK>
-0x7109 # <CJK>
-0x7114 # <CJK>
-0x7119 # <CJK>
-0x711A # <CJK>
-0x711C # <CJK>
0x7121 # <CJK>
0x7126 # <CJK>
0x7136 # <CJK>
0x713C # <CJK>
-0x7149 # <CJK>
-0x714C # <CJK>
0x714E # <CJK>
-0x7155 # <CJK>
-0x7156 # <CJK>
0x7159 # <CJK>
-0x7162 # <CJK>
-0x7164 # <CJK>
-0x7165 # <CJK>
-0x7166 # <CJK>
0x7167 # <CJK>
0x7169 # <CJK>
-0x716C # <CJK>
0x716E # <CJK>
-0x717D # <CJK>
-0x7184 # <CJK>
-0x7188 # <CJK>
0x718A # <CJK>
-0x718F # <CJK>
-0x7194 # <CJK>
-0x7195 # <CJK>
-#0x7199 # <CJK> # not in kochi fonts
0x719F # <CJK>
-0x71A8 # <CJK>
-0x71AC # <CJK>
0x71B1 # <CJK>
-0x71B9 # <CJK>
-0x71BE # <CJK>
0x71C3 # <CJK>
-0x71C8 # <CJK>
-0x71C9 # <CJK>
-0x71CE # <CJK>
-0x71D0 # <CJK>
-0x71D2 # <CJK>
-0x71D4 # <CJK>
-0x71D5 # <CJK>
-0x71D7 # <CJK>
-0x71DF # <CJK>
-0x71E0 # <CJK>
0x71E5 # <CJK>
-0x71E6 # <CJK>
-0x71E7 # <CJK>
-0x71EC # <CJK>
-0x71ED # <CJK>
-0x71EE # <CJK>
-0x71F5 # <CJK>
-0x71F9 # <CJK>
-0x71FB # <CJK>
-0x71FC # <CJK>
-0x71FF # <CJK>
0x7206 # <CJK>
-0x720D # <CJK>
-0x7210 # <CJK>
-0x721B # <CJK>
-0x7228 # <CJK>
0x722A # <CJK>
-0x722C # <CJK>
-0x722D # <CJK>
-0x7230 # <CJK>
-0x7232 # <CJK>
0x7235 # <CJK>
0x7236 # <CJK>
-0x723A # <CJK>
-0x723B # <CJK>
-0x723C # <CJK>
0x723D # <CJK>
-0x723E # <CJK>
-0x723F # <CJK>
-0x7240 # <CJK>
-0x7246 # <CJK>
0x7247 # <CJK>
0x7248 # <CJK>
-0x724B # <CJK>
-0x724C # <CJK>
-0x7252 # <CJK>
-0x7258 # <CJK>
0x7259 # <CJK>
0x725B # <CJK>
-0x725D # <CJK>
-0x725F # <CJK>
-0x7261 # <CJK>
-0x7262 # <CJK>
0x7267 # <CJK>
0x7269 # <CJK>
0x7272 # <CJK>
-0x7274 # <CJK>
0x7279 # <CJK>
-0x727D # <CJK>
-0x727E # <CJK>
-0x7280 # <CJK>
-0x7281 # <CJK>
-0x7282 # <CJK>
-0x7287 # <CJK>
-0x7292 # <CJK>
-0x7296 # <CJK>
0x72A0 # <CJK>
-0x72A2 # <CJK>
-0x72A7 # <CJK>
0x72AC # <CJK>
0x72AF # <CJK>
-0x72B2 # <CJK>
0x72B6 # <CJK>
-0x72B9 # <CJK>
0x72C2 # <CJK>
-0x72C3 # <CJK>
-0x72C4 # <CJK>
-0x72C6 # <CJK>
-0x72CE # <CJK>
-0x72D0 # <CJK>
-0x72D2 # <CJK>
-0x72D7 # <CJK>
0x72D9 # <CJK>
-0x72DB # <CJK>
-0x72E0 # <CJK>
-0x72E1 # <CJK>
-0x72E2 # <CJK>
0x72E9 # <CJK>
0x72EC # <CJK>
0x72ED # <CJK>
-0x72F7 # <CJK>
-0x72F8 # <CJK>
-0x72F9 # <CJK>
-0x72FC # <CJK>
-0x72FD # <CJK>
-0x730A # <CJK>
-0x7316 # <CJK>
-0x7317 # <CJK>
0x731B # <CJK>
-0x731C # <CJK>
-0x731D # <CJK>
0x731F # <CJK>
-0x7325 # <CJK>
-0x7329 # <CJK>
-0x732A # <CJK>
0x732B # <CJK>
0x732E # <CJK>
-0x732F # <CJK>
-0x7334 # <CJK>
0x7336 # <CJK>
-0x7337 # <CJK>
-0x733E # <CJK>
0x733F # <CJK>
0x7344 # <CJK>
-0x7345 # <CJK>
-0x734E # <CJK>
-0x734F # <CJK>
-0x7357 # <CJK>
0x7363 # <CJK>
-0x7368 # <CJK>
-0x736A # <CJK>
-0x7370 # <CJK>
0x7372 # <CJK>
-0x7375 # <CJK>
-0x7378 # <CJK>
-0x737A # <CJK>
-0x737B # <CJK>
0x7384 # <CJK>
0x7387 # <CJK>
0x7389 # <CJK>
0x738B # <CJK>
-0x7396 # <CJK>
0x73A9 # <CJK>
-0x73B2 # <CJK>
-0x73B3 # <CJK>
-0x73BB # <CJK>
-0x73C0 # <CJK>
-0x73C2 # <CJK>
-0x73C8 # <CJK>
-0x73CA # <CJK>
0x73CD # <CJK>
-0x73CE # <CJK>
-0x73DE # <CJK>
0x73E0 # <CJK>
-0x73E5 # <CJK>
-0x73EA # <CJK>
0x73ED # <CJK>
-0x73EE # <CJK>
-0x73F1 # <CJK>
-0x73F8 # <CJK>
0x73FE # <CJK>
0x7403 # <CJK>
-0x7405 # <CJK>
0x7406 # <CJK>
-0x7409 # <CJK>
-0x7422 # <CJK>
-0x7425 # <CJK>
-0x7432 # <CJK>
-0x7433 # <CJK>
0x7434 # <CJK>
-0x7435 # <CJK>
-0x7436 # <CJK>
-0x743A # <CJK>
-0x743F # <CJK>
-0x7441 # <CJK>
-0x7455 # <CJK>
-0x7459 # <CJK>
-0x745A # <CJK>
-0x745B # <CJK>
-0x745C # <CJK>
-0x745E # <CJK>
-0x745F # <CJK>
0x7460 # <CJK>
-0x7463 # <CJK>
-0x7464 # <CJK>
-0x7469 # <CJK>
-0x746A # <CJK>
-0x746F # <CJK>
-0x7470 # <CJK>
-0x7473 # <CJK>
-0x7476 # <CJK>
-0x747E # <CJK>
0x7483 # <CJK>
-0x748B # <CJK>
-0x749E # <CJK>
-0x74A2 # <CJK>
0x74A7 # <CJK>
0x74B0 # <CJK>
0x74BD # <CJK>
-0x74CA # <CJK>
-0x74CF # <CJK>
-0x74D4 # <CJK>
-0x74DC # <CJK>
-0x74E0 # <CJK>
-0x74E2 # <CJK>
-0x74E3 # <CJK>
0x74E6 # <CJK>
-0x74E7 # <CJK>
-0x74E9 # <CJK>
-0x74EE # <CJK>
-0x74F0 # <CJK>
-0x74F1 # <CJK>
-0x74F2 # <CJK>
0x74F6 # <CJK>
-0x74F7 # <CJK>
-0x74F8 # <CJK>
-0x7503 # <CJK>
-0x7504 # <CJK>
-0x7505 # <CJK>
-0x750C # <CJK>
-0x750D # <CJK>
-0x750E # <CJK>
-0x7511 # <CJK>
-0x7513 # <CJK>
-0x7515 # <CJK>
0x7518 # <CJK>
0x751A # <CJK>
-0x751C # <CJK>
-0x751E # <CJK>
0x751F # <CJK>
0x7523 # <CJK>
-0x7525 # <CJK>
-0x7526 # <CJK>
0x7528 # <CJK>
-0x752B # <CJK>
-0x752C # <CJK>
0x7530 # <CJK>
0x7531 # <CJK>
0x7532 # <CJK>
0x7533 # <CJK>
0x7537 # <CJK>
-0x7538 # <CJK>
0x753A # <CJK>
0x753B # <CJK>
-0x753C # <CJK>
-0x7544 # <CJK>
-0x7546 # <CJK>
-0x7549 # <CJK>
-0x754A # <CJK>
-0x754B # <CJK>
0x754C # <CJK>
-0x754D # <CJK>
0x754F # <CJK>
0x7551 # <CJK>
0x7554 # <CJK>
0x7559 # <CJK>
-0x755A # <CJK>
-0x755B # <CJK>
0x755C # <CJK>
0x755D # <CJK>
-0x7560 # <CJK>
-0x7562 # <CJK>
-0x7564 # <CJK>
0x7565 # <CJK>
-0x7566 # <CJK>
-0x7567 # <CJK>
-0x7569 # <CJK>
0x756A # <CJK>
-0x756B # <CJK>
-0x756D # <CJK>
0x7570 # <CJK>
0x7573 # <CJK>
-0x7574 # <CJK>
-0x7576 # <CJK>
-0x7577 # <CJK>
-0x7578 # <CJK>
0x757F # <CJK>
-0x7582 # <CJK>
-0x7586 # <CJK>
-0x7587 # <CJK>
-0x7589 # <CJK>
-0x758A # <CJK>
-0x758B # <CJK>
0x758E # <CJK>
-0x758F # <CJK>
0x7591 # <CJK>
-0x7594 # <CJK>
-0x759A # <CJK>
-0x759D # <CJK>
-0x75A3 # <CJK>
-0x75A5 # <CJK>
0x75AB # <CJK>
-0x75B1 # <CJK>
0x75B2 # <CJK>
-0x75B3 # <CJK>
-0x75B5 # <CJK>
-0x75B8 # <CJK>
-0x75B9 # <CJK>
-0x75BC # <CJK>
-0x75BD # <CJK>
0x75BE # <CJK>
-0x75C2 # <CJK>
-0x75C3 # <CJK>
0x75C5 # <CJK>
0x75C7 # <CJK>
-0x75CA # <CJK>
-0x75CD # <CJK>
-0x75D2 # <CJK>
-0x75D4 # <CJK>
0x75D5 # <CJK>
0x75D8 # <CJK>
-0x75D9 # <CJK>
0x75DB # <CJK>
-0x75DE # <CJK>
0x75E2 # <CJK>
-0x75E3 # <CJK>
0x75E9 # <CJK>
-0x75F0 # <CJK>
-0x75F2 # <CJK>
-0x75F3 # <CJK>
0x75F4 # <CJK>
-0x75FA # <CJK>
-0x75FC # <CJK>
-0x75FE # <CJK>
-0x75FF # <CJK>
-0x7601 # <CJK>
-0x7609 # <CJK>
-0x760B # <CJK>
0x760D # <CJK>
-0x761F # <CJK>
-0x7620 # <CJK>
-0x7621 # <CJK>
-0x7622 # <CJK>
-0x7624 # <CJK>
-0x7627 # <CJK>
-0x7630 # <CJK>
-0x7634 # <CJK>
-0x763B # <CJK>
0x7642 # <CJK>
-0x7646 # <CJK>
-0x7647 # <CJK>
-0x7648 # <CJK>
-0x764C # <CJK>
0x7652 # <CJK>
0x7656 # <CJK>
-0x7658 # <CJK>
-0x765C # <CJK>
-0x7661 # <CJK>
-0x7662 # <CJK>
-0x7667 # <CJK>
-0x7668 # <CJK>
-0x7669 # <CJK>
-0x766A # <CJK>
-0x766C # <CJK>
-0x7670 # <CJK>
-0x7672 # <CJK>
-0x7676 # <CJK>
-0x7678 # <CJK>
0x767A # <CJK>
0x767B # <CJK>
-0x767C # <CJK>
0x767D # <CJK>
0x767E # <CJK>
-0x7680 # <CJK>
-0x7683 # <CJK>
0x7684 # <CJK>
0x7686 # <CJK>
0x7687 # <CJK>
-0x7688 # <CJK>
-0x768B # <CJK>
-0x768E # <CJK>
-0x7690 # <CJK>
-0x7693 # <CJK>
-0x7696 # <CJK>
-0x7699 # <CJK>
-0x769A # <CJK>
0x76AE # <CJK>
-0x76B0 # <CJK>
-0x76B4 # <CJK>
-0x76B7 # <CJK>
-0x76B8 # <CJK>
-0x76B9 # <CJK>
-0x76BA # <CJK>
0x76BF # <CJK>
-0x76C2 # <CJK>
-0x76C3 # <CJK>
0x76C6 # <CJK>
-0x76C8 # <CJK>
0x76CA # <CJK>
-0x76CD # <CJK>
-0x76D2 # <CJK>
-0x76D6 # <CJK>
0x76D7 # <CJK>
0x76DB # <CJK>
-0x76DC # <CJK>
-0x76DE # <CJK>
0x76DF # <CJK>
-0x76E1 # <CJK>
0x76E3 # <CJK>
0x76E4 # <CJK>
-0x76E5 # <CJK>
-0x76E7 # <CJK>
-0x76EA # <CJK>
0x76EE # <CJK>
0x76F2 # <CJK>
0x76F4 # <CJK>
0x76F8 # <CJK>
-0x76FB # <CJK>
0x76FE # <CJK>
0x7701 # <CJK>
-0x7704 # <CJK>
-0x7707 # <CJK>
-0x7708 # <CJK>
0x7709 # <CJK>
0x770B # <CJK>
0x770C # <CJK>
-0x771B # <CJK>
-0x771E # <CJK>
0x771F # <CJK>
0x7720 # <CJK>
-0x7724 # <CJK>
-0x7725 # <CJK>
-0x7726 # <CJK>
-0x7729 # <CJK>
-0x7737 # <CJK>
-0x7738 # <CJK>
0x773A # <CJK>
0x773C # <CJK>
0x7740 # <CJK>
-0x7747 # <CJK>
-0x775A # <CJK>
-0x775B # <CJK>
0x7761 # <CJK>
0x7763 # <CJK>
-0x7765 # <CJK>
0x7766 # <CJK>
-0x7768 # <CJK>
-0x776B # <CJK>
-0x7779 # <CJK>
-0x777E # <CJK>
-0x777F # <CJK>
-0x778B # <CJK>
-0x778E # <CJK>
-0x7791 # <CJK>
-0x779E # <CJK>
-0x77A0 # <CJK>
-0x77A5 # <CJK>
0x77AC # <CJK>
0x77AD # <CJK>
-0x77B0 # <CJK>
0x77B3 # <CJK>
-0x77B6 # <CJK>
-0x77B9 # <CJK>
-0x77BB # <CJK>
-0x77BC # <CJK>
-0x77BD # <CJK>
-0x77BF # <CJK>
-0x77C7 # <CJK>
-0x77CD # <CJK>
-0x77D7 # <CJK>
-0x77DA # <CJK>
0x77DB # <CJK>
-0x77DC # <CJK>
0x77E2 # <CJK>
-0x77E3 # <CJK>
0x77E5 # <CJK>
-0x77E7 # <CJK>
-0x77E9 # <CJK>
0x77ED # <CJK>
-0x77EE # <CJK>
0x77EF # <CJK>
0x77F3 # <CJK>
-0x77FC # <CJK>
0x7802 # <CJK>
-0x780C # <CJK>
-0x7812 # <CJK>
0x7814 # <CJK>
0x7815 # <CJK>
-0x7820 # <CJK>
-0x7825 # <CJK>
-0x7826 # <CJK>
-0x7827 # <CJK>
0x7832 # <CJK>
0x7834 # <CJK>
-0x783A # <CJK>
-0x783F # <CJK>
-0x7845 # <CJK>
0x785D # <CJK>
0x786B # <CJK>
0x786C # <CJK>
-0x786F # <CJK>
-0x7872 # <CJK>
-0x7874 # <CJK>
-0x787C # <CJK>
0x7881 # <CJK>
-0x7886 # <CJK>
-0x7887 # <CJK>
-0x788C # <CJK>
-0x788D # <CJK>
-0x788E # <CJK>
0x7891 # <CJK>
-0x7893 # <CJK>
-0x7895 # <CJK>
-0x7897 # <CJK>
-0x789A # <CJK>
-0x78A3 # <CJK>
-0x78A7 # <CJK>
-0x78A9 # <CJK>
-0x78AA # <CJK>
-0x78AF # <CJK>
-0x78B5 # <CJK>
0x78BA # <CJK>
-0x78BC # <CJK>
-0x78BE # <CJK>
0x78C1 # <CJK>
-0x78C5 # <CJK>
-0x78C6 # <CJK>
-0x78CA # <CJK>
-0x78CB # <CJK>
-0x78D0 # <CJK>
-0x78D1 # <CJK>
-0x78D4 # <CJK>
-0x78DA # <CJK>
-0x78E7 # <CJK>
0x78E8 # <CJK>
-0x78EC # <CJK>
-0x78EF # <CJK>
-0x78F4 # <CJK>
-0x78FD # <CJK>
0x7901 # <CJK>
-0x7907 # <CJK>
0x790E # <CJK>
-0x7911 # <CJK>
-0x7912 # <CJK>
-0x7919 # <CJK>
-0x7926 # <CJK>
-0x792A # <CJK>
-0x792B # <CJK>
-0x792C # <CJK>
0x793A # <CJK>
0x793C # <CJK>
0x793E # <CJK>
-0x7940 # <CJK>
-0x7941 # <CJK>
-0x7947 # <CJK>
0x7948 # <CJK>
0x7949 # <CJK>
-0x7950 # <CJK>
-0x7953 # <CJK>
-0x7955 # <CJK>
0x7956 # <CJK>
-0x7957 # <CJK>
-0x795A # <CJK>
0x795D # <CJK>
0x795E # <CJK>
-0x795F # <CJK>
-0x7960 # <CJK>
-0x7962 # <CJK>
0x7965 # <CJK>
0x7968 # <CJK>
0x796D # <CJK>
-0x7977 # <CJK>
-0x797A # <CJK>
-0x797F # <CJK>
-0x7980 # <CJK>
0x7981 # <CJK>
-0x7984 # <CJK>
0x7985 # <CJK>
-0x798A # <CJK>
0x798D # <CJK>
-0x798E # <CJK>
0x798F # <CJK>
-0x799D # <CJK>
-0x79A6 # <CJK>
-0x79A7 # <CJK>
-0x79AA # <CJK>
-0x79AE # <CJK>
-0x79B0 # <CJK>
-0x79B3 # <CJK>
-0x79B9 # <CJK>
-0x79BA # <CJK>
-0x79BD # <CJK>
-0x79BE # <CJK>
-0x79BF # <CJK>
0x79C0 # <CJK>
0x79C1 # <CJK>
-0x79C9 # <CJK>
0x79CB # <CJK>
0x79D1 # <CJK>
0x79D2 # <CJK>
-0x79D5 # <CJK>
0x79D8 # <CJK>
0x79DF # <CJK>
-0x79E1 # <CJK>
-0x79E3 # <CJK>
-0x79E4 # <CJK>
-0x79E6 # <CJK>
-0x79E7 # <CJK>
0x79E9 # <CJK>
-0x79EC # <CJK>
0x79F0 # <CJK>
0x79FB # <CJK>
-0x7A00 # <CJK>
-0x7A08 # <CJK>
0x7A0B # <CJK>
-0x7A0D # <CJK>
0x7A0E # <CJK>
-0x7A14 # <CJK>
-0x7A17 # <CJK>
-0x7A18 # <CJK>
-0x7A19 # <CJK>
0x7A1A # <CJK>
-0x7A1C # <CJK>
-0x7A1F # <CJK>
-0x7A20 # <CJK>
0x7A2E # <CJK>
-0x7A31 # <CJK>
0x7A32 # <CJK>
-0x7A37 # <CJK>
-0x7A3B # <CJK>
0x7A3C # <CJK>
0x7A3D # <CJK>
-0x7A3E # <CJK>
0x7A3F # <CJK>
0x7A40 # <CJK>
0x7A42 # <CJK>
-0x7A43 # <CJK>
-0x7A46 # <CJK>
-0x7A49 # <CJK>
0x7A4D # <CJK>
-0x7A4E # <CJK>
0x7A4F # <CJK>
-0x7A50 # <CJK>
-0x7A57 # <CJK>
-0x7A61 # <CJK>
-0x7A62 # <CJK>
-0x7A63 # <CJK>
-0x7A69 # <CJK>
0x7A6B # <CJK>
-0x7A70 # <CJK>
0x7A74 # <CJK>
0x7A76 # <CJK>
-0x7A79 # <CJK>
0x7A7A # <CJK>
-0x7A7D # <CJK>
-0x7A7F # <CJK>
0x7A81 # <CJK>
0x7A83 # <CJK>
-0x7A84 # <CJK>
-0x7A88 # <CJK>
0x7A92 # <CJK>
0x7A93 # <CJK>
-0x7A95 # <CJK>
-0x7A96 # <CJK>
-0x7A97 # <CJK>
-0x7A98 # <CJK>
0x7A9F # <CJK>
-0x7AA9 # <CJK>
-0x7AAA # <CJK>
0x7AAE # <CJK>
0x7AAF # <CJK>
-0x7AB0 # <CJK>
-0x7AB6 # <CJK>
-0x7ABA # <CJK>
-0x7ABF # <CJK>
-0x7AC3 # <CJK>
-0x7AC4 # <CJK>
-0x7AC5 # <CJK>
-0x7AC7 # <CJK>
-0x7AC8 # <CJK>
-0x7ACA # <CJK>
0x7ACB # <CJK>
-0x7ACD # <CJK>
-0x7ACF # <CJK>
-0x7AD2 # <CJK>
-0x7AD3 # <CJK>
-0x7AD5 # <CJK>
-0x7AD9 # <CJK>
-0x7ADA # <CJK>
0x7ADC # <CJK>
-0x7ADD # <CJK>
-0x7ADF # <CJK>
0x7AE0 # <CJK>
-0x7AE1 # <CJK>
-0x7AE2 # <CJK>
-0x7AE3 # <CJK>
0x7AE5 # <CJK>
-0x7AE6 # <CJK>
-0x7AEA # <CJK>
-0x7AED # <CJK>
0x7AEF # <CJK>
-0x7AF0 # <CJK>
0x7AF6 # <CJK>
-0x7AF8 # <CJK>
0x7AF9 # <CJK>
-0x7AFA # <CJK>
-0x7AFF # <CJK>
-0x7B02 # <CJK>
-0x7B04 # <CJK>
-0x7B06 # <CJK>
-0x7B08 # <CJK>
-0x7B0A # <CJK>
-0x7B0B # <CJK>
-0x7B0F # <CJK>
0x7B11 # <CJK>
-0x7B18 # <CJK>
-0x7B19 # <CJK>
0x7B1B # <CJK>
-0x7B1E # <CJK>
-0x7B20 # <CJK>
-0x7B25 # <CJK>
0x7B26 # <CJK>
-0x7B28 # <CJK>
0x7B2C # <CJK>
-0x7B33 # <CJK>
-0x7B35 # <CJK>
-0x7B36 # <CJK>
-0x7B39 # <CJK>
-0x7B45 # <CJK>
0x7B46 # <CJK>
-0x7B48 # <CJK>
0x7B49 # <CJK>
0x7B4B # <CJK>
-0x7B4C # <CJK>
-0x7B4D # <CJK>
-0x7B4F # <CJK>
-0x7B50 # <CJK>
-0x7B51 # <CJK>
0x7B52 # <CJK>
0x7B54 # <CJK>
0x7B56 # <CJK>
-0x7B5D # <CJK>
-0x7B65 # <CJK>
-0x7B67 # <CJK>
-0x7B6C # <CJK>
-0x7B6E # <CJK>
-0x7B70 # <CJK>
-0x7B71 # <CJK>
-0x7B74 # <CJK>
-0x7B75 # <CJK>
-0x7B7A # <CJK>
-0x7B86 # <CJK>
0x7B87 # <CJK>
0x7B8B # <CJK>
-0x7B8D # <CJK>
-0x7B8F # <CJK>
-0x7B92 # <CJK>
-0x7B94 # <CJK>
-0x7B95 # <CJK>
0x7B97 # <CJK>
-0x7B98 # <CJK>
-0x7B99 # <CJK>
-0x7B9A # <CJK>
-0x7B9C # <CJK>
-0x7B9D # <CJK>
-0x7B9F # <CJK>
0x7BA1 # <CJK>
-0x7BAA # <CJK>
-0x7BAD # <CJK>
0x7BB1 # <CJK>
-0x7BB4 # <CJK>
0x7BB8 # <CJK>
0x7BC0 # <CJK>
-0x7BC1 # <CJK>
0x7BC4 # <CJK>
-0x7BC6 # <CJK>
-0x7BC7 # <CJK>
0x7BC9 # <CJK>
-0x7BCB # <CJK>
-0x7BCC # <CJK>
-0x7BCF # <CJK>
-0x7BDD # <CJK>
-0x7BE0 # <CJK>
0x7BE4 # <CJK>
-0x7BE5 # <CJK>
-0x7BE6 # <CJK>
-0x7BE9 # <CJK>
-0x7BED # <CJK>
-0x7BF3 # <CJK>
-0x7BF6 # <CJK>
-0x7BF7 # <CJK>
-0x7C00 # <CJK>
-0x7C07 # <CJK>
-0x7C0D # <CJK>
-0x7C11 # <CJK>
-0x7C12 # <CJK>
-0x7C13 # <CJK>
-0x7C14 # <CJK>
-0x7C17 # <CJK>
-0x7C1F # <CJK>
0x7C21 # <CJK>
-0x7C23 # <CJK>
-0x7C27 # <CJK>
-0x7C2A # <CJK>
-0x7C2B # <CJK>
-0x7C37 # <CJK>
-0x7C38 # <CJK>
-0x7C3D # <CJK>
-0x7C3E # <CJK>
0x7C3F # <CJK>
-0x7C40 # <CJK>
-0x7C43 # <CJK>
-0x7C4C # <CJK>
0x7C4D # <CJK>
-0x7C4F # <CJK>
-0x7C50 # <CJK>
-0x7C54 # <CJK>
-0x7C56 # <CJK>
-0x7C58 # <CJK>
-0x7C5F # <CJK>
0x7C60 # <CJK>
-0x7C64 # <CJK>
-0x7C65 # <CJK>
-0x7C6C # <CJK>
0x7C73 # <CJK>
-0x7C75 # <CJK>
-0x7C7E # <CJK>
-0x7C81 # <CJK>
-0x7C82 # <CJK>
-0x7C83 # <CJK>
0x7C89 # <CJK>
0x7C8B # <CJK>
-0x7C8D # <CJK>
-0x7C90 # <CJK>
0x7C92 # <CJK>
-0x7C95 # <CJK>
0x7C97 # <CJK>
0x7C98 # <CJK>
0x7C9B # <CJK>
-0x7C9F # <CJK>
-0x7CA1 # <CJK>
-0x7CA2 # <CJK>
-0x7CA4 # <CJK>
-0x7CA5 # <CJK>
0x7CA7 # <CJK>
-0x7CA8 # <CJK>
-0x7CAB # <CJK>
-0x7CAD # <CJK>
-0x7CAE # <CJK>
-0x7CB1 # <CJK>
-0x7CB2 # <CJK>
-0x7CB3 # <CJK>
-0x7CB9 # <CJK>
-0x7CBD # <CJK>
0x7CBE # <CJK>
-0x7CC0 # <CJK>
-0x7CC2 # <CJK>
-0x7CC5 # <CJK>
-0x7CCA # <CJK>
-0x7CCE # <CJK>
-0x7CD2 # <CJK>
0x7CD6 # <CJK>
-0x7CD8 # <CJK>
-0x7CDC # <CJK>
-0x7CDE # <CJK>
-0x7CDF # <CJK>
-0x7CE0 # <CJK>
-0x7CE2 # <CJK>
0x7CE7 # <CJK>
-0x7CEF # <CJK>
-0x7CF2 # <CJK>
-0x7CF4 # <CJK>
-0x7CF6 # <CJK>
0x7CF8 # <CJK>
-0x7CFA # <CJK>
0x7CFB # <CJK>
0x7CFE # <CJK>
0x7D00 # <CJK>
-0x7D02 # <CJK>
0x7D04 # <CJK>
0x7D05 # <CJK>
-0x7D06 # <CJK>
-0x7D0A # <CJK>
0x7D0B # <CJK>
0x7D0D # <CJK>
-0x7D10 # <CJK>
0x7D14 # <CJK>
-0x7D15 # <CJK>
-0x7D17 # <CJK>
-0x7D18 # <CJK>
0x7D19 # <CJK>
0x7D1A # <CJK>
0x7D1B # <CJK>
-0x7D1C # <CJK>
0x7D20 # <CJK>
0x7D21 # <CJK>
0x7D22 # <CJK>
0x7D2B # <CJK>
-0x7D2C # <CJK>
-0x7D2E # <CJK>
0x7D2F # <CJK>
0x7D30 # <CJK>
-0x7D32 # <CJK>
0x7D33 # <CJK>
-0x7D35 # <CJK>
0x7D39 # <CJK>
0x7D3A # <CJK>
-0x7D3F # <CJK>
0x7D42 # <CJK>
-0x7D43 # <CJK>
0x7D44 # <CJK>
-0x7D45 # <CJK>
-0x7D46 # <CJK>
-0x7D4B # <CJK>
0x7D4C # <CJK>
-0x7D4E # <CJK>
-0x7D4F # <CJK>
0x7D50 # <CJK>
-0x7D56 # <CJK>
-0x7D5B # <CJK>
0x7D5E # <CJK>
0x7D61 # <CJK>
-0x7D62 # <CJK>
-0x7D63 # <CJK>
0x7D66 # <CJK>
-0x7D68 # <CJK>
-0x7D6E # <CJK>
0x7D71 # <CJK>
-0x7D72 # <CJK>
-0x7D73 # <CJK>
0x7D75 # <CJK>
0x7D76 # <CJK>
0x7D79 # <CJK>
-0x7D7D # <CJK>
-0x7D89 # <CJK>
-0x7D8F # <CJK>
-0x7D93 # <CJK>
0x7D99 # <CJK>
0x7D9A # <CJK>
-0x7D9B # <CJK>
-0x7D9C # <CJK>
-0x7D9F # <CJK>
-0x7DA2 # <CJK>
-0x7DA3 # <CJK>
-0x7DAB # <CJK>
-0x7DAC # <CJK>
0x7DAD # <CJK>
-0x7DAE # <CJK>
-0x7DAF # <CJK>
-0x7DB0 # <CJK>
0x7DB1 # <CJK>
0x7DB2 # <CJK>
-0x7DB4 # <CJK>
-0x7DB5 # <CJK>
-0x7DB8 # <CJK>
-0x7DBA # <CJK>
0x7DBB # <CJK>
-0x7DBD # <CJK>
-0x7DBE # <CJK>
0x7DBF # <CJK>
-0x7DC7 # <CJK>
0x7DCA # <CJK>
-0x7DCB # <CJK>
0x7DCF # <CJK>
0x7DD1 # <CJK>
0x7DD2 # <CJK>
-0x7DD5 # <CJK>
-0x7DD8 # <CJK>
0x7DDA # <CJK>
-0x7DDC # <CJK>
-0x7DDD # <CJK>
-0x7DDE # <CJK>
0x7DE0 # <CJK>
-0x7DE1 # <CJK>
-0x7DE4 # <CJK>
0x7DE8 # <CJK>
0x7DE9 # <CJK>
-0x7DEC # <CJK>
0x7DEF # <CJK>
-0x7DF2 # <CJK>
0x7DF4 # <CJK>
0x7DFB # <CJK>
0x7E01 # <CJK>
0x7E04 # <CJK>
-0x7E05 # <CJK>
-0x7E09 # <CJK>
-0x7E0A # <CJK>
-0x7E0B # <CJK>
-0x7E12 # <CJK>
0x7E1B # <CJK>
-0x7E1E # <CJK>
-0x7E1F # <CJK>
-0x7E21 # <CJK>
-0x7E22 # <CJK>
-0x7E23 # <CJK>
0x7E26 # <CJK>
0x7E2B # <CJK>
0x7E2E # <CJK>
-0x7E31 # <CJK>
-0x7E32 # <CJK>
-0x7E35 # <CJK>
-0x7E37 # <CJK>
-0x7E39 # <CJK>
-0x7E3A # <CJK>
-0x7E3B # <CJK>
-0x7E3D # <CJK>
0x7E3E # <CJK>
0x7E41 # <CJK>
-0x7E43 # <CJK>
-0x7E46 # <CJK>
0x7E4A # <CJK>
-0x7E4B # <CJK>
-0x7E4D # <CJK>
0x7E54 # <CJK>
0x7E55 # <CJK>
-0x7E56 # <CJK>
-0x7E59 # <CJK>
-0x7E5A # <CJK>
-0x7E5D # <CJK>
-0x7E5E # <CJK>
-0x7E66 # <CJK>
-0x7E67 # <CJK>
-0x7E69 # <CJK>
-0x7E6A # <CJK>
0x7E6D # <CJK>
0x7E70 # <CJK>
-0x7E79 # <CJK>
-0x7E7B # <CJK>
-0x7E7C # <CJK>
-0x7E7D # <CJK>
-0x7E7F # <CJK>
-0x7E82 # <CJK>
-0x7E83 # <CJK>
-0x7E88 # <CJK>
-0x7E89 # <CJK>
-0x7E8C # <CJK>
-0x7E8E # <CJK>
-0x7E8F # <CJK>
-0x7E90 # <CJK>
-0x7E92 # <CJK>
-0x7E93 # <CJK>
-0x7E94 # <CJK>
-0x7E96 # <CJK>
-0x7E9B # <CJK>
-0x7E9C # <CJK>
0x7F36 # <CJK>
-0x7F38 # <CJK>
-0x7F3A # <CJK>
-0x7F45 # <CJK>
-0x7F4C # <CJK>
-0x7F4D # <CJK>
-0x7F4E # <CJK>
-0x7F50 # <CJK>
-0x7F51 # <CJK>
-0x7F54 # <CJK>
-0x7F55 # <CJK>
-0x7F58 # <CJK>
-0x7F5F # <CJK>
-0x7F60 # <CJK>
-0x7F67 # <CJK>
-0x7F68 # <CJK>
-0x7F69 # <CJK>
0x7F6A # <CJK>
-0x7F6B # <CJK>
0x7F6E # <CJK>
0x7F70 # <CJK>
0x7F72 # <CJK>
0x7F75 # <CJK>
0x7F77 # <CJK>
-0x7F78 # <CJK>
-0x7F79 # <CJK>
-0x7F82 # <CJK>
-0x7F83 # <CJK>
0x7F85 # <CJK>
-0x7F86 # <CJK>
-0x7F87 # <CJK>
-0x7F88 # <CJK>
0x7F8A # <CJK>
-0x7F8C # <CJK>
0x7F8E # <CJK>
-0x7F94 # <CJK>
-0x7F9A # <CJK>
-0x7F9D # <CJK>
0x7F9E # <CJK>
-0x7FA3 # <CJK>
0x7FA4 # <CJK>
0x7FA8 # <CJK>
0x7FA9 # <CJK>
-0x7FAE # <CJK>
-0x7FAF # <CJK>
-0x7FB2 # <CJK>
-0x7FB6 # <CJK>
-0x7FB8 # <CJK>
-0x7FB9 # <CJK>
0x7FBD # <CJK>
0x7FC1 # <CJK>
-0x7FC5 # <CJK>
-0x7FC6 # <CJK>
-0x7FCA # <CJK>
0x7FCC # <CJK>
0x7FD2 # <CJK>
-0x7FD4 # <CJK>
-0x7FD5 # <CJK>
-0x7FE0 # <CJK>
-0x7FE1 # <CJK>
-0x7FE6 # <CJK>
-0x7FE9 # <CJK>
-0x7FEB # <CJK>
-0x7FF0 # <CJK>
-0x7FF3 # <CJK>
-0x7FF9 # <CJK>
0x7FFB # <CJK>
0x7FFC # <CJK>
-0x8000 # <CJK>
0x8001 # <CJK>
0x8003 # <CJK>
-0x8004 # <CJK>
0x8005 # <CJK>
-0x8006 # <CJK>
-0x800B # <CJK>
-0x800C # <CJK>
0x8010 # <CJK>
-0x8012 # <CJK>
0x8015 # <CJK>
0x8017 # <CJK>
-0x8018 # <CJK>
-0x8019 # <CJK>
-0x801C # <CJK>
-0x8021 # <CJK>
-0x8028 # <CJK>
0x8033 # <CJK>
-0x8036 # <CJK>
-0x803B # <CJK>
-0x803D # <CJK>
-0x803F # <CJK>
-0x8046 # <CJK>
-0x804A # <CJK>
-0x8052 # <CJK>
0x8056 # <CJK>
-0x8058 # <CJK>
-0x805A # <CJK>
0x805E # <CJK>
-0x805F # <CJK>
-0x8061 # <CJK>
-0x8062 # <CJK>
-0x8068 # <CJK>
-0x806F # <CJK>
-0x8070 # <CJK>
-0x8072 # <CJK>
-0x8073 # <CJK>
0x8074 # <CJK>
-0x8076 # <CJK>
0x8077 # <CJK>
-0x8079 # <CJK>
-0x807D # <CJK>
-0x807E # <CJK>
-0x807F # <CJK>
-0x8084 # <CJK>
-0x8085 # <CJK>
-0x8086 # <CJK>
-0x8087 # <CJK>
0x8089 # <CJK>
-0x808B # <CJK>
0x808C # <CJK>
-0x8093 # <CJK>
0x8096 # <CJK>
0x8098 # <CJK>
-0x809A # <CJK>
-0x809B # <CJK>
0x809D # <CJK>
0x80A1 # <CJK>
0x80A2 # <CJK>
0x80A5 # <CJK>
0x80A9 # <CJK>
0x80AA # <CJK>
-0x80AC # <CJK>
-0x80AD # <CJK>
0x80AF # <CJK>
-0x80B1 # <CJK>
0x80B2 # <CJK>
-0x80B4 # <CJK>
0x80BA # <CJK>
0x80C3 # <CJK>
-0x80C4 # <CJK>
0x80C6 # <CJK>
0x80CC # <CJK>
0x80CE # <CJK>
-0x80D6 # <CJK>
-0x80D9 # <CJK>
-0x80DA # <CJK>
-0x80DB # <CJK>
-0x80DD # <CJK>
0x80DE # <CJK>
-0x80E1 # <CJK>
-0x80E4 # <CJK>
-0x80E5 # <CJK>
-0x80EF # <CJK>
-0x80F1 # <CJK>
0x80F4 # <CJK>
0x80F8 # <CJK>
-0x80FC # <CJK>
0x80FD # <CJK>
0x8102 # <CJK>
0x8105 # <CJK>
-0x8106 # <CJK>
0x8107 # <CJK>
0x8108 # <CJK>
-0x8109 # <CJK>
0x810A # <CJK>
0x811A # <CJK>
-0x811B # <CJK>
-0x8123 # <CJK>
-0x8129 # <CJK>
-0x812F # <CJK>
0x8131 # <CJK>
0x8133 # <CJK>
-0x8139 # <CJK>
-0x813E # <CJK>
-0x8146 # <CJK>
-0x814B # <CJK>
0x814E # <CJK>
0x8150 # <CJK>
-0x8151 # <CJK>
-0x8153 # <CJK>
-0x8154 # <CJK>
0x8155 # <CJK>
-0x815F # <CJK>
-0x8165 # <CJK>
-0x8166 # <CJK>
0x816B # <CJK>
-0x816E # <CJK>
0x8170 # <CJK>
-0x8171 # <CJK>
-0x8174 # <CJK>
0x8178 # <CJK>
0x8179 # <CJK>
0x817A # <CJK>
-0x817F # <CJK>
-0x8180 # <CJK>
-0x8182 # <CJK>
-0x8183 # <CJK>
-0x8188 # <CJK>
-0x818A # <CJK>
-0x818F # <CJK>
-0x8193 # <CJK>
-0x8195 # <CJK>
0x819A # <CJK>
0x819C # <CJK>
0x819D # <CJK>
-0x81A0 # <CJK>
-0x81A3 # <CJK>
-0x81A4 # <CJK>
0x81A8 # <CJK>
-0x81A9 # <CJK>
-0x81B0 # <CJK>
0x81B3 # <CJK>
-0x81B5 # <CJK>
-0x81B8 # <CJK>
-0x81BA # <CJK>
-0x81BD # <CJK>
-0x81BE # <CJK>
-0x81BF # <CJK>
-0x81C0 # <CJK>
-0x81C2 # <CJK>
0x81C6 # <CJK>
-0x81C8 # <CJK>
-0x81C9 # <CJK>
-0x81CD # <CJK>
-0x81D1 # <CJK>
0x81D3 # <CJK>
-0x81D8 # <CJK>
-0x81D9 # <CJK>
-0x81DA # <CJK>
-0x81DF # <CJK>
-0x81E0 # <CJK>
0x81E3 # <CJK>
-0x81E5 # <CJK>
-0x81E7 # <CJK>
0x81E8 # <CJK>
0x81EA # <CJK>
0x81ED # <CJK>
0x81F3 # <CJK>
0x81F4 # <CJK>
-0x81FA # <CJK>
-0x81FB # <CJK>
0x81FC # <CJK>
-0x81FE # <CJK>
-0x8201 # <CJK>
-0x8202 # <CJK>
-0x8205 # <CJK>
-0x8207 # <CJK>
0x8208 # <CJK>
-0x8209 # <CJK>
-0x820A # <CJK>
0x820C # <CJK>
-0x820D # <CJK>
0x820E # <CJK>
-0x8210 # <CJK>
-0x8212 # <CJK>
-0x8216 # <CJK>
0x8217 # <CJK>
-0x8218 # <CJK>
-0x821B # <CJK>
-0x821C # <CJK>
0x821E # <CJK>
0x821F # <CJK>
-0x8229 # <CJK>
0x822A # <CJK>
-0x822B # <CJK>
0x822C # <CJK>
-0x822E # <CJK>
-0x8233 # <CJK>
-0x8235 # <CJK>
0x8236 # <CJK>
0x8237 # <CJK>
-0x8238 # <CJK>
0x8239 # <CJK>
-0x8240 # <CJK>
0x8247 # <CJK>
-0x8258 # <CJK>
-0x8259 # <CJK>
-0x825A # <CJK>
-0x825D # <CJK>
-0x825F # <CJK>
-0x8262 # <CJK>
-0x8264 # <CJK>
0x8266 # <CJK>
-0x8268 # <CJK>
-0x826A # <CJK>
-0x826B # <CJK>
-0x826E # <CJK>
0x826F # <CJK>
-0x8271 # <CJK>
0x8272 # <CJK>
0x8276 # <CJK>
-0x8277 # <CJK>
-0x8278 # <CJK>
-0x827E # <CJK>
0x828B # <CJK>
-0x828D # <CJK>
-0x8292 # <CJK>
-0x8299 # <CJK>
0x829D # <CJK>
-0x829F # <CJK>
-0x82A5 # <CJK>
-0x82A6 # <CJK>
-0x82AB # <CJK>
-0x82AC # <CJK>
-0x82AD # <CJK>
0x82AF # <CJK>
0x82B1 # <CJK>
0x82B3 # <CJK>
0x82B8 # <CJK>
-0x82B9 # <CJK>
-0x82BB # <CJK>
0x82BD # <CJK>
-0x82C5 # <CJK>
-0x82D1 # <CJK>
-0x82D2 # <CJK>
-0x82D3 # <CJK>
-0x82D4 # <CJK>
0x82D7 # <CJK>
-0x82D9 # <CJK>
0x82DB # <CJK>
-0x82DC # <CJK>
-0x82DE # <CJK>
-0x82DF # <CJK>
-0x82E1 # <CJK>
-0x82E3 # <CJK>
0x82E5 # <CJK>
0x82E6 # <CJK>
-0x82E7 # <CJK>
-0x82EB # <CJK>
0x82F1 # <CJK>
-0x82F3 # <CJK>
-0x82F4 # <CJK>
-0x82F9 # <CJK>
-0x82FA # <CJK>
-0x82FB # <CJK>
0x8302 # <CJK>
-0x8303 # <CJK>
-0x8304 # <CJK>
-0x8305 # <CJK>
-0x8306 # <CJK>
-0x8309 # <CJK>
0x830E # <CJK>
-0x8316 # <CJK>
-0x8317 # <CJK>
-0x8318 # <CJK>
-0x831C # <CJK>
-0x8323 # <CJK>
0x8328 # <CJK>
-0x832B # <CJK>
-0x832F # <CJK>
-0x8331 # <CJK>
-0x8332 # <CJK>
-0x8334 # <CJK>
-0x8335 # <CJK>
0x8336 # <CJK>
-0x8338 # <CJK>
-0x8339 # <CJK>
-0x8340 # <CJK>
-0x8345 # <CJK>
0x8349 # <CJK>
-0x834A # <CJK>
-0x834F # <CJK>
-0x8350 # <CJK>
0x8352 # <CJK>
0x8358 # <CJK>
-0x8373 # <CJK>
-0x8375 # <CJK>
0x8377 # <CJK>
-0x837B # <CJK>
-0x837C # <CJK>
-0x8385 # <CJK>
-0x8387 # <CJK>
-0x8389 # <CJK>
-0x838A # <CJK>
-0x838E # <CJK>
-0x8393 # <CJK>
-0x8396 # <CJK>
-0x839A # <CJK>
-0x839E # <CJK>
-0x839F # <CJK>
-0x83A0 # <CJK>
-0x83A2 # <CJK>
-0x83A8 # <CJK>
-0x83AA # <CJK>
-0x83AB # <CJK>
-0x83B1 # <CJK>
-0x83B5 # <CJK>
-0x83BD # <CJK>
-0x83C1 # <CJK>
-0x83C5 # <CJK>
0x83CA # <CJK>
0x83CC # <CJK>
-0x83CE # <CJK>
0x83D3 # <CJK>
-0x83D6 # <CJK>
-0x83D8 # <CJK>
0x83DC # <CJK>
-0x83DF # <CJK>
-0x83E0 # <CJK>
-0x83E9 # <CJK>
-0x83EB # <CJK>
0x83EF # <CJK>
-0x83F0 # <CJK>
-0x83F1 # <CJK>
-0x83F2 # <CJK>
-0x83F4 # <CJK>
-0x83F7 # <CJK>
-0x83FB # <CJK>
-0x83FD # <CJK>
-0x8403 # <CJK>
-0x8404 # <CJK>
-0x8407 # <CJK>
-0x840B # <CJK>
-0x840C # <CJK>
-0x840D # <CJK>
0x840E # <CJK>
-0x8413 # <CJK>
-0x8420 # <CJK>
-0x8422 # <CJK>
-0x8429 # <CJK>
-0x842A # <CJK>
-0x842C # <CJK>
-0x8431 # <CJK>
-0x8435 # <CJK>
-0x8438 # <CJK>
-0x843C # <CJK>
0x843D # <CJK>
-0x8446 # <CJK>
0x8449 # <CJK>
-0x844E # <CJK>
0x8457 # <CJK>
0x845B # <CJK>
-0x8461 # <CJK>
-0x8462 # <CJK>
-0x8463 # <CJK>
-0x8466 # <CJK>
-0x8469 # <CJK>
-0x846B # <CJK>
0x846C # <CJK>
-0x846D # <CJK>
-0x846E # <CJK>
-0x846F # <CJK>
-0x8471 # <CJK>
-0x8475 # <CJK>
-0x8477 # <CJK>
-0x8479 # <CJK>
-0x847A # <CJK>
-0x8482 # <CJK>
-0x8484 # <CJK>
-0x848B # <CJK>
-0x8490 # <CJK>
-0x8494 # <CJK>
-0x8499 # <CJK>
-0x849C # <CJK>
-0x849F # <CJK>
-0x84A1 # <CJK>
-0x84AD # <CJK>
-0x84B2 # <CJK>
0x84B8 # <CJK>
-0x84B9 # <CJK>
-0x84BB # <CJK>
-0x84BC # <CJK>
-0x84BF # <CJK>
-0x84C1 # <CJK>
0x84C4 # <CJK>
-0x84C6 # <CJK>
-0x84C9 # <CJK>
-0x84CA # <CJK>
0x84CB # <CJK>
-0x84CD # <CJK>
-0x84D0 # <CJK>
-0x84D1 # <CJK>
-0x84D6 # <CJK>
-0x84D9 # <CJK>
-0x84DA # <CJK>
-0x84EC # <CJK>
-0x84EE # <CJK>
-0x84F4 # <CJK>
-0x84FC # <CJK>
-0x84FF # <CJK>
-0x8500 # <CJK>
-0x8506 # <CJK>
0x8511 # <CJK>
-0x8513 # <CJK>
-0x8514 # <CJK>
-0x8515 # <CJK>
-0x8517 # <CJK>
-0x8518 # <CJK>
-0x851A # <CJK>
-0x851F # <CJK>
-0x8521 # <CJK>
-0x8526 # <CJK>
-0x852C # <CJK>
-0x852D # <CJK>
0x8535 # <CJK>
0x853D # <CJK>
-0x8540 # <CJK>
-0x8541 # <CJK>
-0x8543 # <CJK>
-0x8548 # <CJK>
-0x8549 # <CJK>
-0x854A # <CJK>
-0x854B # <CJK>
-0x854E # <CJK>
-0x8555 # <CJK>
-0x8557 # <CJK>
-0x8558 # <CJK>
-0x855A # <CJK>
-0x8563 # <CJK>
-0x8568 # <CJK>
-0x8569 # <CJK>
-0x856A # <CJK>
-0x856D # <CJK>
-0x8577 # <CJK>
-0x857E # <CJK>
-0x8580 # <CJK>
0x8584 # <CJK>
-0x8587 # <CJK>
-0x8588 # <CJK>
-0x858A # <CJK>
-0x8590 # <CJK>
-0x8591 # <CJK>
-0x8594 # <CJK>
-0x8597 # <CJK>
-0x8599 # <CJK>
-0x859B # <CJK>
-0x859C # <CJK>
-0x85A4 # <CJK>
0x85A6 # <CJK>
-0x85A8 # <CJK>
-0x85A9 # <CJK>
0x85AA # <CJK>
0x85AB # <CJK>
0x85AC # <CJK>
-0x85AE # <CJK>
-0x85AF # <CJK>
-0x85B9 # <CJK>
-0x85BA # <CJK>
-0x85C1 # <CJK>
-0x85C9 # <CJK>
0x85CD # <CJK>
-0x85CF # <CJK>
-0x85D0 # <CJK>
-0x85D5 # <CJK>
-0x85DC # <CJK>
-0x85DD # <CJK>
0x85E4 # <CJK>
-0x85E5 # <CJK>
0x85E9 # <CJK>
-0x85EA # <CJK>
-0x85F7 # <CJK>
-0x85F9 # <CJK>
-0x85FA # <CJK>
0x85FB # <CJK>
-0x85FE # <CJK>
-0x8602 # <CJK>
-0x8606 # <CJK>
-0x8607 # <CJK>
-0x860A # <CJK>
-0x860B # <CJK>
-0x8613 # <CJK>
-0x8616 # <CJK>
-0x8617 # <CJK>
-0x861A # <CJK>
-0x8622 # <CJK>
-0x862D # <CJK>
-0x862F # <CJK>
-0x8630 # <CJK>
-0x863F # <CJK>
-0x864D # <CJK>
0x864E # <CJK>
0x8650 # <CJK>
-0x8654 # <CJK>
-0x8655 # <CJK>
0x865A # <CJK>
0x865C # <CJK>
0x865E # <CJK>
-0x865F # <CJK>
-0x8667 # <CJK>
0x866B # <CJK>
-0x8671 # <CJK>
0x8679 # <CJK>
-0x867B # <CJK>
0x868A # <CJK>
-0x868B # <CJK>
-0x868C # <CJK>
-0x8693 # <CJK>
0x8695 # <CJK>
-0x86A3 # <CJK>
-0x86A4 # <CJK>
-0x86A9 # <CJK>
-0x86AA # <CJK>
-0x86AB # <CJK>
-0x86AF # <CJK>
-0x86B0 # <CJK>
-0x86B6 # <CJK>
-0x86C4 # <CJK>
-0x86C6 # <CJK>
0x86C7 # <CJK>
-0x86C9 # <CJK>
-0x86CB # <CJK>
0x86CD # <CJK>
-0x86CE # <CJK>
-0x86D4 # <CJK>
-0x86D9 # <CJK>
-0x86DB # <CJK>
-0x86DE # <CJK>
-0x86DF # <CJK>
-0x86E4 # <CJK>
-0x86E9 # <CJK>
-0x86EC # <CJK>
-0x86ED # <CJK>
0x86EE # <CJK>
-0x86EF # <CJK>
-0x86F8 # <CJK>
-0x86F9 # <CJK>
-0x86FB # <CJK>
-0x86FE # <CJK>
-0x8700 # <CJK>
0x8702 # <CJK>
-0x8703 # <CJK>
-0x8706 # <CJK>
-0x8708 # <CJK>
-0x8709 # <CJK>
-0x870A # <CJK>
-0x870D # <CJK>
-0x8711 # <CJK>
-0x8712 # <CJK>
-0x8718 # <CJK>
-0x871A # <CJK>
0x871C # <CJK>
-0x8725 # <CJK>
-0x8729 # <CJK>
-0x8734 # <CJK>
-0x8737 # <CJK>
-0x873B # <CJK>
-0x873F # <CJK>
-0x8749 # <CJK>
-0x874B # <CJK>
-0x874C # <CJK>
-0x874E # <CJK>
-0x8753 # <CJK>
-0x8755 # <CJK>
-0x8757 # <CJK>
-0x8759 # <CJK>
-0x875F # <CJK>
-0x8760 # <CJK>
-0x8763 # <CJK>
-0x8766 # <CJK>
-0x8768 # <CJK>
-0x876A # <CJK>
-0x876E # <CJK>
-0x8774 # <CJK>
-0x8776 # <CJK>
-0x8778 # <CJK>
-0x877F # <CJK>
-0x8782 # <CJK>
0x878D # <CJK>
-0x879F # <CJK>
-0x87A2 # <CJK>
-0x87AB # <CJK>
-0x87AF # <CJK>
-0x87B3 # <CJK>
-0x87BA # <CJK>
-0x87BB # <CJK>
-0x87BD # <CJK>
-0x87C0 # <CJK>
-0x87C4 # <CJK>
-0x87C6 # <CJK>
-0x87C7 # <CJK>
-0x87CB # <CJK>
-0x87D0 # <CJK>
-0x87D2 # <CJK>
-0x87E0 # <CJK>
-0x87EF # <CJK>
-0x87F2 # <CJK>
-0x87F6 # <CJK>
-0x87F7 # <CJK>
-0x87F9 # <CJK>
-0x87FB # <CJK>
-0x87FE # <CJK>
-0x8805 # <CJK>
-0x880D # <CJK>
-0x880E # <CJK>
-0x880F # <CJK>
-0x8811 # <CJK>
-0x8815 # <CJK>
-0x8816 # <CJK>
-0x8821 # <CJK>
-0x8822 # <CJK>
-0x8823 # <CJK>
-0x8827 # <CJK>
-0x8831 # <CJK>
-0x8836 # <CJK>
-0x8839 # <CJK>
-0x883B # <CJK>
0x8840 # <CJK>
-0x8842 # <CJK>
-0x8844 # <CJK>
0x8846 # <CJK>
0x884C # <CJK>
-0x884D # <CJK>
-0x8852 # <CJK>
0x8853 # <CJK>
0x8857 # <CJK>
-0x8859 # <CJK>
0x885B # <CJK>
0x885D # <CJK>
-0x885E # <CJK>
0x8861 # <CJK>
-0x8862 # <CJK>
0x8863 # <CJK>
0x8868 # <CJK>
-0x886B # <CJK>
0x8870 # <CJK>
-0x8872 # <CJK>
-0x8875 # <CJK>
0x8877 # <CJK>
-0x887D # <CJK>
-0x887E # <CJK>
-0x887F # <CJK>
-0x8881 # <CJK>
-0x8882 # <CJK>
-0x8888 # <CJK>
0x888B # <CJK>
-0x888D # <CJK>
-0x8892 # <CJK>
0x8896 # <CJK>
-0x8897 # <CJK>
-0x8899 # <CJK>
-0x889E # <CJK>
-0x88A2 # <CJK>
-0x88A4 # <CJK>
0x88AB # <CJK>
-0x88AE # <CJK>
-0x88B0 # <CJK>
-0x88B1 # <CJK>
-0x88B4 # <CJK>
-0x88B5 # <CJK>
-0x88B7 # <CJK>
-0x88BF # <CJK>
0x88C1 # <CJK>
0x88C2 # <CJK>
-0x88C3 # <CJK>
-0x88C4 # <CJK>
0x88C5 # <CJK>
0x88CF # <CJK>
-0x88D4 # <CJK>
0x88D5 # <CJK>
-0x88D8 # <CJK>
-0x88D9 # <CJK>
0x88DC # <CJK>
-0x88DD # <CJK>
-0x88DF # <CJK>
-0x88E1 # <CJK>
-0x88E8 # <CJK>
-0x88F2 # <CJK>
-0x88F3 # <CJK>
-0x88F4 # <CJK>
0x88F8 # <CJK>
-0x88F9 # <CJK>
-0x88FC # <CJK>
0x88FD # <CJK>
0x88FE # <CJK>
-0x8902 # <CJK>
-0x8904 # <CJK>
0x8907 # <CJK>
-0x890A # <CJK>
-0x890C # <CJK>
0x8910 # <CJK>
0x8912 # <CJK>
-0x8913 # <CJK>
-0x891D # <CJK>
-0x891E # <CJK>
-0x8925 # <CJK>
-0x892A # <CJK>
-0x892B # <CJK>
-0x8936 # <CJK>
-0x8938 # <CJK>
-0x893B # <CJK>
-0x8941 # <CJK>
-0x8943 # <CJK>
-0x8944 # <CJK>
-0x894C # <CJK>
-0x894D # <CJK>
-0x8956 # <CJK>
-0x895E # <CJK>
0x895F # <CJK>
-0x8960 # <CJK>
-0x8964 # <CJK>
-0x8966 # <CJK>
-0x896A # <CJK>
-0x896D # <CJK>
-0x896F # <CJK>
0x8972 # <CJK>
-0x8974 # <CJK>
-0x8977 # <CJK>
-0x897E # <CJK>
0x897F # <CJK>
0x8981 # <CJK>
-0x8983 # <CJK>
0x8986 # <CJK>
0x8987 # <CJK>
-0x8988 # <CJK>
-0x898A # <CJK>
0x898B # <CJK>
0x898F # <CJK>
-0x8993 # <CJK>
0x8996 # <CJK>
-0x8997 # <CJK>
-0x8998 # <CJK>
0x899A # <CJK>
-0x89A1 # <CJK>
-0x89A6 # <CJK>
0x89A7 # <CJK>
-0x89A9 # <CJK>
0x89AA # <CJK>
-0x89AC # <CJK>
-0x89AF # <CJK>
-0x89B2 # <CJK>
0x89B3 # <CJK>
-0x89BA # <CJK>
-0x89BD # <CJK>
-0x89BF # <CJK>
-0x89C0 # <CJK>
0x89D2 # <CJK>
-0x89DA # <CJK>
-0x89DC # <CJK>
-0x89DD # <CJK>
0x89E3 # <CJK>
0x89E6 # <CJK>
-0x89E7 # <CJK>
-0x89F4 # <CJK>
-0x89F8 # <CJK>
0x8A00 # <CJK>
0x8A02 # <CJK>
0x8A03 # <CJK>
0x8A08 # <CJK>
-0x8A0A # <CJK>
-0x8A0C # <CJK>
0x8A0E # <CJK>
-0x8A10 # <CJK>
0x8A13 # <CJK>
-0x8A16 # <CJK>
0x8A17 # <CJK>
0x8A18 # <CJK>
-0x8A1B # <CJK>
-0x8A1D # <CJK>
0x8A1F # <CJK>
-0x8A23 # <CJK>
-0x8A25 # <CJK>
0x8A2A # <CJK>
0x8A2D # <CJK>
0x8A31 # <CJK>
0x8A33 # <CJK>
0x8A34 # <CJK>
-0x8A36 # <CJK>
0x8A3A # <CJK>
-0x8A3B # <CJK>
0x8A3C # <CJK>
-0x8A41 # <CJK>
-0x8A46 # <CJK>
-0x8A48 # <CJK>
0x8A50 # <CJK>
-0x8A51 # <CJK>
-0x8A52 # <CJK>
0x8A54 # <CJK>
0x8A55 # <CJK>
-0x8A5B # <CJK>
0x8A5E # <CJK>
0x8A60 # <CJK>
-0x8A62 # <CJK>
0x8A63 # <CJK>
0x8A66 # <CJK>
0x8A69 # <CJK>
-0x8A6B # <CJK>
-0x8A6C # <CJK>
-0x8A6D # <CJK>
0x8A6E # <CJK>
0x8A70 # <CJK>
0x8A71 # <CJK>
0x8A72 # <CJK>
0x8A73 # <CJK>
-0x8A7C # <CJK>
-0x8A82 # <CJK>
-0x8A84 # <CJK>
-0x8A85 # <CJK>
0x8A87 # <CJK>
0x8A89 # <CJK>
0x8A8C # <CJK>
0x8A8D # <CJK>
-0x8A91 # <CJK>
0x8A93 # <CJK>
0x8A95 # <CJK>
0x8A98 # <CJK>
-0x8A9A # <CJK>
0x8A9E # <CJK>
0x8AA0 # <CJK>
-0x8AA1 # <CJK>
-0x8AA3 # <CJK>
0x8AA4 # <CJK>
-0x8AA5 # <CJK>
-0x8AA6 # <CJK>
-0x8AA8 # <CJK>
0x8AAC # <CJK>
0x8AAD # <CJK>
0x8AB0 # <CJK>
0x8AB2 # <CJK>
-0x8AB9 # <CJK>
-0x8ABC # <CJK>
0x8ABF # <CJK>
-0x8AC2 # <CJK>
-0x8AC4 # <CJK>
0x8AC7 # <CJK>
0x8ACB # <CJK>
-0x8ACC # <CJK>
-0x8ACD # <CJK>
-0x8ACF # <CJK>
-0x8AD2 # <CJK>
0x8AD6 # <CJK>
-0x8ADA # <CJK>
-0x8ADB # <CJK>
-0x8ADC # <CJK>
-0x8ADE # <CJK>
-0x8AE0 # <CJK>
-0x8AE1 # <CJK>
-0x8AE2 # <CJK>
-0x8AE4 # <CJK>
0x8AE6 # <CJK>
0x8AE7 # <CJK>
-0x8AEB # <CJK>
0x8AED # <CJK>
0x8AEE # <CJK>
-0x8AF1 # <CJK>
-0x8AF3 # <CJK>
-0x8AF7 # <CJK>
0x8AF8 # <CJK>
-0x8AFA # <CJK>
0x8AFE # <CJK>
0x8B00 # <CJK>
0x8B01 # <CJK>
-0x8B02 # <CJK>
0x8B04 # <CJK>
-0x8B07 # <CJK>
-0x8B0C # <CJK>
0x8B0E # <CJK>
-0x8B10 # <CJK>
-0x8B14 # <CJK>
-0x8B16 # <CJK>
-0x8B17 # <CJK>
0x8B19 # <CJK>
-0x8B1A # <CJK>
0x8B1B # <CJK>
0x8B1D # <CJK>
-0x8B20 # <CJK>
0x8B21 # <CJK>
-0x8B26 # <CJK>
-0x8B28 # <CJK>
-0x8B2B # <CJK>
-0x8B2C # <CJK>
-0x8B33 # <CJK>
0x8B39 # <CJK>
-0x8B3E # <CJK>
-0x8B41 # <CJK>
-0x8B49 # <CJK>
-0x8B4C # <CJK>
-0x8B4E # <CJK>
-0x8B4F # <CJK>
-0x8B56 # <CJK>
0x8B58 # <CJK>
-0x8B5A # <CJK>
-0x8B5B # <CJK>
0x8B5C # <CJK>
-0x8B5F # <CJK>
0x8B66 # <CJK>
-0x8B6B # <CJK>
-0x8B6C # <CJK>
-0x8B6F # <CJK>
0x8B70 # <CJK>
-0x8B71 # <CJK>
0x8B72 # <CJK>
-0x8B74 # <CJK>
0x8B77 # <CJK>
-0x8B7D # <CJK>
-0x8B80 # <CJK>
-0x8B83 # <CJK>
-0x8B8A # <CJK>
-0x8B8C # <CJK>
-0x8B8E # <CJK>
-0x8B90 # <CJK>
-0x8B92 # <CJK>
-0x8B93 # <CJK>
-0x8B96 # <CJK>
-0x8B99 # <CJK>
-0x8B9A # <CJK>
0x8C37 # <CJK>
-0x8C3A # <CJK>
-0x8C3F # <CJK>
-0x8C41 # <CJK>
0x8C46 # <CJK>
-0x8C48 # <CJK>
0x8C4A # <CJK>
-0x8C4C # <CJK>
-0x8C4E # <CJK>
-0x8C50 # <CJK>
-0x8C55 # <CJK>
0x8C5A # <CJK>
0x8C61 # <CJK>
-0x8C62 # <CJK>
0x8C6A # <CJK>
-0x8C6B # <CJK>
-0x8C6C # <CJK>
-0x8C78 # <CJK>
-0x8C79 # <CJK>
-0x8C7A # <CJK>
-0x8C7C # <CJK>
-0x8C82 # <CJK>
-0x8C85 # <CJK>
-0x8C89 # <CJK>
-0x8C8A # <CJK>
0x8C8C # <CJK>
-0x8C8D # <CJK>
-0x8C8E # <CJK>
-0x8C94 # <CJK>
-0x8C98 # <CJK>
0x8C9D # <CJK>
0x8C9E # <CJK>
0x8CA0 # <CJK>
@@ -5348,1218 +2008,338 @@
0x8CAA # <CJK>
0x8CAB # <CJK>
0x8CAC # <CJK>
-0x8CAD # <CJK>
-0x8CAE # <CJK>
0x8CAF # <CJK>
-0x8CB0 # <CJK>
-0x8CB2 # <CJK>
-0x8CB3 # <CJK>
0x8CB4 # <CJK>
-0x8CB6 # <CJK>
0x8CB7 # <CJK>
0x8CB8 # <CJK>
0x8CBB # <CJK>
0x8CBC # <CJK>
-0x8CBD # <CJK>
0x8CBF # <CJK>
0x8CC0 # <CJK>
-0x8CC1 # <CJK>
0x8CC2 # <CJK>
0x8CC3 # <CJK>
0x8CC4 # <CJK>
0x8CC7 # <CJK>
-0x8CC8 # <CJK>
0x8CCA # <CJK>
-0x8CCD # <CJK>
-0x8CCE # <CJK>
-0x8CD1 # <CJK>
0x8CD3 # <CJK>
-0x8CDA # <CJK>
0x8CDB # <CJK>
0x8CDC # <CJK>
0x8CDE # <CJK>
0x8CE0 # <CJK>
0x8CE2 # <CJK>
-0x8CE3 # <CJK>
-0x8CE4 # <CJK>
0x8CE6 # <CJK>
0x8CEA # <CJK>
0x8CED # <CJK>
-0x8CFA # <CJK>
-0x8CFB # <CJK>
0x8CFC # <CJK>
-0x8CFD # <CJK>
-0x8D04 # <CJK>
-0x8D05 # <CJK>
-0x8D07 # <CJK>
0x8D08 # <CJK>
-0x8D0A # <CJK>
-0x8D0B # <CJK>
-0x8D0D # <CJK>
-0x8D0F # <CJK>
-0x8D10 # <CJK>
-0x8D13 # <CJK>
-0x8D14 # <CJK>
-0x8D16 # <CJK>
0x8D64 # <CJK>
0x8D66 # <CJK>
-0x8D67 # <CJK>
-0x8D6B # <CJK>
-0x8D6D # <CJK>
0x8D70 # <CJK>
-0x8D71 # <CJK>
-0x8D73 # <CJK>
0x8D74 # <CJK>
0x8D77 # <CJK>
-0x8D81 # <CJK>
0x8D85 # <CJK>
0x8D8A # <CJK>
-0x8D99 # <CJK>
0x8DA3 # <CJK>
-0x8DA8 # <CJK>
0x8DB3 # <CJK>
-0x8DBA # <CJK>
-0x8DBE # <CJK>
-0x8DC2 # <CJK>
-0x8DCB # <CJK>
-0x8DCC # <CJK>
-0x8DCF # <CJK>
-0x8DD6 # <CJK>
-0x8DDA # <CJK>
-0x8DDB # <CJK>
0x8DDD # <CJK>
-0x8DDF # <CJK>
0x8DE1 # <CJK>
-0x8DE3 # <CJK>
-0x8DE8 # <CJK>
-0x8DEA # <CJK>
-0x8DEB # <CJK>
0x8DEF # <CJK>
0x8DF3 # <CJK>
0x8DF5 # <CJK>
-0x8DFC # <CJK>
-0x8DFF # <CJK>
-0x8E08 # <CJK>
-0x8E09 # <CJK>
0x8E0A # <CJK>
0x8E0F # <CJK>
-0x8E10 # <CJK>
-0x8E1D # <CJK>
-0x8E1E # <CJK>
-0x8E1F # <CJK>
0x8E2A # <CJK>
-0x8E30 # <CJK>
-0x8E34 # <CJK>
-0x8E35 # <CJK>
-0x8E42 # <CJK>
-0x8E44 # <CJK>
-0x8E47 # <CJK>
-0x8E48 # <CJK>
-0x8E49 # <CJK>
-0x8E4A # <CJK>
-0x8E4C # <CJK>
-0x8E50 # <CJK>
-0x8E55 # <CJK>
-0x8E59 # <CJK>
-0x8E5F # <CJK>
-0x8E60 # <CJK>
-0x8E63 # <CJK>
-0x8E64 # <CJK>
-0x8E72 # <CJK>
0x8E74 # <CJK>
-0x8E76 # <CJK>
-0x8E7C # <CJK>
-0x8E81 # <CJK>
-0x8E84 # <CJK>
-0x8E85 # <CJK>
-0x8E87 # <CJK>
-0x8E8A # <CJK>
-0x8E8B # <CJK>
0x8E8D # <CJK>
-0x8E91 # <CJK>
-0x8E93 # <CJK>
-0x8E94 # <CJK>
-0x8E99 # <CJK>
-0x8EA1 # <CJK>
-0x8EAA # <CJK>
0x8EAB # <CJK>
-0x8EAC # <CJK>
-0x8EAF # <CJK>
-0x8EB0 # <CJK>
-0x8EB1 # <CJK>
-0x8EBE # <CJK>
-0x8EC5 # <CJK>
-0x8EC6 # <CJK>
-0x8EC8 # <CJK>
0x8ECA # <CJK>
-0x8ECB # <CJK>
0x8ECC # <CJK>
0x8ECD # <CJK>
0x8ED2 # <CJK>
-0x8EDB # <CJK>
0x8EDF # <CJK>
0x8EE2 # <CJK>
-0x8EE3 # <CJK>
-0x8EEB # <CJK>
0x8EF8 # <CJK>
-0x8EFB # <CJK>
-0x8EFC # <CJK>
0x8EFD # <CJK>
-0x8EFE # <CJK>
0x8F03 # <CJK>
-0x8F05 # <CJK>
0x8F09 # <CJK>
-0x8F0A # <CJK>
-0x8F0C # <CJK>
-0x8F12 # <CJK>
-0x8F13 # <CJK>
-0x8F14 # <CJK>
-0x8F15 # <CJK>
-0x8F19 # <CJK>
-0x8F1B # <CJK>
-0x8F1C # <CJK>
0x8F1D # <CJK>
-0x8F1F # <CJK>
-0x8F26 # <CJK>
0x8F29 # <CJK>
0x8F2A # <CJK>
-0x8F2F # <CJK>
-0x8F33 # <CJK>
0x8F38 # <CJK>
-0x8F39 # <CJK>
-0x8F3B # <CJK>
-0x8F3E # <CJK>
-0x8F3F # <CJK>
-0x8F42 # <CJK>
0x8F44 # <CJK>
-0x8F45 # <CJK>
-0x8F46 # <CJK>
-0x8F49 # <CJK>
-0x8F4C # <CJK>
-0x8F4D # <CJK>
-0x8F4E # <CJK>
-0x8F57 # <CJK>
-0x8F5C # <CJK>
-0x8F5F # <CJK>
-0x8F61 # <CJK>
-0x8F62 # <CJK>
-0x8F63 # <CJK>
-0x8F64 # <CJK>
0x8F9B # <CJK>
-0x8F9C # <CJK>
0x8F9E # <CJK>
-0x8F9F # <CJK>
0x8FA3 # <CJK>
-0x8FA7 # <CJK>
-0x8FA8 # <CJK>
-0x8FAD # <CJK>
-0x8FAE # <CJK>
-0x8FAF # <CJK>
-0x8FB0 # <CJK>
0x8FB1 # <CJK>
0x8FB2 # <CJK>
-0x8FB7 # <CJK>
0x8FBA # <CJK>
-0x8FBB # <CJK>
0x8FBC # <CJK>
-0x8FBF # <CJK>
-0x8FC2 # <CJK>
-0x8FC4 # <CJK>
0x8FC5 # <CJK>
0x8FCE # <CJK>
0x8FD1 # <CJK>
0x8FD4 # <CJK>
-0x8FDA # <CJK>
-0x8FE2 # <CJK>
-0x8FE5 # <CJK>
-0x8FE6 # <CJK>
-0x8FE9 # <CJK>
-0x8FEA # <CJK>
0x8FEB # <CJK>
0x8FED # <CJK>
-0x8FEF # <CJK>
0x8FF0 # <CJK>
-0x8FF4 # <CJK>
0x8FF7 # <CJK>
-0x8FF8 # <CJK>
-0x8FF9 # <CJK>
-0x8FFA # <CJK>
0x8FFD # <CJK>
0x9000 # <CJK>
0x9001 # <CJK>
0x9003 # <CJK>
-0x9005 # <CJK>
0x9006 # <CJK>
-0x900B # <CJK>
-0x900D # <CJK>
-0x900E # <CJK>
0x900F # <CJK>
0x9010 # <CJK>
-0x9011 # <CJK>
0x9013 # <CJK>
0x9014 # <CJK>
-0x9015 # <CJK>
-0x9016 # <CJK>
-0x9017 # <CJK>
-0x9019 # <CJK>
0x901A # <CJK>
0x901D # <CJK>
-0x901E # <CJK>
0x901F # <CJK>
0x9020 # <CJK>
-0x9021 # <CJK>
-0x9022 # <CJK>
0x9023 # <CJK>
-0x9027 # <CJK>
0x902E # <CJK>
0x9031 # <CJK>
0x9032 # <CJK>
-0x9035 # <CJK>
-0x9036 # <CJK>
0x9038 # <CJK>
-0x9039 # <CJK>
-0x903C # <CJK>
-0x903E # <CJK>
-0x9041 # <CJK>
0x9042 # <CJK>
0x9045 # <CJK>
0x9047 # <CJK>
-0x9049 # <CJK>
0x904A # <CJK>
0x904B # <CJK>
0x904D # <CJK>
0x904E # <CJK>
-0x904F # <CJK>
-0x9050 # <CJK>
-0x9051 # <CJK>
-0x9052 # <CJK>
0x9053 # <CJK>
0x9054 # <CJK>
0x9055 # <CJK>
-0x9056 # <CJK>
-0x9058 # <CJK>
-0x9059 # <CJK>
0x905C # <CJK>
-0x905E # <CJK>
0x9060 # <CJK>
0x9061 # <CJK>
0x9063 # <CJK>
-0x9065 # <CJK>
-0x9068 # <CJK>
0x9069 # <CJK>
0x906D # <CJK>
0x906E # <CJK>
-0x906F # <CJK>
-0x9072 # <CJK>
0x9075 # <CJK>
-0x9076 # <CJK>
0x9077 # <CJK>
0x9078 # <CJK>
0x907A # <CJK>
-0x907C # <CJK>
-0x907D # <CJK>
0x907F # <CJK>
-0x9080 # <CJK>
-0x9081 # <CJK>
-0x9082 # <CJK>
-0x9083 # <CJK>
0x9084 # <CJK>
-0x9087 # <CJK>
-0x9089 # <CJK>
-0x908A # <CJK>
-0x908F # <CJK>
-0x9091 # <CJK>
0x90A3 # <CJK>
0x90A6 # <CJK>
-0x90A8 # <CJK>
0x90AA # <CJK>
-0x90AF # <CJK>
-0x90B1 # <CJK>
-0x90B5 # <CJK>
0x90B8 # <CJK>
-0x90C1 # <CJK>
0x90CA # <CJK>
0x90CE # <CJK>
-0x90DB # <CJK>
0x90E1 # <CJK>
-0x90E2 # <CJK>
-0x90E4 # <CJK>
0x90E8 # <CJK>
0x90ED # <CJK>
0x90F5 # <CJK>
0x90F7 # <CJK>
0x90FD # <CJK>
-0x9102 # <CJK>
-0x9112 # <CJK>
-0x9119 # <CJK>
-0x912D # <CJK>
-0x9130 # <CJK>
-0x9132 # <CJK>
-0x9149 # <CJK>
-0x914A # <CJK>
-0x914B # <CJK>
0x914C # <CJK>
0x914D # <CJK>
0x914E # <CJK>
0x9152 # <CJK>
0x9154 # <CJK>
-0x9156 # <CJK>
-0x9158 # <CJK>
0x9162 # <CJK>
-0x9163 # <CJK>
-0x9165 # <CJK>
-0x9169 # <CJK>
0x916A # <CJK>
0x916C # <CJK>
-0x9172 # <CJK>
-0x9173 # <CJK>
0x9175 # <CJK>
0x9177 # <CJK>
0x9178 # <CJK>
-0x9182 # <CJK>
-0x9187 # <CJK>
-0x9189 # <CJK>
-0x918B # <CJK>
-0x918D # <CJK>
-0x9190 # <CJK>
0x9192 # <CJK>
-0x9197 # <CJK>
0x919C # <CJK>
-0x91A2 # <CJK>
-0x91A4 # <CJK>
-0x91AA # <CJK>
-0x91AB # <CJK>
-0x91AF # <CJK>
-0x91B4 # <CJK>
-0x91B5 # <CJK>
0x91B8 # <CJK>
-0x91BA # <CJK>
-0x91C0 # <CJK>
-0x91C1 # <CJK>
-0x91C6 # <CJK>
0x91C7 # <CJK>
0x91C8 # <CJK>
-0x91C9 # <CJK>
-0x91CB # <CJK>
0x91CC # <CJK>
0x91CD # <CJK>
0x91CE # <CJK>
0x91CF # <CJK>
-0x91D0 # <CJK>
0x91D1 # <CJK>
-0x91D6 # <CJK>
-0x91D8 # <CJK>
-0x91DB # <CJK>
0x91DC # <CJK>
0x91DD # <CJK>
-0x91DF # <CJK>
-0x91E1 # <CJK>
0x91E3 # <CJK>
-0x91E6 # <CJK>
-0x91E7 # <CJK>
-0x91F5 # <CJK>
-0x91F6 # <CJK>
-0x91FC # <CJK>
-0x91FF # <CJK>
0x920D # <CJK>
-0x920E # <CJK>
-0x9211 # <CJK>
-0x9214 # <CJK>
-0x9215 # <CJK>
-0x921E # <CJK>
-0x9229 # <CJK>
-0x922C # <CJK>
0x9234 # <CJK>
-0x9237 # <CJK>
-0x923F # <CJK>
0x9244 # <CJK>
-0x9245 # <CJK>
-0x9248 # <CJK>
-0x9249 # <CJK>
-0x924B # <CJK>
-0x9250 # <CJK>
-0x9257 # <CJK>
-0x925A # <CJK>
0x925B # <CJK>
-0x925E # <CJK>
0x9262 # <CJK>
-0x9264 # <CJK>
-0x9266 # <CJK>
0x9271 # <CJK>
-0x927E # <CJK>
0x9280 # <CJK>
0x9283 # <CJK>
0x9285 # <CJK>
-0x9291 # <CJK>
-0x9293 # <CJK>
-0x9295 # <CJK>
-0x9296 # <CJK>
0x9298 # <CJK>
-0x929A # <CJK>
-0x929B # <CJK>
-0x929C # <CJK>
0x92AD # <CJK>
-0x92B7 # <CJK>
-0x92B9 # <CJK>
-0x92CF # <CJK>
-0x92D2 # <CJK>
-0x92E4 # <CJK>
-0x92E9 # <CJK>
-0x92EA # <CJK>
0x92ED # <CJK>
-0x92F2 # <CJK>
0x92F3 # <CJK>
-0x92F8 # <CJK>
-0x92FA # <CJK>
0x92FC # <CJK>
-0x9306 # <CJK>
-0x930F # <CJK>
-0x9310 # <CJK>
-0x9318 # <CJK>
-0x9319 # <CJK>
-0x931A # <CJK>
0x9320 # <CJK>
-0x9322 # <CJK>
-0x9323 # <CJK>
0x9326 # <CJK>
-0x9328 # <CJK>
-0x932B # <CJK>
0x932C # <CJK>
0x932E # <CJK>
0x932F # <CJK>
0x9332 # <CJK>
-0x9335 # <CJK>
-0x933A # <CJK>
-0x933B # <CJK>
-0x9344 # <CJK>
0x934B # <CJK>
-0x934D # <CJK>
-0x9354 # <CJK>
-0x9356 # <CJK>
0x935B # <CJK>
-0x935C # <CJK>
-0x9360 # <CJK>
-0x936C # <CJK>
-0x936E # <CJK>
0x9375 # <CJK>
-0x937C # <CJK>
-0x937E # <CJK>
0x938C # <CJK>
-0x9394 # <CJK>
0x9396 # <CJK>
-0x9397 # <CJK>
-0x939A # <CJK>
-0x93A7 # <CJK>
-0x93AC # <CJK>
-0x93AD # <CJK>
0x93AE # <CJK>
-0x93B0 # <CJK>
-0x93B9 # <CJK>
-0x93C3 # <CJK>
-0x93C8 # <CJK>
-0x93D0 # <CJK>
-0x93D1 # <CJK>
-0x93D6 # <CJK>
-0x93D7 # <CJK>
-0x93D8 # <CJK>
-0x93DD # <CJK>
0x93E1 # <CJK>
-0x93E4 # <CJK>
-0x93E5 # <CJK>
-0x93E8 # <CJK>
-0x9403 # <CJK>
-0x9407 # <CJK>
-0x9410 # <CJK>
-0x9413 # <CJK>
-0x9414 # <CJK>
0x9418 # <CJK>
-0x9419 # <CJK>
-0x941A # <CJK>
-0x9421 # <CJK>
-0x942B # <CJK>
-0x9435 # <CJK>
-0x9436 # <CJK>
-0x9438 # <CJK>
-0x943A # <CJK>
-0x9441 # <CJK>
-0x9444 # <CJK>
0x9451 # <CJK>
-0x9452 # <CJK>
-0x9453 # <CJK>
-0x945A # <CJK>
-0x945B # <CJK>
-0x945E # <CJK>
-0x9460 # <CJK>
-0x9462 # <CJK>
-0x946A # <CJK>
-0x9470 # <CJK>
-0x9475 # <CJK>
-0x9477 # <CJK>
-0x947C # <CJK>
-0x947D # <CJK>
-0x947E # <CJK>
-0x947F # <CJK>
-0x9481 # <CJK>
0x9577 # <CJK>
0x9580 # <CJK>
-0x9582 # <CJK>
-0x9583 # <CJK>
-0x9587 # <CJK>
0x9589 # <CJK>
-0x958A # <CJK>
0x958B # <CJK>
-0x958F # <CJK>
0x9591 # <CJK>
0x9593 # <CJK>
-0x9594 # <CJK>
-0x9596 # <CJK>
-0x9598 # <CJK>
-0x9599 # <CJK>
-0x95A0 # <CJK>
0x95A2 # <CJK>
0x95A3 # <CJK>
-0x95A4 # <CJK>
0x95A5 # <CJK>
-0x95A7 # <CJK>
-0x95A8 # <CJK>
-0x95AD # <CJK>
0x95B2 # <CJK>
-0x95B9 # <CJK>
-0x95BB # <CJK>
-0x95BC # <CJK>
-0x95BE # <CJK>
-0x95C3 # <CJK>
0x95C7 # <CJK>
-0x95CA # <CJK>
-0x95CC # <CJK>
-0x95CD # <CJK>
-0x95D4 # <CJK>
-0x95D5 # <CJK>
-0x95D6 # <CJK>
0x95D8 # <CJK>
-0x95DC # <CJK>
-0x95E1 # <CJK>
-0x95E2 # <CJK>
-0x95E5 # <CJK>
0x961C # <CJK>
-0x9621 # <CJK>
-0x9628 # <CJK>
0x962A # <CJK>
-0x962E # <CJK>
-0x962F # <CJK>
0x9632 # <CJK>
0x963B # <CJK>
-0x963F # <CJK>
-0x9640 # <CJK>
-0x9642 # <CJK>
0x9644 # <CJK>
-0x964B # <CJK>
-0x964C # <CJK>
0x964D # <CJK>
-0x964F # <CJK>
0x9650 # <CJK>
0x965B # <CJK>
-0x965C # <CJK>
-0x965D # <CJK>
-0x965E # <CJK>
-0x965F # <CJK>
0x9662 # <CJK>
0x9663 # <CJK>
0x9664 # <CJK>
0x9665 # <CJK>
-0x9666 # <CJK>
0x966A # <CJK>
-0x966C # <CJK>
0x9670 # <CJK>
-0x9672 # <CJK>
0x9673 # <CJK>
0x9675 # <CJK>
0x9676 # <CJK>
-0x9677 # <CJK>
0x9678 # <CJK>
0x967A # <CJK>
0x967D # <CJK>
0x9685 # <CJK>
0x9686 # <CJK>
-0x9688 # <CJK>
0x968A # <CJK>
-0x968B # <CJK>
-0x968D # <CJK>
0x968E # <CJK>
0x968F # <CJK>
0x9694 # <CJK>
-0x9695 # <CJK>
-0x9697 # <CJK>
-0x9698 # <CJK>
0x9699 # <CJK>
0x969B # <CJK>
0x969C # <CJK>
0x96A0 # <CJK>
0x96A3 # <CJK>
-0x96A7 # <CJK>
-0x96A8 # <CJK>
-0x96AA # <CJK>
-0x96B0 # <CJK>
-0x96B1 # <CJK>
-0x96B2 # <CJK>
-0x96B4 # <CJK>
-0x96B6 # <CJK>
0x96B7 # <CJK>
-0x96B8 # <CJK>
-0x96B9 # <CJK>
0x96BB # <CJK>
-0x96BC # <CJK>
-0x96C0 # <CJK>
-0x96C1 # <CJK>
0x96C4 # <CJK>
0x96C5 # <CJK>
0x96C6 # <CJK>
0x96C7 # <CJK>
-0x96C9 # <CJK>
-0x96CB # <CJK>
0x96CC # <CJK>
-0x96CD # <CJK>
-0x96CE # <CJK>
0x96D1 # <CJK>
-0x96D5 # <CJK>
-0x96D6 # <CJK>
-0x96D9 # <CJK>
-0x96DB # <CJK>
-0x96DC # <CJK>
0x96E2 # <CJK>
0x96E3 # <CJK>
0x96E8 # <CJK>
0x96EA # <CJK>
-0x96EB # <CJK>
0x96F0 # <CJK>
0x96F2 # <CJK>
0x96F6 # <CJK>
0x96F7 # <CJK>
-0x96F9 # <CJK>
0x96FB # <CJK>
0x9700 # <CJK>
-0x9704 # <CJK>
-0x9706 # <CJK>
0x9707 # <CJK>
-0x9708 # <CJK>
0x970A # <CJK>
-0x970D # <CJK>
-0x970E # <CJK>
-0x970F # <CJK>
-0x9711 # <CJK>
-0x9713 # <CJK>
-0x9716 # <CJK>
-0x9719 # <CJK>
0x971C # <CJK>
-0x971E # <CJK>
-0x9724 # <CJK>
0x9727 # <CJK>
-0x972A # <CJK>
-0x9730 # <CJK>
0x9732 # <CJK>
-0x9738 # <CJK>
-0x9739 # <CJK>
-0x973D # <CJK>
-0x973E # <CJK>
-0x9742 # <CJK>
-0x9744 # <CJK>
-0x9746 # <CJK>
-0x9748 # <CJK>
-0x9749 # <CJK>
0x9752 # <CJK>
-0x9756 # <CJK>
0x9759 # <CJK>
-0x975C # <CJK>
0x975E # <CJK>
-0x9760 # <CJK>
-0x9761 # <CJK>
0x9762 # <CJK>
-0x9764 # <CJK>
-0x9766 # <CJK>
-0x9768 # <CJK>
0x9769 # <CJK>
-0x976B # <CJK>
-0x976D # <CJK>
-0x9771 # <CJK>
0x9774 # <CJK>
-0x9779 # <CJK>
-0x977A # <CJK>
-0x977C # <CJK>
-0x9781 # <CJK>
-0x9784 # <CJK>
-0x9785 # <CJK>
-0x9786 # <CJK>
-0x978B # <CJK>
-0x978D # <CJK>
-0x978F # <CJK>
-0x9790 # <CJK>
-0x9798 # <CJK>
-0x979C # <CJK>
-0x97A0 # <CJK>
-0x97A3 # <CJK>
-0x97A6 # <CJK>
-0x97A8 # <CJK>
-0x97AB # <CJK>
-0x97AD # <CJK>
-0x97B3 # <CJK>
-0x97B4 # <CJK>
-0x97C3 # <CJK>
-0x97C6 # <CJK>
-0x97C8 # <CJK>
-0x97CB # <CJK>
0x97D3 # <CJK>
-0x97DC # <CJK>
-0x97ED # <CJK>
-0x97EE # <CJK>
-0x97F2 # <CJK>
0x97F3 # <CJK>
-0x97F5 # <CJK>
-0x97F6 # <CJK>
0x97FB # <CJK>
0x97FF # <CJK>
-0x9801 # <CJK>
0x9802 # <CJK>
0x9803 # <CJK>
0x9805 # <CJK>
0x9806 # <CJK>
0x9808 # <CJK>
-0x980C # <CJK>
-0x980F # <CJK>
0x9810 # <CJK>
0x9811 # <CJK>
0x9812 # <CJK>
0x9813 # <CJK>
-0x9817 # <CJK>
0x9818 # <CJK>
-0x981A # <CJK>
-0x9821 # <CJK>
-0x9824 # <CJK>
-0x982C # <CJK>
0x982D # <CJK>
-0x9834 # <CJK>
-0x9837 # <CJK>
-0x9838 # <CJK>
+#0x9830 # <CJK> # not in DroidSansJapanese
0x983B # <CJK>
0x983C # <CJK>
-0x983D # <CJK>
-0x9846 # <CJK>
-0x984B # <CJK>
0x984C # <CJK>
0x984D # <CJK>
0x984E # <CJK>
-0x984F # <CJK>
0x9854 # <CJK>
0x9855 # <CJK>
0x9858 # <CJK>
-0x985B # <CJK>
0x985E # <CJK>
0x9867 # <CJK>
-0x986B # <CJK>
-0x986F # <CJK>
-0x9870 # <CJK>
-0x9871 # <CJK>
-0x9873 # <CJK>
-0x9874 # <CJK>
0x98A8 # <CJK>
-0x98AA # <CJK>
-0x98AF # <CJK>
-0x98B1 # <CJK>
-0x98B6 # <CJK>
-0x98C3 # <CJK>
-0x98C4 # <CJK>
-0x98C6 # <CJK>
0x98DB # <CJK>
-0x98DC # <CJK>
0x98DF # <CJK>
0x98E2 # <CJK>
-0x98E9 # <CJK>
-0x98EB # <CJK>
-0x98ED # <CJK>
-0x98EE # <CJK>
0x98EF # <CJK>
0x98F2 # <CJK>
-0x98F4 # <CJK>
0x98FC # <CJK>
0x98FD # <CJK>
0x98FE # <CJK>
-0x9903 # <CJK>
0x9905 # <CJK>
-0x9909 # <CJK>
0x990A # <CJK>
0x990C # <CJK>
-0x9910 # <CJK>
-0x9912 # <CJK>
0x9913 # <CJK>
-0x9914 # <CJK>
-0x9918 # <CJK>
-0x991D # <CJK>
-0x991E # <CJK>
-0x9920 # <CJK>
-0x9921 # <CJK>
-0x9924 # <CJK>
0x9928 # <CJK>
-0x992C # <CJK>
-0x992E # <CJK>
-0x993D # <CJK>
-0x993E # <CJK>
-0x9942 # <CJK>
-0x9945 # <CJK>
-0x9949 # <CJK>
-0x994B # <CJK>
-0x994C # <CJK>
-0x9950 # <CJK>
-0x9951 # <CJK>
-0x9952 # <CJK>
-0x9955 # <CJK>
-0x9957 # <CJK>
0x9996 # <CJK>
-0x9997 # <CJK>
-0x9998 # <CJK>
0x9999 # <CJK>
-0x99A5 # <CJK>
-0x99A8 # <CJK>
0x99AC # <CJK>
-0x99AD # <CJK>
-0x99AE # <CJK>
-0x99B3 # <CJK>
-0x99B4 # <CJK>
-0x99BC # <CJK>
-0x99C1 # <CJK>
0x99C4 # <CJK>
0x99C5 # <CJK>
0x99C6 # <CJK>
-0x99C8 # <CJK>
0x99D0 # <CJK>
-0x99D1 # <CJK>
0x99D2 # <CJK>
-0x99D5 # <CJK>
-0x99D8 # <CJK>
-0x99DB # <CJK>
-0x99DD # <CJK>
-0x99DF # <CJK>
-0x99E2 # <CJK>
-0x99ED # <CJK>
-0x99EE # <CJK>
-0x99F1 # <CJK>
-0x99F2 # <CJK>
-0x99F8 # <CJK>
-0x99FB # <CJK>
-0x99FF # <CJK>
-0x9A01 # <CJK>
-0x9A05 # <CJK>
0x9A0E # <CJK>
-0x9A0F # <CJK>
0x9A12 # <CJK>
0x9A13 # <CJK>
-0x9A19 # <CJK>
-0x9A28 # <CJK>
-0x9A2B # <CJK>
0x9A30 # <CJK>
-0x9A37 # <CJK>
-0x9A3E # <CJK>
-0x9A40 # <CJK>
-0x9A42 # <CJK>
-0x9A43 # <CJK>
-0x9A45 # <CJK>
-0x9A4D # <CJK>
-0x9A55 # <CJK>
-0x9A57 # <CJK>
0x9A5A # <CJK>
-0x9A5B # <CJK>
-0x9A5F # <CJK>
-0x9A62 # <CJK>
-0x9A64 # <CJK>
-0x9A65 # <CJK>
-0x9A69 # <CJK>
-0x9A6A # <CJK>
-0x9A6B # <CJK>
0x9AA8 # <CJK>
-0x9AAD # <CJK>
-0x9AB0 # <CJK>
0x9AB8 # <CJK>
-0x9ABC # <CJK>
-0x9AC0 # <CJK>
0x9AC4 # <CJK>
-0x9ACF # <CJK>
-0x9AD1 # <CJK>
-0x9AD3 # <CJK>
-0x9AD4 # <CJK>
0x9AD8 # <CJK>
-0x9ADE # <CJK>
-0x9ADF # <CJK>
-0x9AE2 # <CJK>
-0x9AE3 # <CJK>
-0x9AE6 # <CJK>
0x9AEA # <CJK>
-0x9AEB # <CJK>
-0x9AED # <CJK>
-0x9AEE # <CJK>
-0x9AEF # <CJK>
-0x9AF1 # <CJK>
-0x9AF4 # <CJK>
-0x9AF7 # <CJK>
-0x9AFB # <CJK>
-0x9B06 # <CJK>
-0x9B18 # <CJK>
-0x9B1A # <CJK>
-0x9B1F # <CJK>
-0x9B22 # <CJK>
-0x9B23 # <CJK>
-0x9B25 # <CJK>
-0x9B27 # <CJK>
-0x9B28 # <CJK>
-0x9B29 # <CJK>
-0x9B2A # <CJK>
-0x9B2E # <CJK>
-0x9B2F # <CJK>
0x9B31 # <CJK>
-0x9B32 # <CJK>
-0x9B3B # <CJK>
0x9B3C # <CJK>
-0x9B41 # <CJK>
0x9B42 # <CJK>
-0x9B43 # <CJK>
-0x9B44 # <CJK>
0x9B45 # <CJK>
-0x9B4D # <CJK>
-0x9B4E # <CJK>
-0x9B4F # <CJK>
-0x9B51 # <CJK>
0x9B54 # <CJK>
-0x9B58 # <CJK>
0x9B5A # <CJK>
-0x9B6F # <CJK>
-0x9B74 # <CJK>
-0x9B83 # <CJK>
-0x9B8E # <CJK>
-0x9B91 # <CJK>
-0x9B92 # <CJK>
-0x9B93 # <CJK>
-0x9B96 # <CJK>
-0x9B97 # <CJK>
-0x9B9F # <CJK>
-0x9BA0 # <CJK>
-0x9BA8 # <CJK>
-0x9BAA # <CJK>
-0x9BAB # <CJK>
-0x9BAD # <CJK>
0x9BAE # <CJK>
-0x9BB4 # <CJK>
-0x9BB9 # <CJK>
-0x9BC0 # <CJK>
-0x9BC6 # <CJK>
-0x9BC9 # <CJK>
-0x9BCA # <CJK>
-0x9BCF # <CJK>
-0x9BD1 # <CJK>
-0x9BD2 # <CJK>
-0x9BD4 # <CJK>
-0x9BD6 # <CJK>
-0x9BDB # <CJK>
-0x9BE1 # <CJK>
-0x9BE2 # <CJK>
-0x9BE3 # <CJK>
-0x9BE4 # <CJK>
0x9BE8 # <CJK>
-0x9BF0 # <CJK>
-0x9BF1 # <CJK>
-0x9BF2 # <CJK>
-0x9BF5 # <CJK>
-0x9C04 # <CJK>
-0x9C06 # <CJK>
-0x9C08 # <CJK>
-0x9C09 # <CJK>
-0x9C0A # <CJK>
-0x9C0C # <CJK>
-0x9C0D # <CJK>
-0x9C10 # <CJK>
-0x9C12 # <CJK>
-0x9C13 # <CJK>
-0x9C14 # <CJK>
-0x9C15 # <CJK>
-0x9C1B # <CJK>
-0x9C21 # <CJK>
-0x9C24 # <CJK>
-0x9C25 # <CJK>
-0x9C2D # <CJK>
-0x9C2E # <CJK>
-0x9C2F # <CJK>
-0x9C30 # <CJK>
-0x9C32 # <CJK>
-0x9C39 # <CJK>
-0x9C3A # <CJK>
-0x9C3B # <CJK>
-0x9C3E # <CJK>
-0x9C46 # <CJK>
-0x9C47 # <CJK>
-0x9C48 # <CJK>
-0x9C52 # <CJK>
-0x9C57 # <CJK>
-0x9C5A # <CJK>
-0x9C60 # <CJK>
-0x9C67 # <CJK>
-0x9C76 # <CJK>
-0x9C78 # <CJK>
0x9CE5 # <CJK>
-0x9CE7 # <CJK>
-0x9CE9 # <CJK>
-0x9CEB # <CJK>
-0x9CEC # <CJK>
-0x9CF0 # <CJK>
-0x9CF3 # <CJK>
0x9CF4 # <CJK>
-0x9CF6 # <CJK>
-0x9D03 # <CJK>
-0x9D06 # <CJK>
-0x9D07 # <CJK>
-0x9D08 # <CJK>
-0x9D09 # <CJK>
-0x9D0E # <CJK>
-0x9D12 # <CJK>
-0x9D15 # <CJK>
-0x9D1B # <CJK>
-0x9D1F # <CJK>
-0x9D23 # <CJK>
-0x9D26 # <CJK>
-0x9D28 # <CJK>
-0x9D2A # <CJK>
-0x9D2B # <CJK>
-0x9D2C # <CJK>
-0x9D3B # <CJK>
-0x9D3E # <CJK>
-0x9D3F # <CJK>
-0x9D41 # <CJK>
-0x9D44 # <CJK>
-0x9D46 # <CJK>
-0x9D48 # <CJK>
-0x9D50 # <CJK>
-0x9D51 # <CJK>
-0x9D59 # <CJK>
-0x9D5C # <CJK>
-0x9D5D # <CJK>
-0x9D5E # <CJK>
-0x9D60 # <CJK>
-0x9D61 # <CJK>
-0x9D64 # <CJK>
-0x9D6C # <CJK>
-0x9D6F # <CJK>
-0x9D72 # <CJK>
-0x9D7A # <CJK>
-0x9D87 # <CJK>
-0x9D89 # <CJK>
0x9D8F # <CJK>
-0x9D9A # <CJK>
-0x9DA4 # <CJK>
-0x9DA9 # <CJK>
-0x9DAB # <CJK>
-0x9DAF # <CJK>
-0x9DB2 # <CJK>
0x9DB4 # <CJK>
-0x9DB8 # <CJK>
-0x9DBA # <CJK>
-0x9DBB # <CJK>
-0x9DC1 # <CJK>
-0x9DC2 # <CJK>
-0x9DC4 # <CJK>
-0x9DC6 # <CJK>
-0x9DCF # <CJK>
-0x9DD3 # <CJK>
-0x9DD9 # <CJK>
-0x9DE6 # <CJK>
-0x9DED # <CJK>
-0x9DEF # <CJK>
-0x9DF2 # <CJK>
-0x9DF8 # <CJK>
-0x9DF9 # <CJK>
-0x9DFA # <CJK>
-0x9DFD # <CJK>
-0x9E1A # <CJK>
-0x9E1B # <CJK>
-0x9E1E # <CJK>
-0x9E75 # <CJK>
-0x9E78 # <CJK>
-0x9E79 # <CJK>
-0x9E7D # <CJK>
0x9E7F # <CJK>
-0x9E81 # <CJK>
-0x9E88 # <CJK>
-0x9E8B # <CJK>
-0x9E8C # <CJK>
-0x9E91 # <CJK>
-0x9E92 # <CJK>
0x9E93 # <CJK>
-0x9E95 # <CJK>
0x9E97 # <CJK>
-0x9E9D # <CJK>
-0x9E9F # <CJK>
-0x9EA5 # <CJK>
0x9EA6 # <CJK>
-0x9EA9 # <CJK>
-0x9EAA # <CJK>
-0x9EAD # <CJK>
-0x9EB8 # <CJK>
-0x9EB9 # <CJK>
0x9EBA # <CJK>
0x9EBB # <CJK>
-0x9EBC # <CJK>
-0x9EBE # <CJK>
-0x9EBF # <CJK>
0x9EC4 # <CJK>
-0x9ECC # <CJK>
-0x9ECD # <CJK>
-0x9ECE # <CJK>
-0x9ECF # <CJK>
-0x9ED0 # <CJK>
0x9ED2 # <CJK>
-0x9ED4 # <CJK>
-0x9ED8 # <CJK>
0x9ED9 # <CJK>
-0x9EDB # <CJK>
-0x9EDC # <CJK>
-0x9EDD # <CJK>
-0x9EDE # <CJK>
-0x9EE0 # <CJK>
-0x9EE5 # <CJK>
-0x9EE8 # <CJK>
-0x9EEF # <CJK>
-0x9EF4 # <CJK>
-0x9EF6 # <CJK>
-0x9EF7 # <CJK>
-0x9EF9 # <CJK>
-0x9EFB # <CJK>
-0x9EFC # <CJK>
-0x9EFD # <CJK>
-0x9F07 # <CJK>
-0x9F08 # <CJK>
-0x9F0E # <CJK>
0x9F13 # <CJK>
-0x9F15 # <CJK>
-0x9F20 # <CJK>
-0x9F21 # <CJK>
-0x9F2C # <CJK>
0x9F3B # <CJK>
-0x9F3E # <CJK>
-0x9F4A # <CJK>
-0x9F4B # <CJK>
-0x9F4E # <CJK>
-0x9F4F # <CJK>
-0x9F52 # <CJK>
-0x9F54 # <CJK>
-0x9F5F # <CJK>
-0x9F60 # <CJK>
-0x9F61 # <CJK>
0x9F62 # <CJK>
-0x9F63 # <CJK>
-0x9F66 # <CJK>
-0x9F67 # <CJK>
-0x9F6A # <CJK>
-0x9F6C # <CJK>
-0x9F72 # <CJK>
-0x9F76 # <CJK>
-0x9F77 # <CJK>
-0x9F8D # <CJK>
-0x9F95 # <CJK>
-0x9F9C # <CJK>
-0x9F9D # <CJK>
-0x9FA0 # <CJK>
-#0xFFE5 # FULLWIDTH YEN SIGN
+#0x20B9F # <CJK>
diff --git a/fc-lang/ko.orth b/fc-lang/ko.orth
index 39114a5a..4bb52c6f 100644
--- a/fc-lang/ko.orth
+++ b/fc-lang/ko.orth
@@ -86,7 +86,6 @@
0x3161 # HANGUL LETTER EU
0x3162 # HANGUL LETTER YI
0x3163 # HANGUL LETTER I
-0x3164 # HANGUL FILLER
0x3165 # HANGUL LETTER SSANGNIEUN
0x3166 # HANGUL LETTER NIEUN-TIKEUT
0x3167 # HANGUL LETTER NIEUN-SIOS
diff --git a/fc-lang/quz.orth b/fc-lang/quz.orth
new file mode 100644
index 00000000..a991712a
--- /dev/null
+++ b/fc-lang/quz.orth
@@ -0,0 +1,36 @@
+#
+# fontconfig/fc-lang/quz.orth
+#
+# Copyright © 2009 Roozbeh Pournader
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. The author(s) make(s) no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIM(S) ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+# Cusco Quechua (quz)
+#
+# Sources:
+# * http://en.wikipedia.org/wiki/Quechua_alphabet
+# * http://www.omniglot.com/writing/quechua.htm
+#
+# Some basic Latin letters are not used, based on dialect
+#
+0041-005A
+0061-007A
+00D1
+00F1
+02C8
diff --git a/fc-lang/zh_hk.orth b/fc-lang/zh_hk.orth
index 5d5ef052..8701cbcb 100644
--- a/fc-lang/zh_hk.orth
+++ b/fc-lang/zh_hk.orth
@@ -2,6 +2,7 @@
# fontconfig/fc-lang/zh_hk.orth
#
# Copyright © 2002 Keith Packard
+# Copyright © 2014 Abel Cheung
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
@@ -23,546 +24,610 @@
#
# Chinese Hong Kong Supplementary Character Set (ZH-HK)
#
-# Taken from the HKSCS-2001, including only the non-PUA BMP glyphs
-# as encoded in ISO/IEC 10646-1:2000
+# This list is a concatenation of:
+# (1) Most frequently used HKSCS characters accounting for ~99.75% usage in:
+# i. Around 11000 crawled UTF-8 Hong Kong web pages in
+# http://html5.org/temp/hk-data.tar.gz
+# ii. Database dump of main content in Cantonese Wikipedia dated 20131228:
+# http://dumps.wikimedia.org/zh_yuewiki/
+# (2) Word recommendation list from a local linguist:
+# http://founder.acgvlyric.org/iu/doku.php/%E9%80%A0%E5%AD%97:%E5%B8%B8%E7%94%A8%E9%A6%99%E6%B8%AF%E5%A4%96%E5%AD%97%E8%A1%A8
+# Level 1-5 characters are taken, excluding non-HKSCS chars.
+#
+3007
+344C
+3464
+3473
+347A
+347D
+347E
+3493
+3496
+34A5
+34BC
+34C1
+34C8
+34DF
+34E4
+34FB
+3506
+353E
+3551
+3561
+356D
+3570
+3572
+3577
+3578
+3584
+3597
+35A1
+35A5
+35AD
+35BF
+35C1
+35C5
+35C7
+35CA
+35CE
+35D2
+35D6
+35DB
+35F1
+35F2
+35F3
+35FB
+35FE
+3609
+361A
+3623
+362D
+3635
+3639
+3647
+3648
+3649
+364E
+365F
+367A
+3681
+36A5
+36AA
+36AC
+36B0
+36B1
+36B5
+36B9
+36BC
+36C1
+36C3
+36C4
+36C5
+36D3
+36D4
+36D6
+36DD
+36E5
+36E6
+36F5
+3703
+3708
+370A
+370D
+371C
+3723
+3725
+3730
+3732
+3733
+373A
+3740
+3743
+3762
+376F
+3797
+37A0
+37B9
+37BE
+37F2
+37F8
+37FB
+380F
+3819
+3820
+382D
+3836
+3838
+3863
+38A0
+38C3
+38CC
+38D1
+38FA
+3908
+3914
+3927
+3932
+393F
+394D
+3963
+3980
+3989
+398A
+3992
+399B
+39A1
+39A4
+39B8
+39DC
+39E2
+39E5
+39EC
+39F8
+39FB
+39FE
+3A01
+3A03
+3A06
+3A17
+3A18
+3A29
+3A2A
+3A34
+3A4B
+3A52
+3A57
+3A5C
+3A5E
+3A66
+3A67
+3A97
+3AAB
+3ABD
+3ADE
+3AF0
+3AF2
+3AFB
+3B0E
+3B19
+3B22
+3B2B
+3B39
+3B42
+3B58
+3B60
+3B71
+3B72
+3B7B
+3B7C
+3B80
+3B96
+3B99
+3BA1
+3BBE
+3BC2
+3BC4
+3BD7
+3BDD
+3BEC
+3BF2
+3BF3
+3C0D
+3C11
+3C15
+3C54
+3CCB
+3CCD
+3CD1
+3CD6
+3CDC
+3CEB
+3D13
+3D1D
+3D32
+3D46
+3D4C
+3D4E
+3D51
+3D5F
+3D62
+3D69
+3D6A
+3D6F
+3D75
+3D7D
+3D85
+3D8F
+3D91
+3DA5
+3DAD
+3DB4
+3DBF
+3DC6
+3DC7
+3DCD
+3DD3
+3DDB
+3DEB
+3DF3
+3DF7
+3DFC
+3E40
+3E43
+3E48
+3E55
+3E74
+3EA8
+3EA9
+3EAA
+3EAD
+3EB1
+3EB8
+3EBF
+3EC2
+3ECA
+3ECC
+3ED1
+3ED6
+3ED7
+3EDE
+3EE1
+3EE7
+3EEB
+3EF0
+3EFA
+3EFF
+3F04
+3F0E
+3F58
+3F59
+3F63
+3F93
+3FC0
+3FD7
+3FDC
+3FE5
+3FED
+3FF9
+3FFA
+4004
+4039
+4045
+4053
+4057
+4062
+4065
+406A
+406F
+40BB
+40BF
+40C8
+40D8
+40DF
+40FA
+4103
+4104
+4109
+410E
+4132
+4167
+416C
+416E
+417F
+4190
+41B2
+41CF
+41DB
+41EF
+41F9
+4211
+4240
+4260
+426A
+427A
+4294
+42A2
+42B5
+42B9
+42BC
+42F4
+42FB
+42FC
+432B
+436E
+4397
+43BA
+43C1
+43D9
+43DF
+43ED
+43F2
+4401
+4402
+4413
+447A
+448F
+449F
+44A0
+44B0
+44B7
+44DD
+44DF
+44E4
+44EA
+44F4
+4503
+4504
+4509
+4516
+4527
+452E
+4533
+453B
+453F
+4543
+4551
+4552
+4555
+4562
+456A
+4577
+4585
+45E9
+4603
+4606
+460F
+4615
+4617
+465B
+467A
+46CF
+46D0
+46F5
+4718
+477C
+47D5
+47ED
+47F4
+4800
+480B
+4871
+489B
+48AD
+48D0
+48DD
+48ED
+48FA
+4906
+491E
+492A
+492D
+4935
+493C
+493E
+4945
+4951
+4953
+4965
+496A
+4972
+4989
+49A7
+49DF
+49E5
+4A0F
+4A1D
+4A24
+4A35
+4A96
+4AB4
+4AB8
+4AD1
+4AE4
+4AFF
+4B19
+4B2C
+4B37
+4B6F
+4B70
+4B72
+4B7B
+4B7E
+4B8E
+4B90
+4B93
+4B96
+4B97
+4B9D
+4BBD
+4BBE
+4BC0
+4C04
+4C07
+4C0E
+4C3B
+4C3E
+4C5B
+4C6D
+4C77
+4C7B
+4C7D
+4C81
+4CAE
+4CB0
+4CCD
+4CE1
+4CED
+4D09
+4D10
+4D34
+4D77
+4D91
+4D9C
4E04
-4E1A
-4E1C
4E21
-4E24
-4E28
4E2A
-4E2C
-4E2F
-4E36
-4E37
-4E3D
-4E3F
-4E49
4E5A
4E5B
4E6A
4E78
4E80
-4E81
4E85
-4E87
-4E89
4E98
-4E9A
-4EA0
-4EA3
-4EB7
-4EBB
-4EBC
-4EBF
4ECE
-4EEA
-4EEB
4EEE
-4EF8
-4F03
-4F17
-4F1A
-4F28
-4F29
-4F32
4F37
-4F39
-4F42
-4F45
-4F4B
-4F72
-4F8A
-4FA2
-4FA8
-4FAB
-4FB0
-4FBD
-4FC8
-4FCC
-4FE4
4FE5
-4FF0
-4FF2
4FF9
-4FFD
-5003
5008
-502E
-5034
503B
-5056
-5058
-5066
-506C
-5081
-5088
-5090
-50A6
-50BC
50CD
-50D0
-50D9
-50DF
-50E1
-50F4
-50FC
-5101
510D
510E
-512B
-5156
-5160
516A
-5174
-5179
-5182
5186
-5188
-5196
519A
-519C
51A7
51A8
-51AB
-51AE
51B2
51B3
51B4
51B5
-51B8
-51C3
-51C7
51C9
-51CF
-51D1
-51D2
-51D3
-51DB
-51DF
-51E2
-51E4
51ED
51F4
-51FC
-51FE
-5202
-5205
520B
-521F
-5220
5226
5227
5234
523C
5257
-5259
-5260
-5268
-5273
-5279
528F
-5290
-5294
-529A
-52A1
-52A4
-52A8
52B5
52B9
52C5
-52CC
-52D0
52D1
-52E0
-52E1
-52F9
-5301
-5324
-5327
-532C
-5332
-5333
5338
-533B
-5342
-534E
-535D
-535F
-5364
-5367
-5369
-536D
5374
537D
-537E
5393
53A0
-53A2
53A6
53A8
-53A9
-53AA
-53AB
-53AE
-53B0
-53B6
53C1
-53C2
-53C5
53CC
-53D0
-53D1
-53D2
-53D8
53D9
-53DA
53E0
53F6
-53F7
53FE
5413
5414
5416
-541A
5421
-5423
-542F
-5432
-5434
-544B
+544C
544D
-5469
546A
546D
-5485
548F
5493
5494
5497
-549C
-549E
-54A3
54A4
54B2
-54B4
-54B9
54CB
-54CC
54CD
-54D0
-54DA
54E3
-54EF
5502
-550D
5513
-5518
551E
-5523
5525
-5528
-552B
-553F
-5547
-5549
5553
555D
5569
556B
5571
5572
-5573
5579
5586
5590
55A9
55B0
-55B4
-55B9
55BA
55BC
-55C1
55D7
-55D8
55DE
-55EA
55EC
55F0
55F1
-55F5
55FB
5605
5611
561E
-5620
-5621
5622
5623
5625
562D
-5637
5643
564D
564F
-5650
5652
5654
565D
-5661
-567A
-567B
-567C
5689
-568A
-568B
5692
-569E
569F
56A1
56A4
-56AF
56B1
56B9
56BF
56D6
-56E2
-56ED
-56EF
-56F1
56FD
-5700
-5715
-571D
-5732
-573D
-573F
5742
-5743
-5746
-5754
-5757
-575B
-575F
-5767
577A
-577E
-577F
-5788
-578A
-578D
-5790
-579C
-57A1
-57A7
-57AA
-57B4
-57BB
-57BE
-57C4
57C8
57D7
-57DD
57DE
-57E6
-57EF
-57FE
5803
-5812
-5822
5826
583A
5840
-5844
-5847
-585C
-585F
5869
-586C
5872
5873
-5892
-5899
-589A
-58A7
58AA
-58B0
-58B5
-58B6
58BB
-58CB
-58D0
-58DC
58E0
-58F0
58F2
58F3
58FB
-5902
-5904
-5905
-5907
590A
-5911
-591F
-5932
-5934
-5965
5975
-5989
-5994
-599A
599F
59AC
-59B0
-59B7
-59B8
-59C4
59C9
-59D9
59EB
-59EF
-59F0
59F8
-59F9
-5A02
-5A0B
-5A0D
-5A12
-5A1A
-5A21
-5A24
-5A27
-5A2A
5A2B
-5A2C
-5A3D
-5A45
-5A54
-5A59
-5A61
-5A63
-5A68
-5A6B
-5A6E
-5A71
-5A79
5A7E
-5A81
-5A82
-5A86
-5A88
-5A91
-5A96
-5A99
-5AA0
-5AA1
-5AAB
-5AC3
-5ACE
-5ACF
-5AD3
-5AE4
-5AF0
5AF2
5AFA
-5AFE
-5B0D
-5B11
-5B15
-5B1F
-5B2B
-5B41
-5B44
5B46
-5B4A
-5B4F
-5B66
-5B68
5B6D
-5B74
-5B76
-5B7C
-5B80
-5B82
-5B90
-5B96
5B9D
-5B9E
5B9F
-5BAA
5BC3
-5BD5
-5BD7
+5BDB
5BF3
-5BFF
5C05
-5C13
-5C14
-5C1C
-5C1E
-5C20
-5C23
-5C49
5C4A
-5C53
5C5E
-5C85
-5C99
-5C9A
-5C9C
-5C9E
-5CBA
-5CC1
-5CC2
-5CD1
-5CE5
-5CE9
5CEF
-5CF5
-5D10
-5D15
-5D18
-5D2C
-5D2F
-5D3E
-5D46
-5D48
-5D56
-5D57
-5D5B
-5D70
-5D74
-5D7B
-5D85
5D8B
-5D8E
-5DA4
-5DAB
-5DB6
-5DB9
-5DC1
-5DD7
-5DDB
5DF5
-5E09
-5E0B
-5E12
-5E2E
-5E42
-5E48
-5E5E
5E7A
-5E7F
5E83
-5E86
-5E92
-5E99
-5EBD
-5ECD
5ED0
-5EF4
5EF8
5EF9
5EFB
@@ -570,1671 +635,485 @@
5F0C
5F0D
5F0E
-5F25
-5F3A
-5F4D
-5F50
-5F51
5F5C
-5F61
-5F63
-5F72
-5F7B
-5F83
-5FA4
5FA7
-5FB1
-5FBA
-5FC2
-5FC4
-5FDB
5FDF
-6023
6031
-603B
-604A
-6052
6075
-6077
-607E
609E
60A4
-60A7
-60B3
60D7
-60DE
60E3
-60E7
-60E8
-60E9
-60FD
-6107
-610C
-6119
-6122
-6130
-613D
-6142
-6150
6159
-615C
-6160
6164
-616F
617D
-6181
6187
-6195
-6198
-6199
-619C
-61B7
-61B9
-61C0
-61CF
61D0
-61D3
-61DA
-61E2
-622C
-6237
6239
-624C
-6268
-6282
-6285
-6290
629D
-62A4
62A6
62C3
62C5
62D5
-62DF
-62E5
-6318
-632E
6331
-6335
-6337
-6364
-636C
6379
-637F
-638B
63B9
-63C1
63D1
63DE
-63E2
63E6
63F8
-63FB
63FC
63FE
6407
6432
-6438
643A
-643B
-645A
-6471
647C
648D
6491
-64AF
64B4
-64B6
-64C0
-64D3
64DD
64E1
-64E5
64E7
-64EA
-650A
-6511
651E
-651F
6530
-6534
-6535
654D
-655F
-656B
-656D
-6585
6586
-6588
6589
-658B
-65B5
-65BE
-65D1
-65D4
-65E0
65E3
-65FF
-6618
-661E
-6623
6630
6644
-6648
664B
-6653
-6657
-6663
6667
666B
6673
-667D
-6685
668E
-6692
-669A
-66A4
-66AD
-66B3
-66B6
-66BF
-66CD
-66CE
66F1
-6702
-670C
-670E
-6716
-6719
-671E
6725
6736
-6744
6761
-6762
6767
-676B
-678F
67A0
-67A4
-67AC
67B1
-67BF
-67D6
-67D7
-67F9
-67FE
-6800
-6801
-6802
6803
6804
-680D
-6810
-681B
681E
6822
-6836
-6837
-683E
-6847
-684A
-6855
-6856
-685D
-6865
-6884
-6888
6898
-68A6
68B6
-68B9
-68BD
-68C3
-68C5
-68CA
6900
-6901
-6902
-6903
-6909
-6918
-6919
-691A
-691B
-692C
6936
-693E
-6943
-6946
-6955
6961
-6964
-6967
-6972
6973
-6980
-6985
698A
-6998
-699F
-69A2
69B2
-69C0
-69D1
-69D5
-69D6
-69E1
-69E9
-69F9
-69FA
-6A03
6A0B
-6A0C
-6A1A
-6A1C
6A2B
-6A2C
-6A2D
-6A33
-6A43
-6A45
-6A4C
-6A52
-6A53
-6A57
-6A63
-6A65
-6A71
-6A74
-6A7A
-6A82
-6A8A
-6A8F
-6A99
-6A9D
-6AA7
-6AAB
-6AB1
-6AB2
-6AB5
-6ABE
6AC8
-6AC9
-6ACA
-6AD4
-6AD8
-6AF6
-6B05
-6B1D
6B35
-6B52
-6B57
6B6F
6B74
6B7A
-6B81
-6BC1
-6BDC
6BE1
-6BEA
-6BFA
-6C1C
-6C31
-6C35
6C37
6C39
-6C3A
-6C3D
-6C49
-6C58
6C5A
-6C6E
-6C75
-6C79
-6C7F
-6C9F
6CA2
-6CAA
-6CAF
-6CB2
-6CCB
-6CCE
-6CDF
6CEA
-6CFF
-6D02
-6D05
-6D06
-6D24
-6D26
-6D4E
-6D57
-6D5B
6D5C
-6D71
6D72
-6D81
-6D8F
6D96
-6DA4
-6DA5
-6DB1
-6DB9
-6DFE
-6E02
-6E04
-6E0A
-6E0F
6E15
-6E18
6E29
-6E2A
-6E4F
-6E50
-6E59
-6E76
6E7C
-6E86
-6E8B
-6E9A
-6EB5
-6EB8
-6EBB
6ED9
-6EDA
6EDB
6EDD
-6EE2
-6EE8
-6EE9
-6EFA
-6F04
-6F0B
-6F0C
6F16
-6F17
-6F24
-6F34
-6F3D
-6F44
6F56
-6F5C
-6F74
-6F79
6F81
-6F8A
-6F9D
-6F9F
-6FB5
-6FBB
6FBE
-6FD3
-6FD9
-6FDA
6FF6
-6FF8
-7003
701E
702C
-704B
-704D
-7050
-7054
-705C
-7067
-706C
-706F
-7075
-7077
-7079
-707E
-707F
7081
7089
-708B
-708F
-70A0
-70A3
-70A5
-70A6
-70A7
70B9
-70BB
-70BC
-70BD
-70C0
-70C4
-70CC
-70D0
-70D5
-70D6
70DF
70F1
-70F5
-70FE
7105
-711D
-7129
712B
-712C
-7133
-7134
-7135
-713B
-713E
7140
7145
714A
-714F
7151
-716B
7171
-7173
-7175
-7176
-7177
-717A
-717C
-717E
-7188
-718C
-718E
-7191
-7196
-7198
-71A2
-71A3
-71AD
-71B4
-71B7
-71BA
-71D1
-71DD
-71EB
-71F5
71F6
-7200
-7209
-720E
-720F
7215
-7216
-7217
-7224
-722B
-722E
7240
-7250
-7255
-7257
-725C
-7266
7282
7287
-728F
-7294
-729F
-72AD
-72B2
-72CD
-72E2
-7302
-7304
-7310
-7328
732A
-732B
-732C
732E
-7338
-7339
7341
-7348
-734F
-7371
7374
-738C
-738F
-7398
-739C
-739E
-73A7
-73AA
-73BA
73C9
-73CE
73CF
-73D0
-73D5
-73E1
-73E2
-73E4
-73E6
-73EF
-73F3
-73F7
-73F9
-73FB
-7402
-7411
-7412
-7414
-7415
-7417
-7419
-741C
-741E
-741F
-7437
-7438
7439
743C
-7443
-7445
-7447
7448
-7449
-7453
-7456
-745D
7460
-7465
-7468
-746B
-746C
-7474
-7476
-747A
-7482
-748C
-748D
-7499
-749B
-74A4
-74B4
-74B9
-74C8
-74CC
-74D0
-74D3
-74E7
-74F0
-74F1
-74F2
-74F8
7505
-750E
-7519
-751E
7534
-7535
753B
-7542
-7546
754A
-754D
7551
7553
-7555
7560
7567
-756D
-756E
-7572
-757A
-7583
758D
758E
-7592
-759E
75B1
75B4
-75C3
-75C8
-75DC
7602
-7607
-762C
763B
-7640
-764D
764E
-764F
-7651
-7654
7666
7667
-766F
-7673
-7674
7676
767A
-7690
-76A1
-76A5
-76B7
-76CC
-76D6
-76D9
770C
-770E
-770F
771E
-7724
-7726
-772B
7740
-7743
7758
-7772
-7777
7778
777A
-777B
7793
-7798
-77AF
77B9
-77BE
-77C3
-77C5
77CB
-77DD
-77E6
-77F4
-77FE
7808
-7818
-781C
-781E
-7839
-783C
-783D
-7842
-7844
-7847
-784B
-7851
-7853
-7854
-7866
-787A
7881
-7888
788D
-78AF
78B1
-78B6
78B8
-78B9
-78C7
-78D2
-78D3
78D7
-78D8
-78E4
-78EE
-78F0
-78F1
-78F5
7906
792E
-7932
-7933
-7934
-7936
-793B
-793C
7958
-7959
7962
-7971
-797E
-7980
-7983
-7986
-7987
7991
-7999
-799D
-799F
-79A5
-79A9
79C4
-79C6
-79CC
-79D4
-79E2
-79F1
-79F4
-7A06
-7A2A
-7A2D
-7A3A
-7A3E
-7A43
-7A45
-7A49
-7A65
-7A7D
-7A83
-7A91
7A93
7AB0
-7ABB
-7ABC
-7AC2
-7AC3
7AC8
7AC9
-7ACF
-7AD3
-7ADA
-7ADB
7ADC
7ADD
-7AE2
-7AE7
-7AE9
7AEA
-7AFE
7B0B
-7B0C
-7B14
-7B1F
-7B27
-7B29
7B39
-7B42
-7B43
-7B55
-7B62
-7B6C
7B6F
-7B7B
-7B92
-7BA2
-7BA3
-7BB2
-7BCF
-7BD0
-7BEC
-7BFA
-7BFC
-7C12
7C15
-7C1B
-7C35
-7C42
-7C44
-7C51
-7C56
-7C5D
-7C6D
-7C70
-7C74
-7C7B
-7C7C
-7C7E
-7C83
-7C86
-7C8E
-7C9C
7CA6
7CA7
-7CAC
7CAE
-7CB8
-7CC2
-7CC3
-7CC7
7CC9
7CCD
-7CD3
-7CDA
-7CE6
7CED
-7CF3
-7CF5
7CF9
7CFC
7D25
-7D4D
-7D5A
7D5D
7D89
-7D8B
-7D97
-7DA4
-7DA8
7DAB
7DB3
7DCD
7DCF
-7DD0
-7DD3
-7DD4
7DDC
-7DE4
-7DE5
-7DF5
-7DFD
-7DFE
-7E07
-7E27
-7E5B
-7E65
-7E67
-7E6C
7E6E
-7E7F
-7E8E
-7E92
-7E9F
-7EA4
-7EAC
-7EBA
-7EC7
-7ECF
-7EDF
-7F06
-7F37
-7F40
-7F41
7F47
7F49
7F4E
-7F52
-7F53
-7F71
7F78
-7F8F
-7F93
7F97
7FA3
-7FAE
-7FB4
-7FDD
-7FE7
-7FFA
-8002
-8008
-801D
-8020
-8025
-802E
-802F
-8031
-803B
-803C
-8054
-805B
8061
-8062
-8063
-8066
-8080
-809F
-80A7
80B6
-80B7
-80BC
80BD
80C6
-80E9
-80EC
-80F6
-8103
8107
-8109
-810C
-810E
-8112
-8114
8117
-811A
-812A
-8132
-8134
8137
-8142
-8148
-8156
-8159
-815A
-816D
-817C
-8184
-8193
81A5
-81AA
81B6
-81C1
-81C8
-81E4
81EF
-81F6
8218
-821A
8226
-8229
-822D
-823E
-8254
-8262
-8265
8276
-8279
-827A
-827B
-8287
82A6
82AA
-82BF
-82C4
-82CA
-82CF
-82D0
-82D8
-82E2
-82EE
82F7
-82F8
-82FC
-82FD
-82FF
-830B
8318
-831A
-831D
-833D
-8357
-8362
-8363
-8366
-836F
-8385
-8391
-839C
-83AC
-83B9
-83BE
-83CD
83D3
-83ED
-8405
-8414
-8416
8418
-841C
8420
-8421
-8424
-8426
-842E
-843E
-8448
-844A
-8453
-8455
-8458
-845C
-8462
-8464
8471
-8472
-847F
-8480
-8488
-8492
-8493
-8496
-84A3
84AD
84BD
-84BE
-84DA
-84DE
-84E1
84E2
-84E4
-84E5
-84F8
8503
-8505
-8510
-8533
8534
-8538
-8542
-854B
-854C
-8552
-855A
-855F
-856F
8570
-8573
-8597
-85C1
-85D6
-85E0
-85EE
-85FC
8602
-860D
-860F
-8610
-8614
-8616
-8628
862F
-8642
-8645
-866C
-8672
-867E
-8692
-86A0
-86AD
-86B2
86EF
-8770
-8771
-877D
8786
-878B
-878C
-87A5
-87A9
-87B1
-87C1
87CE
-87D6
-87DA
-87EE
-87F5
8804
-880F
-8818
-8827
882D
-8842
-8845
8846
-884F
885E
-8860
-8864
-8865
-886E
-8884
-8887
-888F
-8890
889C
-88A0
-88AE
-88B4
-88B5
-88BF
-88C5
88C7
88CF
-88E6
-88F5
-88FF
-8900
-8924
-8943
8947
-894D
-8954
-8965
-8977
-8980
8987
-8989
-898A
-8991
8994
89A5
89A7
-89A9
-89BC
-89C1
-89C6
-89E7
-8A1C
-8A29
-8A2B
-8A38
-8A3D
-8A49
-8A67
-8A7E
-8A90
8A94
-8A9C
-8AA9
-8AAF
-8AB4
-8ADA
-8AEA
-8B0C
-8B1F
-8B2D
-8B3F
-8B43
8B4C
-8B4D
-8B5E
-8B62
-8B69
8B81
8B83
8B90
-8B9B
-8BA0
-8BBE
-8BE2
-8C51
-8C9B
-8C9F
-8CAD
8CCD
-8CD4
-8CD6
8CDB
-8CE9
-8CEB
-8CF2
-8CF7
8D03
8D0B
-8D0C
-8D11
-8D12
-8D18
-8D1C
-8D1D
-8D7A
-8D82
-8DA6
-8DA9
-8DC0
-8DC3
-8DD4
-8E01
8E0E
-8E28
8E2A
8E2D
-8E3A
-8E46
8E4F
-8E68
-8E71
-8E75
-8E77
8E7E
8E80
-8EA7
8EAD
-8EB0
-8EB6
-8EB9
-8EBC
-8EC3
-8ECE
8EDA
8EE2
-8EE4
-8EED
8EF2
-8F19
8F2D
-8F30
-8F41
-8F4A
-8F5C
-8F66
-8F67
-8F6E
-8F93
-8FA0
-8FA5
-8FA7
-8FB3
8FB5
-8FB6
-8FB7
-8FB8
-8FB9
8FBA
8FBB
8FBC
-8FBE
-8FC1
-8FCA
-8FCC
-8FCF
-8FD0
-8FDA
8FF9
-9008
-9012
9033
-9037
-904C
9056
9061
-9064
-906C
90A8
-90AE
-90BB
-90C4
-9151
-9159
-915C
-915E
-9167
-9170
9176
-917C
-918C
-918E
-91A9
-91B6
-91BB
-91C4
-91D6
-91DF
-91E5
-91F6
-91FA
-91FE
9208
920E
-9213
-9221
-9228
922A
-922B
-9235
-923C
-9241
9244
9255
-9258
925D
-925F
9262
-926B
926E
-9277
-9281
-9284
-9289
-928F
-92AE
-92B1
92B9
-92BA
92BE
-92BF
-92D4
-92DB
-92E3
-92E5
-92EB
-92EC
-92F2
-92F3
-92F4
-92F6
-92FD
-9303
9307
-932C
-9330
-9331
9340
-9341
-9342
-9343
-9344
9345
9348
-935F
-9362
-9366
-9368
9369
-936B
-936E
-9373
-9374
-9378
-937D
-9381
9384
9385
-9386
9387
-9390
-939C
-93A0
93AD
-93B8
-93BB
-93BD
93BF
-93C6
-93CB
-93D3
-93DB
-93E0
93F0
-93F1
-93F3
-93F4
-9401
9404
-9408
-9417
-941B
-941D
-9424
-9425
9426
9427
-942D
-943E
-9442
-9443
-944D
9454
-9458
945B
9465
-9467
-946C
-9479
-947B
-9485
-949F
-94A2
-94C1
-94C3
-94DC
-94F6
-952D
-9547
-9578
-957F
-9585
-9596
-9597
9599
-95A0
95A2
-95A6
-95A7
95AA
-95E8
-95F4
-961D
-9633
-9638
-9641
-9645
-9656
-9669
-967B
-9681
-968F
9696
96A3
-96A5
-96B6
-96BD
-96F4
-9703
-971B
9721
-9731
-9736
-9740
-9741
9751
-9755
-9757
-975D
-975F
976D
-9771
-9787
-9789
-979B
-979F
-97B1
-97B2
-97B4
-97B8
-97BA
-97BD
-97BE
-97C0
-97C2
-97C8
-97D2
-97E0
-97E6
97EE
-97F2
97F5
-9814
-9815
-981F
-9823
-982E
-9833
9834
-9847
-984B
-9866
-9868
-986C
-9875
-98B4
98B7
-98B9
-98C3
-98C7
98C8
-98CA
-98CE
-98DC
-98DE
98E0
-98E1
-98E6
-98EC
-98F1
-98F5
-990E
-9919
991C
-9937
9938
-9939
-993B
-9940
-9942
994A
994D
-995D
9962
-9963
-999B
-99A4
-99AA
-99B8
-99BC
-99C4
99C5
-99DA
-99E0
99E1
-99E6
-99F5
-9A0C
9A10
-9A1F
-9A21
-9A26
-9A2F
-9A3B
-9A3C
-9A58
-9A5C
-9A63
-9A6C
-9A8F
-9AB2
-9AB6
-9ABA
-9ABD
-9AD7
-9AE0
-9AE2
-9AF4
-9AFF
-9B02
-9B09
-9B0F
-9B14
9B2A
9B2D
-9B34
-9B39
-9B40
-9B50
-9B69
-9B7F
9B81
-9B83
9B8B
-9B8D
9B8E
-9B8F
-9B97
-9B9D
-9B9F
-9BB0
-9BCF
-9BDD
-9BE9
9BED
9BF1
-9BF4
9BFF
9C02
-9C0A
9C0C
-9C10
-9C15
-9C1B
-9C1F
-9C20
-9C26
9C2F
9C35
9C3A
9C45
-9C4F
-9C53
9C5D
9C72
-9C7B
-9C7C
-9D02
-9D0C
-9D16
-9D21
9D34
-9D39
-9D44
-9D49
-9D4E
9D50
9D5E
-9D6D
-9D6E
-9D7C
-9D7E
-9D83
9D93
-9DA5
-9DAB
-9DBD
9DC0
9DC4
9DC9
9DD4
-9DFC
9E0A
9E0C
-9E0E
-9E18
-9E1C
-9E1F
-9E7B
-9E81
-9E84
-9E85
9E90
9E95
9E96
-9E98
-9E9E
-9EA2
-9EA6
-9EA8
9EAA
9EAB
-9EAC
9EAF
-9EB1
-9EBD
9EBF
-9EC1
-9EC4
-9EC6
-9EC7
-9EE2
-9EF1
-9EF8
-9EFE
-9F02
9F08
-9F17
9F26
-9F27
-9F39
-9F44
-9F45
-9F50
-9F53
-9F5A
9F62
-9F69
-9F7F
9F8E
-9F99
-9F9F
-9FA5
-20547
+200CA
+201A4
+201A9
+20325
+20341
+2070E
+20779
+20C41
+20C53
+20C65
+20C78
+20C96
+20CB5
+20CCF
+20D31
+20D71
+20D7E
+20D7F
+20D9C
+20DA7
+20E04
+20E09
+20E4C
+20E73
+20E76
+20E7A
+20E9D
+20EA2
+20ED7
+20EF9
+20F2D
+20F2E
+20F3B
+20F4C
+20FB4
+20FEA
+21014
+2105C
+2106F
+21075
+21076
+2107B
+210C1
+210D3
+2113D
+21145
+2114F
+2197C
+21A34
+21C2A
+21DF9
+220C7
+221A1
+22ACF
+22B43
+22BCA
+22C51
+22C55
+22C62
+22CB2
+22CC2
+22D4C
+22D67
+22D8D
+22DEE
+22F74
+23231
+23595
+236BA
+23CB7
+23E89
+23F80
+244D3
+24DB8
+24DEA
+24EA7
+2512B
+25148
+2517E
+25535
+25E49
+26258
+266DA
+267CC
+2688A
+269F2
+269FA
+27285
+27574
+27657
+27735
+2775E
+2789D
+2797A
+279A0
+27A3E
+27A59
+27D73
+28024
+280BD
+2815D
+28207
+282E2
+2836D
+289C0
+289DC
+28A0F
+28B46
+28B4E
+28CCA
+28CCD
+28CD2
+28D99
+28EE7
+294E5
+29720
+298D1
+29A4D
+29D98
+2A632
+2A65B
diff --git a/fc-list/Makefile.am b/fc-list/Makefile.am
index b2c499d2..c58540ec 100644
--- a/fc-list/Makefile.am
+++ b/fc-list/Makefile.am
@@ -29,7 +29,7 @@ SGML = ${FC_LIST_SRC}/fc-list.sgml
bin_PROGRAMS=fc-list
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS=fc-list.1
diff --git a/fc-list/Makefile.in b/fc-list/Makefile.in
index 4dc63212..16145cd1 100644
--- a/fc-list/Makefile.in
+++ b/fc-list/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-list$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-list
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_LIST_SRC = ${top_srcdir}/fc-list
SGML = ${FC_LIST_SRC}/fc-list.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS = fc-list.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-list.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-list$(EXEEXT): $(fc_list_OBJECTS) $(fc_list_DEPENDENCIES) $(EXTRA_fc_list_DEPENDENCIES)
@rm -f fc-list$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_list_OBJECTS) $(fc_list_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-list/fc-list.1 b/fc-list/fc-list.1
index 306ee239..6aa0de3c 100644
--- a/fc-list/fc-list.1
+++ b/fc-list/fc-list.1
@@ -4,7 +4,7 @@
fc-list \- list available fonts
.SH SYNOPSIS
.sp
-\fBfc-list\fR [ \fB-vVh\fR ] [ \fB--verbose\fR ] [ \fB [ -f \fIformat\fB ] [ --format \fIformat\fB ] \fR ] [ \fB--version\fR ] [ \fB--help\fR ]
+\fBfc-list\fR [ \fB-vVh\fR ] [ \fB--verbose\fR ] [ \fB [ -f \fIformat\fB ] [ --format \fIformat\fB ] \fR ] [ \fB [ -q ] [ --quiet ] \fR ] [ \fB--version\fR ] [ \fB--help\fR ]
[ \fB\fIpattern\fB [ \fIelement\fB\fI...\fB ] \fR ]
.SH "DESCRIPTION"
@@ -29,6 +29,9 @@ provided.
Format output according to the format specifier
\fIformat\fR\&.
.TP
+\fB-q\fR
+Suppress all normal output. returns 1 as the error code if no fonts matched.
+.TP
\fB-V\fR
Show version of the program and exit.
.TP
diff --git a/fc-list/fc-list.c b/fc-list/fc-list.c
index 5ad13331..f6c7282e 100644
--- a/fc-list/fc-list.c
+++ b/fc-list/fc-list.c
@@ -139,6 +139,11 @@ main (int argc, char **argv)
if (argv[i])
{
pat = FcNameParse ((FcChar8 *) argv[i]);
+ if (!pat)
+ {
+ fputs ("Unable to parse the pattern\n", stderr);
+ return 1;
+ }
while (argv[++i])
{
if (!os)
diff --git a/fc-list/fc-list.sgml b/fc-list/fc-list.sgml
index c4a82cd6..0eb704de 100644
--- a/fc-list/fc-list.sgml
+++ b/fc-list/fc-list.sgml
@@ -69,6 +69,10 @@ manpage.1: manpage.sgml
<arg><option>-f</option> <option><replaceable>format</replaceable></option></arg>
<arg><option>--format</option> <option><replaceable>format</replaceable></option></arg>
</group>
+ <group>
+ <arg><option>-q</option></arg>
+ <arg><option>--quiet</option></arg>
+ </group>
<arg><option>--version</option></arg>
<arg><option>--help</option></arg>
<sbr>
@@ -114,6 +118,14 @@ manpage.1: manpage.sgml
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>-q</option>
+ <option>--quiet</option>
+ </term>
+ <listitem>
+ <para>Suppress all normal output. returns 1 as the error code if no fonts matched.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>-V</option>
<option>--version</option>
</term>
diff --git a/fc-match/Makefile.am b/fc-match/Makefile.am
index 0e9e8fd0..84afb8b2 100644
--- a/fc-match/Makefile.am
+++ b/fc-match/Makefile.am
@@ -29,7 +29,7 @@ FC_MATCH_SRC=${top_srcdir}/fc-match
SGML = ${FC_MATCH_SRC}/fc-match.sgml
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS=fc-match.1
diff --git a/fc-match/Makefile.in b/fc-match/Makefile.in
index 95ecda93..ce4ebd2b 100644
--- a/fc-match/Makefile.in
+++ b/fc-match/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-match$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-match
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_MATCH_SRC = ${top_srcdir}/fc-match
SGML = ${FC_MATCH_SRC}/fc-match.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS = fc-match.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-match.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-match$(EXEEXT): $(fc_match_OBJECTS) $(fc_match_DEPENDENCIES) $(EXTRA_fc_match_DEPENDENCIES)
@rm -f fc-match$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_match_OBJECTS) $(fc_match_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-match/fc-match.c b/fc-match/fc-match.c
index 260f4043..f96c0094 100644
--- a/fc-match/fc-match.c
+++ b/fc-match/fc-match.c
@@ -146,6 +146,11 @@ main (int argc, char **argv)
if (argv[i])
{
pat = FcNameParse ((FcChar8 *) argv[i]);
+ if (!pat)
+ {
+ fputs ("Unable to parse the pattern\n", stderr);
+ return 1;
+ }
while (argv[++i])
{
if (!os)
diff --git a/fc-pattern/Makefile.am b/fc-pattern/Makefile.am
index 92b04339..c4562479 100644
--- a/fc-pattern/Makefile.am
+++ b/fc-pattern/Makefile.am
@@ -29,7 +29,7 @@ FC_PATTERN_SRC=${top_srcdir}/fc-pattern
SGML = ${FC_PATTERN_SRC}/fc-pattern.sgml
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS=fc-pattern.1
diff --git a/fc-pattern/Makefile.in b/fc-pattern/Makefile.in
index e843e8e1..00540062 100644
--- a/fc-pattern/Makefile.in
+++ b/fc-pattern/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-pattern$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-pattern
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_PATTERN_SRC = ${top_srcdir}/fc-pattern
SGML = ${FC_PATTERN_SRC}/fc-pattern.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
BUILT_MANS = fc-pattern.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-pattern.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-pattern$(EXEEXT): $(fc_pattern_OBJECTS) $(fc_pattern_DEPENDENCIES) $(EXTRA_fc_pattern_DEPENDENCIES)
@rm -f fc-pattern$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_pattern_OBJECTS) $(fc_pattern_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-pattern/fc-pattern.c b/fc-pattern/fc-pattern.c
index 3f066c1e..d2279cb3 100644
--- a/fc-pattern/fc-pattern.c
+++ b/fc-pattern/fc-pattern.c
@@ -137,6 +137,11 @@ main (int argc, char **argv)
if (argv[i])
{
pat = FcNameParse ((FcChar8 *) argv[i]);
+ if (!pat)
+ {
+ fputs ("Unable to parse the pattern\n", stderr);
+ return 1;
+ }
while (argv[++i])
{
if (!os)
diff --git a/fc-query/Makefile.am b/fc-query/Makefile.am
index b3ea1e61..73b3f11e 100644
--- a/fc-query/Makefile.am
+++ b/fc-query/Makefile.am
@@ -29,7 +29,7 @@ FC_QUERY_SRC=${top_srcdir}/fc-query
SGML = ${FC_QUERY_SRC}/fc-query.sgml
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS=fc-query.1
diff --git a/fc-query/Makefile.in b/fc-query/Makefile.in
index 8a924517..978879b4 100644
--- a/fc-query/Makefile.in
+++ b/fc-query/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-query$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-query
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_QUERY_SRC = ${top_srcdir}/fc-query
SGML = ${FC_QUERY_SRC}/fc-query.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS = fc-query.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-query.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-query$(EXEEXT): $(fc_query_OBJECTS) $(fc_query_DEPENDENCIES) $(EXTRA_fc_query_DEPENDENCIES)
@rm -f fc-query$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_query_OBJECTS) $(fc_query_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-scan/Makefile.am b/fc-scan/Makefile.am
index 20634050..471a42fb 100644
--- a/fc-scan/Makefile.am
+++ b/fc-scan/Makefile.am
@@ -29,7 +29,7 @@ FC_SCAN_SRC=${top_srcdir}/fc-scan
SGML = ${FC_SCAN_SRC}/fc-scan.sgml
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS=fc-scan.1
diff --git a/fc-scan/Makefile.in b/fc-scan/Makefile.in
index c1ebc254..2b1a1b46 100644
--- a/fc-scan/Makefile.in
+++ b/fc-scan/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-scan$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
subdir = fc-scan
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_SCAN_SRC = ${top_srcdir}/fc-scan
SGML = ${FC_SCAN_SRC}/fc-scan.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS = fc-scan.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-scan.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-scan$(EXEEXT): $(fc_scan_OBJECTS) $(fc_scan_DEPENDENCIES) $(EXTRA_fc_scan_DEPENDENCIES)
@rm -f fc-scan$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_scan_OBJECTS) $(fc_scan_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -549,9 +594,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fc-validate/Makefile.am b/fc-validate/Makefile.am
index 54edec29..782ceadb 100644
--- a/fc-validate/Makefile.am
+++ b/fc-validate/Makefile.am
@@ -29,7 +29,7 @@ FC_VALIDATE_SRC=${top_srcdir}/fc-validate
SGML = ${FC_VALIDATE_SRC}/fc-validate.sgml
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS=fc-validate.1
diff --git a/fc-validate/Makefile.in b/fc-validate/Makefile.in
index 5b21a639..cbe53827 100644
--- a/fc-validate/Makefile.in
+++ b/fc-validate/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -38,23 +38,51 @@
# PERFORMANCE OF THIS SOFTWARE.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
bin_PROGRAMS = fc-validate$(EXEEXT)
@USEDOCBOOK_TRUE@am__append_1 = $(man_MANS)
subdir = fc-validate
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -173,6 +202,23 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -216,6 +262,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -257,12 +305,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -286,7 +341,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -294,7 +348,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -319,23 +372,26 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
DOC2MAN = docbook2man
FC_VALIDATE_SRC = ${top_srcdir}/fc-validate
SGML = ${FC_VALIDATE_SRC}/fc-validate.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
BUILT_MANS = fc-validate.1
@ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
EXTRA_DIST = fc-validate.sgml $(BUILT_MANS)
@@ -384,10 +440,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -408,7 +466,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -421,6 +480,7 @@ clean-binPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fc-validate$(EXEEXT): $(fc_validate_OBJECTS) $(fc_validate_DEPENDENCIES) $(EXTRA_fc_validate_DEPENDENCIES)
@rm -f fc-validate$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fc_validate_OBJECTS) $(fc_validate_LDADD) $(LIBS)
@@ -438,14 +498,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -503,26 +563,15 @@ uninstall-man1:
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -534,15 +583,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -551,9 +596,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -570,19 +616,6 @@ distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
- @list='$(MANS)'; if test -n "$$list"; then \
- list=`for p in $$list; do \
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- if test -n "$$list" && \
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically 'make maintainer-clean' will remove them" >&2; \
- exit 1; \
- else :; fi; \
- else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -724,9 +757,9 @@ uninstall-man: uninstall-man1
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
- clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
@@ -736,7 +769,7 @@ uninstall-man: uninstall-man1
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-man uninstall-man1
diff --git a/fontconfig.pc.in b/fontconfig.pc.in
index 9ef2c273..fa00a72d 100644
--- a/fontconfig.pc.in
+++ b/fontconfig.pc.in
@@ -5,12 +5,14 @@ includedir=@includedir@
sysconfdir=@sysconfdir@
localstatedir=@localstatedir@
PACKAGE=@PACKAGE@
-confdir=@baseconfigdir@
+confdir=@BASECONFIGDIR@
cachedir=@fc_cachedir@
Name: Fontconfig
Description: Font configuration and customization library
Version: @VERSION@
+Requires: @PKGCONFIG_REQUIRES@
+Requires.private: @PKGCONFIG_REQUIRES_PRIVATELY@
Libs: -L${libdir} -lfontconfig
-Libs.private: @LIBXML2_LIBS@ @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@
-Cflags: -I${includedir}
+Libs.private: @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@ @LIBXML2_LIBS@
+Cflags: -I${includedir} @EXPAT_CFLAGS@ @FREETYPE_CFLAGS@ @ICONV_CFLAGS@ @LIBXML2_CFLAGS@
diff --git a/fontconfig.spec b/fontconfig.spec
index 1d9b9845..04c23a6d 100644
--- a/fontconfig.spec
+++ b/fontconfig.spec
@@ -4,7 +4,7 @@
Summary: Font configuration and customization library
Name: fontconfig
-Version: 2.10.91
+Version: 2.11.93
Release: 1
License: MIT
Group: System Environment/Libraries
diff --git a/fontconfig/Makefile.in b/fontconfig/Makefile.in
index 7be55da0..1f0eca4d 100644
--- a/fontconfig/Makefile.in
+++ b/fontconfig/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -15,23 +15,51 @@
@SET_MAKE@
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -51,15 +79,16 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = fontconfig
-DIST_COMMON = $(fontconfiginclude_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(fontconfiginclude_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -114,6 +143,23 @@ am__uninstall_files_from_dir = { \
}
am__installdirs = "$(DESTDIR)$(fontconfigincludedir)"
HEADERS = $(fontconfiginclude_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -157,6 +203,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -198,12 +246,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -227,7 +282,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -235,7 +289,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -260,19 +313,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
fontconfigincludedir = $(includedir)/fontconfig
fontconfig_headers = \
fontconfig.h \
@@ -341,26 +397,15 @@ uninstall-fontconfigincludeHEADERS:
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(fontconfigincludedir)'; $(am__uninstall_files_from_dir)
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -372,15 +417,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -389,9 +430,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -542,18 +584,19 @@ uninstall-am: uninstall-fontconfigincludeHEADERS
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool cscopelist ctags distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-fontconfigincludeHEADERS install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-fontconfigincludeHEADERS
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-fontconfigincludeHEADERS \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+ ps ps-am tags tags-am uninstall uninstall-am \
+ uninstall-fontconfigincludeHEADERS
-include $(top_srcdir)/git.mk
diff --git a/fontconfig/fcprivate.h b/fontconfig/fcprivate.h
index 18b8c08c..a6ee5c23 100644
--- a/fontconfig/fcprivate.h
+++ b/fontconfig/fcprivate.h
@@ -48,8 +48,9 @@
__o__ = va_arg (va, const char *); \
if (!__o__) \
break; \
- __v__.type = va_arg (va, FcType); \
+ __v__.type = va_arg (va, int); \
switch (__v__.type) { \
+ case FcTypeUnknown: \
case FcTypeVoid: \
goto _FcPatternVapBuild_bail1; \
case FcTypeInteger: \
@@ -76,6 +77,9 @@
case FcTypeLangSet: \
__v__.u.l = va_arg (va, const FcLangSet *); \
break; \
+ case FcTypeRange: \
+ __v__.u.r = va_arg (va, const FcRange *); \
+ break; \
} \
if (!FcPatternAdd (__p__, __o__, __v__, FcTrue)) \
goto _FcPatternVapBuild_bail1; \
diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
index 52e9438f..b14c9616 100644
--- a/fontconfig/fontconfig.h
+++ b/fontconfig/fontconfig.h
@@ -51,8 +51,8 @@ typedef int FcBool;
*/
#define FC_MAJOR 2
-#define FC_MINOR 10
-#define FC_REVISION 91
+#define FC_MINOR 11
+#define FC_REVISION 93
#define FC_VERSION ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
@@ -66,7 +66,7 @@ typedef int FcBool;
* it means multiple copies of the font information.
*/
-#define FC_CACHE_VERSION "3"
+#define FC_CACHE_VERSION "5"
#define FcTrue 1
#define FcFalse 0
@@ -75,7 +75,7 @@ typedef int FcBool;
#define FC_STYLE "style" /* String */
#define FC_SLANT "slant" /* Int */
#define FC_WEIGHT "weight" /* Int */
-#define FC_SIZE "size" /* Double */
+#define FC_SIZE "size" /* Range (double) */
#define FC_ASPECT "aspect" /* Double */
#define FC_PIXEL_SIZE "pixelsize" /* Double */
#define FC_SPACING "spacing" /* Int */
@@ -91,9 +91,10 @@ typedef int FcBool;
#define FC_FILE "file" /* String */
#define FC_INDEX "index" /* Int */
#define FC_FT_FACE "ftface" /* FT_Face */
-#define FC_RASTERIZER "rasterizer" /* String */
+#define FC_RASTERIZER "rasterizer" /* String (deprecated) */
#define FC_OUTLINE "outline" /* Bool */
#define FC_SCALABLE "scalable" /* Bool */
+#define FC_COLOR "color" /* Bool */
#define FC_SCALE "scale" /* double */
#define FC_DPI "dpi" /* double */
#define FC_RGBA "rgba" /* Int */
@@ -112,7 +113,11 @@ typedef int FcBool;
#define FC_EMBEDDED_BITMAP "embeddedbitmap" /* Bool - true to enable embedded bitmaps */
#define FC_DECORATIVE "decorative" /* Bool - true if style is a decorative variant */
#define FC_LCD_FILTER "lcdfilter" /* Int */
+#define FC_FONT_FEATURES "fontfeatures" /* String */
#define FC_NAMELANG "namelang" /* String RFC 3866 langs */
+#define FC_PRGNAME "prgname" /* String */
+#define FC_HASH "hash" /* String (deprecated) */
+#define FC_POSTSCRIPT_NAME "postscriptname" /* String */
#define FC_CACHE_SUFFIX ".cache-" FC_CACHE_VERSION
#define FC_DIR_CACHE_FILE "fonts.cache-" FC_CACHE_VERSION
@@ -127,6 +132,8 @@ typedef int FcBool;
#define FC_WEIGHT_EXTRALIGHT 40
#define FC_WEIGHT_ULTRALIGHT FC_WEIGHT_EXTRALIGHT
#define FC_WEIGHT_LIGHT 50
+#define FC_WEIGHT_DEMILIGHT 55
+#define FC_WEIGHT_SEMILIGHT FC_WEIGHT_DEMILIGHT
#define FC_WEIGHT_BOOK 75
#define FC_WEIGHT_REGULAR 80
#define FC_WEIGHT_NORMAL FC_WEIGHT_REGULAR
@@ -181,6 +188,7 @@ typedef int FcBool;
#define FC_LCD_LEGACY 3
typedef enum _FcType {
+ FcTypeUnknown = -1,
FcTypeVoid,
FcTypeInteger,
FcTypeDouble,
@@ -189,7 +197,8 @@ typedef enum _FcType {
FcTypeMatrix,
FcTypeCharSet,
FcTypeFTFace,
- FcTypeLangSet
+ FcTypeLangSet,
+ FcTypeRange
} FcType;
typedef struct _FcMatrix {
@@ -226,6 +235,8 @@ typedef struct _FcPattern FcPattern;
typedef struct _FcLangSet FcLangSet;
+typedef struct _FcRange FcRange;
+
typedef struct _FcValue {
FcType type;
union {
@@ -237,6 +248,7 @@ typedef struct _FcValue {
const FcCharSet *c;
void *f;
const FcLangSet *l;
+ const FcRange *r;
} u;
} FcValue;
@@ -417,6 +429,13 @@ FcConfigSubstitute (FcConfig *config,
FcPattern *p,
FcMatchKind kind);
+FcPublic const FcChar8 *
+FcConfigGetSysRoot (const FcConfig *config);
+
+FcPublic void
+FcConfigSetSysRoot (FcConfig *config,
+ const FcChar8 *sysroot);
+
/* fccharset.c */
FcPublic FcCharSet*
FcCharSetCreate (void);
@@ -529,6 +548,9 @@ FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
FcPublic FcCache *
FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file);
+
+FcPublic FcCache *
+FcDirCacheRescan (const FcChar8 *dir, FcConfig *config);
FcPublic FcCache *
FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config);
@@ -838,6 +860,9 @@ FcPatternAddBool (FcPattern *p, const char *object, FcBool b);
FcPublic FcBool
FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls);
+FcPublic FcBool
+FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r);
+
FcPublic FcResult
FcPatternGetInteger (const FcPattern *p, const char *object, int n, int *i);
@@ -859,6 +884,9 @@ FcPatternGetBool (const FcPattern *p, const char *object, int n, FcBool *b);
FcPublic FcResult
FcPatternGetLangSet (const FcPattern *p, const char *object, int n, FcLangSet **ls);
+FcPublic FcResult
+FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r);
+
FcPublic FcPattern *
FcPatternVaBuild (FcPattern *p, va_list va);
@@ -868,6 +896,30 @@ FcPatternBuild (FcPattern *p, ...) FC_ATTRIBUTE_SENTINEL(0);
FcPublic FcChar8 *
FcPatternFormat (FcPattern *pat, const FcChar8 *format);
+/* fcrange.c */
+FcPublic FcRange *
+FcRangeCreateDouble (double begin, double end);
+
+FcPublic FcRange *
+FcRangeCreateInteger (FcChar32 begin, FcChar32 end);
+
+FcPublic void
+FcRangeDestroy (FcRange *range);
+
+FcPublic FcRange *
+FcRangeCopy (const FcRange *r);
+
+FcPublic FcBool
+FcRangeGetDouble(const FcRange *range, double *begin, double *end);
+
+/* fcweight.c */
+
+FcPublic int
+FcWeightFromOpenType (int ot_weight);
+
+FcPublic int
+FcWeightToOpenType (int fc_weight);
+
/* fcstr.c */
FcPublic FcChar8 *
@@ -962,6 +1014,9 @@ FcStrSetDestroy (FcStrSet *set);
FcPublic FcStrList *
FcStrListCreate (FcStrSet *set);
+FcPublic void
+FcStrListFirst (FcStrList *list);
+
FcPublic FcChar8 *
FcStrListNext (FcStrList *list);
diff --git a/fonts.conf.in b/fonts.conf.in
index 6a8753d0..7c16a707 100644
--- a/fonts.conf.in
+++ b/fonts.conf.in
@@ -79,72 +79,6 @@
<config>
<!--
- These are the default Unicode chars that are expected to be blank
- in fonts. All other blank chars are assumed to be broken and
- won't appear in the resulting charsets
- -->
- <blank>
- <int>0x0020</int> <!-- SPACE -->
- <int>0x00A0</int> <!-- NO-BREAK SPACE -->
- <int>0x00AD</int> <!-- SOFT HYPHEN -->
- <int>0x034F</int> <!-- COMBINING GRAPHEME JOINER -->
- <int>0x0600</int> <!-- ARABIC NUMBER SIGN -->
- <int>0x0601</int> <!-- ARABIC SIGN SANAH -->
- <int>0x0602</int> <!-- ARABIC FOOTNOTE MARKER -->
- <int>0x0603</int> <!-- ARABIC SIGN SAFHA -->
- <int>0x06DD</int> <!-- ARABIC END OF AYAH -->
- <int>0x070F</int> <!-- SYRIAC ABBREVIATION MARK -->
- <int>0x115F</int> <!-- HANGUL CHOSEONG FILLER -->
- <int>0x1160</int> <!-- HANGUL JUNGSEONG FILLER -->
- <int>0x1680</int> <!-- OGHAM SPACE MARK -->
- <int>0x17B4</int> <!-- KHMER VOWEL INHERENT AQ -->
- <int>0x17B5</int> <!-- KHMER VOWEL INHERENT AA -->
- <int>0x180E</int> <!-- MONGOLIAN VOWEL SEPARATOR -->
- <int>0x2000</int> <!-- EN QUAD -->
- <int>0x2001</int> <!-- EM QUAD -->
- <int>0x2002</int> <!-- EN SPACE -->
- <int>0x2003</int> <!-- EM SPACE -->
- <int>0x2004</int> <!-- THREE-PER-EM SPACE -->
- <int>0x2005</int> <!-- FOUR-PER-EM SPACE -->
- <int>0x2006</int> <!-- SIX-PER-EM SPACE -->
- <int>0x2007</int> <!-- FIGURE SPACE -->
- <int>0x2008</int> <!-- PUNCTUATION SPACE -->
- <int>0x2009</int> <!-- THIN SPACE -->
- <int>0x200A</int> <!-- HAIR SPACE -->
- <int>0x200B</int> <!-- ZERO WIDTH SPACE -->
- <int>0x200C</int> <!-- ZERO WIDTH NON-JOINER -->
- <int>0x200D</int> <!-- ZERO WIDTH JOINER -->
- <int>0x200E</int> <!-- LEFT-TO-RIGHT MARK -->
- <int>0x200F</int> <!-- RIGHT-TO-LEFT MARK -->
- <int>0x2028</int> <!-- LINE SEPARATOR -->
- <int>0x2029</int> <!-- PARAGRAPH SEPARATOR -->
- <int>0x202A</int> <!-- LEFT-TO-RIGHT EMBEDDING -->
- <int>0x202B</int> <!-- RIGHT-TO-LEFT EMBEDDING -->
- <int>0x202C</int> <!-- POP DIRECTIONAL FORMATTING -->
- <int>0x202D</int> <!-- LEFT-TO-RIGHT OVERRIDE -->
- <int>0x202E</int> <!-- RIGHT-TO-LEFT OVERRIDE -->
- <int>0x202F</int> <!-- NARROW NO-BREAK SPACE -->
- <int>0x205F</int> <!-- MEDIUM MATHEMATICAL SPACE -->
- <int>0x2060</int> <!-- WORD JOINER -->
- <int>0x2061</int> <!-- FUNCTION APPLICATION -->
- <int>0x2062</int> <!-- INVISIBLE TIMES -->
- <int>0x2063</int> <!-- INVISIBLE SEPARATOR -->
- <int>0x206A</int> <!-- INHIBIT SYMMETRIC SWAPPING -->
- <int>0x206B</int> <!-- ACTIVATE SYMMETRIC SWAPPING -->
- <int>0x206C</int> <!-- INHIBIT ARABIC FORM SHAPING -->
- <int>0x206D</int> <!-- ACTIVATE ARABIC FORM SHAPING -->
- <int>0x206E</int> <!-- NATIONAL DIGIT SHAPES -->
- <int>0x206F</int> <!-- NOMINAL DIGIT SHAPES -->
- <int>0x2800</int> <!-- BRAILLE PATTERN BLANK -->
- <int>0x3000</int> <!-- IDEOGRAPHIC SPACE -->
- <int>0x3164</int> <!-- HANGUL FILLER -->
- <int>0xFEFF</int> <!-- ZERO WIDTH NO-BREAK SPACE -->
- <int>0xFFA0</int> <!-- HALFWIDTH HANGUL FILLER -->
- <int>0xFFF9</int> <!-- INTERLINEAR ANNOTATION ANCHOR -->
- <int>0xFFFA</int> <!-- INTERLINEAR ANNOTATION SEPARATOR -->
- <int>0xFFFB</int> <!-- INTERLINEAR ANNOTATION TERMINATOR -->
- </blank>
-<!--
Rescan configuration every 30 seconds when FcFontSetList is called
-->
<rescan>
diff --git a/fonts.dtd b/fonts.dtd
index def8c216..479f2c0f 100644
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -140,7 +140,7 @@
if 'target' is 'font', execute the match on the result of a font
selection.
-->
-<!ELEMENT match (test*, edit*)>
+<!ELEMENT match (test|edit)+>
<!ATTLIST match
target (pattern|font|scan) "pattern">
@@ -189,7 +189,7 @@
<!ELEMENT edit (%expr;)*>
<!ATTLIST edit
name CDATA #REQUIRED
- mode (assign|assign_replace|prepend|append|prepend_first|append_last) "assign"
+ mode (assign|assign_replace|prepend|append|prepend_first|append_last|delete|delete_all) "assign"
binding (weak|strong|same) "weak">
<!--
diff --git a/m4/ac_check_symbol.m4 b/m4/ac_check_symbol.m4
new file mode 100644
index 00000000..41c15286
--- /dev/null
+++ b/m4/ac_check_symbol.m4
@@ -0,0 +1,48 @@
+dnl @synopsis AC_CHECK_SYMBOL(SYMBOL, HEADER... [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])
+dnl
+dnl a wrapper around AC_EGREP_HEADER the shellvar $ac_found will hold
+dnl the HEADER-name that had been containing the symbol. This value is
+dnl shown to the user.
+dnl
+dnl @category C
+dnl @author Guido U. Draheim <guidod@gmx.de>
+dnl @version 2006-10-13
+dnl @license GPLWithACException
+
+AC_DEFUN([AC_CHECK_SYMBOL],
+[AC_MSG_CHECKING([for $1 in $2])
+AC_CACHE_VAL(ac_cv_func_$1,
+[AC_REQUIRE_CPP()dnl
+changequote(, )dnl
+symbol="[^a-zA-Z_0-9]$1[^a-zA-Z_0-9]"
+changequote([, ])dnl
+ac_found=no
+for ac_header in $2 ; do
+ ac_safe=`echo "$ac_header" | sed 'y%./+-%__p_%' `
+ if test $ac_found != "yes" ; then
+ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ AC_EGREP_HEADER( $symbol, $ac_header, [ac_found="$ac_header"] )
+ fi
+ fi
+done
+if test "$ac_found" != "no" ; then
+ AC_MSG_RESULT($ac_found)
+ ifelse([$3], , :, [$3])
+else
+ AC_MSG_RESULT(no)
+ ifelse([$4], , , [$4
+])dnl
+fi
+])])
+
+dnl AC_CHECK_SYMBOLS( symbol..., header... [, action-if-found [, action-if-not-found]])
+AC_DEFUN([AC_CHECK_SYMBOLS],
+[for ac_func in $1
+do
+P4_CHECK_SYMBOL($ac_func, $2,
+[changequote(, )dnl
+ ac_tr_func=HAVE_`echo $ac_func | sed -e 'y:abcdefghijklmnopqrstuvwxyz:ABCDEFGHIJKLMNOPQRSTUVWXYZ:' -e 's:[[^A-Z0-9]]:_:'`
+changequote([, ])dnl
+ AC_DEFINE_UNQUOTED($ac_tr_func) $2], $3)dnl
+done
+])
diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4
index d90de34d..e77541ce 100644
--- a/m4/ax_pthread.m4
+++ b/m4/ax_pthread.m4
@@ -82,7 +82,7 @@
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
-#serial 18
+#serial 21
AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
AC_DEFUN([AX_PTHREAD], [
@@ -103,8 +103,8 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
save_LIBS="$LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
- AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
- AC_MSG_RESULT($ax_pthread_ok)
+ AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
+ AC_MSG_RESULT([$ax_pthread_ok])
if test x"$ax_pthread_ok" = xno; then
PTHREAD_LIBS=""
PTHREAD_CFLAGS=""
@@ -162,8 +162,27 @@ case ${host_os} in
darwin*)
ax_pthread_flags="-pthread $ax_pthread_flags"
;;
+ netbsd*)
+ # use libc stubs, don't link against libpthread, to allow
+ # dynamic loading
+ ax_pthread_flags=""
+ ;;
esac
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
+ [AC_MSG_RESULT([yes])],
+ [ax_pthread_extra_flags=
+ AC_MSG_RESULT([no])])
+CFLAGS="$save_CFLAGS"
+
if test x"$ax_pthread_ok" = xno; then
for flag in $ax_pthread_flags; do
@@ -178,7 +197,7 @@ for flag in $ax_pthread_flags; do
;;
pthread-config)
- AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
+ AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
if test x"$ax_pthread_config" = xno; then continue; fi
PTHREAD_CFLAGS="`pthread-config --cflags`"
PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
@@ -193,7 +212,7 @@ for flag in $ax_pthread_flags; do
save_LIBS="$LIBS"
save_CFLAGS="$CFLAGS"
LIBS="$PTHREAD_LIBS $LIBS"
- CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
# Check for various functions. We must include pthread.h,
# since some functions may be macros. (On the Sequent, we
@@ -219,7 +238,7 @@ for flag in $ax_pthread_flags; do
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
- AC_MSG_RESULT($ax_pthread_ok)
+ AC_MSG_RESULT([$ax_pthread_ok])
if test "x$ax_pthread_ok" = xyes; then
break;
fi
@@ -245,9 +264,9 @@ if test "x$ax_pthread_ok" = xyes; then
[attr_name=$attr; break],
[])
done
- AC_MSG_RESULT($attr_name)
+ AC_MSG_RESULT([$attr_name])
if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
- AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
+ AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
[Define to necessary symbol if this constant
uses a non-standard name on your system.])
fi
@@ -261,45 +280,54 @@ if test "x$ax_pthread_ok" = xyes; then
if test "$GCC" = "yes"; then
flag="-D_REENTRANT"
else
+ # TODO: What about Clang on Solaris?
flag="-mt -D_REENTRANT"
fi
;;
esac
- AC_MSG_RESULT(${flag})
+ AC_MSG_RESULT([$flag])
if test "x$flag" != xno; then
PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
fi
AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
- ax_cv_PTHREAD_PRIO_INHERIT, [
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([[#include <pthread.h>]], [[int i = PTHREAD_PRIO_INHERIT;]])],
+ [ax_cv_PTHREAD_PRIO_INHERIT], [
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
+ [[int i = PTHREAD_PRIO_INHERIT;]])],
[ax_cv_PTHREAD_PRIO_INHERIT=yes],
[ax_cv_PTHREAD_PRIO_INHERIT=no])
])
AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
- AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.]))
+ [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
- # More AIX lossage: must compile with xlc_r or cc_r
- if test x"$GCC" != xyes; then
- AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
- else
- PTHREAD_CC=$CC
+ # More AIX lossage: compile with *_r variant
+ if test "x$GCC" != xyes; then
+ case $host_os in
+ aix*)
+ AS_CASE(["x/$CC"],
+ [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
+ [#handle absolute path differently from PATH based program lookup
+ AS_CASE(["x$CC"],
+ [x/*],
+ [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
+ [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
+ ;;
+ esac
fi
-else
- PTHREAD_CC="$CC"
fi
-AC_SUBST(PTHREAD_LIBS)
-AC_SUBST(PTHREAD_CFLAGS)
-AC_SUBST(PTHREAD_CC)
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
+AC_SUBST([PTHREAD_LIBS])
+AC_SUBST([PTHREAD_CFLAGS])
+AC_SUBST([PTHREAD_CC])
# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
if test x"$ax_pthread_ok" = xyes; then
- ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
+ ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
:
else
ax_pthread_ok=no
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 56666f0e..f12cfdf0 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -1312,7 +1312,7 @@ ia64-*-hpux*)
rm -rf conftest*
;;
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
@@ -1326,7 +1326,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
x86_64-*linux*)
LD="${LD-ld} -m elf_i386"
;;
- ppc64-*linux*|powerpc64-*linux*)
+ powerpc64le-*linux*)
+ LD="${LD-ld} -m elf32lppclinux"
+ ;;
+ powerpc64-*linux*)
LD="${LD-ld} -m elf32ppclinux"
;;
s390x-*linux*)
@@ -1345,7 +1348,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
x86_64-*linux*)
LD="${LD-ld} -m elf_x86_64"
;;
- ppc*-*linux*|powerpc*-*linux*)
+ powerpcle-*linux*)
+ LD="${LD-ld} -m elf64lppc"
+ ;;
+ powerpc-*linux*)
LD="${LD-ld} -m elf64ppc"
;;
s390*-*linux*|s390*-*tpf*)
diff --git a/m4/pkg.m4 b/m4/pkg.m4
new file mode 100644
index 00000000..c5b26b52
--- /dev/null
+++ b/m4/pkg.m4
@@ -0,0 +1,214 @@
+# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
+# serial 1 (pkg-config-0.24)
+#
+# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# PKG_PROG_PKG_CONFIG([MIN-VERSION])
+# ----------------------------------
+AC_DEFUN([PKG_PROG_PKG_CONFIG],
+[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
+m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
+m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
+AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
+AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
+AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
+
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+ AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
+fi
+if test -n "$PKG_CONFIG"; then
+ _pkg_min_version=m4_default([$1], [0.9.0])
+ AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
+ if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ PKG_CONFIG=""
+ fi
+fi[]dnl
+])# PKG_PROG_PKG_CONFIG
+
+# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+#
+# Check to see whether a particular set of modules exists. Similar
+# to PKG_CHECK_MODULES(), but does not set variables or print errors.
+#
+# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+# only at the first occurence in configure.ac, so if the first place
+# it's called might be skipped (such as if it is within an "if", you
+# have to call PKG_CHECK_EXISTS manually
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_EXISTS],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+if test -n "$PKG_CONFIG" && \
+ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
+ m4_default([$2], [:])
+m4_ifvaln([$3], [else
+ $3])dnl
+fi])
+
+# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+# ---------------------------------------------
+m4_define([_PKG_CONFIG],
+[if test -n "$$1"; then
+ pkg_cv_[]$1="$$1"
+ elif test -n "$PKG_CONFIG"; then
+ PKG_CHECK_EXISTS([$3],
+ [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes ],
+ [pkg_failed=yes])
+ else
+ pkg_failed=untried
+fi[]dnl
+])# _PKG_CONFIG
+
+# _PKG_SHORT_ERRORS_SUPPORTED
+# -----------------------------
+AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi[]dnl
+])# _PKG_SHORT_ERRORS_SUPPORTED
+
+
+# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+# [ACTION-IF-NOT-FOUND])
+#
+#
+# Note that if there is a possibility the first call to
+# PKG_CHECK_MODULES might not happen, you should be sure to include an
+# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
+#
+#
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_MODULES],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
+AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
+
+pkg_failed=no
+AC_MSG_CHECKING([for $1])
+
+_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
+_PKG_CONFIG([$1][_LIBS], [libs], [$2])
+
+m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
+and $1[]_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.])
+
+if test $pkg_failed = yes; then
+ AC_MSG_RESULT([no])
+ _PKG_SHORT_ERRORS_SUPPORTED
+ if test $_pkg_short_errors_supported = yes; then
+ $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
+ else
+ $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
+
+ m4_default([$4], [AC_MSG_ERROR(
+[Package requirements ($2) were not met:
+
+$$1_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+_PKG_TEXT])[]dnl
+ ])
+elif test $pkg_failed = untried; then
+ AC_MSG_RESULT([no])
+ m4_default([$4], [AC_MSG_FAILURE(
+[The pkg-config script could not be found or is too old. Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+_PKG_TEXT
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
+ ])
+else
+ $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
+ $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
+ AC_MSG_RESULT([yes])
+ $3
+fi[]dnl
+])# PKG_CHECK_MODULES
+
+
+# PKG_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable pkgconfigdir as the location where a module
+# should install pkg-config .pc files. By default the directory is
+# $libdir/pkgconfig, but the default can be changed by passing
+# DIRECTORY. The user can override through the --with-pkgconfigdir
+# parameter.
+AC_DEFUN([PKG_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+ [pkg-config installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([pkgconfigdir],
+ [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
+ [with_pkgconfigdir=]pkg_default)
+AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_INSTALLDIR
+
+
+# PKG_NOARCH_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable noarch_pkgconfigdir as the location where a
+# module should install arch-independent pkg-config .pc files. By
+# default the directory is $datadir/pkgconfig, but the default can be
+# changed by passing DIRECTORY. The user can override through the
+# --with-noarch-pkgconfigdir parameter.
+AC_DEFUN([PKG_NOARCH_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+ [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([noarch-pkgconfigdir],
+ [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
+ [with_noarch_pkgconfigdir=]pkg_default)
+AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_NOARCH_INSTALLDIR
+
+
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
+AC_DEFUN([PKG_CHECK_VAR],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
+
+_PKG_CONFIG([$1], [variable="][$3]["], [$2])
+AS_VAR_COPY([$1], [pkg_cv_][$1])
+
+AS_VAR_IF([$1], [""], [$5], [$4])dnl
+])# PKG_CHECK_VAR
diff --git a/missing b/missing
index 9a556482..db98974f 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2012-01-06.18; # UTC
+scriptversion=2013-10-28.13; # UTC
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -29,61 +29,33 @@ if test $# -eq 0; then
exit 1
fi
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, 'missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
- configure_ac=configure.ac
-else
- configure_ac=configure.in
-fi
+case $1 in
-msg="missing on your system"
+ --is-lightweight)
+ # Used by our autoconf macros to check whether the available missing
+ # script is modern enough.
+ exit 0
+ ;;
-case $1 in
---run)
- # Try to run requested program, and just exit if it succeeds.
- run=
- shift
- "$@" && exit 0
- # Exit code 63 means version mismatch. This often happens
- # when the user try to use an ancient version of a tool on
- # a file that requires a minimum version. In this case we
- # we should proceed has if the program had been absent, or
- # if --run hadn't been passed.
- if test $? = 63; then
- run=:
- msg="probably too old"
- fi
- ;;
+ --run)
+ # Back-compat with the calling convention used by older automake.
+ shift
+ ;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
-Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
- --run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
- aclocal touch file 'aclocal.m4'
- autoconf touch file 'configure'
- autoheader touch file 'config.h.in'
- autom4te touch the output file, or create a stub one
- automake touch all 'Makefile.in' files
- bison create 'y.tab.[ch]', if possible, from existing .[ch]
- flex create 'lex.yy.c', if possible, from existing .c
- help2man touch the output file
- lex create 'lex.yy.c', if possible, from existing .c
- makeinfo touch the output file
- yacc create 'y.tab.[ch]', if possible, from existing .[ch]
+ aclocal autoconf autoheader autom4te automake makeinfo
+ bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
@@ -98,228 +70,141 @@ Send bug reports to <bug-automake@gnu.org>."
;;
-*)
- echo 1>&2 "$0: Unknown '$1' option"
+ echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
-# normalize program name to check for.
-program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
-# Now exit if we have it, but it failed. Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program). This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
- lex*|yacc*)
- # Not GNU programs, they don't have --version.
- ;;
-
- *)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
- # Could not run --version or --help. This is probably someone
- # running '$TOOL --version' or '$TOOL --help' to check whether
- # $TOOL exists and not knowing $TOOL uses missing.
- exit 1
- fi
- ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
- aclocal*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acinclude.m4' or '${configure_ac}'. You might want
- to install the Automake and Perl packages. Grab them from
- any GNU archive site."
- touch aclocal.m4
- ;;
-
- autoconf*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified '${configure_ac}'. You might want to install the
- Autoconf and GNU m4 packages. Grab them from any GNU
- archive site."
- touch configure
- ;;
-
- autoheader*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acconfig.h' or '${configure_ac}'. You might want
- to install the Autoconf and GNU m4 packages. Grab them
- from any GNU archive site."
- files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
- case $f in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
- esac
- done
- touch $touch_files
- ;;
-
- automake*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
- You might want to install the Automake and Perl packages.
- Grab them from any GNU archive site."
- find . -type f -name Makefile.am -print |
- sed 's/\.am$/.in/' |
- while read f; do touch "$f"; done
- ;;
-
- autom4te*)
- echo 1>&2 "\
-WARNING: '$1' is needed, but is $msg.
- You might have modified some files without having the
- proper tools for further handling them.
- You can get '$1' as part of Autoconf from any GNU
- archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo "#! /bin/sh"
- echo "# Created by GNU Automake missing as a replacement of"
- echo "# $ $@"
- echo "exit 0"
- chmod +x $file
- exit 1
- fi
- ;;
-
- bison*|yacc*)
- echo 1>&2 "\
-WARNING: '$1' $msg. You should only need it if
- you modified a '.y' file. You may need the Bison package
- in order for those modifications to take effect. You can get
- Bison from any GNU archive site."
- rm -f y.tab.c y.tab.h
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
- if test ! -f y.tab.h; then
- echo >y.tab.h
- fi
- if test ! -f y.tab.c; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-
- lex*|flex*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.l' file. You may need the Flex package
- in order for those modifications to take effect. You can get
- Flex from any GNU archive site."
- rm -f lex.yy.c
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
- if test ! -f lex.yy.c; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-
- help2man*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a dependency of a manual page. You may need the
- Help2man package in order for those modifications to take
- effect. You can get Help2man from any GNU archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo ".ab help2man is required to generate this page"
- exit $?
- fi
- ;;
-
- makeinfo*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.texi' or '.texinfo' file, or any other file
- indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy 'make' (AIX,
- DU, IRIX). You might want to install the Texinfo package or
- the GNU make package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '
- /^@setfilename/{
- s/.* \([^ ]*\) *$/\1/
- p
- q
- }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
- fi
- # If the file does not exist, the user really needs makeinfo;
- # let's fail without touching anything.
- test -f $file || exit 1
- touch $file
- ;;
+# Run the given program, remember its exit status.
+"$@"; st=$?
+
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
+
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch. This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+ msg="probably too old"
+elif test $st -eq 127; then
+ # Program was missing.
+ msg="missing on your system"
+else
+ # Program was found and executed, but failed. Give up.
+ exit $st
+fi
- *)
- echo 1>&2 "\
-WARNING: '$1' is needed, and is $msg.
- You might have modified some files without having the
- proper tools for further handling them. Check the 'README' file,
- it often tells you about the needed prerequisites for installing
- this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing '$1' program."
- exit 1
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+ case $1 in
+ aclocal|automake)
+ echo "The '$1' program is part of the GNU Automake package:"
+ echo "<$gnu_software_URL/automake>"
+ echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+ echo "<$gnu_software_URL/autoconf>"
+ echo "<$gnu_software_URL/m4/>"
+ echo "<$perl_URL>"
+ ;;
+ autoconf|autom4te|autoheader)
+ echo "The '$1' program is part of the GNU Autoconf package:"
+ echo "<$gnu_software_URL/autoconf/>"
+ echo "It also requires GNU m4 and Perl in order to run:"
+ echo "<$gnu_software_URL/m4/>"
+ echo "<$perl_URL>"
+ ;;
+ esac
+}
+
+give_advice ()
+{
+ # Normalize program name to check for.
+ normalized_program=`echo "$1" | sed '
+ s/^gnu-//; t
+ s/^gnu//; t
+ s/^g//; t'`
+
+ printf '%s\n' "'$1' is $msg."
+
+ configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+ case $normalized_program in
+ autoconf*)
+ echo "You should only need it if you modified 'configure.ac',"
+ echo "or m4 files included by it."
+ program_details 'autoconf'
+ ;;
+ autoheader*)
+ echo "You should only need it if you modified 'acconfig.h' or"
+ echo "$configure_deps."
+ program_details 'autoheader'
+ ;;
+ automake*)
+ echo "You should only need it if you modified 'Makefile.am' or"
+ echo "$configure_deps."
+ program_details 'automake'
+ ;;
+ aclocal*)
+ echo "You should only need it if you modified 'acinclude.m4' or"
+ echo "$configure_deps."
+ program_details 'aclocal'
+ ;;
+ autom4te*)
+ echo "You might have modified some maintainer files that require"
+ echo "the 'autom4te' program to be rebuilt."
+ program_details 'autom4te'
+ ;;
+ bison*|yacc*)
+ echo "You should only need it if you modified a '.y' file."
+ echo "You may want to install the GNU Bison package:"
+ echo "<$gnu_software_URL/bison/>"
+ ;;
+ lex*|flex*)
+ echo "You should only need it if you modified a '.l' file."
+ echo "You may want to install the Fast Lexical Analyzer package:"
+ echo "<$flex_URL>"
+ ;;
+ help2man*)
+ echo "You should only need it if you modified a dependency" \
+ "of a man page."
+ echo "You may want to install the GNU Help2man package:"
+ echo "<$gnu_software_URL/help2man/>"
;;
-esac
-
-exit 0
+ makeinfo*)
+ echo "You should only need it if you modified a '.texi' file, or"
+ echo "any other file indirectly affecting the aspect of the manual."
+ echo "You might want to install the Texinfo package:"
+ echo "<$gnu_software_URL/texinfo/>"
+ echo "The spurious makeinfo call might also be the consequence of"
+ echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+ echo "want to install GNU make:"
+ echo "<$gnu_software_URL/make/>"
+ ;;
+ *)
+ echo "You might have modified some files without having the proper"
+ echo "tools for further handling them. Check the 'README' file, it"
+ echo "often tells you about the needed prerequisites for installing"
+ echo "this package. You may also peek at any GNU archive site, in"
+ echo "case some other package contains this missing '$1' program."
+ ;;
+ esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+ -e '2,$s/^/ /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/src/Makefile.am b/src/Makefile.am
index dba42065..3757cf8f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -31,8 +31,9 @@ fontconfig_def_dependency = fontconfig.def
# gcc import library install/uninstall
-install-libtool-import-lib:
- $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
+install-libtool-import-lib: libfontconfig.la
+ $(MKDIR_P) $(DESTDIR)$(libdir)
+ $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)/libfontconfig.dll.a
$(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
uninstall-libtool-import-lib:
@@ -69,7 +70,7 @@ uninstall-ms-import-lib:
endif
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(top_srcdir) \
-I$(top_srcdir)/src \
$(FREETYPE_CFLAGS) \
@@ -115,7 +116,7 @@ fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
fcobjshash.h: fcobjshash.gperf
- $(AM_V_GEN) $(top_srcdir)/missing --run gperf -m 100 $< > $@.tmp && \
+ $(AM_V_GEN) $(GPERF) -m 100 $< > $@.tmp && \
mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
EXTRA_DIST += \
@@ -149,9 +150,11 @@ libfontconfig_la_SOURCES = \
fcobjs.h \
fcobjshash.h \
fcpat.c \
+ fcrange.c \
fcserialize.c \
fcstat.c \
fcstr.c \
+ fcweight.c \
fcwindows.h \
fcxml.c \
ftglue.h \
diff --git a/src/Makefile.in b/src/Makefile.in
index 76d21c12..f54e08af 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -41,23 +41,51 @@
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -78,15 +106,16 @@ build_triplet = @build@
host_triplet = @host@
noinst_PROGRAMS = fcarch$(EXEEXT)
subdir = src
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/depcomp $(noinst_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -127,7 +156,8 @@ am_libfontconfig_la_OBJECTS = fcatomic.lo fcblanks.lo fccache.lo \
fccfg.lo fccharset.lo fccompat.lo fcdbg.lo fcdefault.lo \
fcdir.lo fcformat.lo fcfreetype.lo fcfs.lo fcinit.lo fclang.lo \
fclist.lo fcmatch.lo fcmatrix.lo fcname.lo fcobjs.lo fcpat.lo \
- fcserialize.lo fcstat.lo fcstr.lo fcxml.lo ftglue.lo
+ fcrange.lo fcserialize.lo fcstat.lo fcstr.lo fcweight.lo \
+ fcxml.lo ftglue.lo
libfontconfig_la_OBJECTS = $(am_libfontconfig_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -184,6 +214,23 @@ am__can_run_installinfo = \
esac
DATA = $(noinst_DATA)
HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -227,6 +274,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -268,12 +317,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -297,7 +353,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -305,7 +360,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -330,19 +384,22 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
EXTRA_DIST = makealias fcobjshash.gperf.h fcobjshash.gperf \
fcobjshash.h
@OS_WIN32_TRUE@export_symbols = -export-symbols fontconfig.def
@@ -351,7 +408,7 @@ EXTRA_DIST = makealias fcobjshash.gperf.h fcobjshash.gperf \
# Microsoft import library install/uninstall
@MS_LIB_AVAILABLE_TRUE@noinst_DATA = fontconfig.lib
-INCLUDES = \
+AM_CPPFLAGS = \
-I$(top_srcdir) \
-I$(top_srcdir)/src \
$(FREETYPE_CFLAGS) \
@@ -398,9 +455,11 @@ libfontconfig_la_SOURCES = \
fcobjs.h \
fcobjshash.h \
fcpat.c \
+ fcrange.c \
fcserialize.c \
fcstat.c \
fcstr.c \
+ fcweight.c \
fcwindows.h \
fcxml.c \
ftglue.h \
@@ -457,6 +516,7 @@ $(top_srcdir)/configure: $(am__configure_deps)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
@@ -491,6 +551,7 @@ clean-libLTLIBRARIES:
echo rm -f $${locs}; \
rm -f $${locs}; \
}
+
libfontconfig.la: $(libfontconfig_la_OBJECTS) $(libfontconfig_la_DEPENDENCIES) $(EXTRA_libfontconfig_la_DEPENDENCIES)
$(AM_V_CCLD)$(libfontconfig_la_LINK) -rpath $(libdir) $(libfontconfig_la_OBJECTS) $(libfontconfig_la_LIBADD) $(LIBS)
@@ -502,6 +563,7 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
fcarch$(EXEEXT): $(fcarch_OBJECTS) $(fcarch_DEPENDENCIES) $(EXTRA_fcarch_DEPENDENCIES)
@rm -f fcarch$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(fcarch_OBJECTS) $(fcarch_LDADD) $(LIBS)
@@ -533,9 +595,11 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcname.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcobjs.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcpat.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcrange.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcserialize.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcstat.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcstr.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcweight.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcxml.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftglue.Plo@am__quote@
@@ -544,14 +608,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -566,26 +630,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -597,15 +650,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -614,9 +663,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -779,26 +829,28 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-local
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS \
- cscopelist ctags distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-data-local install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-libLTLIBRARIES \
- install-man install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-libLTLIBRARIES uninstall-local
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-data-local install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES \
+ uninstall-local
# gcc import library install/uninstall
-@OS_WIN32_TRUE@install-libtool-import-lib:
-@OS_WIN32_TRUE@ $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
+@OS_WIN32_TRUE@install-libtool-import-lib: libfontconfig.la
+@OS_WIN32_TRUE@ $(MKDIR_P) $(DESTDIR)$(libdir)
+@OS_WIN32_TRUE@ $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)/libfontconfig.dll.a
@OS_WIN32_TRUE@ $(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
@OS_WIN32_TRUE@uninstall-libtool-import-lib:
@@ -838,7 +890,7 @@ fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
fcobjshash.h: fcobjshash.gperf
- $(AM_V_GEN) $(top_srcdir)/missing --run gperf -m 100 $< > $@.tmp && \
+ $(AM_V_GEN) $(GPERF) -m 100 $< > $@.tmp && \
mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
@ENABLE_SHARED_TRUE@install-data-local: install-ms-import-lib install-libtool-import-lib
diff --git a/src/fcarch.c b/src/fcarch.c
index 35734c02..4a921c06 100644
--- a/src/fcarch.c
+++ b/src/fcarch.c
@@ -21,14 +21,9 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-#include <stdio.h>
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
#include "fcint.h"
#include "fcarch.h"
+#include <stdio.h>
FC_ASSERT_STATIC (1 == sizeof (char));
FC_ASSERT_STATIC (2 == sizeof (FcChar16));
@@ -49,7 +44,7 @@ FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcStrSet *));
FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcCharLeaf **));
FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcChar16 *));
-FC_ASSERT_STATIC (0x08 + 1*FC_MAX(4,ALIGNOF_DOUBLE) == sizeof (FcValue));
+FC_ASSERT_STATIC (0x08 + 1*FC_MAX(SIZEOF_VOID_P,ALIGNOF_DOUBLE) == sizeof (FcValue));
FC_ASSERT_STATIC (0x00 + 2*SIZEOF_VOID_P == sizeof (FcPatternElt));
FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcPattern));
FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcCharSet));
diff --git a/src/fcarch.h b/src/fcarch.h
index cf7fd3c9..049a5b02 100644
--- a/src/fcarch.h
+++ b/src/fcarch.h
@@ -33,7 +33,7 @@
* and on 32bit ones, whether double is aligned to one word or two words.
* Those result in the 6 formats listed below.
*
- * If any of the assertion errors in fccache.c fail, you need to add a new
+ * If any of the assertion errors in fcarch.c fail, you need to add a new
* architecture. Contact the fontconfig mailing list in that case.
*
* name endianness pointer-size double-alignment
diff --git a/src/fcatomic.c b/src/fcatomic.c
index c1daed93..2ce419f7 100644
--- a/src/fcatomic.c
+++ b/src/fcatomic.c
@@ -131,7 +131,7 @@ FcAtomicLock (FcAtomic *atomic)
return FcFalse;
}
ret = link ((char *) atomic->tmp, (char *) atomic->lck);
- if (ret < 0 && errno == EPERM)
+ if (ret < 0 && (errno == EPERM || errno == ENOTSUP))
{
/* the filesystem where atomic->lck points to may not supports
* the hard link. so better try to fallback
diff --git a/src/fcatomic.h b/src/fcatomic.h
index a7643113..cc28a883 100644
--- a/src/fcatomic.h
+++ b/src/fcatomic.h
@@ -48,35 +48,47 @@
#include "fcwindows.h"
-/* mingw32 does not have MemoryBarrier.
- * MemoryBarrier may be defined as a macro or a function.
- * Just make a failsafe version for ourselves. */
-#ifdef MemoryBarrier
-#define HBMemoryBarrier MemoryBarrier
-#else
-static inline void HBMemoryBarrier (void) {
+/* MinGW has a convoluted history of supporting MemoryBarrier
+ * properly. As such, define a function to wrap the whole
+ * thing. */
+static inline void _FCMemoryBarrier (void) {
+#if !defined(MemoryBarrier)
long dummy = 0;
InterlockedExchange (&dummy, 1);
-}
+#else
+ MemoryBarrier ();
#endif
+}
typedef LONG fc_atomic_int_t;
#define fc_atomic_int_add(AI, V) InterlockedExchangeAdd (&(AI), (V))
-#define fc_atomic_ptr_get(P) (HBMemoryBarrier (), (void *) *(P))
+#define fc_atomic_ptr_get(P) (_FCMemoryBarrier (), (void *) *(P))
#define fc_atomic_ptr_cmpexch(P,O,N) (InterlockedCompareExchangePointer ((void **) (P), (void *) (N), (void *) (O)) == (void *) (O))
#elif !defined(FC_NO_MT) && defined(__APPLE__)
#include <libkern/OSAtomic.h>
+#ifdef __MAC_OS_X_MIN_REQUIRED
+#include <AvailabilityMacros.h>
+#elif defined(__IPHONE_OS_MIN_REQUIRED)
+#include <Availability.h>
+#endif
typedef int fc_atomic_int_t;
#define fc_atomic_int_add(AI, V) (OSAtomicAdd32Barrier ((V), &(AI)) - (V))
#define fc_atomic_ptr_get(P) (OSMemoryBarrier (), (void *) *(P))
+#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4 || __IPHONE_VERSION_MIN_REQUIRED >= 20100)
#define fc_atomic_ptr_cmpexch(P,O,N) OSAtomicCompareAndSwapPtrBarrier ((void *) (O), (void *) (N), (void **) (P))
-
+#else
+#if __ppc64__ || __x86_64__
+#define fc_atomic_ptr_cmpexch(P,O,N) OSAtomicCompareAndSwap64Barrier ((int64_t) (O), (int64_t) (N), (int64_t*) (P))
+#else
+#define fc_atomic_ptr_cmpexch(P,O,N) OSAtomicCompareAndSwap32Barrier ((int32_t) (O), (int32_t) (N), (int32_t*) (P))
+#endif
+#endif
#elif !defined(FC_NO_MT) && defined(HAVE_INTEL_ATOMIC_PRIMITIVES)
diff --git a/src/fcblanks.c b/src/fcblanks.c
index 46698bcd..5132a510 100644
--- a/src/fcblanks.c
+++ b/src/fcblanks.c
@@ -41,6 +41,8 @@ FcBlanksCreate (void)
void
FcBlanksDestroy (FcBlanks *b)
{
+ if (b->sblank == -1)
+ return;
if (b->blanks)
free (b->blanks);
free (b);
@@ -56,6 +58,11 @@ FcBlanksAdd (FcBlanks *b, FcChar32 ucs4)
if (b->blanks[sblank] == ucs4)
return FcTrue;
+ if (b->sblank == -1)
+ {
+ fprintf (stderr, "Unable to update the static FcBlanks: 0x%04x\n", ucs4);
+ return FcTrue;
+ }
if (b->nblank == b->sblank)
{
sblank = b->sblank + 32;
@@ -75,11 +82,25 @@ FcBlanksAdd (FcBlanks *b, FcChar32 ucs4)
FcBool
FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4)
{
- int i;
+ int lower = 0, higher = b->nblank, middle;
- for (i = 0; i < b->nblank; i++)
- if (b->blanks[i] == ucs4)
+ if (b->nblank == 0 ||
+ b->blanks[0] > ucs4 ||
+ b->blanks[b->nblank - 1] < ucs4)
+ return FcFalse;
+ while (1)
+ {
+ middle = (lower + higher) / 2;
+ if (b->blanks[middle] == ucs4)
return FcTrue;
+ if (lower >= higher)
+ break;
+ if (b->blanks[middle] < ucs4)
+ lower = middle + 1;
+ else
+ higher = middle - 1;
+ }
+
return FcFalse;
}
#define __fcblanks__
diff --git a/src/fccache.c b/src/fccache.c
index ddcf0703..25538bd7 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -20,9 +20,6 @@
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
#include "fcint.h"
#include "fcarch.h"
#include <stdio.h>
@@ -31,7 +28,7 @@
#include <dirent.h>
#include <string.h>
#include <sys/types.h>
-#include <time.h>
+#include <sys/stat.h>
#include <assert.h>
#if defined(HAVE_MMAP) || defined(__CYGWIN__)
# include <unistd.h>
@@ -125,6 +122,7 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
FcChar8 cache_base[CACHEBASE_LEN];
FcStrList *list;
FcChar8 *cache_dir;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
FcDirCacheBasename (dir, cache_base);
@@ -134,7 +132,10 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
while ((cache_dir = FcStrListNext (list)))
{
- cache_hashed = FcStrPlus (cache_dir, cache_base);
+ if (sysroot)
+ cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
+ else
+ cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
if (!cache_hashed)
break;
(void) unlink ((char *) cache_hashed);
@@ -176,19 +177,28 @@ FcDirCacheOpenFile (const FcChar8 *cache_file, struct stat *file_stat)
*/
static FcBool
FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
- FcBool (*callback) (int fd, struct stat *fd_stat,
+ FcBool (*callback) (FcConfig *config, int fd, struct stat *fd_stat,
struct stat *dir_stat, void *closure),
void *closure, FcChar8 **cache_file_ret)
{
int fd = -1;
FcChar8 cache_base[CACHEBASE_LEN];
FcStrList *list;
- FcChar8 *cache_dir;
+ FcChar8 *cache_dir, *d;
struct stat file_stat, dir_stat;
FcBool ret = FcFalse;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
- if (FcStatChecksum (dir, &dir_stat) < 0)
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, dir, NULL);
+ else
+ d = FcStrdup (dir);
+ if (FcStatChecksum (d, &dir_stat) < 0)
+ {
+ FcStrFree (d);
return FcFalse;
+ }
+ FcStrFree (d);
FcDirCacheBasename (dir, cache_base);
@@ -198,12 +208,17 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
while ((cache_dir = FcStrListNext (list)))
{
- FcChar8 *cache_hashed = FcStrPlus (cache_dir, cache_base);
+ FcChar8 *cache_hashed;
+
+ if (sysroot)
+ cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
+ else
+ cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
if (!cache_hashed)
break;
fd = FcDirCacheOpenFile (cache_hashed, &file_stat);
if (fd >= 0) {
- ret = (*callback) (fd, &file_stat, &dir_stat, closure);
+ ret = (*callback) (config, fd, &file_stat, &dir_stat, closure);
close (fd);
if (ret)
{
@@ -253,62 +268,6 @@ static FcCacheSkip *fcCacheChains[FC_CACHE_MAX_LEVEL];
static int fcCacheMaxLevel;
-static int32_t
-FcRandom(void)
-{
- int32_t result;
-
-#if HAVE_RANDOM_R
- static struct random_data fcrandbuf;
- static char statebuf[256];
- static FcBool initialized = FcFalse;
-
- if (initialized != FcTrue)
- {
- initstate_r(time(NULL), statebuf, 256, &fcrandbuf);
- initialized = FcTrue;
- }
-
- random_r(&fcrandbuf, &result);
-#elif HAVE_RANDOM
- static char statebuf[256];
- char *state;
- static FcBool initialized = FcFalse;
-
- if (initialized != FcTrue)
- {
- state = initstate(time(NULL), statebuf, 256);
- initialized = FcTrue;
- }
- else
- state = setstate(statebuf);
-
- result = random();
-
- setstate(state);
-#elif HAVE_LRAND48
- result = lrand48();
-#elif HAVE_RAND_R
- static unsigned int seed = time(NULL);
-
- result = rand_r(&seed);
-#elif HAVE_RAND
- static FcBool initialized = FcFalse;
-
- if (initialized != FcTrue)
- {
- srand(time(NULL));
- initialized = FcTrue;
- }
- result = rand();
-#else
-# error no random number generator function available.
-#endif
-
- return result;
-}
-
-
static FcMutex *cache_lock;
static void
@@ -449,6 +408,9 @@ FcCacheFindByAddrUnlocked (void *object)
FcCacheSkip **next = fcCacheChains;
FcCacheSkip *s;
+ if (!object)
+ return NULL;
+
/*
* Walk chain pointers one level at a time
*/
@@ -556,7 +518,7 @@ FcCacheObjectDereference (void *object)
skip = FcCacheFindByAddrUnlocked (object);
if (skip)
{
- if (FcRefDec (&skip->ref) <= 1)
+ if (FcRefDec (&skip->ref) == 1)
FcDirCacheDisposeUnlocked (skip->cache);
}
unlock_cache ();
@@ -575,14 +537,25 @@ FcCacheFini (void)
}
static FcBool
-FcCacheTimeValid (FcCache *cache, struct stat *dir_stat)
+FcCacheTimeValid (FcConfig *config, FcCache *cache, struct stat *dir_stat)
{
struct stat dir_static;
if (!dir_stat)
{
- if (FcStatChecksum (FcCacheDir (cache), &dir_static) < 0)
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ FcChar8 *d;
+
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, FcCacheDir (cache), NULL);
+ else
+ d = FcStrdup (FcCacheDir (cache));
+ if (FcStatChecksum (d, &dir_static) < 0)
+ {
+ FcStrFree (d);
return FcFalse;
+ }
+ FcStrFree (d);
dir_stat = &dir_static;
}
if (FcDebug () & FC_DBG_CACHE)
@@ -591,11 +564,38 @@ FcCacheTimeValid (FcCache *cache, struct stat *dir_stat)
return cache->checksum == (int) dir_stat->st_mtime;
}
+static FcBool
+FcCacheDirsValid (FcConfig *config, FcCache *cache)
+{
+ FcStrSet *dirs = FcStrSetCreate ();
+ FcBool ret = FcFalse;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ FcChar8 *d;
+
+ if (!dirs)
+ goto bail;
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, FcCacheDir (cache), NULL);
+ else
+ d = FcStrdup (FcCacheDir (cache));
+ if (!FcDirScanOnly (dirs, d, config))
+ goto bail1;
+ ret = cache->dirs_count == dirs->num;
+ if (FcDebug () & FC_DBG_CACHE)
+ printf ("%s: cache: %d, fs: %d\n", d, cache->dirs_count, dirs->num);
+
+bail1:
+ FcStrSetDestroy (dirs);
+ FcStrFree (d);
+bail:
+ return ret;
+}
+
/*
* Map a cache file into memory
*/
static FcCache *
-FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
+FcDirCacheMapFd (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat)
{
FcCache *cache;
FcBool allocated = FcFalse;
@@ -605,7 +605,8 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
cache = FcCacheFindByStat (fd_stat);
if (cache)
{
- if (FcCacheTimeValid (cache, dir_stat))
+ if (FcCacheTimeValid (config, cache, dir_stat) &&
+ FcCacheDirsValid (config, cache))
return cache;
FcDirCacheUnload (cache);
cache = NULL;
@@ -619,7 +620,7 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
{
#if defined(HAVE_MMAP) || defined(__CYGWIN__)
cache = mmap (0, fd_stat->st_size, PROT_READ, MAP_SHARED, fd, 0);
-#ifdef HAVE_POSIX_FADVISE
+#if (HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED)
posix_fadvise (fd, 0, fd_stat->st_size, POSIX_FADV_WILLNEED);
#endif
if (cache == MAP_FAILED)
@@ -656,7 +657,8 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
if (cache->magic != FC_CACHE_MAGIC_MMAP ||
cache->version < FC_CACHE_CONTENT_VERSION ||
cache->size != (intptr_t) fd_stat->st_size ||
- !FcCacheTimeValid (cache, dir_stat) ||
+ !FcCacheTimeValid (config, cache, dir_stat) ||
+ !FcCacheDirsValid (config, cache) ||
!FcCacheInsert (cache, fd_stat))
{
if (allocated)
@@ -695,9 +697,9 @@ FcDirCacheUnload (FcCache *cache)
}
static FcBool
-FcDirCacheMapHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure)
+FcDirCacheMapHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure)
{
- FcCache *cache = FcDirCacheMapFd (fd, fd_stat, dir_stat);
+ FcCache *cache = FcDirCacheMapFd (config, fd, fd_stat, dir_stat);
if (!cache)
return FcFalse;
@@ -714,6 +716,7 @@ FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file)
FcDirCacheMapHelper,
&cache, cache_file))
return NULL;
+
return cache;
}
@@ -729,7 +732,7 @@ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
fd = FcDirCacheOpenFile (cache_file, file_stat);
if (fd < 0)
return NULL;
- cache = FcDirCacheMapFd (fd, file_stat, NULL);
+ cache = FcDirCacheMapFd (FcConfigGetCurrent (), fd, file_stat, NULL);
close (fd);
return cache;
}
@@ -739,7 +742,7 @@ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
* the magic number and the size field
*/
static FcBool
-FcDirCacheValidateHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure FC_UNUSED)
+FcDirCacheValidateHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure FC_UNUSED)
{
FcBool ret = FcTrue;
FcCache c;
@@ -874,32 +877,17 @@ bail1:
return NULL;
}
-
-#ifdef _WIN32
-#include <direct.h>
-#define mkdir(path,mode) _mkdir(path)
-#endif
-
-static FcBool
-FcMakeDirectory (const FcChar8 *dir)
+FcCache *
+FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs)
{
- FcChar8 *parent;
- FcBool ret;
+ FcCache *new;
+ FcFontSet *set = FcFontSetDeserialize (FcCacheSet (cache));
+ const FcChar8 *dir = FcCacheDir (cache);
- if (strlen ((char *) dir) == 0)
- return FcFalse;
+ new = FcDirCacheBuild (set, dir, dir_stat, dirs);
+ FcFontSetDestroy (set);
- parent = FcStrDirname (dir);
- if (!parent)
- return FcFalse;
- if (access ((char *) parent, F_OK) == 0)
- ret = mkdir ((char *) dir, 0755) == 0 && chmod ((char *) dir, 0755) == 0;
- else if (access ((char *) parent, F_OK) == -1)
- ret = FcMakeDirectory (parent) && (mkdir ((char *) dir, 0755) == 0) && chmod ((char *) dir, 0755) == 0;
- else
- ret = FcFalse;
- FcStrFree (parent);
- return ret;
+ return new;
}
/* write serialized state to the cache file */
@@ -913,11 +901,12 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
FcAtomic *atomic;
FcStrList *list;
FcChar8 *cache_dir = NULL;
- FcChar8 *test_dir;
+ FcChar8 *test_dir, *d = NULL;
FcCacheSkip *skip;
struct stat cache_stat;
unsigned int magic;
int written;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
/*
* Write it to the first directory in the list which is writable
@@ -926,10 +915,18 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
list = FcStrListCreate (config->cacheDirs);
if (!list)
return FcFalse;
- while ((test_dir = FcStrListNext (list))) {
- if (access ((char *) test_dir, W_OK) == 0)
+ while ((test_dir = FcStrListNext (list)))
+ {
+ if (d)
+ FcStrFree (d);
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, test_dir, NULL);
+ else
+ d = FcStrCopyFilename (test_dir);
+
+ if (access ((char *) d, W_OK) == 0)
{
- cache_dir = test_dir;
+ cache_dir = FcStrCopyFilename (d);
break;
}
else
@@ -937,35 +934,38 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
/*
* If the directory doesn't exist, try to create it
*/
- if (access ((char *) test_dir, F_OK) == -1) {
- if (FcMakeDirectory (test_dir))
+ if (access ((char *) d, F_OK) == -1) {
+ if (FcMakeDirectory (d))
{
- cache_dir = test_dir;
+ cache_dir = FcStrCopyFilename (d);
/* Create CACHEDIR.TAG */
- FcDirCacheCreateTagFile (cache_dir);
+ FcDirCacheCreateTagFile (d);
break;
}
}
/*
* Otherwise, try making it writable
*/
- else if (chmod ((char *) test_dir, 0755) == 0)
+ else if (chmod ((char *) d, 0755) == 0)
{
- cache_dir = test_dir;
+ cache_dir = FcStrCopyFilename (d);
/* Try to create CACHEDIR.TAG too */
- FcDirCacheCreateTagFile (cache_dir);
+ FcDirCacheCreateTagFile (d);
break;
}
}
}
+ if (d)
+ FcStrFree (d);
FcStrListDone (list);
if (!cache_dir)
return FcFalse;
FcDirCacheBasename (dir, cache_base);
- cache_hashed = FcStrPlus (cache_dir, cache_base);
+ cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
if (!cache_hashed)
return FcFalse;
+ FcStrFree (cache_dir);
if (FcDebug () & FC_DBG_CACHE)
printf ("FcDirCacheWriteDir dir \"%s\" file \"%s\"\n",
@@ -1043,31 +1043,37 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
{
DIR *d;
struct dirent *ent;
- FcChar8 *dir_base;
+ FcChar8 *dir;
FcBool ret = FcTrue;
FcBool remove;
FcCache *cache;
struct stat target_stat;
+ const FcChar8 *sysroot;
- dir_base = FcStrPlus (cache_dir, (FcChar8 *) FC_DIR_SEPARATOR_S);
- if (!dir_base)
+ /* FIXME: this API needs to support non-current FcConfig */
+ sysroot = FcConfigGetSysRoot (NULL);
+ if (sysroot)
+ dir = FcStrBuildFilename (sysroot, cache_dir, NULL);
+ else
+ dir = FcStrCopyFilename (cache_dir);
+ if (!dir)
{
fprintf (stderr, "Fontconfig error: %s: out of memory\n", cache_dir);
return FcFalse;
}
- if (access ((char *) cache_dir, W_OK) != 0)
+ if (access ((char *) dir, W_OK) != 0)
{
if (verbose || FcDebug () & FC_DBG_CACHE)
- printf ("%s: not cleaning %s cache directory\n", cache_dir,
- access ((char *) cache_dir, F_OK) == 0 ? "unwritable" : "non-existent");
+ printf ("%s: not cleaning %s cache directory\n", dir,
+ access ((char *) dir, F_OK) == 0 ? "unwritable" : "non-existent");
goto bail0;
}
if (verbose || FcDebug () & FC_DBG_CACHE)
- printf ("%s: cleaning cache directory\n", cache_dir);
- d = opendir ((char *) cache_dir);
+ printf ("%s: cleaning cache directory\n", dir);
+ d = opendir ((char *) dir);
if (!d)
{
- perror ((char *) cache_dir);
+ perror ((char *) dir);
ret = FcFalse;
goto bail0;
}
@@ -1084,10 +1090,10 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
strcmp(ent->d_name + 32, "-" FC_ARCHITECTURE FC_CACHE_SUFFIX))
continue;
- file_name = FcStrPlus (dir_base, (FcChar8 *) ent->d_name);
+ file_name = FcStrBuildFilename (dir, (FcChar8 *)ent->d_name, NULL);
if (!file_name)
{
- fprintf (stderr, "Fontconfig error: %s: allocation failure\n", cache_dir);
+ fprintf (stderr, "Fontconfig error: %s: allocation failure\n", dir);
ret = FcFalse;
break;
}
@@ -1096,19 +1102,27 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
if (!cache)
{
if (verbose || FcDebug () & FC_DBG_CACHE)
- printf ("%s: invalid cache file: %s\n", cache_dir, ent->d_name);
+ printf ("%s: invalid cache file: %s\n", dir, ent->d_name);
remove = FcTrue;
}
else
{
+ FcChar8 *s;
+
target_dir = FcCacheDir (cache);
- if (stat ((char *) target_dir, &target_stat) < 0)
+ if (sysroot)
+ s = FcStrBuildFilename (sysroot, target_dir, NULL);
+ else
+ s = FcStrdup (target_dir);
+ if (stat ((char *) s, &target_stat) < 0)
{
if (verbose || FcDebug () & FC_DBG_CACHE)
printf ("%s: %s: missing directory: %s \n",
- cache_dir, ent->d_name, target_dir);
+ dir, ent->d_name, s);
remove = FcTrue;
}
+ FcDirCacheUnload (cache);
+ FcStrFree (s);
}
if (remove)
{
@@ -1118,13 +1132,12 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
ret = FcFalse;
}
}
- FcDirCacheUnload (cache);
FcStrFree (file_name);
}
closedir (d);
bail0:
- FcStrFree (dir_base);
+ FcStrFree (dir);
return ret;
}
@@ -1448,7 +1461,7 @@ FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
if (access ((char *) cache_dir, W_OK) == 0)
{
/* Create CACHEDIR.TAG */
- cache_tag = FcStrPlus (cache_dir, (const FcChar8 *) FC_DIR_SEPARATOR_S "CACHEDIR.TAG");
+ cache_tag = FcStrBuildFilename (cache_dir, "CACHEDIR.TAG", NULL);
if (!cache_tag)
return FcFalse;
atomic = FcAtomicCreate ((FcChar8 *)cache_tag);
@@ -1492,8 +1505,9 @@ FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
void
FcCacheCreateTagFile (const FcConfig *config)
{
- FcChar8 *cache_dir = NULL;
+ FcChar8 *cache_dir = NULL, *d = NULL;
FcStrList *list;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
list = FcConfigGetCacheDirs (config);
if (!list)
@@ -1501,9 +1515,17 @@ FcCacheCreateTagFile (const FcConfig *config)
while ((cache_dir = FcStrListNext (list)))
{
- if (FcDirCacheCreateTagFile (cache_dir))
+ if (d)
+ FcStrFree (d);
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, cache_dir, NULL);
+ else
+ d = FcStrCopyFilename (cache_dir);
+ if (FcDirCacheCreateTagFile (d))
break;
}
+ if (d)
+ FcStrFree (d);
FcStrListDone (list);
}
diff --git a/src/fccfg.c b/src/fccfg.c
index 877a4f57..b92270b6 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
@@ -27,6 +27,7 @@
#include "fcint.h"
#include <dirent.h>
#include <sys/types.h>
+#include "../fc-blanks/fcblanks.h"
#if defined (_WIN32) && !defined (R_OK)
#define R_OK 4
@@ -109,7 +110,7 @@ FcConfigCreate (void)
if (!config->cacheDirs)
goto bail8;
- config->blanks = 0;
+ config->blanks = &fcBlanks;
config->substPattern = 0;
config->substFont = 0;
@@ -123,6 +124,8 @@ FcConfigCreate (void)
config->expr_pool = NULL;
+ config->sysRoot = NULL;
+
FcRefInit (&config->ref, 1);
return config;
@@ -212,10 +215,8 @@ FcSubstDestroy (FcSubst *s)
while (s)
{
n = s->next;
- if (s->test)
- FcTestDestroy (s->test);
- if (s->edit)
- FcEditDestroy (s->edit);
+ if (s->rule)
+ FcRuleDestroy (s->rule);
free (s);
s = n;
}
@@ -224,20 +225,20 @@ FcSubstDestroy (FcSubst *s)
FcExpr *
FcConfigAllocExpr (FcConfig *config)
{
- if (!config->expr_pool || config->expr_pool->next == config->expr_pool->end)
- {
- FcExprPage *new_page;
+ if (!config->expr_pool || config->expr_pool->next == config->expr_pool->end)
+ {
+ FcExprPage *new_page;
- new_page = malloc (sizeof (FcExprPage));
- if (!new_page)
- return 0;
+ new_page = malloc (sizeof (FcExprPage));
+ if (!new_page)
+ return 0;
- new_page->next_page = config->expr_pool;
- new_page->next = new_page->exprs;
- config->expr_pool = new_page;
- }
+ new_page->next_page = config->expr_pool;
+ new_page->next = new_page->exprs;
+ config->expr_pool = new_page;
+ }
- return config->expr_pool->next++;
+ return config->expr_pool->next++;
}
FcConfig *
@@ -292,6 +293,8 @@ FcConfigDestroy (FcConfig *config)
free (page);
page = next;
}
+ if (config->sysRoot)
+ FcStrFree (config->sysRoot);
free (config);
}
@@ -337,8 +340,8 @@ FcConfigAddCache (FcConfig *config, FcCache *cache,
if (!FcConfigAcceptFont (config, font))
continue;
- nref++;
- FcFontSetAdd (config->fonts[set], font);
+ if (FcFontSetAdd (config->fonts[set], font))
+ nref++;
}
FcDirCacheReference (cache, nref);
}
@@ -365,6 +368,7 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
FcStrList *dirlist;
FcChar8 *dir;
FcCache *cache;
+ FcBool ret = FcFalse;
dirlist = FcStrListCreate (dirSet);
if (!dirlist)
@@ -373,15 +377,16 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
while ((dir = FcStrListNext (dirlist)))
{
if (FcDebug () & FC_DBG_FONTSET)
- printf ("adding fonts from%s\n", dir);
+ printf ("adding fonts from %s\n", dir);
cache = FcDirCacheRead (dir, FcFalse, config);
if (!cache)
continue;
FcConfigAddCache (config, cache, set, dirSet);
FcDirCacheUnload (cache);
+ ret = FcTrue;
}
FcStrListDone (dirlist);
- return FcTrue;
+ return ret;
}
/*
@@ -425,13 +430,14 @@ retry:
if (config == cfg)
return FcTrue;
- if (!config->fonts[FcSetSystem])
+ if (config && !config->fonts[FcSetSystem])
if (!FcConfigBuildFonts (config))
return FcFalse;
if (!fc_atomic_ptr_cmpexch (&_fcConfig, cfg, config))
goto retry;
+ FcConfigReference (config);
if (cfg)
FcConfigDestroy (cfg);
@@ -640,17 +646,17 @@ FcConfigSetRescanInverval (FcConfig *config, int rescanInterval)
return FcConfigSetRescanInterval (config, rescanInterval);
}
-
FcBool
-FcConfigAddEdit (FcConfig *config,
- FcTest *test,
- FcEdit *edit,
+FcConfigAddRule (FcConfig *config,
+ FcRule *rule,
FcMatchKind kind)
{
FcSubst *subst, **prev;
- FcTest *t;
- int num;
+ FcRule *r;
+ int n = 0;
+ if (!rule)
+ return FcFalse;
switch (kind) {
case FcMatchPattern:
prev = &config->substPattern;
@@ -669,18 +675,31 @@ FcConfigAddEdit (FcConfig *config,
return FcFalse;
for (; *prev; prev = &(*prev)->next);
*prev = subst;
- subst->next = 0;
- subst->test = test;
- subst->edit = edit;
- num = 0;
- for (t = test; t; t = t->next)
- {
- if (t->kind == FcMatchDefault)
- t->kind = kind;
- num++;
- }
- if (config->maxObjects < num)
- config->maxObjects = num;
+ subst->next = NULL;
+ subst->rule = rule;
+ for (r = rule; r; r = r->next)
+ {
+ switch (r->type)
+ {
+ case FcRuleTest:
+ if (r->u.test &&
+ r->u.test->kind == FcMatchDefault)
+ r->u.test->kind = kind;
+
+ if (n < r->u.test->object)
+ n = r->u.test->object;
+ break;
+ case FcRuleEdit:
+ if (n < r->u.edit->object)
+ n = r->u.edit->object;
+ break;
+ default:
+ break;
+ }
+ }
+ n = FC_OBJ_ID (n) - FC_MAX_BASE_OBJECT;
+ if (config->maxObjects < n)
+ config->maxObjects = n;
if (FcDebug () & FC_DBG_EDIT)
{
printf ("Add Subst ");
@@ -689,11 +708,6 @@ FcConfigAddEdit (FcConfig *config,
return FcTrue;
}
-typedef struct _FcSubState {
- FcPatternElt *elt;
- FcValueList *value;
-} FcSubState;
-
static FcValue
FcConfigPromote (FcValue v, FcValue u, FcValuePromotionBuffer *buf)
{
@@ -712,12 +726,27 @@ FcConfigPromote (FcValue v, FcValue u, FcValuePromotionBuffer *buf)
v.u.l = FcLangSetPromote (v.u.s, buf);
v.type = FcTypeLangSet;
}
+ else if (v.type == FcTypeVoid && u.type == FcTypeLangSet)
+ {
+ v.u.l = FcLangSetPromote (NULL, buf);
+ v.type = FcTypeLangSet;
+ }
+ else if (v.type == FcTypeVoid && u.type == FcTypeCharSet)
+ {
+ v.u.c = FcCharSetPromote (buf);
+ v.type = FcTypeCharSet;
+ }
+ if (buf && v.type == FcTypeDouble && u.type == FcTypeRange)
+ {
+ v.u.r = FcRangePromote (v.u.d, buf);
+ v.type = FcTypeRange;
+ }
return v;
}
FcBool
FcConfigCompareValue (const FcValue *left_o,
- FcOp op_,
+ unsigned int op_,
const FcValue *right_o)
{
FcValue left = FcValueCanonicalize(left_o);
@@ -732,6 +761,8 @@ FcConfigCompareValue (const FcValue *left_o,
if (left.type == right.type)
{
switch (left.type) {
+ case FcTypeUnknown:
+ break; /* No way to guess how to compare for this object */
case FcTypeInteger:
break; /* FcConfigPromote prevents this from happening */
case FcTypeDouble:
@@ -882,6 +913,9 @@ FcConfigCompareValue (const FcValue *left_o,
break;
}
break;
+ case FcTypeRange:
+ ret = FcRangeCompare (op, left.u.r, right.u.r);
+ break;
}
}
else
@@ -903,10 +937,11 @@ FcConfigCompareValue (const FcValue *left_o,
static FcValue
FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
{
- FcValue v, vl, vr;
+ FcValue v, vl, vr, vle, vre;
FcMatrix *m;
FcChar8 *str;
FcOp op = FC_OP_GET_OP (e->op);
+ FcValuePromotionBuffer buf1, buf2;
switch ((int) op) {
case FcOpInteger:
@@ -955,6 +990,11 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
v.u.l = e->u.lval;
v = FcValueSave (v);
break;
+ case FcOpRange:
+ v.type = FcTypeRange;
+ v.u.r = e->u.rval;
+ v = FcValueSave (v);
+ break;
case FcOpBool:
v.type = FcTypeBool;
v.u.b = e->u.bval;
@@ -1021,28 +1061,28 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
case FcOpDivide:
vl = FcConfigEvaluate (p, p_pat, kind, e->u.tree.left);
vr = FcConfigEvaluate (p, p_pat, kind, e->u.tree.right);
- vl = FcConfigPromote (vl, vr, NULL);
- vr = FcConfigPromote (vr, vl, NULL);
- if (vl.type == vr.type)
+ vle = FcConfigPromote (vl, vr, &buf1);
+ vre = FcConfigPromote (vr, vle, &buf2);
+ if (vle.type == vre.type)
{
- switch ((int) vl.type) {
+ switch ((int) vle.type) {
case FcTypeDouble:
switch ((int) op) {
case FcOpPlus:
v.type = FcTypeDouble;
- v.u.d = vl.u.d + vr.u.d;
+ v.u.d = vle.u.d + vre.u.d;
break;
case FcOpMinus:
v.type = FcTypeDouble;
- v.u.d = vl.u.d - vr.u.d;
+ v.u.d = vle.u.d - vre.u.d;
break;
case FcOpTimes:
v.type = FcTypeDouble;
- v.u.d = vl.u.d * vr.u.d;
+ v.u.d = vle.u.d * vre.u.d;
break;
case FcOpDivide:
v.type = FcTypeDouble;
- v.u.d = vl.u.d / vr.u.d;
+ v.u.d = vle.u.d / vre.u.d;
break;
default:
v.type = FcTypeVoid;
@@ -1059,11 +1099,11 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
switch ((int) op) {
case FcOpOr:
v.type = FcTypeBool;
- v.u.b = vl.u.b || vr.u.b;
+ v.u.b = vle.u.b || vre.u.b;
break;
case FcOpAnd:
v.type = FcTypeBool;
- v.u.b = vl.u.b && vr.u.b;
+ v.u.b = vle.u.b && vre.u.b;
break;
default:
v.type = FcTypeVoid;
@@ -1074,7 +1114,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
switch ((int) op) {
case FcOpPlus:
v.type = FcTypeString;
- str = FcStrPlus (vl.u.s, vr.u.s);
+ str = FcStrPlus (vle.u.s, vre.u.s);
v.u.s = FcStrdup (str);
FcStrFree (str);
@@ -1093,7 +1133,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
m = malloc (sizeof (FcMatrix));
if (m)
{
- FcMatrixMultiply (m, vl.u.m, vr.u.m);
+ FcMatrixMultiply (m, vle.u.m, vre.u.m);
v.u.m = m;
}
else
@@ -1110,13 +1150,13 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
switch ((int) op) {
case FcOpPlus:
v.type = FcTypeCharSet;
- v.u.c = FcCharSetUnion (vl.u.c, vr.u.c);
+ v.u.c = FcCharSetUnion (vle.u.c, vre.u.c);
if (!v.u.c)
v.type = FcTypeVoid;
break;
case FcOpMinus:
v.type = FcTypeCharSet;
- v.u.c = FcCharSetSubtract (vl.u.c, vr.u.c);
+ v.u.c = FcCharSetSubtract (vle.u.c, vre.u.c);
if (!v.u.c)
v.type = FcTypeVoid;
break;
@@ -1129,13 +1169,13 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
switch ((int) op) {
case FcOpPlus:
v.type = FcTypeLangSet;
- v.u.l = FcLangSetUnion (vl.u.l, vr.u.l);
+ v.u.l = FcLangSetUnion (vle.u.l, vre.u.l);
if (!v.u.l)
v.type = FcTypeVoid;
break;
case FcOpMinus:
v.type = FcTypeLangSet;
- v.u.l = FcLangSetSubtract (vl.u.l, vr.u.l);
+ v.u.l = FcLangSetSubtract (vle.u.l, vre.u.l);
if (!v.u.l)
v.type = FcTypeVoid;
break;
@@ -1478,14 +1518,17 @@ FcConfigSubstituteWithPat (FcConfig *config,
FcPattern *p_pat,
FcMatchKind kind)
{
+ FcValue v;
FcSubst *s;
- FcSubState *st;
- int i;
- FcTest *t;
- FcEdit *e;
- FcValueList *l;
+ FcRule *r;
+ FcValueList *l, **value = NULL, *vl;
FcPattern *m;
FcStrSet *strs;
+ FcObject object = FC_INVALID_OBJECT;
+ FcPatternElt **elt = NULL, *e;
+ int i, nobjs;
+ FcBool retval = FcTrue;
+ FcTest **tst = NULL;
if (!config)
{
@@ -1503,15 +1546,58 @@ FcConfigSubstituteWithPat (FcConfig *config,
FcStrList *l = FcStrListCreate (strs);
FcChar8 *lang;
FcValue v;
+ FcLangSet *lsund = FcLangSetCreate ();
+ FcLangSetAdd (lsund, (const FcChar8 *)"und");
FcStrSetDestroy (strs);
while (l && (lang = FcStrListNext (l)))
{
+ FcPatternElt *e = FcPatternObjectFindElt (p, FC_LANG_OBJECT);
+
+ if (e)
+ {
+ FcValueListPtr ll;
+
+ for (ll = FcPatternEltValues (e); ll; ll = FcValueListNext (ll))
+ {
+ FcValue vv = FcValueCanonicalize (&ll->value);
+
+ if (vv.type == FcTypeLangSet)
+ {
+ FcLangSet *ls = FcLangSetCreate ();
+ FcBool b;
+
+ FcLangSetAdd (ls, lang);
+ b = FcLangSetContains (vv.u.l, ls);
+ FcLangSetDestroy (ls);
+ if (b)
+ goto bail_lang;
+ if (FcLangSetContains (vv.u.l, lsund))
+ goto bail_lang;
+ }
+ else
+ {
+ if (FcStrCmpIgnoreCase (vv.u.s, lang) == 0)
+ goto bail_lang;
+ if (FcStrCmpIgnoreCase (vv.u.s, (const FcChar8 *)"und") == 0)
+ goto bail_lang;
+ }
+ }
+ }
v.type = FcTypeString;
v.u.s = lang;
+
FcPatternObjectAddWithBinding (p, FC_LANG_OBJECT, v, FcValueBindingWeak, FcTrue);
}
+ bail_lang:
FcStrListDone (l);
+ FcLangSetDestroy (lsund);
+ }
+ if (FcPatternObjectGet (p, FC_PRGNAME_OBJECT, 0, &v) == FcResultNoMatch)
+ {
+ FcChar8 *prgname = FcGetPrgname ();
+ if (prgname)
+ FcPatternObjectAddString (p, FC_PRGNAME_OBJECT, prgname);
}
break;
case FcMatchFont:
@@ -1524,9 +1610,25 @@ FcConfigSubstituteWithPat (FcConfig *config,
return FcFalse;
}
- st = (FcSubState *) malloc (config->maxObjects * sizeof (FcSubState));
- if (!st && config->maxObjects)
- return FcFalse;
+ nobjs = FC_MAX_BASE_OBJECT + config->maxObjects + 2;
+ value = (FcValueList **) malloc (SIZEOF_VOID_P * nobjs);
+ if (!value)
+ {
+ retval = FcFalse;
+ goto bail1;
+ }
+ elt = (FcPatternElt **) malloc (SIZEOF_VOID_P * nobjs);
+ if (!elt)
+ {
+ retval = FcFalse;
+ goto bail1;
+ }
+ tst = (FcTest **) malloc (SIZEOF_VOID_P * nobjs);
+ if (!tst)
+ {
+ retval = FcFalse;
+ goto bail1;
+ }
if (FcDebug () & FC_DBG_EDIT)
{
@@ -1535,190 +1637,199 @@ FcConfigSubstituteWithPat (FcConfig *config,
}
for (; s; s = s->next)
{
- /*
- * Check the tests to see if
- * they all match the pattern
- */
- for (t = s->test, i = 0; t; t = t->next, i++)
+ r = s->rule;
+ for (i = 0; i < nobjs; i++)
{
- if (FcDebug () & FC_DBG_EDIT)
- {
- printf ("FcConfigSubstitute test ");
- FcTestPrint (t);
- }
- st[i].elt = 0;
- if (kind == FcMatchFont && t->kind == FcMatchPattern)
- m = p_pat;
- else
- m = p;
- if (m)
- st[i].elt = FcPatternObjectFindElt (m, t->object);
- else
- st[i].elt = 0;
- /*
- * If there's no such field in the font,
- * then FcQualAll matches while FcQualAny does not
- */
- if (!st[i].elt)
- {
- if (t->qual == FcQualAll)
+ elt[i] = NULL;
+ value[i] = NULL;
+ tst[i] = NULL;
+ }
+ for (; r; r = r->next)
+ {
+ switch (r->type) {
+ case FcRuleUnknown:
+ /* shouldn't be reached */
+ break;
+ case FcRuleTest:
+ object = FC_OBJ_ID (r->u.test->object);
+ /*
+ * Check the tests to see if
+ * they all match the pattern
+ */
+ if (FcDebug () & FC_DBG_EDIT)
{
- st[i].value = 0;
- continue;
+ printf ("FcConfigSubstitute test ");
+ FcTestPrint (r->u.test);
}
+ if (kind == FcMatchFont && r->u.test->kind == FcMatchPattern)
+ m = p_pat;
else
- break;
- }
- /*
- * Check to see if there is a match, mark the location
- * to apply match-relative edits
- */
- st[i].value = FcConfigMatchValueList (m, p_pat, kind, t, st[i].elt->values);
- if (!st[i].value)
- break;
- if (t->qual == FcQualFirst && st[i].value != st[i].elt->values)
- break;
- if (t->qual == FcQualNotFirst && st[i].value == st[i].elt->values)
- break;
- }
- if (t)
- {
- if (FcDebug () & FC_DBG_EDIT)
- printf ("No match\n");
- continue;
- }
- if (FcDebug () & FC_DBG_EDIT)
- {
- printf ("Substitute ");
- FcSubstPrint (s);
- }
- for (e = s->edit; e; e = e->next)
- {
- /*
- * Evaluate the list of expressions
- */
- l = FcConfigValues (p, p_pat,kind, e->expr, e->binding);
- /*
- * Locate any test associated with this field, skipping
- * tests associated with the pattern when substituting in
- * the font
- */
- for (t = s->test, i = 0; t; t = t->next, i++)
- {
- if ((t->kind == FcMatchFont || kind == FcMatchPattern) &&
- t->object == e->object)
+ m = p;
+ if (m)
+ e = FcPatternObjectFindElt (m, r->u.test->object);
+ else
+ e = NULL;
+ /* different 'kind' won't be the target of edit */
+ if (!elt[object] && kind == r->u.test->kind)
{
- /*
- * KLUDGE - the pattern may have been reallocated or
- * things may have been inserted or deleted above
- * this element by other edits. Go back and find
- * the element again
- */
- if (e != s->edit && st[i].elt)
- st[i].elt = FcPatternObjectFindElt (p, t->object);
- if (!st[i].elt)
- t = 0;
- break;
+ elt[object] = e;
+ tst[object] = r->u.test;
}
- }
- switch (FC_OP_GET_OP (e->op)) {
- case FcOpAssign:
/*
- * If there was a test, then replace the matched
- * value with the new list of values
+ * If there's no such field in the font,
+ * then FcQualAll matches while FcQualAny does not
*/
- if (t)
+ if (!e)
{
- FcValueList *thisValue = st[i].value;
- FcValueList *nextValue = thisValue;
-
+ if (r->u.test->qual == FcQualAll)
+ {
+ value[object] = NULL;
+ continue;
+ }
+ else
+ {
+ if (FcDebug () & FC_DBG_EDIT)
+ printf ("No match\n");
+ goto bail;
+ }
+ }
+ /*
+ * Check to see if there is a match, mark the location
+ * to apply match-relative edits
+ */
+ vl = FcConfigMatchValueList (m, p_pat, kind, r->u.test, e->values);
+ /* different 'kind' won't be the target of edit */
+ if (!value[object] && kind == r->u.test->kind)
+ value[object] = vl;
+ if (!vl ||
+ (r->u.test->qual == FcQualFirst && vl != e->values) ||
+ (r->u.test->qual == FcQualNotFirst && vl == e->values))
+ {
+ if (FcDebug () & FC_DBG_EDIT)
+ printf ("No match\n");
+ goto bail;
+ }
+ break;
+ case FcRuleEdit:
+ object = FC_OBJ_ID (r->u.edit->object);
+ if (FcDebug () & FC_DBG_EDIT)
+ {
+ printf ("Substitute ");
+ FcEditPrint (r->u.edit);
+ printf ("\n\n");
+ }
+ /*
+ * Evaluate the list of expressions
+ */
+ l = FcConfigValues (p, p_pat,kind, r->u.edit->expr, r->u.edit->binding);
+ if (tst[object] && (tst[object]->kind == FcMatchFont || kind == FcMatchPattern))
+ elt[object] = FcPatternObjectFindElt (p, tst[object]->object);
+
+ switch (FC_OP_GET_OP (r->u.edit->op)) {
+ case FcOpAssign:
/*
- * Append the new list of values after the current value
+ * If there was a test, then replace the matched
+ * value with the new list of values
*/
- FcConfigAdd (&st[i].elt->values, thisValue, FcTrue, l, e->object);
+ if (value[object])
+ {
+ FcValueList *thisValue = value[object];
+ FcValueList *nextValue = l;
+
+ /*
+ * Append the new list of values after the current value
+ */
+ FcConfigAdd (&elt[object]->values, thisValue, FcTrue, l, r->u.edit->object);
+ /*
+ * Delete the marked value
+ */
+ if (thisValue)
+ FcConfigDel (&elt[object]->values, thisValue);
+ /*
+ * Adjust a pointer into the value list to ensure
+ * future edits occur at the same place
+ */
+ value[object] = nextValue;
+ break;
+ }
+ /* fall through ... */
+ case FcOpAssignReplace:
/*
- * Delete the marked value
+ * Delete all of the values and insert
+ * the new set
*/
- if (thisValue)
- FcConfigDel (&st[i].elt->values, thisValue);
+ FcConfigPatternDel (p, r->u.edit->object);
+ FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
/*
- * Adjust any pointers into the value list to ensure
- * future edits occur at the same place
+ * Adjust a pointer into the value list as they no
+ * longer point to anything valid
*/
- for (t = s->test, i = 0; t; t = t->next, i++)
+ value[object] = NULL;
+ break;
+ case FcOpPrepend:
+ if (value[object])
{
- if (st[i].value == thisValue)
- st[i].value = nextValue;
+ FcConfigAdd (&elt[object]->values, value[object], FcFalse, l, r->u.edit->object);
+ break;
}
+ /* fall through ... */
+ case FcOpPrependFirst:
+ FcConfigPatternAdd (p, r->u.edit->object, l, FcFalse);
break;
- }
- /* fall through ... */
- case FcOpAssignReplace:
- /*
- * Delete all of the values and insert
- * the new set
- */
- FcConfigPatternDel (p, e->object);
- FcConfigPatternAdd (p, e->object, l, FcTrue);
- /*
- * Adjust any pointers into the value list as they no
- * longer point to anything valid
- */
- if (t)
- {
- FcPatternElt *thisElt = st[i].elt;
- for (t = s->test, i = 0; t; t = t->next, i++)
+ case FcOpAppend:
+ if (value[object])
{
- if (st[i].elt == thisElt)
- st[i].value = 0;
+ FcConfigAdd (&elt[object]->values, value[object], FcTrue, l, r->u.edit->object);
+ break;
}
- }
- break;
- case FcOpPrepend:
- if (t)
- {
- FcConfigAdd (&st[i].elt->values, st[i].value, FcFalse, l, e->object);
+ /* fall through ... */
+ case FcOpAppendLast:
+ FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
+ break;
+ case FcOpDelete:
+ if (value[object])
+ {
+ FcConfigDel (&elt[object]->values, value[object]);
+ break;
+ }
+ /* fall through ... */
+ case FcOpDeleteAll:
+ FcConfigPatternDel (p, r->u.edit->object);
+ break;
+ default:
+ FcValueListDestroy (l);
break;
}
- /* fall through ... */
- case FcOpPrependFirst:
- FcConfigPatternAdd (p, e->object, l, FcFalse);
- break;
- case FcOpAppend:
- if (t)
+ /*
+ * Now go through the pattern and eliminate
+ * any properties without data
+ */
+ FcConfigPatternCanon (p, r->u.edit->object);
+
+ if (FcDebug () & FC_DBG_EDIT)
{
- FcConfigAdd (&st[i].elt->values, st[i].value, FcTrue, l, e->object);
- break;
+ printf ("FcConfigSubstitute edit");
+ FcPatternPrint (p);
}
- /* fall through ... */
- case FcOpAppendLast:
- FcConfigPatternAdd (p, e->object, l, FcTrue);
- break;
- default:
- FcValueListDestroy (l);
break;
}
}
- /*
- * Now go through the pattern and eliminate
- * any properties without data
- */
- for (e = s->edit; e; e = e->next)
- FcConfigPatternCanon (p, e->object);
-
- if (FcDebug () & FC_DBG_EDIT)
- {
- printf ("FcConfigSubstitute edit");
- FcPatternPrint (p);
- }
+ bail:;
}
- free (st);
if (FcDebug () & FC_DBG_EDIT)
{
printf ("FcConfigSubstitute done");
FcPatternPrint (p);
}
- return FcTrue;
+bail1:
+ if (elt)
+ free (elt);
+ if (value)
+ free (value);
+ if (tst)
+ free (tst);
+
+ return retval;
}
FcBool
@@ -1939,6 +2050,8 @@ FcConfigXdgCacheHome (void)
const char *env = getenv ("XDG_CACHE_HOME");
FcChar8 *ret = NULL;
+ if (!_FcConfigHomeEnabled)
+ return NULL;
if (env)
ret = FcStrCopy ((const FcChar8 *)env);
else
@@ -1964,6 +2077,8 @@ FcConfigXdgConfigHome (void)
const char *env = getenv ("XDG_CONFIG_HOME");
FcChar8 *ret = NULL;
+ if (!_FcConfigHomeEnabled)
+ return NULL;
if (env)
ret = FcStrCopy ((const FcChar8 *)env);
else
@@ -1989,6 +2104,8 @@ FcConfigXdgDataHome (void)
const char *env = getenv ("XDG_DATA_HOME");
FcChar8 *ret = NULL;
+ if (!_FcConfigHomeEnabled)
+ return NULL;
if (env)
ret = FcStrCopy ((const FcChar8 *)env);
else
@@ -2080,6 +2197,7 @@ FcConfigAppFontAddFile (FcConfig *config,
FcStrSet *subdirs;
FcStrList *sublist;
FcChar8 *subdir;
+ FcBool ret = FcFalse;
if (!config)
{
@@ -2113,12 +2231,13 @@ FcConfigAppFontAddFile (FcConfig *config,
{
while ((subdir = FcStrListNext (sublist)))
{
- FcConfigAppFontAddDir (config, subdir);
+ if (FcConfigAppFontAddDir (config, subdir))
+ ret = FcTrue;
}
FcStrListDone (sublist);
}
FcStrSetDestroy (subdirs);
- return FcTrue;
+ return ret;
}
FcBool
@@ -2127,6 +2246,7 @@ FcConfigAppFontAddDir (FcConfig *config,
{
FcFontSet *set;
FcStrSet *dirs;
+ FcBool ret = FcTrue;
if (!config)
{
@@ -2145,8 +2265,8 @@ FcConfigAppFontAddDir (FcConfig *config,
set = FcFontSetCreate ();
if (!set)
{
- FcStrSetDestroy (dirs);
- return FcFalse;
+ ret = FcFalse;
+ goto bail;
}
FcConfigSetFonts (config, set, FcSetApplication);
}
@@ -2154,12 +2274,10 @@ FcConfigAppFontAddDir (FcConfig *config,
FcStrSetAddFilename (dirs, dir);
if (!FcConfigAddDirList (config, FcSetApplication, dirs))
- {
- FcStrSetDestroy (dirs);
- return FcFalse;
- }
+ ret = FcFalse;
+bail:
FcStrSetDestroy (dirs);
- return FcTrue;
+ return ret;
}
void
@@ -2190,57 +2308,13 @@ FcConfigGlobAdd (FcConfig *config,
}
static FcBool
-FcConfigGlobMatch (const FcChar8 *glob,
- const FcChar8 *string)
-{
- FcChar8 c;
-
- while ((c = *glob++))
- {
- switch (c) {
- case '*':
- /* short circuit common case */
- if (!*glob)
- return FcTrue;
- /* short circuit another common case */
- if (strchr ((char *) glob, '*') == 0)
- {
- size_t l1, l2;
-
- l1 = strlen ((char *) string);
- l2 = strlen ((char *) glob);
- if (l1 < l2)
- return FcFalse;
- string += (l1 - l2);
- }
- while (*string)
- {
- if (FcConfigGlobMatch (glob, string))
- return FcTrue;
- string++;
- }
- return FcFalse;
- case '?':
- if (*string++ == '\0')
- return FcFalse;
- break;
- default:
- if (*string++ != c)
- return FcFalse;
- break;
- }
- }
- return *string == '\0';
-}
-
-static FcBool
FcConfigGlobsMatch (const FcStrSet *globs,
const FcChar8 *string)
{
int i;
for (i = 0; i < globs->num; i++)
- if (FcConfigGlobMatch (globs->strs[i], string))
+ if (FcStrGlobMatch (globs->strs[i], string))
return FcTrue;
return FcFalse;
}
@@ -2292,6 +2366,66 @@ FcConfigAcceptFont (FcConfig *config,
return FcFalse;
return FcTrue;
}
+
+const FcChar8 *
+FcConfigGetSysRoot (const FcConfig *config)
+{
+ if (!config)
+ {
+ config = FcConfigGetCurrent ();
+ if (!config)
+ return NULL;
+ }
+
+ return config->sysRoot;
+}
+
+void
+FcConfigSetSysRoot (FcConfig *config,
+ const FcChar8 *sysroot)
+{
+ FcChar8 *s = NULL;
+ FcBool init = FcFalse;
+
+ if (!config)
+ {
+ /* We can't use FcConfigGetCurrent() here to ensure
+ * the sysroot is set prior to initialize FcConfig,
+ * to avoid loading caches from non-sysroot dirs.
+ * So postpone the initialization later.
+ */
+ config = fc_atomic_ptr_get (&_fcConfig);
+ if (!config)
+ {
+ config = FcConfigCreate ();
+ if (!config)
+ return;
+ init = FcTrue;
+ }
+ }
+
+ if (sysroot)
+ {
+ s = FcStrCopyFilename (sysroot);
+ if (!s)
+ return;
+ }
+
+ if (config->sysRoot)
+ FcStrFree (config->sysRoot);
+
+ config->sysRoot = s;
+ if (init)
+ {
+ config = FcInitLoadOwnConfigAndFonts (config);
+ FcConfigSetCurrent (config);
+ /* FcConfigSetCurrent() increases the refcount.
+ * decrease it here to avoid the memory leak.
+ */
+ FcConfigDestroy (config);
+ }
+}
+
#define __fccfg__
#include "fcaliastail.h"
#undef __fccfg__
diff --git a/src/fccharset.c b/src/fccharset.c
index c9f928cd..6e0093f1 100644
--- a/src/fccharset.c
+++ b/src/fccharset.c
@@ -43,6 +43,21 @@ FcCharSetCreate (void)
}
FcCharSet *
+FcCharSetPromote (FcValuePromotionBuffer *vbuf)
+{
+ FcCharSet *fcs = (FcCharSet *) vbuf;
+
+ FC_ASSERT_STATIC (sizeof (FcCharSet) <= sizeof (FcValuePromotionBuffer));
+
+ FcRefSetConst (&fcs->ref);
+ fcs->num = 0;
+ fcs->leaves_offset = 0;
+ fcs->numbers_offset = 0;
+
+ return fcs;
+}
+
+FcCharSet *
FcCharSetNew (void)
{
return FcCharSetCreate ();
@@ -800,188 +815,123 @@ FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
return page;
}
-/*
- * ASCII representation of charsets.
- *
- * Each leaf is represented as 9 32-bit values, the code of the first character followed
- * by 8 32 bit values for the leaf itself. Each value is encoded as 5 ASCII characters,
- * only 85 different values are used to avoid control characters as well as the other
- * characters used to encode font names. 85**5 > 2^32 so things work out, but
- * it's not exactly human readable output. As a special case, 0 is encoded as a space
- */
-
-static const unsigned char charToValue[256] = {
- /* "" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\b" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\020" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\030" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* " " */ 0xff, 0x00, 0xff, 0x01, 0x02, 0x03, 0x04, 0xff,
- /* "(" */ 0x05, 0x06, 0x07, 0x08, 0xff, 0xff, 0x09, 0x0a,
- /* "0" */ 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
- /* "8" */ 0x13, 0x14, 0xff, 0x15, 0x16, 0xff, 0x17, 0x18,
- /* "@" */ 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
- /* "H" */ 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
- /* "P" */ 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
- /* "X" */ 0x31, 0x32, 0x33, 0x34, 0xff, 0x35, 0x36, 0xff,
- /* "`" */ 0xff, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
- /* "h" */ 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
- /* "p" */ 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
- /* "x" */ 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0xff,
- /* "\200" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\210" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\220" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\230" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\240" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\250" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\260" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\270" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\300" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\310" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\320" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\330" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\340" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\350" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\360" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- /* "\370" */ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-};
-
-static const FcChar8 valueToChar[0x55] = {
- /* 0x00 */ '!', '#', '$', '%', '&', '(', ')', '*',
- /* 0x08 */ '+', '.', '/', '0', '1', '2', '3', '4',
- /* 0x10 */ '5', '6', '7', '8', '9', ';', '<', '>',
- /* 0x18 */ '?', '@', 'A', 'B', 'C', 'D', 'E', 'F',
- /* 0x20 */ 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N',
- /* 0x28 */ 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
- /* 0x30 */ 'W', 'X', 'Y', 'Z', '[', ']', '^', 'a',
- /* 0x38 */ 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
- /* 0x40 */ 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q',
- /* 0x48 */ 'r', 's', 't', 'u', 'v', 'w', 'x', 'y',
- /* 0x50 */ 'z', '{', '|', '}', '~',
-};
-
-static FcChar8 *
-FcCharSetParseValue (FcChar8 *string, FcChar32 *value)
-{
- int i;
- FcChar32 v;
- FcChar32 c;
-
- if (*string == ' ')
- {
- v = 0;
- string++;
- }
- else
- {
- v = 0;
- for (i = 0; i < 5; i++)
- {
- if (!(c = (FcChar32) (unsigned char) *string++))
- return 0;
- c = charToValue[c];
- if (c == 0xff)
- return 0;
- v = v * 85 + c;
- }
- }
- *value = v;
- return string;
-}
-
static FcBool
-FcCharSetUnparseValue (FcStrBuf *buf, FcChar32 value)
+FcNameParseRange (FcChar8 **string, FcChar32 *pfirst, FcChar32 *plast)
{
- int i;
- if (value == 0)
- {
- return FcStrBufChar (buf, ' ');
- }
- else
- {
- FcChar8 string[6];
- FcChar8 *s = string + 5;
- string[5] = '\0';
- for (i = 0; i < 5; i++)
+ char *s = (char *) *string;
+ char *t;
+ long first, last;
+
+ while (isspace(*s))
+ s++;
+ t = s;
+ errno = 0;
+ first = last = strtol (s, &s, 16);
+ if (errno)
+ return FcFalse;
+ while (isspace(*s))
+ s++;
+ if (*s == '-')
{
- *--s = valueToChar[value % 85];
- value /= 85;
- }
- for (i = 0; i < 5; i++)
- if (!FcStrBufChar (buf, *s++))
+ s++;
+ errno = 0;
+ last = strtol (s, &s, 16);
+ if (errno)
return FcFalse;
- }
- return FcTrue;
+ }
+
+ if (s == t || first < 0 || last < 0 || last < first || last > 0x10ffff)
+ return FcFalse;
+
+ *string = (FcChar8 *) s;
+ *pfirst = first;
+ *plast = last;
+ return FcTrue;
}
FcCharSet *
FcNameParseCharSet (FcChar8 *string)
{
FcCharSet *c;
- FcChar32 ucs4;
- FcCharLeaf *leaf;
- FcCharLeaf temp;
- FcChar32 bits;
- int i;
+ FcChar32 first, last;
c = FcCharSetCreate ();
if (!c)
goto bail0;
while (*string)
{
- string = FcCharSetParseValue (string, &ucs4);
- if (!string)
- goto bail1;
- bits = 0;
- for (i = 0; i < 256/32; i++)
- {
- string = FcCharSetParseValue (string, &temp.map[i]);
- if (!string)
- goto bail1;
- bits |= temp.map[i];
- }
- if (bits)
- {
- leaf = malloc (sizeof (FcCharLeaf));
- if (!leaf)
- goto bail1;
- *leaf = temp;
- if (!FcCharSetInsertLeaf (c, ucs4, leaf))
+ FcChar32 u;
+
+ if (!FcNameParseRange (&string, &first, &last))
goto bail1;
- }
+
+ for (u = first; u < last + 1; u++)
+ FcCharSetAddChar (c, u);
}
return c;
bail1:
- if (c->num)
- {
- free (FcCharSetLeaves (c));
- }
- if (c->num)
- {
- free (FcCharSetNumbers (c));
- }
- free (c);
+ FcCharSetDestroy (c);
bail0:
return NULL;
}
+static void
+FcNameUnparseUnicode (FcStrBuf *buf, FcChar32 u)
+{
+ FcChar8 buf_static[64];
+ snprintf ((char *) buf_static, sizeof (buf_static), "%x", u);
+ FcStrBufString (buf, buf_static);
+}
+
FcBool
FcNameUnparseCharSet (FcStrBuf *buf, const FcCharSet *c)
{
FcCharSetIter ci;
+ FcChar32 first, last;
int i;
#ifdef CHECK
int len = buf->len;
#endif
+ first = last = 0x7FFFFFFF;
+
for (FcCharSetIterStart (c, &ci);
ci.leaf;
FcCharSetIterNext (c, &ci))
{
- if (!FcCharSetUnparseValue (buf, ci.ucs4))
- return FcFalse;
for (i = 0; i < 256/32; i++)
- if (!FcCharSetUnparseValue (buf, ci.leaf->map[i]))
- return FcFalse;
+ {
+ FcChar32 bits = ci.leaf->map[i];
+ FcChar32 u = ci.ucs4 + i * 32;
+
+ while (bits)
+ {
+ if (bits & 1)
+ {
+ if (u != last + 1)
+ {
+ if (last != first)
+ {
+ FcStrBufChar (buf, '-');
+ FcNameUnparseUnicode (buf, last);
+ }
+ if (last != 0x7FFFFFFF)
+ FcStrBufChar (buf, ' ');
+ /* Start new range. */
+ first = u;
+ FcNameUnparseUnicode (buf, u);
+ }
+ last = u;
+ }
+ bits >>= 1;
+ u++;
+ }
+ }
+ }
+ if (last != first)
+ {
+ FcStrBufChar (buf, '-');
+ FcNameUnparseUnicode (buf, last);
}
#ifdef CHECK
{
diff --git a/src/fccompat.c b/src/fccompat.c
index 169cab9e..31d80bef 100644
--- a/src/fccompat.c
+++ b/src/fccompat.c
@@ -25,17 +25,22 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
#include "fcint.h"
+#include <errno.h>
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
#if HAVE_FCNTL_H
#include <fcntl.h>
#endif
#include <stdarg.h>
#include <stdlib.h>
+#include <string.h>
+#include <time.h>
#ifdef O_CLOEXEC
#define FC_O_CLOEXEC O_CLOEXEC
@@ -47,6 +52,58 @@
#else
#define FC_O_LARGEFILE 0
#endif
+#ifdef O_BINARY
+#define FC_O_BINARY O_BINARY
+#else
+#define FC_O_BINARY 0
+#endif
+#ifdef O_TEMPORARY
+#define FC_O_TEMPORARY O_TEMPORARY
+#else
+#define FC_O_TEMPORARY 0
+#endif
+#ifdef O_NOINHERIT
+#define FC_O_NOINHERIT O_NOINHERIT
+#else
+#define FC_O_NOINHERIT 0
+#endif
+
+#if !defined (HAVE_MKOSTEMP) && !defined(HAVE_MKSTEMP) && !defined(HAVE__MKTEMP_S)
+static int
+mkstemp (char *template)
+{
+ static const char s[] = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ int fd, i;
+ size_t l;
+
+ if (template == NULL)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ l = strlen (template);
+ if (l < 6 || strcmp (&template[l - 6], "XXXXXX") != 0)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ do
+ {
+ errno = 0;
+ for (i = l - 6; i < l; i++)
+ {
+ int r = FcRandom ();
+ template[i] = s[r % 62];
+ }
+ fd = FcOpen (template, FC_O_BINARY | O_CREAT | O_EXCL | FC_O_TEMPORARY | FC_O_NOINHERIT | O_RDWR, 0600);
+ } while (fd < 0 && errno == EEXIST);
+ if (fd >= 0)
+ errno = 0;
+
+ return fd;
+}
+#define HAVE_MKSTEMP 1
+#endif
int
FcOpen(const char *pathname, int flags, ...)
@@ -84,7 +141,7 @@ FcMakeTempfile (char *template)
# ifdef F_DUPFD_CLOEXEC
if (fd != -1)
{
- int newfd = fcntl(fd, F_DUPFD_CLOEXEC);
+ int newfd = fcntl(fd, F_DUPFD_CLOEXEC, STDIN_FILENO);
close(fd);
fd = newfd;
@@ -99,9 +156,106 @@ FcMakeTempfile (char *template)
if (_mktemp_s(template, strlen(template) + 1) != 0)
return -1;
fd = FcOpen(template, O_RDWR | O_EXCL | O_CREAT, 0600);
-#else
-#error no secure functions to create a temporary file
#endif
return fd;
}
+
+int32_t
+FcRandom(void)
+{
+ int32_t result;
+
+#if HAVE_RANDOM_R
+ static struct random_data fcrandbuf;
+ static char statebuf[256];
+ static FcBool initialized = FcFalse;
+#ifdef _AIX
+ static char *retval;
+ long res;
+#endif
+
+ if (initialized != FcTrue)
+ {
+#ifdef _AIX
+ initstate_r (time (NULL), statebuf, 256, &retval, &fcrandbuf);
+#else
+ initstate_r (time (NULL), statebuf, 256, &fcrandbuf);
+#endif
+ initialized = FcTrue;
+ }
+
+#ifdef _AIX
+ random_r (&res, &fcrandbuf);
+ result = (int32_t)res;
+#else
+ random_r (&fcrandbuf, &result);
+#endif
+#elif HAVE_RANDOM
+ static char statebuf[256];
+ char *state;
+ static FcBool initialized = FcFalse;
+
+ if (initialized != FcTrue)
+ {
+ state = initstate (time (NULL), statebuf, 256);
+ initialized = FcTrue;
+ }
+ else
+ state = setstate (statebuf);
+
+ result = random ();
+
+ setstate (state);
+#elif HAVE_LRAND48
+ result = lrand48 ();
+#elif HAVE_RAND_R
+ static unsigned int seed = time (NULL);
+
+ result = rand_r (&seed);
+#elif HAVE_RAND
+ static FcBool initialized = FcFalse;
+
+ if (initialized != FcTrue)
+ {
+ srand (time (NULL));
+ initialized = FcTrue;
+ }
+ result = rand ();
+#else
+# error no random number generator function available.
+#endif
+
+ return result;
+}
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+#endif
+
+FcBool
+FcMakeDirectory (const FcChar8 *dir)
+{
+ FcChar8 *parent;
+ FcBool ret;
+
+ if (strlen ((char *) dir) == 0)
+ return FcFalse;
+
+ parent = FcStrDirname (dir);
+ if (!parent)
+ return FcFalse;
+ if (access ((char *) parent, F_OK) == 0)
+ ret = mkdir ((char *) dir, 0755) == 0 && chmod ((char *) dir, 0755) == 0;
+ else if (access ((char *) parent, F_OK) == -1)
+ ret = FcMakeDirectory (parent) && (mkdir ((char *) dir, 0755) == 0) && chmod ((char *) dir, 0755) == 0;
+ else
+ ret = FcFalse;
+ FcStrFree (parent);
+ return ret;
+}
+
+#define __fccompat__
+#include "fcaliastail.h"
+#undef __fccompat__
diff --git a/src/fcdbg.c b/src/fcdbg.c
index 270d7917..ef038f01 100644
--- a/src/fcdbg.c
+++ b/src/fcdbg.c
@@ -29,7 +29,12 @@
static void
_FcValuePrintFile (FILE *f, const FcValue v)
{
+ FcRange r;
+
switch (v.type) {
+ case FcTypeUnknown:
+ fprintf (f, "<unknown>");
+ break;
case FcTypeVoid:
fprintf (f, "<void>");
break;
@@ -58,6 +63,10 @@ _FcValuePrintFile (FILE *f, const FcValue v)
case FcTypeFTFace:
fprintf (f, "face");
break;
+ case FcTypeRange:
+ r = FcRangeCanonicalize (v.u.r);
+ fprintf (f, "(%g, %g)", r.u.d.begin, r.u.d.end);
+ break;
}
}
@@ -79,7 +88,7 @@ void
FcValuePrintWithPosition (const FcValue v, FcBool show_pos_mark)
{
if (show_pos_mark)
- printf (" [insert here] ");
+ printf (" [marker] ");
else
printf (" ");
_FcValuePrintFile (stdout, v);
@@ -98,6 +107,10 @@ FcValueBindingPrint (const FcValueListPtr l)
case FcValueBindingSame:
printf ("(=)");
break;
+ default:
+ /* shouldn't be reached */
+ printf ("(?)");
+ break;
}
}
@@ -110,7 +123,7 @@ FcValueListPrintWithPosition (FcValueListPtr l, const FcValueListPtr pos)
FcValueBindingPrint (l);
}
if (!pos)
- printf (" [insert here]");
+ printf (" [marker]");
}
void
@@ -222,6 +235,8 @@ FcOpPrint (FcOp op_)
case FcOpPrependFirst: printf ("PrependFirst"); break;
case FcOpAppend: printf ("Append"); break;
case FcOpAppendLast: printf ("AppendLast"); break;
+ case FcOpDelete: printf ("Delete"); break;
+ case FcOpDeleteAll: printf ("DeleteAll"); break;
case FcOpQuest: printf ("Quest"); break;
case FcOpOr: printf ("Or"); break;
case FcOpAnd: printf ("And"); break;
@@ -252,6 +267,8 @@ FcOpPrint (FcOp op_)
void
FcExprPrint (const FcExpr *expr)
{
+ FcRange r;
+
if (!expr) printf ("none");
else switch (FC_OP_GET_OP (expr->op)) {
case FcOpInteger: printf ("%d", expr->u.ival); break;
@@ -268,7 +285,10 @@ FcExprPrint (const FcExpr *expr)
FcExprPrint (expr->u.mexpr->yy);
printf ("]");
break;
- case FcOpRange: break;
+ case FcOpRange:
+ r = FcRangeCanonicalize (expr->u.rval);
+ printf ("(%g, %g)", r.u.d.begin, r.u.d.end);
+ break;
case FcOpBool: printf ("%s", expr->u.bval ? "true" : "false"); break;
case FcOpCharSet: printf ("charset\n"); break;
case FcOpLangSet:
@@ -418,21 +438,38 @@ FcEditPrint (const FcEdit *edit)
void
FcSubstPrint (const FcSubst *subst)
{
- FcEdit *e;
- FcTest *t;
+ FcRule *r;
+ FcRuleType last_type = FcRuleUnknown;
printf ("match\n");
- for (t = subst->test; t; t = t->next)
- {
- printf ("\t");
- FcTestPrint (t);
- }
- printf ("edit\n");
- for (e = subst->edit; e; e = e->next)
+ for (r = subst->rule; r; r = r->next)
{
+ if (last_type != r->type)
+ {
+ switch (r->type) {
+ case FcRuleTest:
+ printf ("[test]\n");
+ break;
+ case FcRuleEdit:
+ printf ("[edit]\n");
+ break;
+ default:
+ break;
+ }
+ last_type = r->type;
+ }
printf ("\t");
- FcEditPrint (e);
- printf (";\n");
+ switch (r->type) {
+ case FcRuleTest:
+ FcTestPrint (r->u.test);
+ break;
+ case FcRuleEdit:
+ FcEditPrint (r->u.edit);
+ printf (";\n");
+ break;
+ default:
+ break;
+ }
}
printf ("\n");
}
diff --git a/src/fcdefault.c b/src/fcdefault.c
index 6937994b..7c16f484 100644
--- a/src/fcdefault.c
+++ b/src/fcdefault.c
@@ -23,6 +23,7 @@
*/
#include "fcint.h"
+#include <limits.h>
#include <string.h>
/* MT-safe */
@@ -104,11 +105,97 @@ retry:
return lang;
}
+static FcChar8 *default_prgname;
+
+FcChar8 *
+FcGetPrgname (void)
+{
+ FcChar8 *prgname;
+retry:
+ prgname = fc_atomic_ptr_get (&default_prgname);
+ if (!prgname)
+ {
+#ifdef _WIN32
+ char buf[MAX_PATH+1];
+
+ /* TODO This is ASCII-only; fix it. */
+ if (GetModuleFileNameA (GetModuleHandle (NULL), buf, sizeof (buf) / sizeof (buf[0])) > 0)
+ {
+ char *p;
+ unsigned int len;
+
+ p = strrchr (buf, '\\');
+ if (p)
+ p++;
+ else
+ p = buf;
+
+ len = strlen (p);
+
+ if (len > 4 && 0 == strcmp (p + len - 4, ".exe"))
+ {
+ len -= 4;
+ buf[len] = '\0';
+ }
+
+ prgname = FcStrdup (p);
+ }
+#elif defined (HAVE_GETPROGNAME)
+ const char *q = getprogname ();
+ if (q)
+ prgname = FcStrdup (q);
+ else
+ prgname = FcStrdup ("");
+#else
+# if defined (HAVE_GETEXECNAME)
+ const char *p = getexecname ();
+# elif defined (HAVE_READLINK)
+ char buf[PATH_MAX + 1];
+ int len;
+ char *p = NULL;
+
+ len = readlink ("/proc/self/exe", buf, sizeof (buf) - 1);
+ if (len != -1)
+ {
+ buf[len] = '\0';
+ p = buf;
+ }
+# else
+ char *p = NULL;
+# endif
+ if (p)
+ {
+ char *r = strrchr (p, '/');
+ if (r)
+ r++;
+ else
+ r = p;
+
+ prgname = FcStrdup (r);
+ }
+
+ if (!prgname)
+ prgname = FcStrdup ("");
+#endif
+
+ if (!fc_atomic_ptr_cmpexch (&default_prgname, NULL, prgname)) {
+ free (prgname);
+ goto retry;
+ }
+ }
+
+ if (prgname && !prgname[0])
+ return NULL;
+
+ return prgname;
+}
+
void
FcDefaultFini (void)
{
FcChar8 *lang;
FcStrSet *langs;
+ FcChar8 *prgname;
lang = fc_atomic_ptr_get (&default_lang);
if (lang && fc_atomic_ptr_cmpexch (&default_lang, lang, NULL)) {
@@ -120,6 +207,11 @@ FcDefaultFini (void)
FcRefInit (&langs->ref, 1);
FcStrSetDestroy (langs);
}
+
+ prgname = fc_atomic_ptr_get (&default_prgname);
+ if (prgname && fc_atomic_ptr_cmpexch (&default_prgname, prgname, NULL)) {
+ free (prgname);
+ }
}
void
@@ -127,9 +219,10 @@ FcDefaultSubstitute (FcPattern *pattern)
{
FcValue v, namelang, v2;
int i;
+ double dpi, size, scale, pixelsize;
if (FcPatternObjectGet (pattern, FC_WEIGHT_OBJECT, 0, &v) == FcResultNoMatch )
- FcPatternObjectAddInteger (pattern, FC_WEIGHT_OBJECT, FC_WEIGHT_MEDIUM);
+ FcPatternObjectAddInteger (pattern, FC_WEIGHT_OBJECT, FC_WEIGHT_NORMAL);
if (FcPatternObjectGet (pattern, FC_SLANT_OBJECT, 0, &v) == FcResultNoMatch)
FcPatternObjectAddInteger (pattern, FC_SLANT_OBJECT, FC_SLANT_ROMAN);
@@ -141,32 +234,30 @@ FcDefaultSubstitute (FcPattern *pattern)
if (FcPatternObjectGet (pattern, FcBoolDefaults[i].field, 0, &v) == FcResultNoMatch)
FcPatternObjectAddBool (pattern, FcBoolDefaults[i].field, FcBoolDefaults[i].value);
- if (FcPatternObjectGet (pattern, FC_PIXEL_SIZE_OBJECT, 0, &v) == FcResultNoMatch)
- {
- double dpi, size, scale;
+ if (FcPatternObjectGetDouble (pattern, FC_SIZE_OBJECT, 0, &size) != FcResultMatch)
+ size = 12.0L;
+ if (FcPatternObjectGetDouble (pattern, FC_SCALE_OBJECT, 0, &scale) != FcResultMatch)
+ scale = 1.0;
+ if (FcPatternObjectGetDouble (pattern, FC_DPI_OBJECT, 0, &dpi) != FcResultMatch)
+ dpi = 75.0;
- if (FcPatternObjectGetDouble (pattern, FC_SIZE_OBJECT, 0, &size) != FcResultMatch)
- {
- size = 12.0;
- (void) FcPatternObjectDel (pattern, FC_SIZE_OBJECT);
- FcPatternObjectAddDouble (pattern, FC_SIZE_OBJECT, size);
- }
- if (FcPatternObjectGetDouble (pattern, FC_SCALE_OBJECT, 0, &scale) != FcResultMatch)
- {
- scale = 1.0;
- (void) FcPatternObjectDel (pattern, FC_SCALE_OBJECT);
- FcPatternObjectAddDouble (pattern, FC_SCALE_OBJECT, scale);
- }
- size *= scale;
- if (FcPatternObjectGetDouble (pattern, FC_DPI_OBJECT, 0, &dpi) != FcResultMatch)
- {
- dpi = 75.0;
- (void) FcPatternObjectDel (pattern, FC_DPI_OBJECT);
- FcPatternObjectAddDouble (pattern, FC_DPI_OBJECT, dpi);
- }
- size *= dpi / 72.0;
- FcPatternObjectAddDouble (pattern, FC_PIXEL_SIZE_OBJECT, size);
+ if (FcPatternObjectGet (pattern, FC_PIXEL_SIZE_OBJECT, 0, &v) != FcResultMatch)
+ {
+ (void) FcPatternObjectDel (pattern, FC_SCALE_OBJECT);
+ FcPatternObjectAddDouble (pattern, FC_SCALE_OBJECT, scale);
+ pixelsize = size * scale;
+ (void) FcPatternObjectDel (pattern, FC_DPI_OBJECT);
+ FcPatternObjectAddDouble (pattern, FC_DPI_OBJECT, dpi);
+ pixelsize *= dpi / 72.0;
+ FcPatternObjectAddDouble (pattern, FC_PIXEL_SIZE_OBJECT, pixelsize);
}
+ else
+ {
+ size = v.u.d;
+ size = size / dpi * 72.0 / scale;
+ }
+ (void) FcPatternObjectDel (pattern, FC_SIZE_OBJECT);
+ FcPatternObjectAddDouble (pattern, FC_SIZE_OBJECT, size);
if (FcPatternObjectGet (pattern, FC_FONTVERSION_OBJECT, 0, &v) == FcResultNoMatch)
{
@@ -195,7 +286,7 @@ FcDefaultSubstitute (FcPattern *pattern)
* exact matched "en" has higher score than ll-cc.
*/
v2.type = FcTypeString;
- v2.u.s = FcStrdup ("en-us");
+ v2.u.s = (FcChar8 *) "en-us";
if (FcPatternObjectGet (pattern, FC_FAMILYLANG_OBJECT, 0, &v) == FcResultNoMatch)
{
FcPatternObjectAdd (pattern, FC_FAMILYLANG_OBJECT, namelang, FcTrue);
@@ -211,7 +302,13 @@ FcDefaultSubstitute (FcPattern *pattern)
FcPatternObjectAdd (pattern, FC_FULLNAMELANG_OBJECT, namelang, FcTrue);
FcPatternObjectAddWithBinding (pattern, FC_FULLNAMELANG_OBJECT, v2, FcValueBindingWeak, FcTrue);
}
- FcFree (v2.u.s);
+
+ if (FcPatternObjectGet (pattern, FC_PRGNAME_OBJECT, 0, &v) == FcResultNoMatch)
+ {
+ FcChar8 *prgname = FcGetPrgname ();
+ if (prgname)
+ FcPatternObjectAddString (pattern, FC_PRGNAME_OBJECT, prgname);
+ }
}
#define __fcdefault__
#include "fcaliastail.h"
diff --git a/src/fcdir.c b/src/fcdir.c
index dc580bb6..593382f4 100644
--- a/src/fcdir.c
+++ b/src/fcdir.c
@@ -49,6 +49,16 @@ FcFileIsLink (const FcChar8 *file)
#endif
}
+FcBool
+FcFileIsFile (const FcChar8 *file)
+{
+ struct stat statb;
+
+ if (FcStat (file, &statb) != 0)
+ return FcFalse;
+ return S_ISREG (statb.st_mode);
+}
+
static FcBool
FcFileScanFontConfig (FcFontSet *set,
FcBlanks *blanks,
@@ -59,6 +69,7 @@ FcFileScanFontConfig (FcFontSet *set,
FcBool ret = FcTrue;
int id;
int count = 0;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
id = 0;
do
@@ -75,6 +86,28 @@ FcFileScanFontConfig (FcFontSet *set,
font = FcFreeTypeQuery (file, id, blanks, &count);
if (FcDebug () & FC_DBG_SCAN)
printf ("done\n");
+ /*
+ * Get rid of sysroot here so that targeting scan rule may contains FC_FILE pattern
+ * and they should usually expect without sysroot.
+ */
+ if (sysroot)
+ {
+ size_t len = strlen ((const char *)sysroot);
+ FcChar8 *f = NULL;
+
+ if (FcPatternObjectGetString (font, FC_FILE_OBJECT, 0, &f) == FcResultMatch &&
+ strncmp ((const char *)f, (const char *)sysroot, len) == 0)
+ {
+ FcChar8 *s = FcStrdup (f);
+ FcPatternObjectDel (font, FC_FILE_OBJECT);
+ if (s[len] != '/')
+ len--;
+ else if (s[len+1] == '/')
+ len++;
+ FcPatternObjectAddString (font, FC_FILE_OBJECT, &s[len]);
+ FcStrFree (s);
+ }
+ }
/*
* Edit pattern with user-defined rules
@@ -118,9 +151,32 @@ FcFileScanConfig (FcFontSet *set,
FcConfig *config)
{
if (FcFileIsDir (file))
- return FcStrSetAdd (dirs, file);
+ {
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ const FcChar8 *d = file;
+ size_t len;
+
+ if (sysroot)
+ {
+ len = strlen ((const char *)sysroot);
+ if (strncmp ((const char *)file, (const char *)sysroot, len) == 0)
+ {
+ if (file[len] != '/')
+ len--;
+ else if (file[len+1] == '/')
+ len++;
+ d = &file[len];
+ }
+ }
+ return FcStrSetAdd (dirs, d);
+ }
else
- return FcFileScanFontConfig (set, blanks, file, config);
+ {
+ if (set)
+ return FcFileScanFontConfig (set, blanks, file, config);
+ else
+ return FcTrue;
+ }
}
FcBool
@@ -149,7 +205,8 @@ FcDirScanConfig (FcFontSet *set,
FcBlanks *blanks,
const FcChar8 *dir,
FcBool force, /* XXX unused */
- FcConfig *config)
+ FcConfig *config,
+ FcBool scanOnly)
{
DIR *d;
struct dirent *e;
@@ -165,7 +222,7 @@ FcDirScanConfig (FcFontSet *set,
if (!set && !dirs)
return FcTrue;
- if (!blanks)
+ if (!blanks && !scanOnly)
blanks = FcConfigGetBlanks (config);
/* freed below */
@@ -218,7 +275,17 @@ FcDirScanConfig (FcFontSet *set,
* Scan file files to build font patterns
*/
for (i = 0; i < files->num; i++)
- FcFileScanConfig (set, dirs, blanks, files->strs[i], config);
+ {
+ if (scanOnly)
+ {
+ if (FcFileIsDir (files->strs[i]))
+ FcFileScanConfig (NULL, dirs, NULL, files->strs[i], config);
+ }
+ else
+ {
+ FcFileScanConfig (set, dirs, blanks, files->strs[i], config);
+ }
+ }
bail2:
FcStrSetDestroy (files);
@@ -242,7 +309,15 @@ FcDirScan (FcFontSet *set,
if (cache || !force)
return FcFalse;
- return FcDirScanConfig (set, dirs, blanks, dir, force, FcConfigGetCurrent ());
+ return FcDirScanConfig (set, dirs, blanks, dir, force, FcConfigGetCurrent (), FcFalse);
+}
+
+FcBool
+FcDirScanOnly (FcStrSet *dirs,
+ const FcChar8 *dir,
+ FcConfig *config)
+{
+ return FcDirScanConfig (NULL, dirs, NULL, dir, FcTrue, config, FcTrue);
}
/*
@@ -255,11 +330,18 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
FcFontSet *set;
FcCache *cache = NULL;
struct stat dir_stat;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ FcChar8 *d;
+
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, dir, NULL);
+ else
+ d = FcStrdup (dir);
if (FcDebug () & FC_DBG_FONTSET)
- printf ("cache scan dir %s\n", dir);
+ printf ("cache scan dir %s\n", d);
- if (FcStatChecksum (dir, &dir_stat) < 0)
+ if (FcStatChecksum (d, &dir_stat) < 0)
goto bail;
set = FcFontSetCreate();
@@ -273,7 +355,7 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
/*
* Scan the dir
*/
- if (!FcDirScanConfig (set, dirs, NULL, dir, FcTrue, config))
+ if (!FcDirScanConfig (set, dirs, NULL, d, FcTrue, config, FcFalse))
goto bail2;
/*
@@ -293,9 +375,61 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
bail1:
FcFontSetDestroy (set);
bail:
+ FcStrFree (d);
+
return cache;
}
+FcCache *
+FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
+{
+ FcCache *cache;
+ FcCache *new = NULL;
+ struct stat dir_stat;
+ FcStrSet *dirs;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ FcChar8 *d = NULL;
+
+ cache = FcDirCacheLoad (dir, config, NULL);
+ if (!cache)
+ goto bail;
+
+ if (sysroot)
+ d = FcStrBuildFilename (sysroot, dir, NULL);
+ else
+ d = FcStrdup (dir);
+ if (FcStatChecksum (d, &dir_stat) < 0)
+ goto bail;
+ dirs = FcStrSetCreate ();
+ if (!dirs)
+ goto bail;
+
+ /*
+ * Scan the dir
+ */
+ if (!FcDirScanConfig (NULL, dirs, NULL, d, FcTrue, config, FcFalse))
+ goto bail1;
+ /*
+ * Rebuild the cache object
+ */
+ new = FcDirCacheRebuild (cache, &dir_stat, dirs);
+ if (!new)
+ goto bail1;
+ FcDirCacheUnload (cache);
+ /*
+ * Write out the cache file, ignoring any troubles
+ */
+ FcDirCacheWrite (new, config);
+
+bail1:
+ FcStrSetDestroy (dirs);
+bail:
+ if (d)
+ FcStrFree (d);
+
+ return new;
+}
+
/*
* Read (or construct) the cache for a directory
*/
diff --git a/src/fcfreetype.c b/src/fcfreetype.c
index 9ac2fa90..50ff3489 100644
--- a/src/fcfreetype.c
+++ b/src/fcfreetype.c
@@ -558,6 +558,139 @@ FcFontCapabilities(FT_Face face);
#define NUM_FC_MAC_ROMAN_FAKE (int) (sizeof (fcMacRomanFake) / sizeof (fcMacRomanFake[0]))
+
+/* From http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/ROMAN.TXT */
+static const FcChar16 fcMacRomanNonASCIIToUnicode[128] = {
+ /*0x80*/ 0x00C4, /* LATIN CAPITAL LETTER A WITH DIAERESIS */
+ /*0x81*/ 0x00C5, /* LATIN CAPITAL LETTER A WITH RING ABOVE */
+ /*0x82*/ 0x00C7, /* LATIN CAPITAL LETTER C WITH CEDILLA */
+ /*0x83*/ 0x00C9, /* LATIN CAPITAL LETTER E WITH ACUTE */
+ /*0x84*/ 0x00D1, /* LATIN CAPITAL LETTER N WITH TILDE */
+ /*0x85*/ 0x00D6, /* LATIN CAPITAL LETTER O WITH DIAERESIS */
+ /*0x86*/ 0x00DC, /* LATIN CAPITAL LETTER U WITH DIAERESIS */
+ /*0x87*/ 0x00E1, /* LATIN SMALL LETTER A WITH ACUTE */
+ /*0x88*/ 0x00E0, /* LATIN SMALL LETTER A WITH GRAVE */
+ /*0x89*/ 0x00E2, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */
+ /*0x8A*/ 0x00E4, /* LATIN SMALL LETTER A WITH DIAERESIS */
+ /*0x8B*/ 0x00E3, /* LATIN SMALL LETTER A WITH TILDE */
+ /*0x8C*/ 0x00E5, /* LATIN SMALL LETTER A WITH RING ABOVE */
+ /*0x8D*/ 0x00E7, /* LATIN SMALL LETTER C WITH CEDILLA */
+ /*0x8E*/ 0x00E9, /* LATIN SMALL LETTER E WITH ACUTE */
+ /*0x8F*/ 0x00E8, /* LATIN SMALL LETTER E WITH GRAVE */
+ /*0x90*/ 0x00EA, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */
+ /*0x91*/ 0x00EB, /* LATIN SMALL LETTER E WITH DIAERESIS */
+ /*0x92*/ 0x00ED, /* LATIN SMALL LETTER I WITH ACUTE */
+ /*0x93*/ 0x00EC, /* LATIN SMALL LETTER I WITH GRAVE */
+ /*0x94*/ 0x00EE, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */
+ /*0x95*/ 0x00EF, /* LATIN SMALL LETTER I WITH DIAERESIS */
+ /*0x96*/ 0x00F1, /* LATIN SMALL LETTER N WITH TILDE */
+ /*0x97*/ 0x00F3, /* LATIN SMALL LETTER O WITH ACUTE */
+ /*0x98*/ 0x00F2, /* LATIN SMALL LETTER O WITH GRAVE */
+ /*0x99*/ 0x00F4, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */
+ /*0x9A*/ 0x00F6, /* LATIN SMALL LETTER O WITH DIAERESIS */
+ /*0x9B*/ 0x00F5, /* LATIN SMALL LETTER O WITH TILDE */
+ /*0x9C*/ 0x00FA, /* LATIN SMALL LETTER U WITH ACUTE */
+ /*0x9D*/ 0x00F9, /* LATIN SMALL LETTER U WITH GRAVE */
+ /*0x9E*/ 0x00FB, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */
+ /*0x9F*/ 0x00FC, /* LATIN SMALL LETTER U WITH DIAERESIS */
+ /*0xA0*/ 0x2020, /* DAGGER */
+ /*0xA1*/ 0x00B0, /* DEGREE SIGN */
+ /*0xA2*/ 0x00A2, /* CENT SIGN */
+ /*0xA3*/ 0x00A3, /* POUND SIGN */
+ /*0xA4*/ 0x00A7, /* SECTION SIGN */
+ /*0xA5*/ 0x2022, /* BULLET */
+ /*0xA6*/ 0x00B6, /* PILCROW SIGN */
+ /*0xA7*/ 0x00DF, /* LATIN SMALL LETTER SHARP S */
+ /*0xA8*/ 0x00AE, /* REGISTERED SIGN */
+ /*0xA9*/ 0x00A9, /* COPYRIGHT SIGN */
+ /*0xAA*/ 0x2122, /* TRADE MARK SIGN */
+ /*0xAB*/ 0x00B4, /* ACUTE ACCENT */
+ /*0xAC*/ 0x00A8, /* DIAERESIS */
+ /*0xAD*/ 0x2260, /* NOT EQUAL TO */
+ /*0xAE*/ 0x00C6, /* LATIN CAPITAL LETTER AE */
+ /*0xAF*/ 0x00D8, /* LATIN CAPITAL LETTER O WITH STROKE */
+ /*0xB0*/ 0x221E, /* INFINITY */
+ /*0xB1*/ 0x00B1, /* PLUS-MINUS SIGN */
+ /*0xB2*/ 0x2264, /* LESS-THAN OR EQUAL TO */
+ /*0xB3*/ 0x2265, /* GREATER-THAN OR EQUAL TO */
+ /*0xB4*/ 0x00A5, /* YEN SIGN */
+ /*0xB5*/ 0x00B5, /* MICRO SIGN */
+ /*0xB6*/ 0x2202, /* PARTIAL DIFFERENTIAL */
+ /*0xB7*/ 0x2211, /* N-ARY SUMMATION */
+ /*0xB8*/ 0x220F, /* N-ARY PRODUCT */
+ /*0xB9*/ 0x03C0, /* GREEK SMALL LETTER PI */
+ /*0xBA*/ 0x222B, /* INTEGRAL */
+ /*0xBB*/ 0x00AA, /* FEMININE ORDINAL INDICATOR */
+ /*0xBC*/ 0x00BA, /* MASCULINE ORDINAL INDICATOR */
+ /*0xBD*/ 0x03A9, /* GREEK CAPITAL LETTER OMEGA */
+ /*0xBE*/ 0x00E6, /* LATIN SMALL LETTER AE */
+ /*0xBF*/ 0x00F8, /* LATIN SMALL LETTER O WITH STROKE */
+ /*0xC0*/ 0x00BF, /* INVERTED QUESTION MARK */
+ /*0xC1*/ 0x00A1, /* INVERTED EXCLAMATION MARK */
+ /*0xC2*/ 0x00AC, /* NOT SIGN */
+ /*0xC3*/ 0x221A, /* SQUARE ROOT */
+ /*0xC4*/ 0x0192, /* LATIN SMALL LETTER F WITH HOOK */
+ /*0xC5*/ 0x2248, /* ALMOST EQUAL TO */
+ /*0xC6*/ 0x2206, /* INCREMENT */
+ /*0xC7*/ 0x00AB, /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */
+ /*0xC8*/ 0x00BB, /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */
+ /*0xC9*/ 0x2026, /* HORIZONTAL ELLIPSIS */
+ /*0xCA*/ 0x00A0, /* NO-BREAK SPACE */
+ /*0xCB*/ 0x00C0, /* LATIN CAPITAL LETTER A WITH GRAVE */
+ /*0xCC*/ 0x00C3, /* LATIN CAPITAL LETTER A WITH TILDE */
+ /*0xCD*/ 0x00D5, /* LATIN CAPITAL LETTER O WITH TILDE */
+ /*0xCE*/ 0x0152, /* LATIN CAPITAL LIGATURE OE */
+ /*0xCF*/ 0x0153, /* LATIN SMALL LIGATURE OE */
+ /*0xD0*/ 0x2013, /* EN DASH */
+ /*0xD1*/ 0x2014, /* EM DASH */
+ /*0xD2*/ 0x201C, /* LEFT DOUBLE QUOTATION MARK */
+ /*0xD3*/ 0x201D, /* RIGHT DOUBLE QUOTATION MARK */
+ /*0xD4*/ 0x2018, /* LEFT SINGLE QUOTATION MARK */
+ /*0xD5*/ 0x2019, /* RIGHT SINGLE QUOTATION MARK */
+ /*0xD6*/ 0x00F7, /* DIVISION SIGN */
+ /*0xD7*/ 0x25CA, /* LOZENGE */
+ /*0xD8*/ 0x00FF, /* LATIN SMALL LETTER Y WITH DIAERESIS */
+ /*0xD9*/ 0x0178, /* LATIN CAPITAL LETTER Y WITH DIAERESIS */
+ /*0xDA*/ 0x2044, /* FRACTION SLASH */
+ /*0xDB*/ 0x20AC, /* EURO SIGN */
+ /*0xDC*/ 0x2039, /* SINGLE LEFT-POINTING ANGLE QUOTATION MARK */
+ /*0xDD*/ 0x203A, /* SINGLE RIGHT-POINTING ANGLE QUOTATION MARK */
+ /*0xDE*/ 0xFB01, /* LATIN SMALL LIGATURE FI */
+ /*0xDF*/ 0xFB02, /* LATIN SMALL LIGATURE FL */
+ /*0xE0*/ 0x2021, /* DOUBLE DAGGER */
+ /*0xE1*/ 0x00B7, /* MIDDLE DOT */
+ /*0xE2*/ 0x201A, /* SINGLE LOW-9 QUOTATION MARK */
+ /*0xE3*/ 0x201E, /* DOUBLE LOW-9 QUOTATION MARK */
+ /*0xE4*/ 0x2030, /* PER MILLE SIGN */
+ /*0xE5*/ 0x00C2, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */
+ /*0xE6*/ 0x00CA, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */
+ /*0xE7*/ 0x00C1, /* LATIN CAPITAL LETTER A WITH ACUTE */
+ /*0xE8*/ 0x00CB, /* LATIN CAPITAL LETTER E WITH DIAERESIS */
+ /*0xE9*/ 0x00C8, /* LATIN CAPITAL LETTER E WITH GRAVE */
+ /*0xEA*/ 0x00CD, /* LATIN CAPITAL LETTER I WITH ACUTE */
+ /*0xEB*/ 0x00CE, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */
+ /*0xEC*/ 0x00CF, /* LATIN CAPITAL LETTER I WITH DIAERESIS */
+ /*0xED*/ 0x00CC, /* LATIN CAPITAL LETTER I WITH GRAVE */
+ /*0xEE*/ 0x00D3, /* LATIN CAPITAL LETTER O WITH ACUTE */
+ /*0xEF*/ 0x00D4, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */
+ /*0xF0*/ 0xF8FF, /* Apple logo */
+ /*0xF1*/ 0x00D2, /* LATIN CAPITAL LETTER O WITH GRAVE */
+ /*0xF2*/ 0x00DA, /* LATIN CAPITAL LETTER U WITH ACUTE */
+ /*0xF3*/ 0x00DB, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */
+ /*0xF4*/ 0x00D9, /* LATIN CAPITAL LETTER U WITH GRAVE */
+ /*0xF5*/ 0x0131, /* LATIN SMALL LETTER DOTLESS I */
+ /*0xF6*/ 0x02C6, /* MODIFIER LETTER CIRCUMFLEX ACCENT */
+ /*0xF7*/ 0x02DC, /* SMALL TILDE */
+ /*0xF8*/ 0x00AF, /* MACRON */
+ /*0xF9*/ 0x02D8, /* BREVE */
+ /*0xFA*/ 0x02D9, /* DOT ABOVE */
+ /*0xFB*/ 0x02DA, /* RING ABOVE */
+ /*0xFC*/ 0x00B8, /* CEDILLA */
+ /*0xFD*/ 0x02DD, /* DOUBLE ACUTE ACCENT */
+ /*0xFE*/ 0x02DB, /* OGONEK */
+ /*0xFF*/ 0x02C7, /* CARON */
+};
+
#if USE_ICONV
#include <iconv.h>
#endif
@@ -696,6 +829,35 @@ FcSfntNameTranscode (FT_SfntName *sname)
*u8 = '\0';
goto done;
}
+ if (!strcmp (fromcode, FC_ENCODING_MAC_ROMAN))
+ {
+ FcChar8 *src = sname->string;
+ int src_len = sname->string_len;
+ int olen;
+ FcChar8 *u8;
+ FcChar32 ucs4;
+
+ /*
+ * Convert Latin1 to Utf8. Freed below
+ */
+ utf8 = malloc (src_len * 3 + 1);
+ if (!utf8)
+ return 0;
+
+ u8 = utf8;
+ while (src_len > 0)
+ {
+ ucs4 = *src++;
+ if (ucs4 >= 128)
+ ucs4 = fcMacRomanNonASCIIToUnicode[ucs4 - 128];
+ src_len--;
+ olen = FcUcs4ToUtf8 (ucs4, u8);
+ u8 += olen;
+ }
+ *u8 = '\0';
+ goto done;
+ }
+
#if USE_ICONV
cd = iconv_open ("UTF-8", fromcode);
if (cd && cd != (iconv_t) (-1))
@@ -775,47 +937,26 @@ FcSfntNameLanguage (FT_SfntName *sname)
/* Order is significant. For example, some B&H fonts are hinted by
URW++, and both strings appear in the notice. */
-static const char notice_foundry_data[] =
- "Bigelow\0b&h\0"
- "Adobe\0adobe\0"
- "Bitstream\0bitstream\0"
- "Monotype\0monotype\0"
- "Linotype\0linotype\0"
- "LINOTYPE-HELL\0linotype\0"
- "IBM\0ibm\0"
- "URW\0urw\0"
- "International Typeface Corporation\0itc\0"
- "Tiro Typeworks\0tiro\0"
- "XFree86\0xfree86\0"
- "Microsoft\0microsoft\0"
- "Omega\0omega\0"
- "Font21\0hwan\0"
- "HanYang System\0hanyang";
-
-struct _notice_foundry {
- /* these are the offsets into the
- * notice_foundry_data array.
- */
- unsigned char notice_offset;
- unsigned char foundry_offset;
-};
-
-static const struct _notice_foundry FcNoticeFoundries[] = {
- { 0, 8 },
- { 12, 18 },
- { 24, 34 },
- { 44, 53 },
- { 62, 71 },
- { 80, 94 },
- { 103, 107 },
- { 111, 115 },
- { 119, 154 },
- { 158, 173 },
- { 178, 186 },
- { 194, 204 },
- { 214, 220 },
- { 226, 233 },
- { 238, 253 }
+static const char *FcNoticeFoundries[][2] =
+ {
+ {"Adobe", "adobe"},
+ {"Bigelow", "b&h"},
+ {"Bitstream", "bitstream"},
+ {"Gnat", "culmus"},
+ {"Iorsh", "culmus"},
+ {"HanYang System", "hanyang"},
+ {"Font21", "hwan"},
+ {"IBM", "ibm"},
+ {"International Typeface Corporation", "itc"},
+ {"Linotype", "linotype"},
+ {"LINOTYPE-HELL", "linotype"},
+ {"Microsoft", "microsoft"},
+ {"Monotype", "monotype"},
+ {"Omega", "omega"},
+ {"Tiro Typeworks", "tiro"},
+ {"URW", "urw"},
+ {"XFree86", "xfree86"},
+ {"Xorg", "xorg"},
};
#define NUM_NOTICE_FOUNDRIES (int) (sizeof (FcNoticeFoundries) / sizeof (FcNoticeFoundries[0]))
@@ -828,9 +969,8 @@ FcNoticeFoundry(const FT_String *notice)
if (notice)
for(i = 0; i < NUM_NOTICE_FOUNDRIES; i++)
{
- const struct _notice_foundry *nf = &FcNoticeFoundries[i];
- const char *n = notice_foundry_data + nf->notice_offset;
- const char *f = notice_foundry_data + nf->foundry_offset;
+ const char *n = FcNoticeFoundries[i][0];
+ const char *f = FcNoticeFoundries[i][1];
if (strstr ((const char *) notice, n))
return (const FcChar8 *) f;
@@ -871,6 +1011,7 @@ static const struct {
{ "B&H", "b&h"},
{ "BITS", "bitstream"},
{ "CANO", "cannon"},
+ { "CLM", "culmus"},
{ "DYNA", "dynalab"},
{ "EPSN", "epson"},
{ "FJ", "fujitsu"},
@@ -954,6 +1095,8 @@ static const FcStringConst weightConsts[] = {
{ (FC8) "thin", FC_WEIGHT_THIN },
{ (FC8) "extralight", FC_WEIGHT_EXTRALIGHT },
{ (FC8) "ultralight", FC_WEIGHT_ULTRALIGHT },
+ { (FC8) "demilight", FC_WEIGHT_DEMILIGHT },
+ { (FC8) "semilight", FC_WEIGHT_SEMILIGHT },
{ (FC8) "light", FC_WEIGHT_LIGHT },
{ (FC8) "book", FC_WEIGHT_BOOK },
{ (FC8) "regular", FC_WEIGHT_REGULAR },
@@ -1122,18 +1265,40 @@ FcFreeTypeQueryFace (const FT_Face face,
FcChar8 *style = 0;
int st;
+ char psname[256];
+ const char *tmp;
+
+ FcRange *r = NULL;
+ double lower_size = 0.0L, upper_size = DBL_MAX;
+
+ FcInitDebug (); /* We might be called with no initizalization whatsoever. */
pat = FcPatternCreate ();
if (!pat)
goto bail0;
- if (!FcPatternAddBool (pat, FC_OUTLINE,
- (face->face_flags & FT_FACE_FLAG_SCALABLE) != 0))
- goto bail1;
+ {
+ int has_outline = !!(face->face_flags & FT_FACE_FLAG_SCALABLE);
+ int has_color = 0;
- if (!FcPatternAddBool (pat, FC_SCALABLE,
- (face->face_flags & FT_FACE_FLAG_SCALABLE) != 0))
- goto bail1;
+#ifdef FT_FACE_FLAG_COLOR
+ has_color = !!(face->face_flags & FT_FACE_FLAG_COLOR);
+#endif
+
+ if (!FcPatternAddBool (pat, FC_OUTLINE, has_outline))
+ goto bail1;
+
+#ifdef FT_FACE_FLAG_COLOR
+ if (!FcPatternAddBool (pat, FC_COLOR, has_color))
+ goto bail1;
+#endif
+
+ /* All color fonts are designed to be scaled, even if they only have
+ * bitmap strikes. Client is responsible to scale the bitmaps. This
+ * is in constrast to non-color strikes... */
+ if (!FcPatternAddBool (pat, FC_SCALABLE, has_outline || has_color))
+ goto bail1;
+ }
/*
@@ -1220,7 +1385,6 @@ FcFreeTypeQueryFace (const FT_Face face,
case TT_NAME_ID_PREFERRED_FAMILY:
case TT_NAME_ID_FONT_FAMILY:
#if 0
- case TT_NAME_ID_PS_NAME:
case TT_NAME_ID_UNIQUE_ID:
#endif
if (FcDebug () & FC_DBG_SCANV)
@@ -1299,10 +1463,10 @@ FcFreeTypeQueryFace (const FT_Face face,
free (utf8);
if (lang)
{
- /* pad lang list with 'xx' to line up with elt */
+ /* pad lang list with 'und' to line up with elt */
while (*nlangp < *np)
{
- if (!FcPatternAddString (pat, eltlang, (FcChar8 *) "xx"))
+ if (!FcPatternAddString (pat, eltlang, (FcChar8 *) "und"))
goto bail1;
++*nlangp;
}
@@ -1338,7 +1502,7 @@ FcFreeTypeQueryFace (const FT_Face face,
++nstyle;
}
- if (!nfamily)
+ if (!nfamily && file && *file)
{
FcChar8 *start, *end;
FcChar8 *family;
@@ -1366,7 +1530,54 @@ FcFreeTypeQueryFace (const FT_Face face,
++nfamily;
}
- if (!FcPatternAddString (pat, FC_FILE, file))
+ /* Add the PostScript name into the cache */
+ tmp = FT_Get_Postscript_Name (face);
+ if (!tmp)
+ {
+ FcChar8 *family, *familylang = NULL;
+ size_t len;
+ int n = 0;
+
+ /* Workaround when FT_Get_Postscript_Name didn't give any name.
+ * try to find out the English family name and convert.
+ */
+ while (FcPatternObjectGetString (pat, FC_FAMILYLANG_OBJECT, n, &familylang) == FcResultMatch)
+ {
+ if (FcStrCmp (familylang, (const FcChar8 *)"en") == 0)
+ break;
+ n++;
+ familylang = NULL;
+ }
+ if (!familylang)
+ n = 0;
+
+ if (FcPatternObjectGetString (pat, FC_FAMILY_OBJECT, n, &family) != FcResultMatch)
+ goto bail1;
+ len = strlen ((const char *)family);
+ /* the literal name in PostScript Language is limited to 127 characters though,
+ * It is the architectural limit. so assuming 255 characters may works enough.
+ */
+ for (i = 0; i < len && i < 255; i++)
+ {
+ /* those characters are not allowed to be the literal name in PostScript */
+ static const char exclusive_chars[] = "\x04()/<>[]{}\t\f\r\n ";
+
+ if (strchr(exclusive_chars, family[i]) != NULL)
+ psname[i] = '-';
+ else
+ psname[i] = family[i];
+ }
+ psname[i] = 0;
+ }
+ else
+ {
+ strncpy (psname, tmp, 255);
+ psname[255] = 0;
+ }
+ if (!FcPatternAddString (pat, FC_POSTSCRIPT_NAME, (const FcChar8 *)psname))
+ goto bail1;
+
+ if (file && *file && !FcPatternAddString (pat, FC_FILE, file))
goto bail1;
if (!FcPatternAddInteger (pat, FC_INDEX, id))
@@ -1433,28 +1644,7 @@ FcFreeTypeQueryFace (const FT_Face face,
if (os2 && os2->version != 0xffff)
{
- if (os2->usWeightClass == 0)
- ;
- else if (os2->usWeightClass < 150)
- weight = FC_WEIGHT_THIN;
- else if (os2->usWeightClass < 250)
- weight = FC_WEIGHT_EXTRALIGHT;
- else if (os2->usWeightClass < 350)
- weight = FC_WEIGHT_LIGHT;
- else if (os2->usWeightClass < 450)
- weight = FC_WEIGHT_REGULAR;
- else if (os2->usWeightClass < 550)
- weight = FC_WEIGHT_MEDIUM;
- else if (os2->usWeightClass < 650)
- weight = FC_WEIGHT_SEMIBOLD;
- else if (os2->usWeightClass < 750)
- weight = FC_WEIGHT_BOLD;
- else if (os2->usWeightClass < 850)
- weight = FC_WEIGHT_EXTRABOLD;
- else if (os2->usWeightClass < 925)
- weight = FC_WEIGHT_BLACK;
- else if (os2->usWeightClass < 1000)
- weight = FC_WEIGHT_EXTRABLACK;
+ weight = FcWeightFromOpenType (os2->usWeightClass);
if ((FcDebug() & FC_DBG_SCANV) && weight != -1)
printf ("\tos2 weight class %d maps to weight %d\n",
os2->usWeightClass, weight);
@@ -1484,6 +1674,39 @@ FcFreeTypeQueryFace (const FT_Face face,
free (complex_);
}
+#if defined (HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE) && defined (HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE)
+ if (os2 && os2->version >= 0x0005 && os2->version != 0xffff)
+ {
+ /* usLowerPointSize and usUpperPointSize is actually twips */
+ lower_size = os2->usLowerOpticalPointSize / 20.0L;
+ upper_size = os2->usUpperOpticalPointSize / 20.0L;
+ }
+#endif
+ if (os2)
+ {
+ r = FcRangeCreateDouble (lower_size, upper_size);
+ if (!FcPatternAddRange (pat, FC_SIZE, r))
+ {
+ FcRangeDestroy (r);
+ goto bail1;
+ }
+ FcRangeDestroy (r);
+ }
+ else
+ {
+ for (i = 0; i < face->num_fixed_sizes; i++)
+ {
+ double d = FcGetPixelSize (face, i);
+ r = FcRangeCreateDouble (d, d);
+ if (!FcPatternAddRange (pat, FC_SIZE, r))
+ {
+ FcRangeDestroy (r);
+ goto bail1;
+ }
+ FcRangeDestroy (r);
+ }
+ }
+
/*
* Type 1: Check for FontInfo dictionary information
* Code from g2@magestudios.net (Gerard Escalante)
@@ -1556,7 +1779,7 @@ FcFreeTypeQueryFace (const FT_Face face,
}
if (width == -1 &&
FT_Get_BDF_Property (face, "SETWIDTH_NAME", &prop) == 0 &&
- prop.type == BDF_PROPERTY_TYPE_ATOM)
+ prop.type == BDF_PROPERTY_TYPE_ATOM && prop.u.atom != NULL)
{
width = FcIsWidth ((FcChar8 *) prop.u.atom);
if (FcDebug () & FC_DBG_SCANV)
@@ -1634,6 +1857,7 @@ FcFreeTypeQueryFace (const FT_Face face,
if (!FcPatternAddBool (pat, FC_DECORATIVE, decorative))
goto bail1;
+
/*
* Compute the unicode coverage for the font
*/
@@ -1645,7 +1869,7 @@ FcFreeTypeQueryFace (const FT_Face face,
/* For PCF fonts, override the computed spacing with the one from
the property */
if(FT_Get_BDF_Property(face, "SPACING", &prop) == 0 &&
- prop.type == BDF_PROPERTY_TYPE_ATOM) {
+ prop.type == BDF_PROPERTY_TYPE_ATOM && prop.u.atom != NULL) {
if(!strcmp(prop.u.atom, "c") || !strcmp(prop.u.atom, "C"))
spacing = FC_CHARCELL;
else if(!strcmp(prop.u.atom, "m") || !strcmp(prop.u.atom, "M"))
@@ -1706,7 +1930,8 @@ FcFreeTypeQueryFace (const FT_Face face,
{
const char *font_format = FT_Get_X11_Font_Format (face);
if (font_format)
- FcPatternAddString (pat, FC_FONTFORMAT, (FcChar8 *) font_format);
+ if (!FcPatternAddString (pat, FC_FONTFORMAT, (FcChar8 *) font_format))
+ goto bail2;
}
#endif
@@ -1761,283 +1986,17 @@ bail:
#warning "No FT_Get_Next_Char: Please install freetype version 2.1.0 or newer"
#endif
-typedef struct _FcCharEnt {
- FcChar16 bmp;
- unsigned char encode;
-} FcCharEnt;
-
-struct _FcCharMap {
- const FcCharEnt *ent;
- int nent;
-};
-
-typedef struct _FcFontDecode {
- FT_Encoding encoding;
- const FcCharMap *map;
- FcChar32 max;
-} FcFontDecode;
-
-static const FcCharEnt AdobeSymbolEnt[] = {
- { 0x0020, 0x20 }, /* SPACE # space */
- { 0x0021, 0x21 }, /* EXCLAMATION MARK # exclam */
- { 0x0023, 0x23 }, /* NUMBER SIGN # numbersign */
- { 0x0025, 0x25 }, /* PERCENT SIGN # percent */
- { 0x0026, 0x26 }, /* AMPERSAND # ampersand */
- { 0x0028, 0x28 }, /* LEFT PARENTHESIS # parenleft */
- { 0x0029, 0x29 }, /* RIGHT PARENTHESIS # parenright */
- { 0x002B, 0x2B }, /* PLUS SIGN # plus */
- { 0x002C, 0x2C }, /* COMMA # comma */
- { 0x002E, 0x2E }, /* FULL STOP # period */
- { 0x002F, 0x2F }, /* SOLIDUS # slash */
- { 0x0030, 0x30 }, /* DIGIT ZERO # zero */
- { 0x0031, 0x31 }, /* DIGIT ONE # one */
- { 0x0032, 0x32 }, /* DIGIT TWO # two */
- { 0x0033, 0x33 }, /* DIGIT THREE # three */
- { 0x0034, 0x34 }, /* DIGIT FOUR # four */
- { 0x0035, 0x35 }, /* DIGIT FIVE # five */
- { 0x0036, 0x36 }, /* DIGIT SIX # six */
- { 0x0037, 0x37 }, /* DIGIT SEVEN # seven */
- { 0x0038, 0x38 }, /* DIGIT EIGHT # eight */
- { 0x0039, 0x39 }, /* DIGIT NINE # nine */
- { 0x003A, 0x3A }, /* COLON # colon */
- { 0x003B, 0x3B }, /* SEMICOLON # semicolon */
- { 0x003C, 0x3C }, /* LESS-THAN SIGN # less */
- { 0x003D, 0x3D }, /* EQUALS SIGN # equal */
- { 0x003E, 0x3E }, /* GREATER-THAN SIGN # greater */
- { 0x003F, 0x3F }, /* QUESTION MARK # question */
- { 0x005B, 0x5B }, /* LEFT SQUARE BRACKET # bracketleft */
- { 0x005D, 0x5D }, /* RIGHT SQUARE BRACKET # bracketright */
- { 0x005F, 0x5F }, /* LOW LINE # underscore */
- { 0x007B, 0x7B }, /* LEFT CURLY BRACKET # braceleft */
- { 0x007C, 0x7C }, /* VERTICAL LINE # bar */
- { 0x007D, 0x7D }, /* RIGHT CURLY BRACKET # braceright */
- { 0x00A0, 0x20 }, /* NO-BREAK SPACE # space */
- { 0x00AC, 0xD8 }, /* NOT SIGN # logicalnot */
- { 0x00B0, 0xB0 }, /* DEGREE SIGN # degree */
- { 0x00B1, 0xB1 }, /* PLUS-MINUS SIGN # plusminus */
- { 0x00B5, 0x6D }, /* MICRO SIGN # mu */
- { 0x00D7, 0xB4 }, /* MULTIPLICATION SIGN # multiply */
- { 0x00F7, 0xB8 }, /* DIVISION SIGN # divide */
- { 0x0192, 0xA6 }, /* LATIN SMALL LETTER F WITH HOOK # florin */
- { 0x0391, 0x41 }, /* GREEK CAPITAL LETTER ALPHA # Alpha */
- { 0x0392, 0x42 }, /* GREEK CAPITAL LETTER BETA # Beta */
- { 0x0393, 0x47 }, /* GREEK CAPITAL LETTER GAMMA # Gamma */
- { 0x0394, 0x44 }, /* GREEK CAPITAL LETTER DELTA # Delta */
- { 0x0395, 0x45 }, /* GREEK CAPITAL LETTER EPSILON # Epsilon */
- { 0x0396, 0x5A }, /* GREEK CAPITAL LETTER ZETA # Zeta */
- { 0x0397, 0x48 }, /* GREEK CAPITAL LETTER ETA # Eta */
- { 0x0398, 0x51 }, /* GREEK CAPITAL LETTER THETA # Theta */
- { 0x0399, 0x49 }, /* GREEK CAPITAL LETTER IOTA # Iota */
- { 0x039A, 0x4B }, /* GREEK CAPITAL LETTER KAPPA # Kappa */
- { 0x039B, 0x4C }, /* GREEK CAPITAL LETTER LAMDA # Lambda */
- { 0x039C, 0x4D }, /* GREEK CAPITAL LETTER MU # Mu */
- { 0x039D, 0x4E }, /* GREEK CAPITAL LETTER NU # Nu */
- { 0x039E, 0x58 }, /* GREEK CAPITAL LETTER XI # Xi */
- { 0x039F, 0x4F }, /* GREEK CAPITAL LETTER OMICRON # Omicron */
- { 0x03A0, 0x50 }, /* GREEK CAPITAL LETTER PI # Pi */
- { 0x03A1, 0x52 }, /* GREEK CAPITAL LETTER RHO # Rho */
- { 0x03A3, 0x53 }, /* GREEK CAPITAL LETTER SIGMA # Sigma */
- { 0x03A4, 0x54 }, /* GREEK CAPITAL LETTER TAU # Tau */
- { 0x03A5, 0x55 }, /* GREEK CAPITAL LETTER UPSILON # Upsilon */
- { 0x03A6, 0x46 }, /* GREEK CAPITAL LETTER PHI # Phi */
- { 0x03A7, 0x43 }, /* GREEK CAPITAL LETTER CHI # Chi */
- { 0x03A8, 0x59 }, /* GREEK CAPITAL LETTER PSI # Psi */
- { 0x03A9, 0x57 }, /* GREEK CAPITAL LETTER OMEGA # Omega */
- { 0x03B1, 0x61 }, /* GREEK SMALL LETTER ALPHA # alpha */
- { 0x03B2, 0x62 }, /* GREEK SMALL LETTER BETA # beta */
- { 0x03B3, 0x67 }, /* GREEK SMALL LETTER GAMMA # gamma */
- { 0x03B4, 0x64 }, /* GREEK SMALL LETTER DELTA # delta */
- { 0x03B5, 0x65 }, /* GREEK SMALL LETTER EPSILON # epsilon */
- { 0x03B6, 0x7A }, /* GREEK SMALL LETTER ZETA # zeta */
- { 0x03B7, 0x68 }, /* GREEK SMALL LETTER ETA # eta */
- { 0x03B8, 0x71 }, /* GREEK SMALL LETTER THETA # theta */
- { 0x03B9, 0x69 }, /* GREEK SMALL LETTER IOTA # iota */
- { 0x03BA, 0x6B }, /* GREEK SMALL LETTER KAPPA # kappa */
- { 0x03BB, 0x6C }, /* GREEK SMALL LETTER LAMDA # lambda */
- { 0x03BC, 0x6D }, /* GREEK SMALL LETTER MU # mu */
- { 0x03BD, 0x6E }, /* GREEK SMALL LETTER NU # nu */
- { 0x03BE, 0x78 }, /* GREEK SMALL LETTER XI # xi */
- { 0x03BF, 0x6F }, /* GREEK SMALL LETTER OMICRON # omicron */
- { 0x03C0, 0x70 }, /* GREEK SMALL LETTER PI # pi */
- { 0x03C1, 0x72 }, /* GREEK SMALL LETTER RHO # rho */
- { 0x03C2, 0x56 }, /* GREEK SMALL LETTER FINAL SIGMA # sigma1 */
- { 0x03C3, 0x73 }, /* GREEK SMALL LETTER SIGMA # sigma */
- { 0x03C4, 0x74 }, /* GREEK SMALL LETTER TAU # tau */
- { 0x03C5, 0x75 }, /* GREEK SMALL LETTER UPSILON # upsilon */
- { 0x03C6, 0x66 }, /* GREEK SMALL LETTER PHI # phi */
- { 0x03C7, 0x63 }, /* GREEK SMALL LETTER CHI # chi */
- { 0x03C8, 0x79 }, /* GREEK SMALL LETTER PSI # psi */
- { 0x03C9, 0x77 }, /* GREEK SMALL LETTER OMEGA # omega */
- { 0x03D1, 0x4A }, /* GREEK THETA SYMBOL # theta1 */
- { 0x03D2, 0xA1 }, /* GREEK UPSILON WITH HOOK SYMBOL # Upsilon1 */
- { 0x03D5, 0x6A }, /* GREEK PHI SYMBOL # phi1 */
- { 0x03D6, 0x76 }, /* GREEK PI SYMBOL # omega1 */
- { 0x2022, 0xB7 }, /* BULLET # bullet */
- { 0x2026, 0xBC }, /* HORIZONTAL ELLIPSIS # ellipsis */
- { 0x2032, 0xA2 }, /* PRIME # minute */
- { 0x2033, 0xB2 }, /* DOUBLE PRIME # second */
- { 0x2044, 0xA4 }, /* FRACTION SLASH # fraction */
- { 0x20AC, 0xA0 }, /* EURO SIGN # Euro */
- { 0x2111, 0xC1 }, /* BLACK-LETTER CAPITAL I # Ifraktur */
- { 0x2118, 0xC3 }, /* SCRIPT CAPITAL P # weierstrass */
- { 0x211C, 0xC2 }, /* BLACK-LETTER CAPITAL R # Rfraktur */
- { 0x2126, 0x57 }, /* OHM SIGN # Omega */
- { 0x2135, 0xC0 }, /* ALEF SYMBOL # aleph */
- { 0x2190, 0xAC }, /* LEFTWARDS ARROW # arrowleft */
- { 0x2191, 0xAD }, /* UPWARDS ARROW # arrowup */
- { 0x2192, 0xAE }, /* RIGHTWARDS ARROW # arrowright */
- { 0x2193, 0xAF }, /* DOWNWARDS ARROW # arrowdown */
- { 0x2194, 0xAB }, /* LEFT RIGHT ARROW # arrowboth */
- { 0x21B5, 0xBF }, /* DOWNWARDS ARROW WITH CORNER LEFTWARDS # carriagereturn */
- { 0x21D0, 0xDC }, /* LEFTWARDS DOUBLE ARROW # arrowdblleft */
- { 0x21D1, 0xDD }, /* UPWARDS DOUBLE ARROW # arrowdblup */
- { 0x21D2, 0xDE }, /* RIGHTWARDS DOUBLE ARROW # arrowdblright */
- { 0x21D3, 0xDF }, /* DOWNWARDS DOUBLE ARROW # arrowdbldown */
- { 0x21D4, 0xDB }, /* LEFT RIGHT DOUBLE ARROW # arrowdblboth */
- { 0x2200, 0x22 }, /* FOR ALL # universal */
- { 0x2202, 0xB6 }, /* PARTIAL DIFFERENTIAL # partialdiff */
- { 0x2203, 0x24 }, /* THERE EXISTS # existential */
- { 0x2205, 0xC6 }, /* EMPTY SET # emptyset */
- { 0x2206, 0x44 }, /* INCREMENT # Delta */
- { 0x2207, 0xD1 }, /* NABLA # gradient */
- { 0x2208, 0xCE }, /* ELEMENT OF # element */
- { 0x2209, 0xCF }, /* NOT AN ELEMENT OF # notelement */
- { 0x220B, 0x27 }, /* CONTAINS AS MEMBER # suchthat */
- { 0x220F, 0xD5 }, /* N-ARY PRODUCT # product */
- { 0x2211, 0xE5 }, /* N-ARY SUMMATION # summation */
- { 0x2212, 0x2D }, /* MINUS SIGN # minus */
- { 0x2215, 0xA4 }, /* DIVISION SLASH # fraction */
- { 0x2217, 0x2A }, /* ASTERISK OPERATOR # asteriskmath */
- { 0x221A, 0xD6 }, /* SQUARE ROOT # radical */
- { 0x221D, 0xB5 }, /* PROPORTIONAL TO # proportional */
- { 0x221E, 0xA5 }, /* INFINITY # infinity */
- { 0x2220, 0xD0 }, /* ANGLE # angle */
- { 0x2227, 0xD9 }, /* LOGICAL AND # logicaland */
- { 0x2228, 0xDA }, /* LOGICAL OR # logicalor */
- { 0x2229, 0xC7 }, /* INTERSECTION # intersection */
- { 0x222A, 0xC8 }, /* UNION # union */
- { 0x222B, 0xF2 }, /* INTEGRAL # integral */
- { 0x2234, 0x5C }, /* THEREFORE # therefore */
- { 0x223C, 0x7E }, /* TILDE OPERATOR # similar */
- { 0x2245, 0x40 }, /* APPROXIMATELY EQUAL TO # congruent */
- { 0x2248, 0xBB }, /* ALMOST EQUAL TO # approxequal */
- { 0x2260, 0xB9 }, /* NOT EQUAL TO # notequal */
- { 0x2261, 0xBA }, /* IDENTICAL TO # equivalence */
- { 0x2264, 0xA3 }, /* LESS-THAN OR EQUAL TO # lessequal */
- { 0x2265, 0xB3 }, /* GREATER-THAN OR EQUAL TO # greaterequal */
- { 0x2282, 0xCC }, /* SUBSET OF # propersubset */
- { 0x2283, 0xC9 }, /* SUPERSET OF # propersuperset */
- { 0x2284, 0xCB }, /* NOT A SUBSET OF # notsubset */
- { 0x2286, 0xCD }, /* SUBSET OF OR EQUAL TO # reflexsubset */
- { 0x2287, 0xCA }, /* SUPERSET OF OR EQUAL TO # reflexsuperset */
- { 0x2295, 0xC5 }, /* CIRCLED PLUS # circleplus */
- { 0x2297, 0xC4 }, /* CIRCLED TIMES # circlemultiply */
- { 0x22A5, 0x5E }, /* UP TACK # perpendicular */
- { 0x22C5, 0xD7 }, /* DOT OPERATOR # dotmath */
- { 0x2320, 0xF3 }, /* TOP HALF INTEGRAL # integraltp */
- { 0x2321, 0xF5 }, /* BOTTOM HALF INTEGRAL # integralbt */
- { 0x2329, 0xE1 }, /* LEFT-POINTING ANGLE BRACKET # angleleft */
- { 0x232A, 0xF1 }, /* RIGHT-POINTING ANGLE BRACKET # angleright */
- { 0x25CA, 0xE0 }, /* LOZENGE # lozenge */
- { 0x2660, 0xAA }, /* BLACK SPADE SUIT # spade */
- { 0x2663, 0xA7 }, /* BLACK CLUB SUIT # club */
- { 0x2665, 0xA9 }, /* BLACK HEART SUIT # heart */
- { 0x2666, 0xA8 }, /* BLACK DIAMOND SUIT # diamond */
- { 0xF6D9, 0xD3 }, /* COPYRIGHT SIGN SERIF # copyrightserif (CUS) */
- { 0xF6DA, 0xD2 }, /* REGISTERED SIGN SERIF # registerserif (CUS) */
- { 0xF6DB, 0xD4 }, /* TRADE MARK SIGN SERIF # trademarkserif (CUS) */
- { 0xF8E5, 0x60 }, /* RADICAL EXTENDER # radicalex (CUS) */
- { 0xF8E6, 0xBD }, /* VERTICAL ARROW EXTENDER # arrowvertex (CUS) */
- { 0xF8E7, 0xBE }, /* HORIZONTAL ARROW EXTENDER # arrowhorizex (CUS) */
- { 0xF8E8, 0xE2 }, /* REGISTERED SIGN SANS SERIF # registersans (CUS) */
- { 0xF8E9, 0xE3 }, /* COPYRIGHT SIGN SANS SERIF # copyrightsans (CUS) */
- { 0xF8EA, 0xE4 }, /* TRADE MARK SIGN SANS SERIF # trademarksans (CUS) */
- { 0xF8EB, 0xE6 }, /* LEFT PAREN TOP # parenlefttp (CUS) */
- { 0xF8EC, 0xE7 }, /* LEFT PAREN EXTENDER # parenleftex (CUS) */
- { 0xF8ED, 0xE8 }, /* LEFT PAREN BOTTOM # parenleftbt (CUS) */
- { 0xF8EE, 0xE9 }, /* LEFT SQUARE BRACKET TOP # bracketlefttp (CUS) */
- { 0xF8EF, 0xEA }, /* LEFT SQUARE BRACKET EXTENDER # bracketleftex (CUS) */
- { 0xF8F0, 0xEB }, /* LEFT SQUARE BRACKET BOTTOM # bracketleftbt (CUS) */
- { 0xF8F1, 0xEC }, /* LEFT CURLY BRACKET TOP # bracelefttp (CUS) */
- { 0xF8F2, 0xED }, /* LEFT CURLY BRACKET MID # braceleftmid (CUS) */
- { 0xF8F3, 0xEE }, /* LEFT CURLY BRACKET BOTTOM # braceleftbt (CUS) */
- { 0xF8F4, 0xEF }, /* CURLY BRACKET EXTENDER # braceex (CUS) */
- { 0xF8F5, 0xF4 }, /* INTEGRAL EXTENDER # integralex (CUS) */
- { 0xF8F6, 0xF6 }, /* RIGHT PAREN TOP # parenrighttp (CUS) */
- { 0xF8F7, 0xF7 }, /* RIGHT PAREN EXTENDER # parenrightex (CUS) */
- { 0xF8F8, 0xF8 }, /* RIGHT PAREN BOTTOM # parenrightbt (CUS) */
- { 0xF8F9, 0xF9 }, /* RIGHT SQUARE BRACKET TOP # bracketrighttp (CUS) */
- { 0xF8FA, 0xFA }, /* RIGHT SQUARE BRACKET EXTENDER # bracketrightex (CUS) */
- { 0xF8FB, 0xFB }, /* RIGHT SQUARE BRACKET BOTTOM # bracketrightbt (CUS) */
- { 0xF8FC, 0xFC }, /* RIGHT CURLY BRACKET TOP # bracerighttp (CUS) */
- { 0xF8FD, 0xFD }, /* RIGHT CURLY BRACKET MID # bracerightmid (CUS) */
- { 0xF8FE, 0xFE }, /* RIGHT CURLY BRACKET BOTTOM # bracerightbt (CUS) */
+static const FT_Encoding fcFontEncodings[] = {
+ FT_ENCODING_UNICODE,
+ FT_ENCODING_MS_SYMBOL
};
-static const FcCharMap AdobeSymbol = {
- AdobeSymbolEnt,
- sizeof (AdobeSymbolEnt) / sizeof (AdobeSymbolEnt[0]),
-};
-
-static const FcFontDecode fcFontDecoders[] = {
- { ft_encoding_unicode, 0, (1 << 21) - 1 },
- { ft_encoding_symbol, &AdobeSymbol, (1 << 16) - 1 },
-};
-
-#define NUM_DECODE (int) (sizeof (fcFontDecoders) / sizeof (fcFontDecoders[0]))
+#define NUM_DECODE (int) (sizeof (fcFontEncodings) / sizeof (fcFontEncodings[0]))
static const FcChar32 prefer_unicode[] = {
0x20ac, /* EURO SIGN */
};
-#define NUM_PREFER_UNICODE (int) (sizeof (prefer_unicode) / sizeof (prefer_unicode[0]))
-
-FcChar32
-FcFreeTypeUcs4ToPrivate (FcChar32 ucs4, const FcCharMap *map)
-{
- int low, high, mid;
- FcChar16 bmp;
-
- low = 0;
- high = map->nent - 1;
- if (ucs4 < map->ent[low].bmp || map->ent[high].bmp < ucs4)
- return ~0;
- while (low <= high)
- {
- mid = (high + low) >> 1;
- bmp = map->ent[mid].bmp;
- if (ucs4 == bmp)
- return (FT_ULong) map->ent[mid].encode;
- if (ucs4 < bmp)
- high = mid - 1;
- else
- low = mid + 1;
- }
- return ~0;
-}
-
-FcChar32
-FcFreeTypePrivateToUcs4 (FcChar32 private, const FcCharMap *map)
-{
- int i;
-
- for (i = 0; i < map->nent; i++)
- if (map->ent[i].encode == private)
- return (FcChar32) map->ent[i].bmp;
- return ~0;
-}
-
-const FcCharMap *
-FcFreeTypeGetPrivateMap (FT_Encoding encoding)
-{
- int i;
-
- for (i = 0; i < NUM_DECODE; i++)
- if (fcFontDecoders[i].encoding == encoding)
- return fcFontDecoders[i].map;
- return 0;
-}
-
#include "../fc-glyphname/fcglyphname.h"
static FcChar32
@@ -2165,8 +2124,6 @@ FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4)
{
int initial, offset, decode;
FT_UInt glyphindex;
- FcChar32 charcode;
- int p;
initial = 0;
@@ -2179,35 +2136,21 @@ FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4)
if (face->charmap)
{
for (; initial < NUM_DECODE; initial++)
- if (fcFontDecoders[initial].encoding == face->charmap->encoding)
+ if (fcFontEncodings[initial] == face->charmap->encoding)
break;
if (initial == NUM_DECODE)
initial = 0;
}
- for (p = 0; p < NUM_PREFER_UNICODE; p++)
- if (ucs4 == prefer_unicode[p])
- {
- initial = 0;
- break;
- }
/*
* Check each encoding for the glyph, starting with the current one
*/
for (offset = 0; offset < NUM_DECODE; offset++)
{
decode = (initial + offset) % NUM_DECODE;
- if (!face->charmap || face->charmap->encoding != fcFontDecoders[decode].encoding)
- if (FT_Select_Charmap (face, fcFontDecoders[decode].encoding) != 0)
- continue;
- if (fcFontDecoders[decode].map)
- {
- charcode = FcFreeTypeUcs4ToPrivate (ucs4, fcFontDecoders[decode].map);
- if (charcode == ~0U)
+ if (!face->charmap || face->charmap->encoding != fcFontEncodings[decode])
+ if (FT_Select_Charmap (face, fcFontEncodings[decode]) != 0)
continue;
- }
- else
- charcode = ucs4;
- glyphindex = FT_Get_Char_Index (face, (FT_ULong) charcode);
+ glyphindex = FT_Get_Char_Index (face, (FT_ULong) ucs4);
if (glyphindex)
return glyphindex;
}
@@ -2300,9 +2243,7 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
#endif
FcCharSet *fcs;
FcCharLeaf *leaf;
- const FcCharMap *map;
int o;
- int i;
FT_UInt glyph;
FT_Pos advance, advance_one = 0, advance_two = 0;
FcBool has_advance = FcFalse, fixed_advance = FcTrue, dual_advance = FcFalse;
@@ -2325,62 +2266,9 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
#endif
for (o = 0; o < NUM_DECODE; o++)
{
- if (FT_Select_Charmap (face, fcFontDecoders[o].encoding) != 0)
+ if (FT_Select_Charmap (face, fcFontEncodings[o]) != 0)
continue;
- map = fcFontDecoders[o].map;
- if (map)
- {
- /*
- * Non-Unicode tables are easy; there's a list of all possible
- * characters
- */
- for (i = 0; i < map->nent; i++)
- {
- ucs4 = map->ent[i].bmp;
- glyph = FT_Get_Char_Index (face, map->ent[i].encode);
- if (glyph &&
- FcFreeTypeCheckGlyph (face, ucs4, glyph, blanks, &advance, using_strike))
- {
- /*
- * ignore glyphs with zero advance. They’re
- * combining characters, and while their behaviour
- * isn’t well defined for monospaced applications in
- * Unicode, there are many fonts which include
- * zero-width combining characters in otherwise
- * monospaced fonts.
- */
- if (advance)
- {
- if (!has_advance)
- {
- has_advance = FcTrue;
- advance_one = advance;
- }
- else if (!APPROXIMATELY_EQUAL (advance, advance_one))
- {
- if (fixed_advance)
- {
- dual_advance = FcTrue;
- fixed_advance = FcFalse;
- advance_two = advance;
- }
- else if (!APPROXIMATELY_EQUAL (advance, advance_two))
- dual_advance = FcFalse;
- }
- }
- leaf = FcCharSetFindLeafCreate (fcs, ucs4);
- if (!leaf)
- goto bail1;
- leaf->map[(ucs4 & 0xff) >> 5] |= (1 << (ucs4 & 0x1f));
-#ifdef CHECK
- if (ucs4 > font_max)
- font_max = ucs4;
-#endif
- }
- }
- }
- else
{
page = ~0;
leaf = NULL;
@@ -2572,7 +2460,8 @@ FcFreeTypeCharSet (FT_Face face, FcBlanks *blanks)
* except for 'DFLT'.
*/
#define FcIsSpace(x) (040 == (x))
-#define FcIsValidScript(x) (FcIsLower(x) || FcIsUpper (x) || FcIsSpace(x))
+#define FcIsDigit(c) (('0' <= (c) && (c) <= '9'))
+#define FcIsValidScript(x) (FcIsLower(x) || FcIsUpper (x) || FcIsDigit(x) || FcIsSpace(x))
static void
addtag(FcChar8 *complex_, FT_ULong tag)
@@ -2585,7 +2474,7 @@ addtag(FcChar8 *complex_, FT_ULong tag)
tagstring[3] = (FcChar8)(tag);
tagstring[4] = '\0';
- /* skip tags which aren't alphabetic, under the assumption that
+ /* skip tags which aren't alphanumeric, under the assumption that
* they're probably broken
*/
if (!FcIsValidScript(tagstring[0]) ||
diff --git a/src/fcfs.c b/src/fcfs.c
index 941abba8..21c6c7cb 100644
--- a/src/fcfs.c
+++ b/src/fcfs.c
@@ -122,6 +122,28 @@ FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s)
return s_serialize;
}
+
+FcFontSet *
+FcFontSetDeserialize (const FcFontSet *set)
+{
+ int i;
+ FcFontSet *new = FcFontSetCreate ();
+
+ if (!new)
+ return NULL;
+ for (i = 0; i < set->nfont; i++)
+ {
+ if (!FcFontSetAdd (new, FcPatternDuplicate (FcFontSetFont (set, i))))
+ goto bail;
+ }
+
+ return new;
+bail:
+ FcFontSetDestroy (new);
+
+ return NULL;
+}
+
#define __fcfs__
#include "fcaliastail.h"
#undef __fcfs__
diff --git a/src/fcinit.c b/src/fcinit.c
index 2360764f..6134ed40 100644
--- a/src/fcinit.c
+++ b/src/fcinit.c
@@ -36,13 +36,14 @@
#endif
static FcConfig *
-FcInitFallbackConfig (void)
+FcInitFallbackConfig (const FcChar8 *sysroot)
{
FcConfig *config;
config = FcConfigCreate ();
if (!config)
goto bail0;
+ FcConfigSetSysRoot (config, sysroot);
if (!FcConfigAddDir (config, (FcChar8 *) FC_DEFAULT_FONTS))
goto bail1;
if (!FcConfigAddCacheDir (config, (FcChar8 *) FC_CACHEDIR))
@@ -65,19 +66,25 @@ FcGetVersion (void)
* Load the configuration files
*/
FcConfig *
-FcInitLoadConfig (void)
+FcInitLoadOwnConfig (FcConfig *config)
{
- FcConfig *config;
+ if (!config)
+ {
+ config = FcConfigCreate ();
+ if (!config)
+ return NULL;
+ }
FcInitDebug ();
- config = FcConfigCreate ();
- if (!config)
- return NULL;
if (!FcConfigParseAndLoad (config, 0, FcTrue))
{
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ FcConfig *fallback = FcInitFallbackConfig (sysroot);
+
FcConfigDestroy (config);
- return FcInitFallbackConfig ();
+
+ return fallback;
}
if (config->cacheDirs && config->cacheDirs->num == 0)
@@ -106,13 +113,19 @@ FcInitLoadConfig (void)
if (!FcConfigAddCacheDir (config, (FcChar8 *) FC_CACHEDIR) ||
!FcConfigAddCacheDir (config, (FcChar8 *) prefix))
{
+ FcConfig *fallback;
+ const FcChar8 *sysroot;
+
bail:
+ sysroot = FcConfigGetSysRoot (config);
fprintf (stderr,
"Fontconfig error: out of memory");
if (prefix)
FcStrFree (prefix);
+ fallback = FcInitFallbackConfig (sysroot);
FcConfigDestroy (config);
- return FcInitFallbackConfig ();
+
+ return fallback;
}
FcStrFree (prefix);
}
@@ -120,15 +133,19 @@ FcInitLoadConfig (void)
return config;
}
+FcConfig *
+FcInitLoadConfig (void)
+{
+ return FcInitLoadOwnConfig (NULL);
+}
+
/*
* Load the configuration files and scan for available fonts
*/
FcConfig *
-FcInitLoadConfigAndFonts (void)
+FcInitLoadOwnConfigAndFonts (FcConfig *config)
{
- FcConfig *config = FcInitLoadConfig ();
-
- FcInitDebug ();
+ config = FcInitLoadOwnConfig (config);
if (!config)
return 0;
if (!FcConfigBuildFonts (config))
@@ -139,6 +156,12 @@ FcInitLoadConfigAndFonts (void)
return config;
}
+FcConfig *
+FcInitLoadConfigAndFonts (void)
+{
+ return FcInitLoadOwnConfigAndFonts (NULL);
+}
+
/*
* Initialize the default library configuration
*/
@@ -166,11 +189,18 @@ FcBool
FcInitReinitialize (void)
{
FcConfig *config;
+ FcBool ret;
config = FcInitLoadConfigAndFonts ();
if (!config)
return FcFalse;
- return FcConfigSetCurrent (config);
+ ret = FcConfigSetCurrent (config);
+ /* FcConfigSetCurrent() increases the refcount.
+ * decrease it here to avoid the memory leak.
+ */
+ FcConfigDestroy (config);
+
+ return ret;
}
FcBool
@@ -179,6 +209,8 @@ FcInitBringUptoDate (void)
FcConfig *config = FcConfigGetCurrent ();
time_t now;
+ if (!config)
+ return FcFalse;
/*
* rescanInterval == 0 disables automatic up to date
*/
diff --git a/src/fcint.h b/src/fcint.h
index 51292679..80205c95 100644
--- a/src/fcint.h
+++ b/src/fcint.h
@@ -37,6 +37,9 @@
#include <ctype.h>
#include <assert.h>
#include <errno.h>
+#include <limits.h>
+#include <float.h>
+#include <math.h>
#include <unistd.h>
#include <stddef.h>
#include <sys/types.h>
@@ -85,7 +88,7 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
#define FC_DBG_CONFIG 1024
#define FC_DBG_LANGSET 2048
-#define _FC_ASSERT_STATIC1(_line, _cond) typedef int _static_assert_on_line_##_line##_failed[(_cond)?1:-1]
+#define _FC_ASSERT_STATIC1(_line, _cond) typedef int _static_assert_on_line_##_line##_failed[(_cond)?1:-1] FC_UNUSED
#define _FC_ASSERT_STATIC0(_line, _cond) _FC_ASSERT_STATIC1 (_line, (_cond))
#define FC_ASSERT_STATIC(_cond) _FC_ASSERT_STATIC0 (__LINE__, (_cond))
@@ -93,6 +96,11 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
#define FC_MAX(a,b) ((a) > (b) ? (a) : (b))
#define FC_ABS(a) ((a) < 0 ? -(a) : (a))
+#define FcDoubleIsZero(a) (fabs ((a)) <= DBL_EPSILON)
+#define FcDoubleCmpEQ(a,b) (fabs ((a) - (b)) <= DBL_EPSILON)
+#define FcDoubleCmpGE(a,b) (FcDoubleCmpEQ (a, b) || (a) > (b))
+#define FcDoubleCmpLE(a,b) (FcDoubleCmpEQ (a, b) || (a) < (b))
+
/* slim_internal.h */
#if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) && defined(__ELF__) && !defined(__sun)
#define FcPrivate __attribute__((__visibility__("hidden")))
@@ -107,7 +115,9 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
FC_ASSERT_STATIC (sizeof (FcRef) == sizeof (int));
typedef enum _FcValueBinding {
- FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame
+ FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame,
+ /* to make sure sizeof (FcValueBinding) == 4 even with -fshort-enums */
+ FcValueBindingEnd = INT_MAX
} FcValueBinding;
#define FcStrdup(s) ((FcChar8 *) strdup ((const char *) (s)))
@@ -158,6 +168,7 @@ typedef enum _FcValueBinding {
#define FcValueString(v) FcPointerMember(v,u.s,FcChar8)
#define FcValueCharSet(v) FcPointerMember(v,u.c,const FcCharSet)
#define FcValueLangSet(v) FcPointerMember(v,u.l,const FcLangSet)
+#define FcValueRange(v) FcPointerMember(v,u.r,const FcRange)
typedef struct _FcValueList *FcValueListPtr;
@@ -171,6 +182,12 @@ typedef struct _FcValueList {
typedef int FcObject;
+/* The 1024 is to leave some room for future added internal objects, such
+ * that caches from newer fontconfig can still be used with older fontconfig
+ * without getting confused. */
+#define FC_EXT_OBJ_INDEX 1024
+#define FC_OBJ_ID(_n_) ((_n_) & (~FC_EXT_OBJ_INDEX))
+
typedef struct _FcPatternElt *FcPatternEltPtr;
/*
@@ -208,6 +225,7 @@ typedef enum _FcOp {
FcOpField, FcOpConst,
FcOpAssign, FcOpAssignReplace,
FcOpPrependFirst, FcOpPrepend, FcOpAppend, FcOpAppendLast,
+ FcOpDelete, FcOpDeleteAll,
FcOpQuest,
FcOpOr, FcOpAnd, FcOpEqual, FcOpNotEqual,
FcOpContains, FcOpListing, FcOpNotContains,
@@ -234,20 +252,38 @@ typedef struct _FcExprName {
FcMatchKind kind;
} FcExprName;
+typedef struct _FcRangeInt {
+ FcChar32 begin;
+ FcChar32 end;
+} FcRangeInt;
+typedef struct _FcRangeDouble {
+ double begin;
+ double end;
+} FcRangeDouble;
+struct _FcRange {
+ FcBool is_double;
+ FcBool is_inclusive;
+ union {
+ FcRangeInt i;
+ FcRangeDouble d;
+ } u;
+};
+
typedef struct _FcExpr {
FcOp op;
union {
- int ival;
- double dval;
- const FcChar8 *sval;
- FcExprMatrix *mexpr;
- FcBool bval;
- FcCharSet *cval;
- FcLangSet *lval;
-
- FcExprName name;
- const FcChar8 *constant;
+ int ival;
+ double dval;
+ const FcChar8 *sval;
+ FcExprMatrix *mexpr;
+ FcBool bval;
+ FcCharSet *cval;
+ FcLangSet *lval;
+ FcRange *rval;
+
+ FcExprName name;
+ const FcChar8 *constant;
struct {
struct _FcExpr *left, *right;
} tree;
@@ -270,7 +306,6 @@ typedef enum _FcQual {
#define FcMatchDefault ((FcMatchKind) -1)
typedef struct _FcTest {
- struct _FcTest *next;
FcMatchKind kind;
FcQual qual;
FcObject object;
@@ -279,17 +314,28 @@ typedef struct _FcTest {
} FcTest;
typedef struct _FcEdit {
- struct _FcEdit *next;
FcObject object;
FcOp op;
FcExpr *expr;
FcValueBinding binding;
} FcEdit;
+typedef enum _FcRuleType {
+ FcRuleUnknown, FcRuleTest, FcRuleEdit
+} FcRuleType;
+
+typedef struct _FcRule {
+ struct _FcRule *next;
+ FcRuleType type;
+ union {
+ FcTest *test;
+ FcEdit *edit;
+ } u;
+} FcRule;
+
typedef struct _FcSubst {
struct _FcSubst *next;
- FcTest *test;
- FcEdit *edit;
+ FcRule *rule;
} FcSubst;
typedef struct _FcCharLeaf {
@@ -424,7 +470,7 @@ typedef struct _FcCaseFold {
#define FC_CACHE_MAGIC_MMAP 0xFC02FC04
#define FC_CACHE_MAGIC_ALLOC 0xFC02FC05
-#define FC_CACHE_CONTENT_VERSION 3
+#define FC_CACHE_CONTENT_VERSION 5
struct _FcAtomic {
FcChar8 *file; /* original file name */
@@ -500,7 +546,9 @@ struct _FcConfig {
FcRef ref; /* reference count */
- FcExprPage *expr_pool; /* pool of FcExpr's */
+ FcExprPage *expr_pool; /* pool of FcExpr's */
+
+ FcChar8 *sysRoot; /* override the system root directory */
};
typedef struct _FcFileTime {
@@ -510,13 +558,6 @@ typedef struct _FcFileTime {
typedef struct _FcCharMap FcCharMap;
-typedef struct _FcRange FcRange;
-
-struct _FcRange {
- FcChar32 begin;
- FcChar32 end;
-};
-
typedef struct _FcStatFS FcStatFS;
struct _FcStatFS {
@@ -545,6 +586,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config);
FcPrivate FcCache *
FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcStrSet *dirs);
+FcPrivate FcCache *
+FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs);
+
FcPrivate FcBool
FcDirCacheWrite (FcCache *cache, FcConfig *config);
@@ -607,10 +651,9 @@ FcPrivate FcBool
FcConfigAddBlank (FcConfig *config,
FcChar32 blank);
-FcPrivate FcBool
-FcConfigAddEdit (FcConfig *config,
- FcTest *test,
- FcEdit *edit,
+FcBool
+FcConfigAddRule (FcConfig *config,
+ FcRule *rule,
FcMatchKind kind);
FcPrivate void
@@ -620,7 +663,7 @@ FcConfigSetFonts (FcConfig *config,
FcPrivate FcBool
FcConfigCompareValue (const FcValue *m,
- FcOp op,
+ unsigned int op_,
const FcValue *v);
FcPrivate FcBool
@@ -677,6 +720,9 @@ FcPrivate FcLangSet *
FcLangSetSerialize(FcSerialize *serialize, const FcLangSet *l);
/* fccharset.c */
+FcPrivate FcCharSet *
+FcCharSetPromote (FcValuePromotionBuffer *vbuf);
+
FcPrivate void
FcLangCharSetPopulate (void);
@@ -724,6 +770,12 @@ FcOpen(const char *pathname, int flags, ...);
FcPrivate int
FcMakeTempfile (char *template);
+FcPrivate int32_t
+FcRandom (void);
+
+FcPrivate FcBool
+FcMakeDirectory (const FcChar8 *dir);
+
/* fcdbg.c */
FcPrivate void
@@ -770,6 +822,9 @@ FcInitDebug (void);
FcPrivate FcChar8 *
FcGetDefaultLang (void);
+FcPrivate FcChar8 *
+FcGetPrgname (void);
+
FcPrivate void
FcDefaultFini (void);
@@ -779,6 +834,9 @@ FcPrivate FcBool
FcFileIsLink (const FcChar8 *file);
FcPrivate FcBool
+FcFileIsFile (const FcChar8 *file);
+
+FcPrivate FcBool
FcFileScanConfig (FcFontSet *set,
FcStrSet *dirs,
FcBlanks *blanks,
@@ -791,7 +849,13 @@ FcDirScanConfig (FcFontSet *set,
FcBlanks *blanks,
const FcChar8 *dir,
FcBool force,
- FcConfig *config);
+ FcConfig *config,
+ FcBool scanOnly);
+
+FcPrivate FcBool
+FcDirScanOnly (FcStrSet *dirs,
+ const FcChar8 *dir,
+ FcConfig *config);
/* fcfont.c */
FcPrivate int
@@ -805,6 +869,16 @@ FcFontSetSerializeAlloc (FcSerialize *serialize, const FcFontSet *s);
FcPrivate FcFontSet *
FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s);
+FcPrivate FcFontSet *
+FcFontSetDeserialize (const FcFontSet *set);
+
+/* fcinit.c */
+FcPrivate FcConfig *
+FcInitLoadOwnConfig (FcConfig *config);
+
+FcPrivate FcConfig *
+FcInitLoadOwnConfigAndFonts (FcConfig *config);
+
/* fcxml.c */
FcPrivate void
FcTestDestroy (FcTest *test);
@@ -812,6 +886,9 @@ FcTestDestroy (FcTest *test);
FcPrivate void
FcEditDestroy (FcEdit *e);
+void
+FcRuleDestroy (FcRule *rule);
+
/* fclang.c */
FcPrivate FcLangSet *
FcFreeTypeLangSet (const FcCharSet *charset,
@@ -844,7 +921,7 @@ FcListPatternMatchAny (const FcPattern *p,
enum {
FC_INVALID_OBJECT = 0,
-#define FC_OBJECT(NAME, Type) FC_##NAME##_OBJECT,
+#define FC_OBJECT(NAME, Type, Cmp) FC_##NAME##_OBJECT,
#include "fcobjs.h"
#undef FC_OBJECT
FC_ONE_AFTER_MAX_BASE_OBJECT
@@ -947,6 +1024,9 @@ FcPatternObjectAddBool (FcPattern *p, FcObject object, FcBool b);
FcPrivate FcBool
FcPatternObjectAddLangSet (FcPattern *p, FcObject object, const FcLangSet *ls);
+FcPrivate FcBool
+FcPatternObjectAddRange (FcPattern *p, FcObject object, const FcRange *r);
+
FcPrivate FcResult
FcPatternObjectGetInteger (const FcPattern *p, FcObject object, int n, int *i);
@@ -968,6 +1048,9 @@ FcPatternObjectGetBool (const FcPattern *p, FcObject object, int n, FcBool *b);
FcPrivate FcResult
FcPatternObjectGetLangSet (const FcPattern *p, FcObject object, int n, FcLangSet **ls);
+FcPrivate FcResult
+FcPatternObjectGetRange (const FcPattern *p, FcObject object, int id, FcRange **r);
+
FcPrivate FcBool
FcPatternAppend (FcPattern *p, FcPattern *s);
@@ -995,6 +1078,32 @@ extern FcPrivate const FcMatrix FcIdentityMatrix;
FcPrivate void
FcMatrixFree (FcMatrix *mat);
+/* fcrange.c */
+
+FcPrivate FcRange
+FcRangeCanonicalize (const FcRange *range);
+
+FcPrivate FcRange *
+FcRangePromote (double v, FcValuePromotionBuffer *vbuf);
+
+FcPrivate FcBool
+FcRangeIsZero (const FcRange *r);
+
+FcPrivate FcBool
+FcRangeIsInRange (const FcRange *a, const FcRange *b);
+
+FcPrivate FcBool
+FcRangeCompare (FcOp op, const FcRange *a, const FcRange *b);
+
+FcPrivate FcChar32
+FcRangeHash (const FcRange *r);
+
+FcPrivate FcBool
+FcRangeSerializeAlloc (FcSerialize *serialize, const FcRange *r);
+
+FcPrivate FcRange *
+FcRangeSerialize (FcSerialize *serialize, const FcRange *r);
+
/* fcstat.c */
FcPrivate int
@@ -1040,11 +1149,8 @@ FcStrBufData (FcStrBuf *buf, const FcChar8 *s, int len);
FcPrivate int
FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2);
-FcPrivate FcBool
-FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex);
-
-FcPrivate FcBool
-FcStrRegexCmpIgnoreCase (const FcChar8 *s, const FcChar8 *regex);
+FcPrivate int
+FcStrCmpIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims);
FcPrivate const FcChar8 *
FcStrContainsIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2);
@@ -1055,10 +1161,21 @@ FcStrContainsIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
FcPrivate const FcChar8 *
FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2);
+FcPrivate int
+FcStrMatchIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims);
+
+FcPrivate FcBool
+FcStrGlobMatch (const FcChar8 *glob,
+ const FcChar8 *string);
+
FcPrivate FcBool
FcStrUsesHome (const FcChar8 *s);
FcPrivate FcChar8 *
+FcStrBuildFilename (const FcChar8 *path,
+ ...);
+
+FcPrivate FcChar8 *
FcStrLastSlash (const FcChar8 *path);
FcPrivate FcChar32
diff --git a/src/fclang.c b/src/fclang.c
index 8e9b094b..b1fd1bca 100644
--- a/src/fclang.c
+++ b/src/fclang.c
@@ -720,19 +720,22 @@ FcLangSetPromote (const FcChar8 *lang, FcValuePromotionBuffer *vbuf)
memset (buf->ls.map, '\0', sizeof (buf->ls.map));
buf->ls.map_size = NUM_LANG_SET_MAP;
buf->ls.extra = 0;
- id = FcLangSetIndex (lang);
- if (id > 0)
+ if (lang)
{
- FcLangSetBitSet (&buf->ls, id);
- }
- else
- {
- buf->ls.extra = &buf->strs;
- buf->strs.num = 1;
- buf->strs.size = 1;
- buf->strs.strs = &buf->str;
- FcRefInit (&buf->strs.ref, 1);
- buf->str = (FcChar8 *) lang;
+ id = FcLangSetIndex (lang);
+ if (id > 0)
+ {
+ FcLangSetBitSet (&buf->ls, id);
+ }
+ else
+ {
+ buf->ls.extra = &buf->strs;
+ buf->strs.num = 1;
+ buf->strs.size = 1;
+ buf->strs.strs = &buf->str;
+ FcRefInit (&buf->strs.ref, 1);
+ buf->str = (FcChar8 *) lang;
+ }
}
return &buf->ls;
}
@@ -1027,9 +1030,11 @@ FcLangSetOperate(const FcLangSet *a,
const FcChar8 *s))
{
FcLangSet *langset = FcLangSetCopy (a);
- FcStrList *sl = FcStrListCreate (FcLangSetGetLangs (b));
+ FcStrSet *set = FcLangSetGetLangs (b);
+ FcStrList *sl = FcStrListCreate (set);
FcChar8 *str;
+ FcStrSetDestroy (set);
while ((str = FcStrListNext (sl)))
{
func (langset, str);
diff --git a/src/fclist.c b/src/fclist.c
index b7ae899c..d7e8fc09 100644
--- a/src/fclist.c
+++ b/src/fclist.c
@@ -212,6 +212,8 @@ FcListPatternMatchAny (const FcPattern *p,
{
int i;
+ if (!p)
+ return FcFalse;
for (i = 0; i < p->num; i++)
{
FcPatternElt *pe = &FcPatternElts(p)[i];
@@ -252,6 +254,7 @@ FcListValueHash (FcValue *value)
{
FcValue v = FcValueCanonicalize(value);
switch (v.type) {
+ case FcTypeUnknown:
case FcTypeVoid:
return 0;
case FcTypeInteger:
@@ -267,9 +270,11 @@ FcListValueHash (FcValue *value)
case FcTypeCharSet:
return FcCharSetCount (v.u.c);
case FcTypeFTFace:
- return (long) v.u.f;
+ return (intptr_t) v.u.f;
case FcTypeLangSet:
return FcLangSetHash (v.u.l);
+ case FcTypeRange:
+ return FcRangeHash (v.u.r);
}
return 0;
}
diff --git a/src/fcmatch.c b/src/fcmatch.c
index 6778967b..46d08bcc 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -77,6 +77,24 @@ FcCompareFamily (FcValue *v1, FcValue *v2)
}
static double
+FcComparePostScript (FcValue *v1, FcValue *v2)
+{
+ const FcChar8 *v1_string = FcValueString (v1);
+ const FcChar8 *v2_string = FcValueString (v2);
+ int n;
+ size_t len;
+
+ if (FcToLower (*v1_string) != FcToLower (*v2_string) &&
+ *v1_string != ' ' && *v2_string != ' ')
+ return 1.0;
+
+ n = FcStrMatchIgnoreCaseAndDelims (v1_string, v2_string, (const FcChar8 *)" -");
+ len = strlen ((const char *)v1_string);
+
+ return (double)(len - n) / (double)len;
+}
+
+static double
FcCompareLang (FcValue *v1, FcValue *v2)
{
FcLangResult result;
@@ -171,25 +189,130 @@ FcCompareSize (FcValue *value1, FcValue *value2)
}
static double
+FcCompareSizeRange (FcValue *v1, FcValue *v2)
+{
+ FcValue value1 = FcValueCanonicalize (v1);
+ FcValue value2 = FcValueCanonicalize (v2);
+ FcRange *r1 = NULL, *r2 = NULL;
+ double ret = -1.0;
+
+ switch ((int) value1.type) {
+ case FcTypeDouble:
+ r1 = FcRangeCreateDouble (value1.u.d, value1.u.d);
+ break;
+ case FcTypeRange:
+ r1 = FcRangeCopy (value1.u.r);
+ break;
+ default:
+ goto bail;
+ }
+ switch ((int) value2.type) {
+ case FcTypeDouble:
+ r2 = FcRangeCreateDouble (value2.u.d, value2.u.d);
+ break;
+ case FcTypeRange:
+ r2 = FcRangeCopy (value2.u.r);
+ break;
+ default:
+ goto bail;
+ }
+
+ if (FcRangeIsInRange (r1, r2))
+ ret = 0.0;
+ else
+ ret = FC_MIN (fabs (r1->u.d.end - r2->u.d.begin), fabs (r1->u.d.begin - r2->u.d.end));
+
+bail:
+ if (r1)
+ FcRangeDestroy (r1);
+ if (r2)
+ FcRangeDestroy (r2);
+
+ return ret;
+}
+
+static double
FcCompareFilename (FcValue *v1, FcValue *v2)
{
- const FcChar8 *s1 = FcValueString (v1), *s2 = FcValueString (v2);
- if (FcStrCmp (s1, s2) == 0)
- return 0.0;
- else if (FcStrCmpIgnoreCase (s1, s2) == 0)
- return 1.0;
- else if (FcStrRegexCmp (s2, s1))
- return 2.0;
- else if (FcStrRegexCmpIgnoreCase (s2, s1))
- return 3.0;
- else
- return 4.0;
+ const FcChar8 *s1 = FcValueString (v1), *s2 = FcValueString (v2);
+ if (FcStrCmp (s1, s2) == 0)
+ return 0.0;
+ else if (FcStrCmpIgnoreCase (s1, s2) == 0)
+ return 1.0;
+ else if (FcStrGlobMatch (s1, s2))
+ return 2.0;
+ else
+ return 3.0;
}
+
+/* Define priorities to -1 for objects that don't have a compare function. */
+
+#define PRI_NULL(n) \
+ PRI_ ## n ## _STRONG = -1, \
+ PRI_ ## n ## _WEAK = -1,
+#define PRI1(n)
+#define PRI_FcCompareFamily(n) PRI1(n)
+#define PRI_FcCompareString(n) PRI1(n)
+#define PRI_FcCompareNumber(n) PRI1(n)
+#define PRI_FcCompareSize(n) PRI1(n)
+#define PRI_FcCompareBool(n) PRI1(n)
+#define PRI_FcCompareFilename(n) PRI1(n)
+#define PRI_FcCompareCharSet(n) PRI1(n)
+#define PRI_FcCompareLang(n) PRI1(n)
+#define PRI_FcComparePostScript(n) PRI1(n)
+#define PRI_FcCompareSizeRange(n) PRI1(n)
+
+#define FC_OBJECT(NAME, Type, Cmp) PRI_##Cmp(NAME)
+
+typedef enum _FcMatcherPriorityDummy {
+#include "fcobjs.h"
+} FcMatcherPriorityDummy;
+
+#undef FC_OBJECT
+
+
+/* Canonical match priority order. */
+
+#undef PRI1
+#define PRI1(n) \
+ PRI_ ## n, \
+ PRI_ ## n ## _STRONG = PRI_ ## n, \
+ PRI_ ## n ## _WEAK = PRI_ ## n
+
+typedef enum _FcMatcherPriority {
+ PRI1(FILE),
+ PRI1(FONTFORMAT),
+ PRI1(SCALABLE),
+ PRI1(COLOR),
+ PRI1(FOUNDRY),
+ PRI1(CHARSET),
+ PRI_FAMILY_STRONG,
+ PRI_POSTSCRIPT_NAME_STRONG,
+ PRI1(LANG),
+ PRI_FAMILY_WEAK,
+ PRI_POSTSCRIPT_NAME_WEAK,
+ PRI1(SPACING),
+ PRI1(SIZE),
+ PRI1(PIXEL_SIZE),
+ PRI1(STYLE),
+ PRI1(SLANT),
+ PRI1(WEIGHT),
+ PRI1(WIDTH),
+ PRI1(DECORATIVE),
+ PRI1(ANTIALIAS),
+ PRI1(RASTERIZER),
+ PRI1(OUTLINE),
+ PRI1(FONTVERSION),
+ PRI_END
+} FcMatcherPriority;
+
+#undef PRI1
+
typedef struct _FcMatcher {
- FcObject object;
- double (*compare) (FcValue *value1, FcValue *value2);
- int strong, weak;
+ FcObject object;
+ double (*compare) (FcValue *value1, FcValue *value2);
+ int strong, weak;
} FcMatcher;
/*
@@ -197,100 +320,34 @@ typedef struct _FcMatcher {
* each value, earlier values are more significant than
* later values
*/
+#define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
static const FcMatcher _FcMatchers [] = {
- { FC_FILE_OBJECT, FcCompareFilename, 0, 0 },
-#define MATCH_FILE 0
- { FC_FOUNDRY_OBJECT, FcCompareString, 1, 1 },
-#define MATCH_FOUNDRY 1
- { FC_CHARSET_OBJECT, FcCompareCharSet, 2, 2 },
-#define MATCH_CHARSET 2
- { FC_FAMILY_OBJECT, FcCompareFamily, 3, 5 },
-#define MATCH_FAMILY 3
- { FC_LANG_OBJECT, FcCompareLang, 4, 4 },
-#define MATCH_LANG 4
-#define MATCH_LANG_INDEX 4
- { FC_SPACING_OBJECT, FcCompareNumber, 6, 6 },
-#define MATCH_SPACING 5
- { FC_PIXEL_SIZE_OBJECT, FcCompareSize, 7, 7 },
-#define MATCH_PIXEL_SIZE 6
- { FC_STYLE_OBJECT, FcCompareString, 8, 8 },
-#define MATCH_STYLE 7
- { FC_SLANT_OBJECT, FcCompareNumber, 9, 9 },
-#define MATCH_SLANT 8
- { FC_WEIGHT_OBJECT, FcCompareNumber, 10, 10 },
-#define MATCH_WEIGHT 9
- { FC_WIDTH_OBJECT, FcCompareNumber, 11, 11 },
-#define MATCH_WIDTH 10
- { FC_DECORATIVE_OBJECT, FcCompareBool, 12, 12 },
-#define MATCH_DECORATIVE 11
- { FC_ANTIALIAS_OBJECT, FcCompareBool, 13, 13 },
-#define MATCH_ANTIALIAS 12
- { FC_RASTERIZER_OBJECT, FcCompareString, 14, 14 },
-#define MATCH_RASTERIZER 13
- { FC_OUTLINE_OBJECT, FcCompareBool, 15, 15 },
-#define MATCH_OUTLINE 14
- { FC_FONTVERSION_OBJECT, FcCompareNumber, 16, 16 },
-#define MATCH_FONTVERSION 15
+ { FC_INVALID_OBJECT, NULL, -1, -1 },
+#include "fcobjs.h"
};
-
-#define NUM_MATCH_VALUES 17
+#undef FC_OBJECT
static const FcMatcher*
FcObjectToMatcher (FcObject object,
FcBool include_lang)
{
- int i;
-
- i = -1;
- switch (object) {
- case FC_FILE_OBJECT:
- i = MATCH_FILE; break;
- case FC_FOUNDRY_OBJECT:
- i = MATCH_FOUNDRY; break;
- case FC_FONTVERSION_OBJECT:
- i = MATCH_FONTVERSION; break;
- case FC_FAMILY_OBJECT:
- i = MATCH_FAMILY; break;
- case FC_CHARSET_OBJECT:
- i = MATCH_CHARSET; break;
- case FC_ANTIALIAS_OBJECT:
- i = MATCH_ANTIALIAS; break;
- case FC_LANG_OBJECT:
- i = MATCH_LANG; break;
- case FC_SPACING_OBJECT:
- i = MATCH_SPACING; break;
- case FC_STYLE_OBJECT:
- i = MATCH_STYLE; break;
- case FC_SLANT_OBJECT:
- i = MATCH_SLANT; break;
- case FC_PIXEL_SIZE_OBJECT:
- i = MATCH_PIXEL_SIZE; break;
- case FC_WIDTH_OBJECT:
- i = MATCH_WIDTH; break;
- case FC_WEIGHT_OBJECT:
- i = MATCH_WEIGHT; break;
- case FC_RASTERIZER_OBJECT:
- i = MATCH_RASTERIZER; break;
- case FC_OUTLINE_OBJECT:
- i = MATCH_OUTLINE; break;
- case FC_DECORATIVE_OBJECT:
- i = MATCH_DECORATIVE; break;
- default:
- if (include_lang)
- {
- switch (object) {
- case FC_FAMILYLANG_OBJECT:
- case FC_STYLELANG_OBJECT:
- case FC_FULLNAMELANG_OBJECT:
- i = MATCH_LANG; break;
- }
+ if (include_lang)
+ {
+ switch (object) {
+ case FC_FAMILYLANG_OBJECT:
+ case FC_STYLELANG_OBJECT:
+ case FC_FULLNAMELANG_OBJECT:
+ object = FC_LANG_OBJECT;
+ break;
}
}
-
- if (i < 0)
+ if (object > FC_MAX_BASE_OBJECT ||
+ !_FcMatchers[object].compare ||
+ _FcMatchers[object].strong == -1 ||
+ _FcMatchers[object].weak == -1)
return NULL;
- return _FcMatchers+i;
+ return _FcMatchers + object;
}
static FcBool
@@ -319,7 +376,7 @@ FcCompareValueList (FcObject object,
best = 1e99;
bestStrong = 1e99;
bestWeak = 1e99;
- j = 1;
+ j = 0;
for (v1 = v1orig; v1; v1 = FcValueListNext(v1))
{
for (v2 = v2orig, k = 0; v2; v2 = FcValueListNext(v2), k++)
@@ -390,7 +447,7 @@ FcCompare (FcPattern *pat,
{
int i, i1, i2;
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
value[i] = 0.0;
i1 = 0;
@@ -427,7 +484,7 @@ FcFontRenderPrepare (FcConfig *config,
{
FcPattern *new;
int i;
- FcPatternElt *fe, *pe, *fel, *pel;
+ FcPatternElt *fe, *pe;
FcValue v;
FcResult result;
@@ -452,36 +509,25 @@ FcFontRenderPrepare (FcConfig *config,
fe->object == FC_STYLE_OBJECT ||
fe->object == FC_FULLNAME_OBJECT)
{
+ FcPatternElt *fel, *pel;
+
FC_ASSERT_STATIC ((FC_FAMILY_OBJECT + 1) == FC_FAMILYLANG_OBJECT);
FC_ASSERT_STATIC ((FC_STYLE_OBJECT + 1) == FC_STYLELANG_OBJECT);
FC_ASSERT_STATIC ((FC_FULLNAME_OBJECT + 1) == FC_FULLNAMELANG_OBJECT);
fel = FcPatternObjectFindElt (font, fe->object + 1);
pel = FcPatternObjectFindElt (pat, fe->object + 1);
- }
- else
- {
- fel = NULL;
- pel = NULL;
- }
- pe = FcPatternObjectFindElt (pat, fe->object);
- if (pe)
- {
- const FcMatcher *match = FcObjectToMatcher (pe->object, FcFalse);
- if (!FcCompareValueList (pe->object, match,
- FcPatternEltValues(pe),
- FcPatternEltValues(fe), &v, NULL, NULL, &result))
- {
- FcPatternDestroy (new);
- return NULL;
- }
if (fel && pel)
{
+ /* The font has name languages, and pattern asks for specific language(s).
+ * Match on language and and prefer that result.
+ * Note: Currently the code only give priority to first matching language.
+ */
int n = 1, j;
FcValueListPtr l1, l2, ln = NULL, ll = NULL;
+ const FcMatcher *match = FcObjectToMatcher (pel->object, FcTrue);
- match = FcObjectToMatcher (pel->object, FcTrue);
if (!FcCompareValueList (pel->object, match,
FcPatternEltValues (pel),
FcPatternEltValues (fel), NULL, NULL, &n, &result))
@@ -524,9 +570,10 @@ FcFontRenderPrepare (FcConfig *config,
}
else if (fel)
{
+ /* Pattern doesn't ask for specific language. Copy all for name and
+ * lang. */
FcValueListPtr l1, l2;
- copy_lang:
l1 = FcValueListDuplicate (FcPatternEltValues (fe));
l2 = FcValueListDuplicate (FcPatternEltValues (fel));
FcPatternObjectListAdd (new, fe->object, l1, FcFalse);
@@ -535,22 +582,39 @@ FcFontRenderPrepare (FcConfig *config,
continue;
}
}
+
+ pe = FcPatternObjectFindElt (pat, fe->object);
+ if (pe)
+ {
+ const FcMatcher *match = FcObjectToMatcher (pe->object, FcFalse);
+ if (!FcCompareValueList (pe->object, match,
+ FcPatternEltValues(pe),
+ FcPatternEltValues(fe), &v, NULL, NULL, &result))
+ {
+ FcPatternDestroy (new);
+ return NULL;
+ }
+ FcPatternObjectAdd (new, fe->object, v, FcFalse);
+ }
else
{
- if (fel)
- goto copy_lang;
- v = FcValueCanonicalize(&FcPatternEltValues (fe)->value);
+ FcPatternObjectListAdd (new, fe->object,
+ FcValueListDuplicate (FcPatternEltValues (fe)),
+ FcTrue);
}
- FcPatternObjectAdd (new, fe->object, v, FcFalse);
}
for (i = 0; i < pat->num; i++)
{
pe = &FcPatternElts(pat)[i];
fe = FcPatternObjectFindElt (font, pe->object);
- if (!fe)
+ if (!fe &&
+ pe->object != FC_FAMILYLANG_OBJECT &&
+ pe->object != FC_STYLELANG_OBJECT &&
+ pe->object != FC_FULLNAMELANG_OBJECT)
{
- v = FcValueCanonicalize(&FcPatternEltValues(pe)->value);
- FcPatternObjectAdd (new, pe->object, v, FcTrue);
+ FcPatternObjectListAdd (new, pe->object,
+ FcValueListDuplicate (FcPatternEltValues(pe)),
+ FcFalse);
}
}
@@ -564,14 +628,14 @@ FcFontSetMatchInternal (FcFontSet **sets,
FcPattern *p,
FcResult *result)
{
- double score[NUM_MATCH_VALUES], bestscore[NUM_MATCH_VALUES];
+ double score[PRI_END], bestscore[PRI_END];
int f;
FcFontSet *s;
FcPattern *best;
int i;
int set;
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
bestscore[i] = 0;
best = 0;
if (FcDebug () & FC_DBG_MATCH)
@@ -596,19 +660,19 @@ FcFontSetMatchInternal (FcFontSet **sets,
if (FcDebug () & FC_DBG_MATCHV)
{
printf ("Score");
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
{
printf (" %g", score[i]);
}
printf ("\n");
}
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
{
if (best && bestscore[i] < score[i])
break;
if (!best || score[i] < bestscore[i])
{
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
bestscore[i] = score[i];
best = s->fonts[f];
break;
@@ -619,7 +683,7 @@ FcFontSetMatchInternal (FcFontSet **sets,
if (FcDebug () & FC_DBG_MATCH)
{
printf ("Best score");
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
printf (" %g", bestscore[i]);
printf ("\n");
FcPatternPrint (best);
@@ -695,7 +759,7 @@ FcFontMatch (FcConfig *config,
typedef struct _FcSortNode {
FcPattern *pattern;
- double score[NUM_MATCH_VALUES];
+ double score[PRI_END];
} FcSortNode;
static int
@@ -708,7 +772,7 @@ FcSortCompare (const void *aa, const void *ab)
double ad = 0, bd = 0;
int i;
- i = NUM_MATCH_VALUES;
+ i = PRI_END;
while (i-- && (ad = *as++) == (bd = *bs++))
;
return ad < bd ? -1 : ad > bd ? 1 : 0;
@@ -719,6 +783,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
{
FcBool ret = FcFalse;
FcCharSet *cs;
+ int i;
cs = 0;
if (trim || csp)
@@ -728,7 +793,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
goto bail;
}
- while (nnode--)
+ for (i = 0; i < nnode; i++)
{
FcSortNode *node = *n++;
FcBool adds_chars = FcFalse;
@@ -752,7 +817,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
* If this font isn't a subset of the previous fonts,
* add it to the list
*/
- if (!trim || adds_chars)
+ if (!i || !trim || adds_chars)
{
FcPatternReference (node->pattern);
if (FcDebug () & FC_DBG_MATCHV)
@@ -873,7 +938,7 @@ FcFontSetSort (FcConfig *config FC_UNUSED,
if (FcDebug () & FC_DBG_MATCHV)
{
printf ("Score");
- for (i = 0; i < NUM_MATCH_VALUES; i++)
+ for (i = 0; i < PRI_END; i++)
{
printf (" %g", new->score[i]);
}
@@ -900,7 +965,7 @@ FcFontSetSort (FcConfig *config FC_UNUSED,
* If this node matches any language, go check
* which ones and satisfy those entries
*/
- if (nodeps[f]->score[MATCH_LANG_INDEX] < 2000)
+ if (nodeps[f]->score[PRI_LANG] < 2000)
{
for (i = 0; i < nPatternLang; i++)
{
@@ -930,7 +995,9 @@ FcFontSetSort (FcConfig *config FC_UNUSED,
}
}
if (!satisfies)
- nodeps[f]->score[MATCH_LANG_INDEX] = 10000.0;
+ {
+ nodeps[f]->score[PRI_LANG] = 10000.0;
+ }
}
/*
diff --git a/src/fcname.c b/src/fcname.c
index 2418189f..1d8fe757 100644
--- a/src/fcname.c
+++ b/src/fcname.c
@@ -29,7 +29,7 @@
#include <stdio.h>
static const FcObjectType FcObjects[] = {
-#define FC_OBJECT(NAME, Type) { FC_##NAME, Type },
+#define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME, Type },
#include "fcobjs.h"
#undef FC_OBJECT
};
@@ -76,6 +76,8 @@ FcObjectValidType (FcObject object, FcType type)
if (t) {
switch ((int) t->type) {
+ case FcTypeUnknown:
+ return FcTrue;
case FcTypeDouble:
case FcTypeInteger:
if (type == FcTypeDouble || type == FcTypeInteger)
@@ -85,8 +87,12 @@ FcObjectValidType (FcObject object, FcType type)
if (type == FcTypeLangSet || type == FcTypeString)
return FcTrue;
break;
+ case FcTypeRange:
+ if (type == FcTypeRange || type == FcTypeDouble)
+ return FcTrue;
+ break;
default:
- if (t->type == (unsigned int) -1 || type == t->type)
+ if (type == t->type)
return FcTrue;
break;
}
@@ -130,6 +136,8 @@ static const FcConstant _FcBaseConstants[] = {
{ (FcChar8 *) "thin", "weight", FC_WEIGHT_THIN, },
{ (FcChar8 *) "extralight", "weight", FC_WEIGHT_EXTRALIGHT, },
{ (FcChar8 *) "ultralight", "weight", FC_WEIGHT_EXTRALIGHT, },
+ { (FcChar8 *) "demilight", "weight", FC_WEIGHT_DEMILIGHT, },
+ { (FcChar8 *) "semilight", "weight", FC_WEIGHT_DEMILIGHT, },
{ (FcChar8 *) "light", "weight", FC_WEIGHT_LIGHT, },
{ (FcChar8 *) "book", "weight", FC_WEIGHT_BOOK, },
{ (FcChar8 *) "regular", "weight", FC_WEIGHT_REGULAR, },
@@ -271,6 +279,8 @@ FcNameConvert (FcType type, FcChar8 *string)
{
FcValue v;
FcMatrix m;
+ double b, e;
+ char *p;
v.type = type;
switch ((int) v.type) {
@@ -305,6 +315,20 @@ FcNameConvert (FcType type, FcChar8 *string)
if (!v.u.l)
v.type = FcTypeVoid;
break;
+ case FcTypeRange:
+ if (sscanf ((char *) string, "(%lg %lg)", &b, &e) != 2)
+ {
+ v.u.d = strtod ((char *) string, &p);
+ if (p != NULL && p[0] != 0)
+ {
+ v.type = FcTypeVoid;
+ break;
+ }
+ v.type = FcTypeDouble;
+ }
+ else
+ v.u.r = FcRangeCreateDouble (b, e);
+ break;
default:
break;
}
@@ -318,6 +342,12 @@ FcNameFindNext (const FcChar8 *cur, const char *delim, FcChar8 *save, FcChar8 *l
while ((c = *cur))
{
+ if (!isspace (c))
+ break;
+ ++cur;
+ }
+ while ((c = *cur))
+ {
if (c == '\\')
{
++cur;
@@ -412,6 +442,8 @@ FcNameParse (const FcChar8 *name)
if ((c = FcNameGetConstant (save)))
{
t = FcNameGetObjectType ((char *) c->object);
+ if (t == NULL)
+ goto bail2;
switch ((int) t->type) {
case FcTypeInteger:
case FcTypeDouble:
@@ -466,8 +498,10 @@ FcNameUnparseValue (FcStrBuf *buf,
{
FcChar8 temp[1024];
FcValue v = FcValueCanonicalize(v0);
+ FcRange r;
switch (v.type) {
+ case FcTypeUnknown:
case FcTypeVoid:
return FcTrue;
case FcTypeInteger:
@@ -490,6 +524,18 @@ FcNameUnparseValue (FcStrBuf *buf,
return FcNameUnparseLangSet (buf, v.u.l);
case FcTypeFTFace:
return FcTrue;
+ case FcTypeRange:
+ r = FcRangeCanonicalize (v.u.r);
+ if (!FcDoubleIsZero (r.u.d.begin) || !FcDoubleIsZero (r.u.d.end))
+ {
+ if (FcDoubleCmpEQ (r.u.d.begin, r.u.d.end))
+ sprintf ((char *) temp, "%g", r.u.d.begin);
+ else
+ sprintf ((char *) temp, "(%g %g)", r.u.d.begin, r.u.d.end);
+ return FcNameUnparseString (buf, temp, 0);
+ }
+ else
+ return FcTrue;
}
return FcFalse;
}
@@ -522,12 +568,13 @@ FcNameUnparse (FcPattern *pat)
FcChar8 *
FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
{
- FcStrBuf buf;
- FcChar8 buf_static[8192];
+ FcStrBuf buf, buf2;
+ FcChar8 buf_static[8192], buf2_static[256];
int i;
FcPatternElt *e;
FcStrBufInit (&buf, buf_static, sizeof (buf_static));
+ FcStrBufInit (&buf2, buf2_static, sizeof (buf2_static));
e = FcPatternObjectFindElt (pat, FC_FAMILY_OBJECT);
if (e)
{
@@ -537,10 +584,17 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
e = FcPatternObjectFindElt (pat, FC_SIZE_OBJECT);
if (e)
{
- if (!FcNameUnparseString (&buf, (FcChar8 *) "-", 0))
+ FcChar8 *p;
+
+ if (!FcNameUnparseString (&buf2, (FcChar8 *) "-", 0))
goto bail0;
- if (!FcNameUnparseValueList (&buf, FcPatternEltValues(e), escape ? (FcChar8 *) FC_ESCAPE_FIXED : 0))
+ if (!FcNameUnparseValueList (&buf2, FcPatternEltValues(e), escape ? (FcChar8 *) FC_ESCAPE_FIXED : 0))
goto bail0;
+ p = FcStrBufDoneStatic (&buf2);
+ FcStrBufDestroy (&buf2);
+ if (strlen ((const char *)p) > 1)
+ if (!FcStrBufString (&buf, p))
+ goto bail0;
}
for (i = 0; i < NUM_OBJECT_TYPES; i++)
{
diff --git a/src/fcobjs.c b/src/fcobjs.c
index 146ca70d..bad9824d 100644
--- a/src/fcobjs.c
+++ b/src/fcobjs.c
@@ -37,7 +37,7 @@ FcObjectTypeLookup (register const char *str, register unsigned int len);
/* The 1000 is to leave some room for future added internal objects, such
* that caches from newer fontconfig can still be used with older fontconfig
* without getting confused. */
-static fc_atomic_int_t next_id = FC_MAX_BASE_OBJECT + 1000;
+static fc_atomic_int_t next_id = FC_MAX_BASE_OBJECT + FC_EXT_OBJ_INDEX;
struct FcObjectOtherTypeInfo {
struct FcObjectOtherTypeInfo *next;
FcObjectType object;
@@ -63,7 +63,7 @@ retry:
return NULL;
ot->object.object = (const char *) FcStrdup (str);
- ot->object.type = -1;
+ ot->object.type = FcTypeUnknown;
ot->id = fc_atomic_int_add (next_id, +1);
ot->next = ots;
diff --git a/src/fcobjs.h b/src/fcobjs.h
index 1e9067e2..573fa610 100644
--- a/src/fcobjs.h
+++ b/src/fcobjs.h
@@ -1,44 +1,72 @@
+/*
+ * fontconfig/src/fcobjs.h
+ *
+ * Copyright © 2000 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
/* DON'T REORDER! The order is part of the cache signature. */
-FC_OBJECT (FAMILY, FcTypeString)
-FC_OBJECT (FAMILYLANG, FcTypeString)
-FC_OBJECT (STYLE, FcTypeString)
-FC_OBJECT (STYLELANG, FcTypeString)
-FC_OBJECT (FULLNAME, FcTypeString)
-FC_OBJECT (FULLNAMELANG, FcTypeString)
-FC_OBJECT (SLANT, FcTypeInteger)
-FC_OBJECT (WEIGHT, FcTypeInteger)
-FC_OBJECT (WIDTH, FcTypeInteger)
-FC_OBJECT (SIZE, FcTypeDouble)
-FC_OBJECT (ASPECT, FcTypeDouble)
-FC_OBJECT (PIXEL_SIZE, FcTypeDouble)
-FC_OBJECT (SPACING, FcTypeInteger)
-FC_OBJECT (FOUNDRY, FcTypeString)
-FC_OBJECT (ANTIALIAS, FcTypeBool)
-FC_OBJECT (HINT_STYLE, FcTypeInteger)
-FC_OBJECT (HINTING, FcTypeBool)
-FC_OBJECT (VERTICAL_LAYOUT, FcTypeBool)
-FC_OBJECT (AUTOHINT, FcTypeBool)
-FC_OBJECT (GLOBAL_ADVANCE, FcTypeBool) /* deprecated */
-FC_OBJECT (FILE, FcTypeString)
-FC_OBJECT (INDEX, FcTypeInteger)
-FC_OBJECT (RASTERIZER, FcTypeString)
-FC_OBJECT (OUTLINE, FcTypeBool)
-FC_OBJECT (SCALABLE, FcTypeBool)
-FC_OBJECT (DPI, FcTypeDouble)
-FC_OBJECT (RGBA, FcTypeInteger)
-FC_OBJECT (SCALE, FcTypeDouble)
-FC_OBJECT (MINSPACE, FcTypeBool)
-FC_OBJECT (CHAR_WIDTH, FcTypeInteger)
-FC_OBJECT (CHAR_HEIGHT, FcTypeInteger)
-FC_OBJECT (MATRIX, FcTypeMatrix)
-FC_OBJECT (CHARSET, FcTypeCharSet)
-FC_OBJECT (LANG, FcTypeLangSet)
-FC_OBJECT (FONTVERSION, FcTypeInteger)
-FC_OBJECT (CAPABILITY, FcTypeString)
-FC_OBJECT (FONTFORMAT, FcTypeString)
-FC_OBJECT (EMBOLDEN, FcTypeBool)
-FC_OBJECT (EMBEDDED_BITMAP, FcTypeBool)
-FC_OBJECT (DECORATIVE, FcTypeBool)
-FC_OBJECT (LCD_FILTER, FcTypeInteger)
-FC_OBJECT (NAMELANG, FcTypeString)
+FC_OBJECT (FAMILY, FcTypeString, FcCompareFamily)
+FC_OBJECT (FAMILYLANG, FcTypeString, NULL)
+FC_OBJECT (STYLE, FcTypeString, FcCompareString)
+FC_OBJECT (STYLELANG, FcTypeString, NULL)
+FC_OBJECT (FULLNAME, FcTypeString, NULL)
+FC_OBJECT (FULLNAMELANG, FcTypeString, NULL)
+FC_OBJECT (SLANT, FcTypeInteger, FcCompareNumber)
+FC_OBJECT (WEIGHT, FcTypeInteger, FcCompareNumber)
+FC_OBJECT (WIDTH, FcTypeInteger, FcCompareNumber)
+FC_OBJECT (SIZE, FcTypeRange, FcCompareSizeRange)
+FC_OBJECT (ASPECT, FcTypeDouble, NULL)
+FC_OBJECT (PIXEL_SIZE, FcTypeDouble, FcCompareSize)
+FC_OBJECT (SPACING, FcTypeInteger, FcCompareNumber)
+FC_OBJECT (FOUNDRY, FcTypeString, FcCompareString)
+FC_OBJECT (ANTIALIAS, FcTypeBool, FcCompareBool)
+FC_OBJECT (HINT_STYLE, FcTypeInteger, NULL)
+FC_OBJECT (HINTING, FcTypeBool, NULL)
+FC_OBJECT (VERTICAL_LAYOUT, FcTypeBool, NULL)
+FC_OBJECT (AUTOHINT, FcTypeBool, NULL)
+FC_OBJECT (GLOBAL_ADVANCE, FcTypeBool, NULL) /* deprecated */
+FC_OBJECT (FILE, FcTypeString, FcCompareFilename)
+FC_OBJECT (INDEX, FcTypeInteger, NULL)
+FC_OBJECT (RASTERIZER, FcTypeString, FcCompareString) /* deprecated */
+FC_OBJECT (OUTLINE, FcTypeBool, FcCompareBool)
+FC_OBJECT (SCALABLE, FcTypeBool, FcCompareBool)
+FC_OBJECT (DPI, FcTypeDouble, NULL)
+FC_OBJECT (RGBA, FcTypeInteger, NULL)
+FC_OBJECT (SCALE, FcTypeDouble, NULL)
+FC_OBJECT (MINSPACE, FcTypeBool, NULL)
+FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
+FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
+FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
+FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
+FC_OBJECT (LANG, FcTypeLangSet, FcCompareLang)
+FC_OBJECT (FONTVERSION, FcTypeInteger, FcCompareNumber)
+FC_OBJECT (CAPABILITY, FcTypeString, NULL)
+FC_OBJECT (FONTFORMAT, FcTypeString, FcCompareString)
+FC_OBJECT (EMBOLDEN, FcTypeBool, NULL)
+FC_OBJECT (EMBEDDED_BITMAP, FcTypeBool, NULL)
+FC_OBJECT (DECORATIVE, FcTypeBool, FcCompareBool)
+FC_OBJECT (LCD_FILTER, FcTypeInteger, NULL)
+FC_OBJECT (NAMELANG, FcTypeString, NULL)
+FC_OBJECT (FONT_FEATURES, FcTypeString, NULL)
+FC_OBJECT (PRGNAME, FcTypeString, NULL)
+FC_OBJECT (HASH, FcTypeString, NULL) /* deprecated */
+FC_OBJECT (POSTSCRIPT_NAME, FcTypeString, FcComparePostScript)
+FC_OBJECT (COLOR, FcTypeBool, FcCompareBool)
/* ^-------------- Add new objects here. */
diff --git a/src/fcobjshash.gperf b/src/fcobjshash.gperf
index a9575d03..6bc62dfa 100644
--- a/src/fcobjshash.gperf
+++ b/src/fcobjshash.gperf
@@ -57,3 +57,8 @@ int id;
"decorative",FC_DECORATIVE_OBJECT
"lcdfilter",FC_LCD_FILTER_OBJECT
"namelang",FC_NAMELANG_OBJECT
+"fontfeatures",FC_FONT_FEATURES_OBJECT
+"prgname",FC_PRGNAME_OBJECT
+"hash",FC_HASH_OBJECT
+"postscriptname",FC_POSTSCRIPT_NAME_OBJECT
+"color",FC_COLOR_OBJECT
diff --git a/src/fcobjshash.gperf.h b/src/fcobjshash.gperf.h
index dafac1bc..1765c949 100644
--- a/src/fcobjshash.gperf.h
+++ b/src/fcobjshash.gperf.h
@@ -1,3 +1,26 @@
+/*
+ * fontconfig/src/fcobjshash.gperf.h
+ *
+ * Copyright © 2000 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
%{
CUT_OUT_BEGIN
#include <fontconfig/fontconfig.h>
@@ -21,6 +44,6 @@ struct FcObjectTypeInfo {
};
%%
-#define FC_OBJECT(NAME, Type) FC_##NAME, FC_##NAME##_OBJECT
+#define FC_OBJECT(NAME, Type, Cmp) FC_##NAME, FC_##NAME##_OBJECT
#include "fcobjs.h"
#undef FC_OBJECT
diff --git a/src/fcobjshash.h b/src/fcobjshash.h
index a0cd9ab8..dbaee964 100644
--- a/src/fcobjshash.h
+++ b/src/fcobjshash.h
@@ -37,7 +37,7 @@ int name;
int id;
};
#include <string.h>
-/* maximum key range = 51, duplicates = 0 */
+/* maximum key range = 52, duplicates = 0 */
#ifdef __GNUC__
__inline
@@ -51,46 +51,46 @@ FcObjectTypeHash (register const char *str, register unsigned int len)
{
static const unsigned char asso_values[] =
{
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 15, 24, 14,
- 16, 29, 54, 13, 8, 0, 54, 54, 0, 6,
- 7, 0, 0, 54, 0, 17, 3, 0, 54, 54,
- 0, 28, 1, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 54, 54
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 17, 12, 1,
+ 35, 0, 56, 27, 15, 0, 56, 56, 0, 7,
+ 7, 0, 22, 56, 21, 10, 13, 0, 56, 56,
+ 1, 26, 5, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 56
};
return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[1]];
}
struct FcObjectTypeNamePool_t
{
- char FcObjectTypeNamePool_str3[sizeof("dpi")];
char FcObjectTypeNamePool_str4[sizeof("file")];
- char FcObjectTypeNamePool_str5[sizeof("size")];
+ char FcObjectTypeNamePool_str5[sizeof("color")];
+ char FcObjectTypeNamePool_str6[sizeof("weight")];
char FcObjectTypeNamePool_str7[sizeof("foundry")];
char FcObjectTypeNamePool_str8[sizeof("fullname")];
- char FcObjectTypeNamePool_str9[sizeof("pixelsize")];
- char FcObjectTypeNamePool_str10[sizeof("outline")];
- char FcObjectTypeNamePool_str11[sizeof("autohint")];
+ char FcObjectTypeNamePool_str9[sizeof("size")];
+ char FcObjectTypeNamePool_str10[sizeof("pixelsize")];
+ char FcObjectTypeNamePool_str11[sizeof("decorative")];
char FcObjectTypeNamePool_str12[sizeof("fullnamelang")];
char FcObjectTypeNamePool_str13[sizeof("globaladvance")];
char FcObjectTypeNamePool_str14[sizeof("hinting")];
@@ -98,44 +98,49 @@ struct FcObjectTypeNamePool_t
char FcObjectTypeNamePool_str16[sizeof("hintstyle")];
char FcObjectTypeNamePool_str17[sizeof("fontformat")];
char FcObjectTypeNamePool_str18[sizeof("fontversion")];
- char FcObjectTypeNamePool_str19[sizeof("antialias")];
- char FcObjectTypeNamePool_str20[sizeof("slant")];
- char FcObjectTypeNamePool_str21[sizeof("width")];
- char FcObjectTypeNamePool_str22[sizeof("spacing")];
- char FcObjectTypeNamePool_str23[sizeof("aspect")];
- char FcObjectTypeNamePool_str24[sizeof("matrix")];
- char FcObjectTypeNamePool_str25[sizeof("capability")];
- char FcObjectTypeNamePool_str26[sizeof("lang")];
- char FcObjectTypeNamePool_str27[sizeof("family")];
- char FcObjectTypeNamePool_str28[sizeof("index")];
- char FcObjectTypeNamePool_str29[sizeof("namelang")];
- char FcObjectTypeNamePool_str30[sizeof("charset")];
- char FcObjectTypeNamePool_str31[sizeof("familylang")];
- char FcObjectTypeNamePool_str32[sizeof("charwidth")];
- char FcObjectTypeNamePool_str33[sizeof("charheight")];
- char FcObjectTypeNamePool_str34[sizeof("scale")];
- char FcObjectTypeNamePool_str35[sizeof("weight")];
- char FcObjectTypeNamePool_str36[sizeof("style")];
- char FcObjectTypeNamePool_str37[sizeof("scalable")];
- char FcObjectTypeNamePool_str38[sizeof("embolden")];
- char FcObjectTypeNamePool_str39[sizeof("lcdfilter")];
- char FcObjectTypeNamePool_str40[sizeof("stylelang")];
- char FcObjectTypeNamePool_str41[sizeof("rgba")];
- char FcObjectTypeNamePool_str42[sizeof("rasterizer")];
- char FcObjectTypeNamePool_str43[sizeof("verticallayout")];
- char FcObjectTypeNamePool_str44[sizeof("embeddedbitmap")];
- char FcObjectTypeNamePool_str53[sizeof("decorative")];
+ char FcObjectTypeNamePool_str19[sizeof("fontfeatures")];
+ char FcObjectTypeNamePool_str20[sizeof("outline")];
+ char FcObjectTypeNamePool_str21[sizeof("autohint")];
+ char FcObjectTypeNamePool_str22[sizeof("slant")];
+ char FcObjectTypeNamePool_str23[sizeof("scale")];
+ char FcObjectTypeNamePool_str24[sizeof("postscriptname")];
+ char FcObjectTypeNamePool_str25[sizeof("dpi")];
+ char FcObjectTypeNamePool_str26[sizeof("scalable")];
+ char FcObjectTypeNamePool_str27[sizeof("embolden")];
+ char FcObjectTypeNamePool_str28[sizeof("lang")];
+ char FcObjectTypeNamePool_str29[sizeof("antialias")];
+ char FcObjectTypeNamePool_str30[sizeof("family")];
+ char FcObjectTypeNamePool_str31[sizeof("hash")];
+ char FcObjectTypeNamePool_str32[sizeof("namelang")];
+ char FcObjectTypeNamePool_str33[sizeof("embeddedbitmap")];
+ char FcObjectTypeNamePool_str34[sizeof("familylang")];
+ char FcObjectTypeNamePool_str35[sizeof("verticallayout")];
+ char FcObjectTypeNamePool_str36[sizeof("matrix")];
+ char FcObjectTypeNamePool_str37[sizeof("rasterizer")];
+ char FcObjectTypeNamePool_str38[sizeof("aspect")];
+ char FcObjectTypeNamePool_str39[sizeof("charset")];
+ char FcObjectTypeNamePool_str40[sizeof("width")];
+ char FcObjectTypeNamePool_str41[sizeof("charwidth")];
+ char FcObjectTypeNamePool_str42[sizeof("charheight")];
+ char FcObjectTypeNamePool_str43[sizeof("rgba")];
+ char FcObjectTypeNamePool_str44[sizeof("style")];
+ char FcObjectTypeNamePool_str45[sizeof("lcdfilter")];
+ char FcObjectTypeNamePool_str46[sizeof("spacing")];
+ char FcObjectTypeNamePool_str47[sizeof("index")];
+ char FcObjectTypeNamePool_str48[sizeof("stylelang")];
+ char FcObjectTypeNamePool_str49[sizeof("capability")];
+ char FcObjectTypeNamePool_str55[sizeof("prgname")];
};
static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents =
{
- "dpi",
"file",
- "size",
+ "color",
+ "weight",
"foundry",
"fullname",
+ "size",
"pixelsize",
- "outline",
- "autohint",
+ "decorative",
"fullnamelang",
"globaladvance",
"hinting",
@@ -143,33 +148,38 @@ static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents =
"hintstyle",
"fontformat",
"fontversion",
- "antialias",
+ "fontfeatures",
+ "outline",
+ "autohint",
"slant",
- "width",
- "spacing",
- "aspect",
- "matrix",
- "capability",
+ "scale",
+ "postscriptname",
+ "dpi",
+ "scalable",
+ "embolden",
"lang",
+ "antialias",
"family",
- "index",
+ "hash",
"namelang",
- "charset",
+ "embeddedbitmap",
"familylang",
+ "verticallayout",
+ "matrix",
+ "rasterizer",
+ "aspect",
+ "charset",
+ "width",
"charwidth",
"charheight",
- "scale",
- "weight",
+ "rgba",
"style",
- "scalable",
- "embolden",
"lcdfilter",
+ "spacing",
+ "index",
"stylelang",
- "rgba",
- "rasterizer",
- "verticallayout",
- "embeddedbitmap",
- "decorative"
+ "capability",
+ "prgname"
};
#define FcObjectTypeNamePool ((const char *) &FcObjectTypeNamePool_contents)
#ifdef __GNUC__
@@ -183,33 +193,32 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
{
enum
{
- TOTAL_KEYWORDS = 42,
+ TOTAL_KEYWORDS = 47,
MIN_WORD_LENGTH = 3,
MAX_WORD_LENGTH = 14,
- MIN_HASH_VALUE = 3,
- MAX_HASH_VALUE = 53
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 55
};
static const struct FcObjectTypeInfo wordlist[] =
{
- {-1}, {-1}, {-1},
-#line 43 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str3,FC_DPI_OBJECT},
+ {-1}, {-1}, {-1}, {-1},
#line 38 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str4,FC_FILE_OBJECT},
-#line 27 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str5,FC_SIZE_OBJECT},
- {-1},
+#line 64 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str5,FC_COLOR_OBJECT},
+#line 25 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str6,FC_WEIGHT_OBJECT},
#line 31 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str7,FC_FOUNDRY_OBJECT},
#line 22 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str8,FC_FULLNAME_OBJECT},
+#line 27 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_SIZE_OBJECT},
#line 29 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_PIXEL_SIZE_OBJECT},
-#line 41 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_OUTLINE_OBJECT},
-#line 36 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str11,FC_AUTOHINT_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_PIXEL_SIZE_OBJECT},
+#line 57 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str11,FC_DECORATIVE_OBJECT},
#line 23 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str12,FC_FULLNAMELANG_OBJECT},
#line 37 "fcobjshash.gperf"
@@ -224,61 +233,71 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str17,FC_FONTFORMAT_OBJECT},
#line 52 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str18,FC_FONTVERSION_OBJECT},
-#line 32 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_ANTIALIAS_OBJECT},
+#line 60 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_FONT_FEATURES_OBJECT},
+#line 41 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_OUTLINE_OBJECT},
+#line 36 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_AUTOHINT_OBJECT},
#line 24 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_SLANT_OBJECT},
-#line 26 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_WIDTH_OBJECT},
-#line 30 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_SPACING_OBJECT},
-#line 28 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_ASPECT_OBJECT},
-#line 49 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_MATRIX_OBJECT},
-#line 53 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_CAPABILITY_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_SLANT_OBJECT},
+#line 45 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_SCALE_OBJECT},
+#line 63 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_POSTSCRIPT_NAME_OBJECT},
+#line 43 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_DPI_OBJECT},
+#line 42 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_SCALABLE_OBJECT},
+#line 55 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_EMBOLDEN_OBJECT},
#line 51 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_LANG_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_LANG_OBJECT},
+#line 32 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_ANTIALIAS_OBJECT},
#line 18 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_FAMILY_OBJECT},
-#line 39 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_INDEX_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_FAMILY_OBJECT},
+#line 62 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_HASH_OBJECT},
#line 59 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_NAMELANG_OBJECT},
-#line 50 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_CHARSET_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_NAMELANG_OBJECT},
+#line 56 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_EMBEDDED_BITMAP_OBJECT},
#line 19 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_FAMILYLANG_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_FAMILYLANG_OBJECT},
+#line 35 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_VERTICAL_LAYOUT_OBJECT},
+#line 49 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_MATRIX_OBJECT},
+#line 40 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_RASTERIZER_OBJECT},
+#line 28 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_ASPECT_OBJECT},
+#line 50 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_CHARSET_OBJECT},
+#line 26 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_WIDTH_OBJECT},
#line 47 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_CHAR_WIDTH_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_CHAR_WIDTH_OBJECT},
#line 48 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_CHAR_HEIGHT_OBJECT},
-#line 45 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_SCALE_OBJECT},
-#line 25 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_WEIGHT_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_CHAR_HEIGHT_OBJECT},
+#line 44 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_RGBA_OBJECT},
#line 20 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_STYLE_OBJECT},
-#line 42 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_SCALABLE_OBJECT},
-#line 55 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_EMBOLDEN_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_STYLE_OBJECT},
#line 58 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_LCD_FILTER_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_LCD_FILTER_OBJECT},
+#line 30 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_SPACING_OBJECT},
+#line 39 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str47,FC_INDEX_OBJECT},
#line 21 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_STYLELANG_OBJECT},
-#line 44 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_RGBA_OBJECT},
-#line 40 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_RASTERIZER_OBJECT},
-#line 35 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_VERTICAL_LAYOUT_OBJECT},
-#line 56 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_EMBEDDED_BITMAP_OBJECT},
- {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#line 57 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str53,FC_DECORATIVE_OBJECT}
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str48,FC_STYLELANG_OBJECT},
+#line 53 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str49,FC_CAPABILITY_OBJECT},
+ {-1}, {-1}, {-1}, {-1}, {-1},
+#line 61 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str55,FC_PRGNAME_OBJECT}
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
diff --git a/src/fcpat.c b/src/fcpat.c
index b3b155d4..7e7d54a4 100644
--- a/src/fcpat.c
+++ b/src/fcpat.c
@@ -33,6 +33,7 @@ FcPatternCreate (void)
p = (FcPattern *) malloc (sizeof (FcPattern));
if (!p)
return 0;
+ memset (p, 0, sizeof (FcPattern));
p->num = 0;
p->size = 0;
p->elts_offset = FcPtrToOffset (p, NULL);
@@ -56,6 +57,9 @@ FcValueDestroy (FcValue v)
case FcTypeLangSet:
FcLangSetDestroy ((FcLangSet *) v.u.l);
break;
+ case FcTypeRange:
+ FcRangeDestroy ((FcRange *) v.u.r);
+ break;
default:
break;
}
@@ -80,6 +84,10 @@ FcValueCanonicalize (const FcValue *v)
new.u.l = FcValueLangSet(v);
new.type = FcTypeLangSet;
break;
+ case FcTypeRange:
+ new.u.r = FcValueRange(v);
+ new.type = FcTypeRange;
+ break;
default:
new = *v;
break;
@@ -111,6 +119,11 @@ FcValueSave (FcValue v)
if (!v.u.l)
v.type = FcTypeVoid;
break;
+ case FcTypeRange:
+ v.u.r = FcRangeCopy (v.u.r);
+ if (!v.u.r)
+ v.type = FcTypeVoid;
+ break;
default:
break;
}
@@ -144,6 +157,9 @@ FcValueListDestroy (FcValueListPtr l)
FcLangSetDestroy
((FcLangSet *) (l->value.u.l));
break;
+ case FcTypeRange:
+ FcRangeDestroy ((FcRange *) (l->value.u.r));
+ break;
default:
break;
}
@@ -246,6 +262,8 @@ FcValueEqual (FcValue va, FcValue vb)
return FcFalse;
}
switch (va.type) {
+ case FcTypeUnknown:
+ return FcFalse; /* don't know how to compare this object */
case FcTypeVoid:
return FcTrue;
case FcTypeInteger:
@@ -264,6 +282,8 @@ FcValueEqual (FcValue va, FcValue vb)
return va.u.f == vb.u.f;
case FcTypeLangSet:
return FcLangSetEqual (va.u.l, vb.u.l);
+ case FcTypeRange:
+ return FcRangeIsInRange (va.u.r, vb.u.r);
}
return FcFalse;
}
@@ -294,6 +314,7 @@ static FcChar32
FcValueHash (const FcValue *v)
{
switch (v->type) {
+ case FcTypeUnknown:
case FcTypeVoid:
return 0;
case FcTypeInteger:
@@ -316,8 +337,10 @@ FcValueHash (const FcValue *v)
FcStringHash ((const FcChar8 *) ((FT_Face) v->u.f)->style_name);
case FcTypeLangSet:
return FcLangSetHash (FcValueLangSet(v));
+ case FcTypeRange:
+ return FcRangeHash (v->u.r);
}
- return FcFalse;
+ return 0;
}
static FcBool
@@ -837,12 +860,30 @@ FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls)
return FcPatternAdd (p, object, v, FcTrue);
}
+FcBool
+FcPatternObjectAddRange (FcPattern *p, FcObject object, const FcRange *r)
+{
+ FcValue v;
+
+ v.type = FcTypeRange;
+ v.u.r = (FcRange *)r;
+ return FcPatternObjectAdd (p, object, v, FcTrue);
+}
+
+FcBool
+FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r)
+{
+ return FcPatternObjectAddRange (p, FcObjectFromName (object), r);
+}
+
FcResult
FcPatternObjectGet (const FcPattern *p, FcObject object, int id, FcValue *v)
{
FcPatternElt *e;
FcValueListPtr l;
+ if (!p)
+ return FcResultNoMatch;
e = FcPatternObjectFindElt (p, object);
if (!e)
return FcResultNoMatch;
@@ -1019,6 +1060,31 @@ FcPatternGetLangSet(const FcPattern *p, const char *object, int id, FcLangSet **
return FcResultMatch;
}
+FcResult
+FcPatternObjectGetRange (const FcPattern *p, FcObject object, int id, FcRange **r)
+{
+ FcValue v;
+ FcResult res;
+
+ res = FcPatternObjectGet (p, object, id, &v);
+ if (res != FcResultMatch)
+ return res;
+ switch ((int)v.type) {
+ case FcTypeRange:
+ *r = (FcRange *)v.u.r;
+ break;
+ default:
+ return FcResultTypeMismatch;
+ }
+ return FcResultMatch;
+}
+
+FcResult
+FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r)
+{
+ return FcPatternObjectGetRange (p, FcObjectFromName (object), id, r);
+}
+
FcPattern *
FcPatternDuplicate (const FcPattern *orig)
{
@@ -1224,6 +1290,10 @@ FcValueListSerializeAlloc (FcSerialize *serialize, const FcValueList *vl)
if (!FcLangSetSerializeAlloc (serialize, vl->value.u.l))
return FcFalse;
break;
+ case FcTypeRange:
+ if (!FcRangeSerializeAlloc (serialize, vl->value.u.r))
+ return FcFalse;
+ break;
default:
break;
}
@@ -1239,6 +1309,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
FcChar8 *s_serialized;
FcCharSet *c_serialized;
FcLangSet *l_serialized;
+ FcRange *r_serialized;
FcValueList *head_serialized = NULL;
FcValueList *prev_serialized = NULL;
@@ -1297,6 +1368,14 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
l_serialized,
FcLangSet);
break;
+ case FcTypeRange:
+ r_serialized = FcRangeSerialize (serialize, vl->value.u.r);
+ if (!r_serialized)
+ return NULL;
+ vl_serialized->value.u.r = FcPtrToEncodedOffset (&vl_serialized->value,
+ r_serialized,
+ FcRange);
+ break;
default:
break;
}
@@ -1305,6 +1384,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
}
return head_serialized;
}
+
#define __fcpat__
#include "fcaliastail.h"
#include "fcftaliastail.h"
diff --git a/src/fcrange.c b/src/fcrange.c
new file mode 100644
index 00000000..37cf0675
--- /dev/null
+++ b/src/fcrange.c
@@ -0,0 +1,234 @@
+/*
+ * fontconfig/src/fcrange.c
+ *
+ * Copyright © 2002 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "fcint.h"
+
+
+FcRange *
+FcRangeCreateDouble (double begin, double end)
+{
+ FcRange *ret = malloc (sizeof (FcRange));
+
+ if (ret)
+ {
+ ret->is_double = FcTrue;
+ ret->is_inclusive = FcDoubleCmpEQ (begin, end);
+ ret->u.d.begin = begin;
+ ret->u.d.end = end;
+ }
+
+ return ret;
+}
+
+FcRange *
+FcRangeCreateInteger (FcChar32 begin, FcChar32 end)
+{
+ FcRange *ret = malloc (sizeof (FcRange));
+
+ if (ret)
+ {
+ ret->is_double = FcFalse;
+ ret->is_inclusive = (begin == end);
+ ret->u.i.begin = begin;
+ ret->u.i.end = end;
+ }
+
+ return ret;
+}
+
+void
+FcRangeDestroy (FcRange *range)
+{
+ free (range);
+}
+
+FcRange *
+FcRangeCopy (const FcRange *range)
+{
+ FcRange *ret;
+
+ if (range->is_double)
+ ret = FcRangeCreateDouble (range->u.d.begin, range->u.d.end);
+ else
+ ret = FcRangeCreateInteger (range->u.i.begin, range->u.i.end);
+
+ return ret;
+}
+
+FcBool
+FcRangeGetDouble(const FcRange *range, double *begin, double *end)
+{
+ if (!range)
+ return FcFalse;
+ if (range->is_double)
+ {
+ if (begin)
+ *begin = range->u.d.begin;
+ if (end)
+ *end = range->u.d.end;
+ }
+ else
+ {
+ if (begin)
+ *begin = (double)range->u.i.begin;
+ if (end)
+ *end = (double)range->u.i.end;
+ }
+
+ return FcTrue;
+}
+
+FcRange
+FcRangeCanonicalize (const FcRange *range)
+{
+ FcRange new;
+
+ if (range->is_double)
+ new = *range;
+ else
+ {
+ new.is_double = FcTrue;
+ new.is_inclusive = range->is_inclusive;
+ new.u.d.begin = (double)range->u.i.begin;
+ new.u.d.end = (double)range->u.i.end;
+ }
+ return new;
+}
+
+FcRange *
+FcRangePromote (double v, FcValuePromotionBuffer *vbuf)
+{
+ typedef struct {
+ FcRange r;
+ } FcRangePromotionBuffer;
+ FcRangePromotionBuffer *buf = (FcRangePromotionBuffer *) vbuf;
+
+ FC_ASSERT_STATIC (sizeof (FcRangePromotionBuffer) <= sizeof (FcValuePromotionBuffer));
+ buf->r.is_double = FcTrue;
+ buf->r.is_inclusive = FcTrue;
+ buf->r.u.d.begin = v;
+ buf->r.u.d.end = v;
+
+ return &buf->r;
+}
+
+FcBool
+FcRangeIsZero (const FcRange *r)
+{
+ FcRange c;
+
+ if (!r)
+ return FcFalse;
+ c = FcRangeCanonicalize (r);
+
+ return FcDoubleIsZero (c.u.d.begin) && FcDoubleIsZero (c.u.d.end);
+}
+
+FcBool
+FcRangeIsInRange (const FcRange *a, const FcRange *b)
+{
+ FcRange ca, cb;
+ FcBool f;
+
+ if (!a || !b)
+ return FcFalse;
+
+ ca = FcRangeCanonicalize (a);
+ cb = FcRangeCanonicalize (b);
+ if (ca.is_inclusive & cb.is_inclusive)
+ f = ca.u.d.end <= cb.u.d.end;
+ else
+ f = ca.u.d.end < cb.u.d.end;
+
+ return FcDoubleCmpGE (ca.u.d.begin, cb.u.d.begin) && f;
+}
+
+FcBool
+FcRangeCompare (FcOp op, const FcRange *a, const FcRange *b)
+{
+ FcRange ca, cb;
+
+ switch ((int) op) {
+ case FcOpEqual:
+ case FcOpContains:
+ case FcOpListing:
+ return FcRangeIsInRange (a, b);
+ case FcOpNotEqual:
+ case FcOpNotContains:
+ return !FcRangeIsInRange (a, b);
+ case FcOpLess:
+ ca = FcRangeCanonicalize (a);
+ cb = FcRangeCanonicalize (b);
+ return ca.u.d.begin < cb.u.d.begin;
+ case FcOpLessEqual:
+ ca = FcRangeCanonicalize (a);
+ cb = FcRangeCanonicalize (b);
+ return FcDoubleCmpLE (ca.u.d.begin, cb.u.d.begin);
+ case FcOpMore:
+ ca = FcRangeCanonicalize (a);
+ cb = FcRangeCanonicalize (b);
+ return ca.u.d.end > cb.u.d.end;
+ case FcOpMoreEqual:
+ ca = FcRangeCanonicalize (a);
+ cb = FcRangeCanonicalize (b);
+ return FcDoubleCmpGE (ca.u.d.end, cb.u.d.end);
+ default:
+ break;
+ }
+ return FcFalse;
+}
+
+FcChar32
+FcRangeHash (const FcRange *r)
+{
+ FcRange c = FcRangeCanonicalize (r);
+ int b = (int) (c.u.d.begin * 100);
+ int e = (int) (c.u.d.end * 100);
+
+ return b ^ (b << 1) ^ (e << 9);
+}
+
+FcBool
+FcRangeSerializeAlloc (FcSerialize *serialize, const FcRange *r)
+{
+ if (!FcSerializeAlloc (serialize, r, sizeof (FcRange)))
+ return FcFalse;
+ return FcTrue;
+}
+
+FcRange *
+FcRangeSerialize (FcSerialize *serialize, const FcRange *r)
+{
+ FcRange *r_serialize = FcSerializePtr (serialize, r);
+
+ if (!r_serialize)
+ return NULL;
+ memcpy (r_serialize, r, sizeof (FcRange));
+
+ return r_serialize;
+}
+
+#define __fcrange__
+#include "fcaliastail.h"
+#undef __fcrange__
diff --git a/src/fcstat.c b/src/fcstat.c
index 390f45c3..1734fa42 100644
--- a/src/fcstat.c
+++ b/src/fcstat.c
@@ -20,9 +20,6 @@
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
#include "fcint.h"
#include "fcarch.h"
#include <dirent.h>
@@ -33,6 +30,9 @@
#ifdef HAVE_SYS_VFS_H
#include <sys/vfs.h>
#endif
+#ifdef HAVE_SYS_STATVFS_H
+#include <sys/statvfs.h>
+#endif
#ifdef HAVE_SYS_STATFS_H
#include <sys/statfs.h>
#endif
@@ -42,6 +42,7 @@
#ifdef HAVE_SYS_MOUNT_H
#include <sys/mount.h>
#endif
+#include <errno.h>
#ifdef _WIN32
#ifdef __GNUC__
@@ -170,20 +171,93 @@ FcDirChecksumScandirSorter(const struct dirent **lhs, const struct dirent **rhs)
return strcmp((*lhs)->d_name, (*rhs)->d_name);
}
+static void
+free_dirent (struct dirent **p)
+{
+ struct dirent **x;
+
+ for (x = p; *x != NULL; x++)
+ free (*x);
+
+ free (p);
+}
+
+int
+FcScandir (const char *dirp,
+ struct dirent ***namelist,
+ int (*filter) (const struct dirent *),
+ int (*compar) (const struct dirent **, const struct dirent **));
+
+int
+FcScandir (const char *dirp,
+ struct dirent ***namelist,
+ int (*filter) (const struct dirent *),
+ int (*compar) (const struct dirent **, const struct dirent **))
+{
+ DIR *d;
+ struct dirent *dent, *p, **dlist, **dlp;
+ size_t lsize = 128, n = 0;
+
+ d = opendir (dirp);
+ if (!d)
+ return -1;
+
+ dlist = (struct dirent **) malloc (sizeof (struct dirent *) * lsize);
+ if (!dlist)
+ {
+ closedir (d);
+ errno = ENOMEM;
+
+ return -1;
+ }
+ *dlist = NULL;
+ while ((dent = readdir (d)))
+ {
+ if (!filter || (filter) (dent))
+ {
+ size_t dentlen = FcPtrToOffset (dent, dent->d_name) + strlen (dent->d_name) + 1;
+ dentlen = ((dentlen + ALIGNOF_VOID_P - 1) & ~(ALIGNOF_VOID_P - 1));
+ p = (struct dirent *) malloc (dentlen);
+ memcpy (p, dent, dentlen);
+ if ((n + 1) >= lsize)
+ {
+ lsize += 128;
+ dlp = (struct dirent **) realloc (dlist, sizeof (struct dirent *) * lsize);
+ if (!dlp)
+ {
+ free_dirent (dlist);
+ closedir (d);
+ errno = ENOMEM;
+
+ return -1;
+ }
+ dlist = dlp;
+ }
+ dlist[n++] = p;
+ dlist[n] = NULL;
+ }
+ }
+ closedir (d);
+
+ qsort (dlist, n, sizeof (struct dirent *), (int (*) (const void *, const void *))compar);
+
+ *namelist = dlist;
+
+ return n;
+}
+
static int
FcDirChecksum (const FcChar8 *dir, time_t *checksum)
{
struct Adler32 ctx;
struct dirent **files;
int n;
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
int ret = 0;
size_t len = strlen ((const char *)dir);
-#endif
Adler32Init (&ctx);
- n = scandir ((const char *)dir, &files,
+ n = FcScandir ((const char *)dir, &files,
#ifdef HAVE_STRUCT_DIRENT_D_TYPE
&FcDirChecksumScandirFilter,
#else
@@ -200,7 +274,9 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum)
#ifdef HAVE_STRUCT_DIRENT_D_TYPE
dtype = files[n]->d_type;
-#else
+ if (dtype == DT_UNKNOWN)
+ {
+#endif
struct stat statb;
char f[PATH_MAX + 1];
@@ -217,20 +293,18 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum)
goto bail;
dtype = statb.st_mode;
+#ifdef HAVE_STRUCT_DIRENT_D_TYPE
+ }
#endif
Adler32Update (&ctx, files[n]->d_name, dlen + 1);
Adler32Update (&ctx, (char *)&dtype, sizeof (int));
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
bail:
-#endif
free (files[n]);
}
free (files);
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
if (ret == -1)
return -1;
-#endif
*checksum = Adler32Finish (&ctx);
@@ -352,3 +426,7 @@ FcIsFsMtimeBroken (const FcChar8 *dir)
return FcFalse;
}
+
+#define __fcstat__
+#include "fcaliastail.h"
+#undef __fcstat__
diff --git a/src/fcstdint.h b/src/fcstdint.h
index 5e8fa318..d33e70a4 100644
--- a/src/fcstdint.h
+++ b/src/fcstdint.h
@@ -1,8 +1,8 @@
#ifndef _FONTCONFIG_SRC_FCSTDINT_H
#define _FONTCONFIG_SRC_FCSTDINT_H 1
#ifndef _GENERATED_STDINT_H
-#define _GENERATED_STDINT_H "fontconfig 2.10.91"
-/* generated using gnu compiler gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8) */
+#define _GENERATED_STDINT_H "fontconfig 2.11.93"
+/* generated using gnu compiler gcc (GCC) 4.9.2 20150212 (Red Hat 4.9.2-6) */
#define _STDINT_HAVE_STDINT_H 1
#include <stdint.h>
#endif
diff --git a/src/fcstr.c b/src/fcstr.c
index 414d6dd6..29a577d1 100644
--- a/src/fcstr.c
+++ b/src/fcstr.c
@@ -26,9 +26,7 @@
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
-#ifdef HAVE_REGEX_H
-#include <regex.h>
-#endif
+
/* Objects MT-safe for readonly access. */
@@ -136,27 +134,7 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
}
static FcChar8
-FcStrCaseWalkerNext (FcCaseWalker *w)
-{
- FcChar8 r;
-
- if (w->read)
- {
- if ((r = *w->read++))
- return r;
- w->read = 0;
- }
- r = *w->src++;
-
- if ((r & 0xc0) == 0xc0)
- return FcStrCaseWalkerLong (w, r);
- if ('A' <= r && r <= 'Z')
- r = r - 'A' + 'a';
- return r;
-}
-
-static FcChar8
-FcStrCaseWalkerNextIgnoreBlanks (FcCaseWalker *w)
+FcStrCaseWalkerNext (FcCaseWalker *w, const char *delims)
{
FcChar8 r;
@@ -169,7 +147,7 @@ FcStrCaseWalkerNextIgnoreBlanks (FcCaseWalker *w)
do
{
r = *w->src++;
- } while (r == ' ');
+ } while (r != 0 && delims && strchr (delims, r));
if ((r & 0xc0) == 0xc0)
return FcStrCaseWalkerLong (w, r);
@@ -186,13 +164,13 @@ FcStrDowncase (const FcChar8 *s)
FcChar8 *dst, *d;
FcStrCaseWalkerInit (s, &w);
- while (FcStrCaseWalkerNext (&w))
+ while (FcStrCaseWalkerNext (&w, NULL))
len++;
d = dst = malloc (len + 1);
if (!d)
return 0;
FcStrCaseWalkerInit (s, &w);
- while ((*d++ = FcStrCaseWalkerNext (&w)));
+ while ((*d++ = FcStrCaseWalkerNext (&w, NULL)));
return dst;
}
@@ -209,8 +187,8 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
for (;;)
{
- c1 = FcStrCaseWalkerNext (&w1);
- c2 = FcStrCaseWalkerNext (&w2);
+ c1 = FcStrCaseWalkerNext (&w1, NULL);
+ c2 = FcStrCaseWalkerNext (&w2, NULL);
if (!c1 || (c1 != c2))
break;
}
@@ -220,6 +198,12 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
int
FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
{
+ return FcStrCmpIgnoreCaseAndDelims (s1, s2, (const FcChar8 *)" ");
+}
+
+int
+FcStrCmpIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims)
+{
FcCaseWalker w1, w2;
FcChar8 c1, c2;
@@ -230,8 +214,8 @@ FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
for (;;)
{
- c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
- c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
+ c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
+ c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
if (!c1 || (c1 != c2))
break;
}
@@ -255,55 +239,6 @@ FcStrCmp (const FcChar8 *s1, const FcChar8 *s2)
return (int) c1 - (int) c2;
}
-#ifdef USE_REGEX
-static FcBool
-_FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex, int cflags, int eflags)
-{
- int ret = -1;
- regex_t reg;
-
- if ((ret = regcomp (&reg, (const char *)regex, cflags)) != 0)
- {
- if (FcDebug () & FC_DBG_MATCHV)
- {
- char buf[512];
-
- regerror (ret, &reg, buf, 512);
- printf("Regexp compile error: %s\n", buf);
- }
- return FcFalse;
- }
- ret = regexec (&reg, (const char *)s, 0, NULL, eflags);
- if (ret != 0)
- {
- if (FcDebug () & FC_DBG_MATCHV)
- {
- char buf[512];
-
- regerror (ret, &reg, buf, 512);
- printf("Regexp exec error: %s\n", buf);
- }
- }
- regfree (&reg);
-
- return ret == 0 ? FcTrue : FcFalse;
-}
-#else
-# define _FcStrRegexCmp(_s_, _regex_, _cflags_, _eflags_) (FcFalse)
-#endif
-
-FcBool
-FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex)
-{
- return _FcStrRegexCmp (s, regex, REG_EXTENDED | REG_NOSUB, 0);
-}
-
-FcBool
-FcStrRegexCmpIgnoreCase (const FcChar8 *s, const FcChar8 *regex)
-{
- return _FcStrRegexCmp (s, regex, REG_EXTENDED | REG_NOSUB | REG_ICASE, 0);
-}
-
/*
* Return a hash value for a string
*/
@@ -316,7 +251,7 @@ FcStrHashIgnoreCase (const FcChar8 *s)
FcChar8 c;
FcStrCaseWalkerInit (s, &w);
- while ((c = FcStrCaseWalkerNext (&w)))
+ while ((c = FcStrCaseWalkerNext (&w, NULL)))
h = ((h << 3) ^ (h >> 3)) ^ c;
return h;
}
@@ -336,8 +271,8 @@ FcStrIsAtIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
for (;;)
{
- c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
- c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
+ c1 = FcStrCaseWalkerNext (&w1, " ");
+ c2 = FcStrCaseWalkerNext (&w2, " ");
if (!c1 || (c1 != c2))
break;
}
@@ -395,8 +330,8 @@ FcStrIsAtIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
for (;;)
{
- c1 = FcStrCaseWalkerNext (&w1);
- c2 = FcStrCaseWalkerNext (&w2);
+ c1 = FcStrCaseWalkerNext (&w1, NULL);
+ c2 = FcStrCaseWalkerNext (&w2, NULL);
if (!c1 || (c1 != c2))
break;
}
@@ -447,6 +382,75 @@ FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2)
return 0;
}
+/*
+ * returns the number of strings (ignoring delimitors and case) being matched
+ */
+
+int
+FcStrMatchIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims)
+{
+ FcCaseWalker w1, w2;
+ FcChar8 c1, c2;
+
+ if (s1 == s2) return 0;
+
+ FcStrCaseWalkerInit (s1, &w1);
+ FcStrCaseWalkerInit (s2, &w2);
+
+ for (;;)
+ {
+ c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
+ c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
+ if (!c1 || (c1 != c2))
+ break;
+ }
+ return w1.src - s1 - 1;
+}
+
+FcBool
+FcStrGlobMatch (const FcChar8 *glob,
+ const FcChar8 *string)
+{
+ FcChar8 c;
+
+ while ((c = *glob++))
+ {
+ switch (c) {
+ case '*':
+ /* short circuit common case */
+ if (!*glob)
+ return FcTrue;
+ /* short circuit another common case */
+ if (strchr ((char *) glob, '*') == 0)
+ {
+ size_t l1, l2;
+
+ l1 = strlen ((char *) string);
+ l2 = strlen ((char *) glob);
+ if (l1 < l2)
+ return FcFalse;
+ string += (l1 - l2);
+ }
+ while (*string)
+ {
+ if (FcStrGlobMatch (glob, string))
+ return FcTrue;
+ string++;
+ }
+ return FcFalse;
+ case '?':
+ if (*string++ == '\0')
+ return FcFalse;
+ break;
+ default:
+ if (*string++ != c)
+ return FcFalse;
+ break;
+ }
+ }
+ return *string == '\0';
+}
+
const FcChar8 *
FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
{
@@ -463,12 +467,12 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
FcStrCaseWalkerInit (s1, &w1);
FcStrCaseWalkerInit (s2, &w2);
- c2 = FcStrCaseWalkerNext (&w2);
+ c2 = FcStrCaseWalkerNext (&w2, NULL);
for (;;)
{
cur = w1.src;
- c1 = FcStrCaseWalkerNext (&w1);
+ c1 = FcStrCaseWalkerNext (&w1, NULL);
if (!c1)
break;
if (c1 == c2)
@@ -479,8 +483,8 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
for (;;)
{
- c1t = FcStrCaseWalkerNext (&w1t);
- c2t = FcStrCaseWalkerNext (&w2t);
+ c1t = FcStrCaseWalkerNext (&w1t, NULL);
+ c2t = FcStrCaseWalkerNext (&w2t, NULL);
if (!c2t)
return cur;
@@ -864,6 +868,68 @@ FcStrUsesHome (const FcChar8 *s)
}
FcChar8 *
+FcStrBuildFilename (const FcChar8 *path,
+ ...)
+{
+ va_list ap;
+ FcStrSet *sset;
+ FcStrList *list;
+ FcChar8 *s, *ret = NULL, *p;
+ size_t len = 0;
+
+ if (!path)
+ return NULL;
+
+ sset = FcStrSetCreate ();
+ if (!sset)
+ return NULL;
+
+ if (!FcStrSetAdd (sset, path))
+ goto bail0;
+
+ va_start (ap, path);
+ while (1)
+ {
+ s = (FcChar8 *)va_arg (ap, FcChar8 *);
+ if (!s)
+ break;
+ if (!FcStrSetAdd (sset, s))
+ goto bail1;
+ }
+ list = FcStrListCreate (sset);
+ while ((s = FcStrListNext (list)))
+ {
+ len += strlen ((const char *)s) + 1;
+ }
+ list->n = 0;
+ ret = malloc (sizeof (FcChar8) * (len + 1));
+ if (!ret)
+ goto bail2;
+ p = ret;
+ while ((s = FcStrListNext (list)))
+ {
+ if (p != ret)
+ {
+ p[0] = FC_DIR_SEPARATOR;
+ p++;
+ }
+ len = strlen ((const char *)s);
+ memcpy (p, s, len);
+ p += len;
+ }
+ *p = 0;
+
+bail2:
+ FcStrListDone (list);
+bail1:
+ va_end (ap);
+bail0:
+ FcStrSetDestroy (sset);
+
+ return ret;
+}
+
+FcChar8 *
FcStrCopyFilename (const FcChar8 *s)
{
FcChar8 *new;
@@ -1052,8 +1118,7 @@ FcStrCanonFilename (const FcChar8 *s)
FcChar8 cwd[FC_MAX_FILE_LEN + 2];
if (getcwd ((char *) cwd, FC_MAX_FILE_LEN) == NULL)
return NULL;
- strcat ((char *) cwd, "/");
- full = FcStrPlus (cwd, s);
+ full = FcStrBuildFilename (cwd, s, NULL);
file = FcStrCanonAbsoluteFilename (full);
FcStrFree (full);
return file;
@@ -1261,6 +1326,12 @@ FcStrListCreate (FcStrSet *set)
return list;
}
+void
+FcStrListFirst (FcStrList *list)
+{
+ list->n = 0;
+}
+
FcChar8 *
FcStrListNext (FcStrList *list)
{
diff --git a/src/fcweight.c b/src/fcweight.c
new file mode 100644
index 00000000..77b78ad5
--- /dev/null
+++ b/src/fcweight.c
@@ -0,0 +1,95 @@
+/*
+ * fontconfig/src/fcweight.c
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "fcint.h"
+
+static const struct {
+ int ot;
+ int fc;
+} map[] = {
+ { 0, FC_WEIGHT_THIN },
+ { 100, FC_WEIGHT_THIN },
+ { 200, FC_WEIGHT_EXTRALIGHT },
+ { 350, FC_WEIGHT_DEMILIGHT },
+ { 300, FC_WEIGHT_LIGHT },
+ { 380, FC_WEIGHT_BOOK },
+ { 400, FC_WEIGHT_REGULAR },
+ { 500, FC_WEIGHT_MEDIUM },
+ { 600, FC_WEIGHT_DEMIBOLD },
+ { 700, FC_WEIGHT_BOLD },
+ { 800, FC_WEIGHT_EXTRABOLD },
+ { 900, FC_WEIGHT_BLACK },
+ {1000, FC_WEIGHT_EXTRABLACK },
+};
+
+static int lerp(int x, int x1, int x2, int y1, int y2)
+{
+ int dx = x2 - x1;
+ int dy = y2 - y1;
+ assert (dx > 0 && dy >= 0 && x1 <= x && x <= x2);
+ return y1 + (dy*(x-x1) + dx/2) / dx;
+}
+
+int
+FcWeightFromOpenType (int ot_weight)
+{
+ int i;
+
+ /* Follow WPF Font Selection Model's advice. */
+ if (1 <= ot_weight && ot_weight <= 9)
+ ot_weight *= 100;
+
+ /* WPF Font Selection Model rejects 1000, we allow it
+ * because Pango uses that number. */
+ if (ot_weight < 1 || ot_weight > 1000)
+ return -1;
+
+ for (i = 1; ot_weight > map[i].ot; i++)
+ ;
+
+ if (ot_weight == map[i].ot)
+ return map[i].fc;
+
+ /* Interpolate between two items. */
+ return lerp (ot_weight, map[i-1].ot, map[i].ot, map[i-1].fc, map[i].fc);
+}
+
+int
+FcWeightToOpenType (int fc_weight)
+{
+ int i;
+ if (fc_weight < 0 || fc_weight > FC_WEIGHT_EXTRABLACK)
+ return -1;
+
+ for (i = 1; fc_weight > map[i].fc; i++)
+ ;
+
+ if (fc_weight == map[i].fc)
+ return map[i].ot;
+
+ /* Interpolate between two items. */
+ return lerp (fc_weight, map[i-1].fc, map[i].fc, map[i-1].ot, map[i].ot);
+}
+
+#define __fcweight__
+#include "fcaliastail.h"
+#undef __fcweight__
diff --git a/src/fcwindows.h b/src/fcwindows.h
index 02489d9d..a0eee675 100644
--- a/src/fcwindows.h
+++ b/src/fcwindows.h
@@ -32,8 +32,13 @@
#endif
#ifdef _WIN32
+ /* Request Windows Vista for building. This is required to
+ * get MemoryBarrier on mingw32... */
+# if defined(_WIN32_WINNT) && _WIN32_WINNT < 0x0600
+# undef _WIN32_WINNT
+# endif
# ifndef _WIN32_WINNT
-# define _WIN32_WINNT 0x0500
+# define _WIN32_WINNT 0x0600
# endif
# define WIN32_LEAN_AND_MEAN
# define WIN32_EXTRA_LEAN
diff --git a/src/fcxml.c b/src/fcxml.c
index 2a0d088c..cdb14b67 100644
--- a/src/fcxml.c
+++ b/src/fcxml.c
@@ -62,12 +62,30 @@ FcExprDestroy (FcExpr *e);
void
FcTestDestroy (FcTest *test)
{
- if (test->next)
- FcTestDestroy (test->next);
FcExprDestroy (test->expr);
free (test);
}
+void
+FcRuleDestroy (FcRule *rule)
+{
+ FcRule *n = rule->next;
+
+ switch (rule->type) {
+ case FcRuleTest:
+ FcTestDestroy (rule->u.test);
+ break;
+ case FcRuleEdit:
+ FcEditDestroy (rule->u.edit);
+ break;
+ default:
+ break;
+ }
+ free (rule);
+ if (n)
+ FcRuleDestroy (n);
+}
+
static FcExpr *
FcExprCreateInteger (FcConfig *config, int i)
{
@@ -151,6 +169,18 @@ FcExprCreateMatrix (FcConfig *config, const FcExprMatrix *matrix)
}
static FcExpr *
+FcExprCreateRange (FcConfig *config, FcRange *range)
+{
+ FcExpr *e = FcConfigAllocExpr (config);
+ if (e)
+ {
+ e->op = FcOpRange;
+ e->u.rval = FcRangeCopy (range);
+ }
+ return e;
+}
+
+static FcExpr *
FcExprCreateBool (FcConfig *config, FcBool b)
{
FcExpr *e = FcConfigAllocExpr (config);
@@ -240,6 +270,7 @@ FcExprDestroy (FcExpr *e)
FcExprMatrixFree (e->u.mexpr);
break;
case FcOpRange:
+ FcRangeDestroy (e->u.rval);
break;
case FcOpCharSet:
FcCharSetDestroy (e->u.cval);
@@ -260,6 +291,8 @@ FcExprDestroy (FcExpr *e)
case FcOpPrependFirst:
case FcOpAppend:
case FcOpAppendLast:
+ case FcOpDelete:
+ case FcOpDeleteAll:
break;
case FcOpOr:
case FcOpAnd:
@@ -298,8 +331,6 @@ FcExprDestroy (FcExpr *e)
void
FcEditDestroy (FcEdit *e)
{
- if (e->next)
- FcEditDestroy (e->next);
if (e->expr)
FcExprDestroy (e->expr);
free (e);
@@ -485,7 +516,7 @@ typedef struct _FcVStack {
int integer;
double _double;
FcExprMatrix *matrix;
- FcRange range;
+ FcRange *range;
FcBool bool_;
FcCharSet *charset;
FcLangSet *langset;
@@ -575,6 +606,8 @@ FcTypeName (FcType type)
return "FT_Face";
case FcTypeLangSet:
return "langset";
+ case FcTypeRange:
+ return "range";
default:
return "unknown";
}
@@ -590,13 +623,15 @@ FcTypecheckValue (FcConfigParse *parse, FcType value, FcType type)
if (value != type)
{
if ((value == FcTypeLangSet && type == FcTypeString) ||
- (value == FcTypeString && type == FcTypeLangSet))
+ (value == FcTypeString && type == FcTypeLangSet) ||
+ (value == FcTypeInteger && type == FcTypeRange) ||
+ (value == FcTypeDouble && type == FcTypeRange))
return;
- if (type == (FcType) -1)
+ if (type == FcTypeUnknown)
return;
/* It's perfectly fine to use user-define elements in expressions,
* so don't warn in that case. */
- if (value == (FcType) -1)
+ if (value == FcTypeUnknown)
return;
FcConfigMessage (parse, FcSevereWarning, "saw %s, expected %s",
FcTypeName (value), FcTypeName (type));
@@ -633,6 +668,9 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
case FcOpLangSet:
FcTypecheckValue (parse, FcTypeLangSet, type);
break;
+ case FcOpRange:
+ FcTypecheckValue (parse, FcTypeRange, type);
+ break;
case FcOpNil:
break;
case FcOpField:
@@ -703,7 +741,7 @@ FcTestCreate (FcConfigParse *parse,
FcMatchKind kind,
FcQual qual,
const FcChar8 *field,
- FcOp compare,
+ unsigned int compare,
FcExpr *expr)
{
FcTest *test = (FcTest *) malloc (sizeof (FcTest));
@@ -712,7 +750,6 @@ FcTestCreate (FcConfigParse *parse,
{
const FcObjectType *o;
- test->next = 0;
test->kind = kind;
test->qual = qual;
test->object = FcObjectFromName ((const char *) field);
@@ -738,7 +775,6 @@ FcEditCreate (FcConfigParse *parse,
{
const FcObjectType *o;
- e->next = 0;
e->object = object;
e->op = op;
e->expr = expr;
@@ -750,6 +786,34 @@ FcEditCreate (FcConfigParse *parse,
return e;
}
+static FcRule *
+FcRuleCreate (FcRuleType type,
+ void *p)
+{
+ FcRule *r = (FcRule *) malloc (sizeof (FcRule));
+
+ if (!r)
+ return NULL;
+
+ r->next = NULL;
+ r->type = type;
+ switch (type)
+ {
+ case FcRuleTest:
+ r->u.test = (FcTest *) p;
+ break;
+ case FcRuleEdit:
+ r->u.edit = (FcEdit *) p;
+ break;
+ default:
+ free (r);
+ r = NULL;
+ break;
+ }
+
+ return r;
+}
+
static FcVStack *
FcVStackCreateAndPush (FcConfigParse *parse)
{
@@ -821,11 +885,10 @@ FcVStackPushMatrix (FcConfigParse *parse, FcExprMatrix *matrix)
static FcBool
FcVStackPushRange (FcConfigParse *parse, FcRange *range)
{
- FcVStack *vstack = FcVStackCreateAndPush (parse);
+ FcVStack *vstack = FcVStackCreateAndPush (parse);
if (!vstack)
return FcFalse;
- vstack->u.range.begin = range->begin;
- vstack->u.range.end = range->end;
+ vstack->u.range = range;
vstack->tag = FcVStackRange;
return FcTrue;
}
@@ -973,9 +1036,11 @@ FcVStackPopAndDestroy (FcConfigParse *parse)
case FcVStackMatrix:
FcExprMatrixFreeShallow (vstack->u.matrix);
break;
- case FcVStackRange:
case FcVStackBool:
break;
+ case FcVStackRange:
+ FcRangeDestroy (vstack->u.range);
+ break;
case FcVStackCharSet:
FcCharSetDestroy (vstack->u.charset);
break;
@@ -1188,7 +1253,9 @@ static void
FcParseBlank (FcConfigParse *parse)
{
int n = FcVStackElements (parse);
- FcChar32 i;
+ FcChar32 i, begin, end;
+ FcRange r;
+
while (n-- > 0)
{
FcVStack *v = FcVStackFetch (parse, n);
@@ -1204,9 +1271,12 @@ FcParseBlank (FcConfigParse *parse)
goto bail;
break;
case FcVStackRange:
- if (v->u.range.begin <= v->u.range.end)
+ r = FcRangeCanonicalize (v->u.range);
+ begin = (FcChar32)r.u.d.begin;
+ end = (FcChar32)r.u.d.end;
+ if (begin <= end)
{
- for (i = v->u.range.begin; i <= v->u.range.end; i++)
+ for (i = begin; i <= end; i++)
{
if (!FcBlanksAdd (parse->config->blanks, i))
goto bail;
@@ -1419,9 +1489,11 @@ static void
FcParseRange (FcConfigParse *parse)
{
FcVStack *vstack;
- FcRange r = {0, 0};
- FcChar32 n;
+ FcRange *r;
+ FcChar32 n[2] = {0, 0};
int count = 1;
+ double d[2] = {0.0L, 0.0L};
+ FcBool dflag = FcFalse;
while ((vstack = FcVStackPeek (parse)))
{
@@ -1432,31 +1504,52 @@ FcParseRange (FcConfigParse *parse)
}
switch ((int) vstack->tag) {
case FcVStackInteger:
- n = vstack->u.integer;
+ if (dflag)
+ d[count] = (double)vstack->u.integer;
+ else
+ n[count] = vstack->u.integer;
+ break;
+ case FcVStackDouble:
+ if (count == 0 && !dflag)
+ d[1] = (double)n[1];
+ d[count] = vstack->u._double;
+ dflag = FcTrue;
break;
default:
FcConfigMessage (parse, FcSevereError, "invalid element in range");
- n = 0;
+ if (dflag)
+ d[count] = 0.0L;
+ else
+ n[count] = 0;
break;
}
- if (count == 1)
- r.end = n;
- else
- r.begin = n;
count--;
FcVStackPopAndDestroy (parse);
}
- if (count < 0)
+ if (count >= 0)
{
- if (r.begin > r.end)
+ FcConfigMessage (parse, FcSevereError, "invalid range");
+ return;
+ }
+ if (dflag)
+ {
+ if (d[0] > d[1])
{
FcConfigMessage (parse, FcSevereError, "invalid range");
return;
}
- FcVStackPushRange (parse, &r);
+ r = FcRangeCreateDouble (d[0], d[1]);
}
else
- FcConfigMessage (parse, FcSevereError, "invalid range");
+ {
+ if (n[0] > n[1])
+ {
+ FcConfigMessage (parse, FcSevereError, "invalid range");
+ return;
+ }
+ r = FcRangeCreateInteger (n[0], n[1]);
+ }
+ FcVStackPushRange (parse, r);
}
static FcBool
@@ -1492,7 +1585,8 @@ FcParseCharSet (FcConfigParse *parse)
{
FcVStack *vstack;
FcCharSet *charset = FcCharSetCreate ();
- FcChar32 i;
+ FcChar32 i, begin, end;
+ FcRange r;
int n = 0;
while ((vstack = FcVStackPeek (parse)))
@@ -1507,9 +1601,13 @@ FcParseCharSet (FcConfigParse *parse)
n++;
break;
case FcVStackRange:
- if (vstack->u.range.begin <= vstack->u.range.end)
+ r = FcRangeCanonicalize (vstack->u.range);
+ begin = (FcChar32)r.u.d.begin;
+ end = (FcChar32)r.u.d.end;
+
+ if (begin <= end)
{
- for (i = vstack->u.range.begin; i <= vstack->u.range.end; i++)
+ for (i = begin; i <= end; i++)
{
if (!FcCharSetAddChar (charset, i))
{
@@ -1655,9 +1753,9 @@ static void
FcParseAlias (FcConfigParse *parse)
{
FcExpr *family = 0, *accept = 0, *prefer = 0, *def = 0, *new = 0;
- FcEdit *edit = 0, *next;
+ FcEdit *edit = 0;
FcVStack *vstack;
- FcTest *test = NULL;
+ FcRule *rule = NULL, *r;
FcValueBinding binding;
if (!FcConfigLexBinding (parse, FcConfigGetAttribute (parse, "binding"), &binding))
@@ -1702,8 +1800,14 @@ FcParseAlias (FcConfigParse *parse)
vstack->tag = FcVStackNone;
break;
case FcVStackTest:
- vstack->u.test->next = test;
- test = vstack->u.test;
+ if (rule)
+ {
+ r = FcRuleCreate (FcRuleTest, vstack->u.test);
+ r->next = rule;
+ rule = r;
+ }
+ else
+ rule = FcRuleCreate (FcRuleTest, vstack->u.test);
vstack->tag = FcVStackNone;
break;
default:
@@ -1721,8 +1825,35 @@ FcParseAlias (FcConfigParse *parse)
FcExprDestroy (accept);
if (def)
FcExprDestroy (def);
+ if (rule)
+ FcRuleDestroy (rule);
+ return;
+ }
+ if (!prefer &&
+ !accept &&
+ !def)
+ {
+ FcExprDestroy (family);
return;
}
+ else
+ {
+ FcTest *t = FcTestCreate (parse, FcMatchPattern,
+ FcQualAny,
+ (FcChar8 *) FC_FAMILY,
+ FC_OP (FcOpEqual, FcOpFlagIgnoreBlanks),
+ family);
+ if (rule)
+ {
+ for (r = rule; r->next; r = r->next);
+ r->next = FcRuleCreate (FcRuleTest, t);
+ r = r->next;
+ }
+ else
+ {
+ r = rule = FcRuleCreate (FcRuleTest, t);
+ }
+ }
if (prefer)
{
edit = FcEditCreate (parse,
@@ -1730,60 +1861,46 @@ FcParseAlias (FcConfigParse *parse)
FcOpPrepend,
prefer,
binding);
- if (edit)
- edit->next = 0;
- else
+ if (!edit)
FcExprDestroy (prefer);
+ else
+ {
+ r->next = FcRuleCreate (FcRuleEdit, edit);
+ r = r->next;
+ }
}
if (accept)
{
- next = edit;
edit = FcEditCreate (parse,
FC_FAMILY_OBJECT,
FcOpAppend,
accept,
binding);
- if (edit)
- edit->next = next;
- else
+ if (!edit)
FcExprDestroy (accept);
+ else
+ {
+ r->next = FcRuleCreate (FcRuleEdit, edit);
+ r = r->next;
+ }
}
if (def)
{
- next = edit;
edit = FcEditCreate (parse,
FC_FAMILY_OBJECT,
FcOpAppendLast,
def,
binding);
- if (edit)
- edit->next = next;
- else
+ if (!edit)
FcExprDestroy (def);
- }
- if (edit)
- {
- FcTest *t = FcTestCreate (parse, FcMatchPattern,
- FcQualAny,
- (FcChar8 *) FC_FAMILY,
- FC_OP (FcOpEqual, FcOpFlagIgnoreBlanks),
- family);
- if (test)
+ else
{
- FcTest *p = test;
-
- while (p->next)
- p = p->next;
- p->next = t;
+ r->next = FcRuleCreate (FcRuleEdit, edit);
+ r = r->next;
}
- else
- test = t;
- if (test)
- if (!FcConfigAddEdit (parse->config, test, edit, FcMatchPattern))
- FcTestDestroy (test);
}
- else
- FcExprDestroy (family);
+ if (!FcConfigAddRule (parse->config, rule, FcMatchPattern))
+ FcRuleDestroy (rule);
}
static FcExpr *
@@ -1825,6 +1942,7 @@ FcPopExpr (FcConfigParse *parse)
expr = FcExprCreateMatrix (parse->config, vstack->u.matrix);
break;
case FcVStackRange:
+ expr = FcExprCreateRange (parse->config, vstack->u.range);
break;
case FcVStackBool:
expr = FcExprCreateBool (parse->config, vstack->u.bool_);
@@ -1933,7 +2051,14 @@ FcParseDir (FcConfigParse *parse)
attr = FcConfigGetAttribute (parse, "prefix");
if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+ {
prefix = FcConfigXdgDataHome ();
+ /* home directory might be disabled.
+ * simply ignore this element.
+ */
+ if (!prefix)
+ goto bail;
+ }
data = FcStrBufDoneStatic (&parse->pstack->str);
if (!data)
{
@@ -2024,11 +2149,18 @@ static void
FcParseCacheDir (FcConfigParse *parse)
{
const FcChar8 *attr;
- FcChar8 *prefix = NULL, *p, *data;
+ FcChar8 *prefix = NULL, *p, *data = NULL;
attr = FcConfigGetAttribute (parse, "prefix");
if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+ {
prefix = FcConfigXdgCacheHome ();
+ /* home directory might be disabled.
+ * simply ignore this element.
+ */
+ if (!prefix)
+ goto bail;
+ }
data = FcStrBufDone (&parse->pstack->str);
if (!data)
{
@@ -2117,8 +2249,12 @@ FcParseInclude (FcConfigParse *parse)
FcChar8 *s;
const FcChar8 *attr;
FcBool ignore_missing = FcFalse;
+#ifndef _WIN32
FcBool deprecated = FcFalse;
+#endif
FcChar8 *prefix = NULL, *p;
+ static FcChar8 *userdir = NULL;
+ static FcChar8 *userconf = NULL;
s = FcStrBufDoneStatic (&parse->pstack->str);
if (!s)
@@ -2129,12 +2265,21 @@ FcParseInclude (FcConfigParse *parse)
attr = FcConfigGetAttribute (parse, "ignore_missing");
if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
ignore_missing = FcTrue;
+#ifndef _WIN32
attr = FcConfigGetAttribute (parse, "deprecated");
if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
deprecated = FcTrue;
+#endif
attr = FcConfigGetAttribute (parse, "prefix");
if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+ {
prefix = FcConfigXdgConfigHome ();
+ /* home directory might be disabled.
+ * simply ignore this element.
+ */
+ if (!prefix)
+ goto bail;
+ }
if (prefix)
{
size_t plen = strlen ((const char *)prefix);
@@ -2151,23 +2296,83 @@ FcParseInclude (FcConfigParse *parse)
memcpy (&prefix[plen + 1], s, dlen);
prefix[plen + 1 + dlen] = 0;
s = prefix;
+ if (FcFileIsDir (s))
+ {
+ userdir:
+ if (!userdir)
+ userdir = FcStrdup (s);
+ }
+ else if (FcFileIsFile (s))
+ {
+ userconf:
+ if (!userconf)
+ userconf = FcStrdup (s);
+ }
+ else
+ {
+ /* No config dir nor file on the XDG directory spec compliant place
+ * so need to guess what it is supposed to be.
+ */
+ if (FcStrStr (s, (const FcChar8 *)"conf.d") != NULL)
+ goto userdir;
+ else
+ goto userconf;
+ }
}
if (!FcConfigParseAndLoad (parse->config, s, !ignore_missing))
parse->error = FcTrue;
+#ifndef _WIN32
else
{
FcChar8 *filename;
+ static FcBool warn_conf = FcFalse, warn_confd = FcFalse;
filename = FcConfigFilename(s);
if (deprecated == FcTrue &&
filename != NULL &&
!FcFileIsLink (filename))
{
- FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated.", s);
+ if (FcFileIsDir (filename))
+ {
+ FcChar8 *parent = FcStrDirname (userdir);
+
+ if (!FcFileIsDir (parent))
+ FcMakeDirectory (parent);
+ FcStrFree (parent);
+ if (FcFileIsDir (userdir) ||
+ rename ((const char *)filename, (const char *)userdir) != 0 ||
+ symlink ((const char *)userdir, (const char *)filename) != 0)
+ {
+ if (!warn_confd)
+ {
+ FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated. please move it to %s manually", s, userdir);
+ warn_confd = FcTrue;
+ }
+ }
+ }
+ else
+ {
+ FcChar8 *parent = FcStrDirname (userconf);
+
+ if (!FcFileIsDir (parent))
+ FcMakeDirectory (parent);
+ FcStrFree (parent);
+ if (FcFileIsFile (userconf) ||
+ rename ((const char *)filename, (const char *)userconf) != 0 ||
+ symlink ((const char *)userconf, (const char *)filename) != 0)
+ {
+ if (!warn_conf)
+ {
+ FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated. please move it to %s manually", s, userconf);
+ warn_conf = FcTrue;
+ }
+ }
+ }
}
if(filename)
FcStrFree(filename);
}
+#endif
FcStrBufDestroy (&parse->pstack->str);
bail:
@@ -2321,6 +2526,8 @@ static const FcOpMap fcModeOps[] = {
{ "prepend_first", FcOpPrependFirst },
{ "append", FcOpAppend },
{ "append_last", FcOpAppendLast },
+ { "delete", FcOpDelete },
+ { "delete_all", FcOpDeleteAll },
};
#define NUM_MODE_OPS (int) (sizeof fcModeOps / sizeof fcModeOps[0])
@@ -2363,6 +2570,13 @@ FcParseEdit (FcConfigParse *parse)
return;
expr = FcPopBinary (parse, FcOpComma);
+ if ((mode == FcOpDelete || mode == FcOpDeleteAll) &&
+ expr != NULL)
+ {
+ FcConfigMessage (parse, FcSevereWarning, "Expression doesn't take any effects for delete and delete_all");
+ FcExprDestroy (expr);
+ expr = NULL;
+ }
edit = FcEditCreate (parse, FcObjectFromName ((char *) name),
mode, expr, binding);
if (!edit)
@@ -2380,9 +2594,8 @@ FcParseMatch (FcConfigParse *parse)
{
const FcChar8 *kind_name;
FcMatchKind kind;
- FcTest *test = 0;
- FcEdit *edit = 0;
FcVStack *vstack;
+ FcRule *rule = NULL, *r;
kind_name = FcConfigGetAttribute (parse, "target");
if (!kind_name)
@@ -2405,20 +2618,27 @@ FcParseMatch (FcConfigParse *parse)
{
switch ((int) vstack->tag) {
case FcVStackTest:
- vstack->u.test->next = test;
- test = vstack->u.test;
+ r = FcRuleCreate (FcRuleTest, vstack->u.test);
+ if (rule)
+ r->next = rule;
+ rule = r;
vstack->tag = FcVStackNone;
break;
case FcVStackEdit:
- vstack->u.edit->next = edit;
- edit = vstack->u.edit;
- vstack->tag = FcVStackNone;
- if (kind == FcMatchScan && edit->object > FC_MAX_BASE_OBJECT)
+ if (kind == FcMatchScan && vstack->u.edit->object > FC_MAX_BASE_OBJECT)
{
FcConfigMessage (parse, FcSevereError,
"<match target=\"scan\"> cannot edit user-defined object \"%s\"",
- FcObjectName(edit->object));
+ FcObjectName(vstack->u.edit->object));
+ if (rule)
+ FcRuleDestroy (rule);
+ return;
}
+ r = FcRuleCreate (FcRuleEdit, vstack->u.edit);
+ if (rule)
+ r->next = rule;
+ rule = r;
+ vstack->tag = FcVStackNone;
break;
default:
FcConfigMessage (parse, FcSevereWarning, "invalid match element");
@@ -2426,7 +2646,12 @@ FcParseMatch (FcConfigParse *parse)
}
FcVStackPopAndDestroy (parse);
}
- if (!FcConfigAddEdit (parse->config, test, edit, kind))
+ if (!rule)
+ {
+ FcConfigMessage (parse, FcSevereWarning, "No <test> nor <edit> elements in <match>");
+ return;
+ }
+ if (!FcConfigAddRule (parse->config, rule, kind))
FcConfigMessage (parse, FcSevereError, "out of memory");
}
@@ -2508,6 +2733,11 @@ FcPopValue (FcConfigParse *parse)
if (value.u.l)
value.type = FcTypeLangSet;
break;
+ case FcVStackRange:
+ value.u.r = FcRangeCopy (vstack->u.range);
+ if (value.u.r)
+ value.type = FcTypeRange;
+ break;
default:
FcConfigMessage (parse, FcSevereWarning, "unknown pattern element %d",
vstack->tag);
@@ -2924,11 +3154,12 @@ FcConfigParseAndLoad (FcConfig *config,
{
XML_Parser p;
- FcChar8 *filename;
+ FcChar8 *filename, *f;
int fd;
int len;
FcConfigParse parse;
FcBool error = FcTrue;
+ const FcChar8 *sysroot = FcConfigGetSysRoot (config);
#ifdef ENABLE_LIBXML2
xmlSAXHandler sax;
@@ -2953,9 +3184,14 @@ FcConfigParseAndLoad (FcConfig *config,
}
#endif
- filename = FcConfigFilename (name);
- if (!filename)
+ f = FcConfigFilename (name);
+ if (!f)
goto bail0;
+ if (sysroot)
+ filename = FcStrBuildFilename (sysroot, f, NULL);
+ else
+ filename = FcStrdup (f);
+ FcStrFree (f);
if (FcStrSetMember (config->configFiles, filename))
{
diff --git a/test-driver b/test-driver
new file mode 100755
index 00000000..d3060566
--- /dev/null
+++ b/test-driver
@@ -0,0 +1,139 @@
+#! /bin/sh
+# test-driver - basic testsuite driver script.
+
+scriptversion=2013-07-13.22; # UTC
+
+# Copyright (C) 2011-2013 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+# Make unconditional expansion of undefined variables an error. This
+# helps a lot in preventing typo-related bugs.
+set -u
+
+usage_error ()
+{
+ echo "$0: $*" >&2
+ print_usage >&2
+ exit 2
+}
+
+print_usage ()
+{
+ cat <<END
+Usage:
+ test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
+ [--expect-failure={yes|no}] [--color-tests={yes|no}]
+ [--enable-hard-errors={yes|no}] [--]
+ TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
+The '--test-name', '--log-file' and '--trs-file' options are mandatory.
+END
+}
+
+test_name= # Used for reporting.
+log_file= # Where to save the output of the test script.
+trs_file= # Where to save the metadata of the test run.
+expect_failure=no
+color_tests=no
+enable_hard_errors=yes
+while test $# -gt 0; do
+ case $1 in
+ --help) print_usage; exit $?;;
+ --version) echo "test-driver $scriptversion"; exit $?;;
+ --test-name) test_name=$2; shift;;
+ --log-file) log_file=$2; shift;;
+ --trs-file) trs_file=$2; shift;;
+ --color-tests) color_tests=$2; shift;;
+ --expect-failure) expect_failure=$2; shift;;
+ --enable-hard-errors) enable_hard_errors=$2; shift;;
+ --) shift; break;;
+ -*) usage_error "invalid option: '$1'";;
+ *) break;;
+ esac
+ shift
+done
+
+missing_opts=
+test x"$test_name" = x && missing_opts="$missing_opts --test-name"
+test x"$log_file" = x && missing_opts="$missing_opts --log-file"
+test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
+if test x"$missing_opts" != x; then
+ usage_error "the following mandatory options are missing:$missing_opts"
+fi
+
+if test $# -eq 0; then
+ usage_error "missing argument"
+fi
+
+if test $color_tests = yes; then
+ # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
+ red='' # Red.
+ grn='' # Green.
+ lgn='' # Light green.
+ blu='' # Blue.
+ mgn='' # Magenta.
+ std='' # No color.
+else
+ red= grn= lgn= blu= mgn= std=
+fi
+
+do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
+trap "st=129; $do_exit" 1
+trap "st=130; $do_exit" 2
+trap "st=141; $do_exit" 13
+trap "st=143; $do_exit" 15
+
+# Test script is run here.
+"$@" >$log_file 2>&1
+estatus=$?
+if test $enable_hard_errors = no && test $estatus -eq 99; then
+ estatus=1
+fi
+
+case $estatus:$expect_failure in
+ 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
+ 0:*) col=$grn res=PASS recheck=no gcopy=no;;
+ 77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
+ 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;;
+ *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;;
+ *:*) col=$red res=FAIL recheck=yes gcopy=yes;;
+esac
+
+# Report outcome to console.
+echo "${col}${res}${std}: $test_name"
+
+# Register the test result, and other relevant metadata.
+echo ":test-result: $res" > $trs_file
+echo ":global-test-result: $res" >> $trs_file
+echo ":recheck: $recheck" >> $trs_file
+echo ":copy-in-global-log: $gcopy" >> $trs_file
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/test/Makefile.am b/test/Makefile.am
index 3ba8e934..f270b507 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,17 +1,35 @@
check_SCRIPTS=run-test.sh
-TESTS_ENVIRONMENT=src=${srcdir} EXEEXT=${EXEEXT} sh
+TEST_EXTENSIONS = \
+ .sh \
+ $(NULL)
+
+AM_TESTS_ENVIRONMENT= \
+ src=${srcdir}; export src; \
+ EXEEXT=${EXEEXT}; export EXEEXT; \
+ $(NULL)
+
+SH_LOG_COMPILER = sh
+
TESTS=run-test.sh
TESTDATA=4x6.pcf 8x16.pcf out.expected fonts.conf.in
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
+
+check_PROGRAMS =
if HAVE_PTHREAD
-check_PROGRAMS = test-pthread
-noinst_PROGRAMS = $(check_PROGRAMS)
+check_PROGRAMS += test-pthread
test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la
# We don't enable this test by default because it will require config and fonts
# to meaningfully test anything, and we are not installed yet.
#TESTS += test-pthread
endif
+noinst_PROGRAMS = $(check_PROGRAMS)
+
+if !OS_WIN32
+check_PROGRAMS += test-migration
+test_migration_LDADD = $(top_builddir)/src/libfontconfig.la
+endif
EXTRA_DIST=$(check_SCRIPTS) $(TESTDATA)
diff --git a/test/Makefile.in b/test/Makefile.in
index dcecac90..87869db1 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -15,23 +15,51 @@
@SET_MAKE@
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -50,32 +78,41 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-@HAVE_PTHREAD_TRUE@check_PROGRAMS = test-pthread$(EXEEXT)
+check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
+@HAVE_PTHREAD_TRUE@am__append_1 = test-pthread
+@OS_WIN32_FALSE@am__append_2 = test-migration
subdir = test
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/depcomp $(top_srcdir)/test-driver
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+ $(top_srcdir)/m4/ax_cc_for_build.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
+@HAVE_PTHREAD_TRUE@am__EXEEXT_1 = test-pthread$(EXEEXT)
+@OS_WIN32_FALSE@am__EXEEXT_2 = test-migration$(EXEEXT)
PROGRAMS = $(noinst_PROGRAMS)
-test_pthread_SOURCES = test-pthread.c
-test_pthread_OBJECTS = test-pthread.$(OBJEXT)
-@HAVE_PTHREAD_TRUE@test_pthread_DEPENDENCIES = \
-@HAVE_PTHREAD_TRUE@ $(top_builddir)/src/libfontconfig.la
+test_migration_SOURCES = test-migration.c
+test_migration_OBJECTS = test-migration.$(OBJEXT)
+@OS_WIN32_FALSE@test_migration_DEPENDENCIES = \
+@OS_WIN32_FALSE@ $(top_builddir)/src/libfontconfig.la
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
+test_pthread_SOURCES = test-pthread.c
+test_pthread_OBJECTS = test-pthread.$(OBJEXT)
+@HAVE_PTHREAD_TRUE@test_pthread_DEPENDENCIES = \
+@HAVE_PTHREAD_TRUE@ $(top_builddir)/src/libfontconfig.la
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -110,19 +147,232 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
-SOURCES = test-pthread.c
-DIST_SOURCES = test-pthread.c
+SOURCES = test-migration.c test-pthread.c
+DIST_SOURCES = test-migration.c test-pthread.c
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__tty_colors_dummy = \
mgn= red= grn= lgn= blu= brg= std=; \
am__color_tests=no
-am__tty_colors = $(am__tty_colors_dummy)
+am__tty_colors = { \
+ $(am__tty_colors_dummy); \
+ if test "X$(AM_COLOR_TESTS)" = Xno; then \
+ am__color_tests=no; \
+ elif test "X$(AM_COLOR_TESTS)" = Xalways; then \
+ am__color_tests=yes; \
+ elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \
+ am__color_tests=yes; \
+ fi; \
+ if test $$am__color_tests = yes; then \
+ red=''; \
+ grn=''; \
+ lgn=''; \
+ blu=''; \
+ mgn=''; \
+ brg=''; \
+ std=''; \
+ fi; \
+}
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
+am__recheck_rx = ^[ ]*:recheck:[ ]*
+am__global_test_result_rx = ^[ ]*:global-test-result:[ ]*
+am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]*
+# A command that, given a newline-separated list of test names on the
+# standard input, print the name of the tests that are to be re-run
+# upon "make recheck".
+am__list_recheck_tests = $(AWK) '{ \
+ recheck = 1; \
+ while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+ { \
+ if (rc < 0) \
+ { \
+ if ((getline line2 < ($$0 ".log")) < 0) \
+ recheck = 0; \
+ break; \
+ } \
+ else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \
+ { \
+ recheck = 0; \
+ break; \
+ } \
+ else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \
+ { \
+ break; \
+ } \
+ }; \
+ if (recheck) \
+ print $$0; \
+ close ($$0 ".trs"); \
+ close ($$0 ".log"); \
+}'
+# A command that, given a newline-separated list of test names on the
+# standard input, create the global log from their .trs and .log files.
+am__create_global_log = $(AWK) ' \
+function fatal(msg) \
+{ \
+ print "fatal: making $@: " msg | "cat >&2"; \
+ exit 1; \
+} \
+function rst_section(header) \
+{ \
+ print header; \
+ len = length(header); \
+ for (i = 1; i <= len; i = i + 1) \
+ printf "="; \
+ printf "\n\n"; \
+} \
+{ \
+ copy_in_global_log = 1; \
+ global_test_result = "RUN"; \
+ while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+ { \
+ if (rc < 0) \
+ fatal("failed to read from " $$0 ".trs"); \
+ if (line ~ /$(am__global_test_result_rx)/) \
+ { \
+ sub("$(am__global_test_result_rx)", "", line); \
+ sub("[ ]*$$", "", line); \
+ global_test_result = line; \
+ } \
+ else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \
+ copy_in_global_log = 0; \
+ }; \
+ if (copy_in_global_log) \
+ { \
+ rst_section(global_test_result ": " $$0); \
+ while ((rc = (getline line < ($$0 ".log"))) != 0) \
+ { \
+ if (rc < 0) \
+ fatal("failed to read from " $$0 ".log"); \
+ print line; \
+ }; \
+ printf "\n"; \
+ }; \
+ close ($$0 ".trs"); \
+ close ($$0 ".log"); \
+}'
+# Restructured Text title.
+am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; }
+# Solaris 10 'make', and several other traditional 'make' implementations,
+# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it
+# by disabling -e (using the XSI extension "set +e") if it's set.
+am__sh_e_setup = case $$- in *e*) set +e;; esac
+# Default flags passed to test drivers.
+am__common_driver_flags = \
+ --color-tests "$$am__color_tests" \
+ --enable-hard-errors "$$am__enable_hard_errors" \
+ --expect-failure "$$am__expect_failure"
+# To be inserted before the command running the test. Creates the
+# directory for the log if needed. Stores in $dir the directory
+# containing $f, in $tst the test, in $log the log. Executes the
+# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and
+# passes TESTS_ENVIRONMENT. Set up options for the wrapper that
+# will run the test scripts (or their associated LOG_COMPILER, if
+# thy have one).
+am__check_pre = \
+$(am__sh_e_setup); \
+$(am__vpath_adj_setup) $(am__vpath_adj) \
+$(am__tty_colors); \
+srcdir=$(srcdir); export srcdir; \
+case "$@" in \
+ */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \
+ *) am__odir=.;; \
+esac; \
+test "x$$am__odir" = x"." || test -d "$$am__odir" \
+ || $(MKDIR_P) "$$am__odir" || exit $$?; \
+if test -f "./$$f"; then dir=./; \
+elif test -f "$$f"; then dir=; \
+else dir="$(srcdir)/"; fi; \
+tst=$$dir$$f; log='$@'; \
+if test -n '$(DISABLE_HARD_ERRORS)'; then \
+ am__enable_hard_errors=no; \
+else \
+ am__enable_hard_errors=yes; \
+fi; \
+case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \
+ am__expect_failure=yes;; \
+ *) \
+ am__expect_failure=no;; \
+esac; \
+$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT)
+# A shell command to get the names of the tests scripts with any registered
+# extension removed (i.e., equivalently, the names of the test logs, with
+# the '.log' extension removed). The result is saved in the shell variable
+# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly,
+# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
+# since that might cause problem with VPATH rewrites for suffix-less tests.
+# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
+am__set_TESTS_bases = \
+ bases='$(TEST_LOGS)'; \
+ bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
+ bases=`echo $$bases`
+RECHECK_LOGS = $(TEST_LOGS)
+AM_RECURSIVE_TARGETS = check recheck
+TEST_SUITE_LOG = test-suite.log
+am__test_logs1 = $(TESTS:=.log)
+am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log)
+TEST_LOGS = $(am__test_logs2:.sh.log=.log)
+SH_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+SH_LOG_COMPILE = $(SH_LOG_COMPILER) $(AM_SH_LOG_FLAGS) $(SH_LOG_FLAGS)
+am__set_b = \
+ case '$@' in \
+ */*) \
+ case '$*' in \
+ */*) b='$*';; \
+ *) b=`echo '$@' | sed 's/\.log$$//'`; \
+ esac;; \
+ *) \
+ b='$*';; \
+ esac
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -164,6 +414,8 @@ FC_FONTPATH = @FC_FONTPATH@
FGREP = @FGREP@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
GREP = @GREP@
HASDOCBOOK = @HASDOCBOOK@
HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -205,12 +457,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
@@ -234,7 +493,6 @@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -242,7 +500,6 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
-configdir = @configdir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
@@ -267,34 +524,48 @@ mkdir_p = @mkdir_p@
ms_librarian = @ms_librarian@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-templatedir = @templatedir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-xmldir = @xmldir@
check_SCRIPTS = run-test.sh
-TESTS_ENVIRONMENT = src=${srcdir} EXEEXT=${EXEEXT} sh
+TEST_EXTENSIONS = \
+ .sh \
+ $(NULL)
+
+AM_TESTS_ENVIRONMENT = \
+ src=${srcdir}; export src; \
+ EXEEXT=${EXEEXT}; export EXEEXT; \
+ $(NULL)
+
+SH_LOG_COMPILER = sh
TESTS = run-test.sh
TESTDATA = 4x6.pcf 8x16.pcf out.expected fonts.conf.in
-@HAVE_PTHREAD_TRUE@noinst_PROGRAMS = $(check_PROGRAMS)
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
@HAVE_PTHREAD_TRUE@test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la
# We don't enable this test by default because it will require config and fonts
# to meaningfully test anything, and we are not installed yet.
#TESTS += test-pthread
+noinst_PROGRAMS = $(check_PROGRAMS)
+@OS_WIN32_FALSE@test_migration_LDADD = $(top_builddir)/src/libfontconfig.la
EXTRA_DIST = $(check_SCRIPTS) $(TESTDATA)
CLEANFILES =
all: all-am
.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
+.SUFFIXES: .c .lo .log .o .obj .sh .sh$(EXEEXT) .trs
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -343,6 +614,11 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
+
+test-migration$(EXEEXT): $(test_migration_OBJECTS) $(test_migration_DEPENDENCIES) $(EXTRA_test_migration_DEPENDENCIES)
+ @rm -f test-migration$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_migration_OBJECTS) $(test_migration_LDADD) $(LIBS)
+
test-pthread$(EXEEXT): $(test_pthread_OBJECTS) $(test_pthread_DEPENDENCIES) $(EXTRA_test_pthread_DEPENDENCIES)
@rm -f test-pthread$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_pthread_OBJECTS) $(test_pthread_LDADD) $(LIBS)
@@ -353,6 +629,7 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-migration.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@
.c.o:
@@ -360,14 +637,14 @@ distclean-compile:
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -382,26 +659,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -413,15 +679,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -430,9 +692,10 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
@@ -448,98 +711,161 @@ cscopelist: $(HEADERS) $(SOURCES) $(LISP)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-check-TESTS: $(TESTS)
- @failed=0; all=0; xfail=0; xpass=0; skip=0; \
- srcdir=$(srcdir); export srcdir; \
- list=' $(TESTS) '; \
- $(am__tty_colors); \
- if test -n "$$list"; then \
- for tst in $$list; do \
- if test -f ./$$tst; then dir=./; \
- elif test -f $$tst; then dir=; \
- else dir="$(srcdir)/"; fi; \
- if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \
- all=`expr $$all + 1`; \
- case " $(XFAIL_TESTS) " in \
- *[\ \ ]$$tst[\ \ ]*) \
- xpass=`expr $$xpass + 1`; \
- failed=`expr $$failed + 1`; \
- col=$$red; res=XPASS; \
- ;; \
- *) \
- col=$$grn; res=PASS; \
- ;; \
- esac; \
- elif test $$? -ne 77; then \
- all=`expr $$all + 1`; \
- case " $(XFAIL_TESTS) " in \
- *[\ \ ]$$tst[\ \ ]*) \
- xfail=`expr $$xfail + 1`; \
- col=$$lgn; res=XFAIL; \
- ;; \
- *) \
- failed=`expr $$failed + 1`; \
- col=$$red; res=FAIL; \
- ;; \
- esac; \
- else \
- skip=`expr $$skip + 1`; \
- col=$$blu; res=SKIP; \
- fi; \
- echo "$${col}$$res$${std}: $$tst"; \
- done; \
- if test "$$all" -eq 1; then \
- tests="test"; \
- All=""; \
- else \
- tests="tests"; \
- All="All "; \
+# Recover from deleted '.trs' file; this should ensure that
+# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
+# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells
+# to avoid problems with "make -n".
+.log.trs:
+ rm -f $< $@
+ $(MAKE) $(AM_MAKEFLAGS) $<
+
+# Leading 'am--fnord' is there to ensure the list of targets does not
+# expand to empty, as could happen e.g. with make check TESTS=''.
+am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
+am--force-recheck:
+ @:
+
+$(TEST_SUITE_LOG): $(TEST_LOGS)
+ @$(am__set_TESTS_bases); \
+ am__f_ok () { test -f "$$1" && test -r "$$1"; }; \
+ redo_bases=`for i in $$bases; do \
+ am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \
+ done`; \
+ if test -n "$$redo_bases"; then \
+ redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \
+ redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \
+ if $(am__make_dryrun); then :; else \
+ rm -f $$redo_logs && rm -f $$redo_results || exit 1; \
fi; \
- if test "$$failed" -eq 0; then \
- if test "$$xfail" -eq 0; then \
- banner="$$All$$all $$tests passed"; \
- else \
- if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
- banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
- fi; \
- else \
- if test "$$xpass" -eq 0; then \
- banner="$$failed of $$all $$tests failed"; \
+ fi; \
+ if test -n "$$am__remaking_logs"; then \
+ echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
+ "recursion detected" >&2; \
+ else \
+ am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
+ fi; \
+ if $(am__make_dryrun); then :; else \
+ st=0; \
+ errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \
+ for i in $$redo_bases; do \
+ test -f $$i.trs && test -r $$i.trs \
+ || { echo "$$errmsg $$i.trs" >&2; st=1; }; \
+ test -f $$i.log && test -r $$i.log \
+ || { echo "$$errmsg $$i.log" >&2; st=1; }; \
+ done; \
+ test $$st -eq 0 || exit 1; \
+ fi
+ @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
+ ws='[ ]'; \
+ results=`for b in $$bases; do echo $$b.trs; done`; \
+ test -n "$$results" || results=/dev/null; \
+ all=` grep "^$$ws*:test-result:" $$results | wc -l`; \
+ pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \
+ fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \
+ skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \
+ xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \
+ xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \
+ error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \
+ if test `expr $$fail + $$xpass + $$error` -eq 0; then \
+ success=true; \
+ else \
+ success=false; \
+ fi; \
+ br='==================='; br=$$br$$br$$br$$br; \
+ result_count () \
+ { \
+ if test x"$$1" = x"--maybe-color"; then \
+ maybe_colorize=yes; \
+ elif test x"$$1" = x"--no-color"; then \
+ maybe_colorize=no; \
else \
- if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
- banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ echo "$@: invalid 'result_count' usage" >&2; exit 4; \
fi; \
- fi; \
- dashes="$$banner"; \
- skipped=""; \
- if test "$$skip" -ne 0; then \
- if test "$$skip" -eq 1; then \
- skipped="($$skip test was not run)"; \
+ shift; \
+ desc=$$1 count=$$2; \
+ if test $$maybe_colorize = yes && test $$count -gt 0; then \
+ color_start=$$3 color_end=$$std; \
else \
- skipped="($$skip tests were not run)"; \
+ color_start= color_end=; \
fi; \
- test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
- dashes="$$skipped"; \
- fi; \
- report=""; \
- if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
- report="Please report to $(PACKAGE_BUGREPORT)"; \
- test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
- dashes="$$report"; \
- fi; \
- dashes=`echo "$$dashes" | sed s/./=/g`; \
- if test "$$failed" -eq 0; then \
- col="$$grn"; \
- else \
- col="$$red"; \
- fi; \
- echo "$${col}$$dashes$${std}"; \
- echo "$${col}$$banner$${std}"; \
- test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
- test -z "$$report" || echo "$${col}$$report$${std}"; \
- echo "$${col}$$dashes$${std}"; \
- test "$$failed" -eq 0; \
- else :; fi
+ echo "$${color_start}# $$desc $$count$${color_end}"; \
+ }; \
+ create_testsuite_report () \
+ { \
+ result_count $$1 "TOTAL:" $$all "$$brg"; \
+ result_count $$1 "PASS: " $$pass "$$grn"; \
+ result_count $$1 "SKIP: " $$skip "$$blu"; \
+ result_count $$1 "XFAIL:" $$xfail "$$lgn"; \
+ result_count $$1 "FAIL: " $$fail "$$red"; \
+ result_count $$1 "XPASS:" $$xpass "$$red"; \
+ result_count $$1 "ERROR:" $$error "$$mgn"; \
+ }; \
+ { \
+ echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \
+ $(am__rst_title); \
+ create_testsuite_report --no-color; \
+ echo; \
+ echo ".. contents:: :depth: 2"; \
+ echo; \
+ for b in $$bases; do echo $$b; done \
+ | $(am__create_global_log); \
+ } >$(TEST_SUITE_LOG).tmp || exit 1; \
+ mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \
+ if $$success; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \
+ fi; \
+ echo "$${col}$$br$${std}"; \
+ echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \
+ echo "$${col}$$br$${std}"; \
+ create_testsuite_report --maybe-color; \
+ echo "$$col$$br$$std"; \
+ if $$success; then :; else \
+ echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \
+ if test -n "$(PACKAGE_BUGREPORT)"; then \
+ echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \
+ fi; \
+ echo "$$col$$br$$std"; \
+ fi; \
+ $$success || exit 1
+
+check-TESTS:
+ @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
+ @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
+ @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+ @set +e; $(am__set_TESTS_bases); \
+ log_list=`for i in $$bases; do echo $$i.log; done`; \
+ trs_list=`for i in $$bases; do echo $$i.trs; done`; \
+ log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
+ exit $$?;
+recheck: all $(check_PROGRAMS) $(check_SCRIPTS)
+ @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+ @set +e; $(am__set_TESTS_bases); \
+ bases=`for i in $$bases; do echo $$i; done \
+ | $(am__list_recheck_tests)` || exit 1; \
+ log_list=`for i in $$bases; do echo $$i.log; done`; \
+ log_list=`echo $$log_list`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
+ am__force_recheck=am--force-recheck \
+ TEST_LOGS="$$log_list"; \
+ exit $$?
+.sh.log:
+ @p='$<'; \
+ $(am__set_b); \
+ $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+@am__EXEEXT_TRUE@.sh$(EXEEXT).log:
+@am__EXEEXT_TRUE@ @p='$<'; \
+@am__EXEEXT_TRUE@ $(am__set_b); \
+@am__EXEEXT_TRUE@ $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \
+@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \
+@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \
+@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -597,6 +923,9 @@ install-strip:
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
+ -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS)
+ -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs)
+ -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
@@ -681,9 +1010,9 @@ uninstall-am:
.MAKE: check-am install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \
clean-checkPROGRAMS clean-generic clean-libtool \
- clean-noinstPROGRAMS cscopelist ctags distclean \
+ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
@@ -693,7 +1022,8 @@ uninstall-am:
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am
+ pdf pdf-am ps ps-am recheck tags tags-am uninstall \
+ uninstall-am
-include $(top_srcdir)/git.mk
diff --git a/test/run-test.sh b/test/run-test.sh
index 24ca296b..d451a8d8 100644
--- a/test/run-test.sh
+++ b/test/run-test.sh
@@ -1,4 +1,25 @@
#!/bin/sh
+# fontconfig/test/run-test.sh
+#
+# Copyright © 2000 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. The authors make no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
TESTDIR=${srcdir-`pwd`}
FONTDIR=`pwd`/fonts
diff --git a/test/test-migration.c b/test/test-migration.c
new file mode 100644
index 00000000..bcd805df
--- /dev/null
+++ b/test/test-migration.c
@@ -0,0 +1,227 @@
+/*
+ * fontconfig/test/test-migration.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2013 Akira TAGOH
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <dirent.h>
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#endif
+#include <fontconfig/fontconfig.h>
+
+#ifdef HAVE_MKDTEMP
+#define fc_mkdtemp mkdtemp
+#else
+char *
+fc_mkdtemp (char *template)
+{
+ if (!mktemp (template) || mkdir (template, 0700))
+ return NULL;
+
+ return template;
+}
+#endif
+
+FcBool
+mkdir_p(const char *dir)
+{
+ char *parent;
+ FcBool ret;
+
+ if (strlen (dir) == 0)
+ return FcFalse;
+ parent = (char *) FcStrDirname ((const FcChar8 *)dir);
+ if (!parent)
+ return FcFalse;
+ if (access (parent, F_OK) == 0)
+ ret = mkdir (dir, 0755) == 0 && chmod (dir, 0755) == 0;
+ else if (access (parent, F_OK) == -1)
+ ret = mkdir_p (parent) && (mkdir (dir, 0755) == 0) && chmod (dir, 0755) == 0;
+ else
+ ret = FcFalse;
+ free (parent);
+
+ return ret;
+}
+
+FcBool
+unlink_dirs(const char *dir)
+{
+ DIR *d = opendir (dir);
+ struct dirent *e;
+ size_t len = strlen (dir);
+ char *n = NULL;
+ FcBool ret = FcTrue;
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+ struct stat statb;
+#endif
+
+ if (!d)
+ return FcFalse;
+ while ((e = readdir(d)) != NULL)
+ {
+ size_t l;
+
+ if (strcmp (e->d_name, ".") == 0 ||
+ strcmp (e->d_name, "..") == 0)
+ continue;
+ l = strlen (e->d_name) + 1;
+ if (n)
+ free (n);
+ n = malloc (l + len + 1);
+ strcpy (n, dir);
+ n[len] = '/';
+ strcpy (&n[len + 1], e->d_name);
+#ifdef HAVE_STRUCT_DIRENT_D_TYPE
+ if (e->d_type == DT_DIR)
+#else
+ if (stat (n, &statb) == -1)
+ {
+ fprintf (stderr, "E: %s\n", n);
+ ret = FcFalse;
+ break;
+ }
+ if (S_ISDIR (statb.st_mode))
+#endif
+ {
+ if (!unlink_dirs (n))
+ {
+ fprintf (stderr, "E: %s\n", n);
+ ret = FcFalse;
+ break;
+ }
+ }
+ else
+ {
+ if (unlink (n) == -1)
+ {
+ fprintf (stderr, "E: %s\n", n);
+ ret = FcFalse;
+ break;
+ }
+ }
+ }
+ if (n)
+ free (n);
+ closedir (d);
+
+ if (rmdir (dir) == -1)
+ {
+ fprintf (stderr, "E: %s\n", dir);
+ return FcFalse;
+ }
+
+ return ret;
+}
+
+int
+main(void)
+{
+ char template[32] = "fontconfig-XXXXXXXX";
+ char *tmp = fc_mkdtemp (template);
+ size_t len = strlen (tmp), xlen, dlen;
+ char xdg[256], confd[256], fn[256], nfn[256], ud[256], nud[256];
+ int ret = -1;
+ FILE *fp;
+ char *content = "<fontconfig></fontconfig>";
+
+ strcpy (xdg, tmp);
+ strcpy (&xdg[len], "/.config");
+ setenv ("HOME", tmp, 1);
+ setenv ("XDG_CONFIG_HOME", xdg, 1);
+ xlen = strlen (xdg);
+ strcpy (confd, xdg);
+ strcpy (&confd[xlen], "/fontconfig");
+ dlen = strlen (confd);
+ /* In case there are no configuration files nor directory */
+ FcInit ();
+ if (access (confd, F_OK) == 0)
+ {
+ fprintf (stderr, "%s unexpectedly exists\n", confd);
+ goto bail;
+ }
+ FcFini ();
+ if (!unlink_dirs (tmp))
+ {
+ fprintf (stderr, "Unable to clean up\n");
+ goto bail;
+ }
+ /* In case there are the user configuration file */
+ strcpy (fn, tmp);
+ strcpy (&fn[len], "/.fonts.conf");
+ strcpy (nfn, confd);
+ strcpy (&nfn[dlen], "/fonts.conf");
+ if (!mkdir_p (confd))
+ {
+ fprintf (stderr, "Unable to create a config dir: %s\n", confd);
+ goto bail;
+ }
+ if ((fp = fopen (fn, "wb")) == NULL)
+ {
+ fprintf (stderr, "Unable to create a config file: %s\n", fn);
+ goto bail;
+ }
+ fwrite (content, sizeof (char), strlen (content), fp);
+ fclose (fp);
+ FcInit ();
+ if (access (nfn, F_OK) != 0)
+ {
+ fprintf (stderr, "migration failed for %s\n", nfn);
+ goto bail;
+ }
+ FcFini ();
+ if (!unlink_dirs (tmp))
+ {
+ fprintf (stderr, "Unable to clean up\n");
+ goto bail;
+ }
+ /* In case there are the user configuration dir */
+ strcpy (ud, tmp);
+ strcpy (&ud[len], "/.fonts.conf.d");
+ strcpy (nud, confd);
+ strcpy (&nud[dlen], "/conf.d");
+ if (!mkdir_p (ud))
+ {
+ fprintf (stderr, "Unable to create a config dir: %s\n", ud);
+ goto bail;
+ }
+ FcInit ();
+ if (access (nud, F_OK) != 0)
+ {
+ fprintf (stderr, "migration failed for %s\n", nud);
+ goto bail;
+ }
+ FcFini ();
+
+ ret = 0;
+bail:
+ unlink_dirs (tmp);
+
+ return ret;
+}
diff --git a/test/test-pthread.c b/test/test-pthread.c
index 7701a24f..fbf397d4 100644
--- a/test/test-pthread.c
+++ b/test/test-pthread.c
@@ -1,5 +1,27 @@
-/* Code originally from Raimund Steger. */
-
+/*
+ * fontconfig/test/test-pthread.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2013 Raimund Steger
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>