diff options
author | Jaeun Choi <jaeun12.choi@samsung.com> | 2015-10-28 15:45:18 +0900 |
---|---|---|
committer | Jaeun Choi <jaeun12.choi@samsung.com> | 2015-10-28 15:49:42 +0900 |
commit | db1af30227cdcd1e5ea6c83fb96fb06679a58a0a (patch) | |
tree | 4e29d9617d38c7563738544546fb2792b61fe4f5 | |
parent | f4867815bd0b41d91b95fb623554b60d34c4fbd3 (diff) | |
download | fontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.tar.gz fontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.tar.bz2 fontconfig-db1af30227cdcd1e5ea6c83fb96fb06679a58a0a.zip |
Imported Upstream version 2.11.93upstream/2.11.93
Change-Id: I0625d1bfdedbfcb7cbf279d779d33468e0a775b0
570 files changed, 26948 insertions, 20590 deletions
@@ -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 && \ @@ -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): @@ -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) && \ @@ -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 @@ -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 ;; @@ -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 @@ -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='[0;31m'; \ + grn='[0;32m'; \ + lgn='[1;32m'; \ + blu='[1;34m'; \ + mgn='[0;35m'; \ + brg='[1m'; \ + std='[m'; \ + fi; \ +} +am__recheck_rx = ^[ ]*:recheck:[ ]* +am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* +am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* +# A command that, given a newline-separated list of test names on the +# standard input, print the name of the tests that are to be re-run +# upon "make recheck". +am__list_recheck_tests = $(AWK) '{ \ + recheck = 1; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + { \ + if ((getline line2 < ($$0 ".log")) < 0) \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ + { \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ + { \ + break; \ + } \ + }; \ + if (recheck) \ + print $$0; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# A command that, given a newline-separated list of test names on the +# standard input, create the global log from their .trs and .log files. +am__create_global_log = $(AWK) ' \ +function fatal(msg) \ +{ \ + print "fatal: making $@: " msg | "cat >&2"; \ + exit 1; \ +} \ +function rst_section(header) \ +{ \ + print header; \ + len = length(header); \ + for (i = 1; i <= len; i = i + 1) \ + printf "="; \ + printf "\n\n"; \ +} \ +{ \ + copy_in_global_log = 1; \ + global_test_result = "RUN"; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".trs"); \ + if (line ~ /$(am__global_test_result_rx)/) \ + { \ + sub("$(am__global_test_result_rx)", "", line); \ + sub("[ ]*$$", "", line); \ + global_test_result = line; \ + } \ + else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ + copy_in_global_log = 0; \ + }; \ + if (copy_in_global_log) \ + { \ + rst_section(global_test_result ": " $$0); \ + while ((rc = (getline line < ($$0 ".log"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".log"); \ + print line; \ + }; \ + printf "\n"; \ + }; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# Restructured Text title. +am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } +# Solaris 10 'make', and several other traditional 'make' implementations, +# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it +# by disabling -e (using the XSI extension "set +e") if it's set. +am__sh_e_setup = case $$- in *e*) set +e;; esac +# Default flags passed to test drivers. +am__common_driver_flags = \ + --color-tests "$$am__color_tests" \ + --enable-hard-errors "$$am__enable_hard_errors" \ + --expect-failure "$$am__expect_failure" +# To be inserted before the command running the test. Creates the +# directory for the log if needed. Stores in $dir the directory +# containing $f, in $tst the test, in $log the log. Executes the +# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and +# passes TESTS_ENVIRONMENT. Set up options for the wrapper that +# will run the test scripts (or their associated LOG_COMPILER, if +# thy have one). +am__check_pre = \ +$(am__sh_e_setup); \ +$(am__vpath_adj_setup) $(am__vpath_adj) \ +$(am__tty_colors); \ +srcdir=$(srcdir); export srcdir; \ +case "$@" in \ + */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ + *) am__odir=.;; \ +esac; \ +test "x$$am__odir" = x"." || test -d "$$am__odir" \ + || $(MKDIR_P) "$$am__odir" || exit $$?; \ +if test -f "./$$f"; then dir=./; \ +elif test -f "$$f"; then dir=; \ +else dir="$(srcdir)/"; fi; \ +tst=$$dir$$f; log='$@'; \ +if test -n '$(DISABLE_HARD_ERRORS)'; then \ + am__enable_hard_errors=no; \ +else \ + am__enable_hard_errors=yes; \ +fi; \ +case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ + am__expect_failure=yes;; \ + *) \ + am__expect_failure=no;; \ +esac; \ +$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) +# A shell command to get the names of the tests scripts with any registered +# extension removed (i.e., equivalently, the names of the test logs, with +# the '.log' extension removed). The result is saved in the shell variable +# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, +# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", +# since that might cause problem with VPATH rewrites for suffix-less tests. +# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. +am__set_TESTS_bases = \ + bases='$(TEST_LOGS)'; \ + bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ + bases=`echo $$bases` +RECHECK_LOGS = $(TEST_LOGS) +AM_RECURSIVE_TARGETS = check recheck +TEST_SUITE_LOG = test-suite.log +TEST_EXTENSIONS = @EXEEXT@ .test +LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver +LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) +am__set_b = \ + case '$@' in \ + */*) \ + case '$*' in \ + */*) b='$*';; \ + *) b=`echo '$@' | sed 's/\.log$$//'`; \ + esac;; \ + *) \ + b='$*';; \ + esac +am__test_logs1 = $(TESTS:=.log) +am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) +TEST_LOGS = $(am__test_logs2:.test.log=.log) +TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver +TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ + $(TEST_LOG_FLAGS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -236,6 +456,8 @@ FC_FONTPATH = @FC_FONTPATH@ FGREP = @FGREP@ FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ FREETYPE_LIBS = @FREETYPE_LIBS@ +GIT = @GIT@ +GPERF = @GPERF@ GREP = @GREP@ HASDOCBOOK = @HASDOCBOOK@ HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@ @@ -277,12 +499,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@ +PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RM = @RM@ SED = @SED@ @@ -306,7 +535,6 @@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ ax_pthread_config = @ax_pthread_config@ -baseconfigdir = @baseconfigdir@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -314,7 +542,6 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ -configdir = @configdir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -339,19 +566,22 @@ mkdir_p = @mkdir_p@ ms_librarian = @ms_librarian@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ +pkgconfigdir = @pkgconfigdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ -templatedir = @templatedir@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -xmldir = @xmldir@ NULL = EXTRA_DIST = \ $(BUILT_DOCS) \ @@ -383,7 +613,11 @@ SUFFIXES = \ .html \ $(NULL) -TESTS_ENVIRONMENT = top_srcdir=${top_srcdir} sh +TESTS_ENVIRONMENT = \ + top_srcdir=${top_srcdir}; export top_srcdir; \ + $(NULL) + +LOG_COMPILER = sh # DOC2HTML = docbook2html DOC2TXT = docbook2txt @@ -407,9 +641,11 @@ DOC_FUNCS_FNCS = \ fcobjectset.fncs \ fcobjecttype.fncs \ fcpattern.fncs \ + fcrange.fncs \ fcstring.fncs \ fcstrset.fncs \ fcvalue.fncs \ + fcweight.fncs \ $(NULL) SGML_FILES = \ @@ -477,7 +713,7 @@ all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-am .SUFFIXES: -.SUFFIXES: .fncs .sgml .txt .html .c .lo .o .obj .pdf +.SUFFIXES: .fncs .sgml .txt .html .c .lo .log .o .obj .pdf .test .test$(EXEEXT) .trs $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -519,6 +755,7 @@ clean-noinstPROGRAMS: list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list + edit-sgml$(EXEEXT): $(edit_sgml_OBJECTS) $(edit_sgml_DEPENDENCIES) $(EXTRA_edit_sgml_DEPENDENCIES) @rm -f edit-sgml$(EXEEXT) $(AM_V_CCLD)$(LINK) $(edit_sgml_OBJECTS) $(edit_sgml_LDADD) $(LIBS) @@ -536,14 +773,14 @@ distclean-compile: @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -682,26 +919,15 @@ uninstall-htmldocDATA: files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(htmldocdir)'; $(am__uninstall_files_from_dir) -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -713,15 +939,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $$unique; \ fi; \ fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -730,9 +952,10 @@ GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am -cscopelist: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP)'; \ +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ @@ -748,113 +971,170 @@ cscopelist: $(HEADERS) $(SOURCES) $(LISP) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -check-TESTS: $(TESTS) - @failed=0; all=0; xfail=0; xpass=0; skip=0; \ - srcdir=$(srcdir); export srcdir; \ - list=' $(TESTS) '; \ - $(am__tty_colors); \ - if test -n "$$list"; then \ - for tst in $$list; do \ - if test -f ./$$tst; then dir=./; \ - elif test -f $$tst; then dir=; \ - else dir="$(srcdir)/"; fi; \ - if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xpass=`expr $$xpass + 1`; \ - failed=`expr $$failed + 1`; \ - col=$$red; res=XPASS; \ - ;; \ - *) \ - col=$$grn; res=PASS; \ - ;; \ - esac; \ - elif test $$? -ne 77; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xfail=`expr $$xfail + 1`; \ - col=$$lgn; res=XFAIL; \ - ;; \ - *) \ - failed=`expr $$failed + 1`; \ - col=$$red; res=FAIL; \ - ;; \ - esac; \ - else \ - skip=`expr $$skip + 1`; \ - col=$$blu; res=SKIP; \ - fi; \ - echo "$${col}$$res$${std}: $$tst"; \ - done; \ - if test "$$all" -eq 1; then \ - tests="test"; \ - All=""; \ - else \ - tests="tests"; \ - All="All "; \ +# Recover from deleted '.trs' file; this should ensure that +# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create +# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells +# to avoid problems with "make -n". +.log.trs: + rm -f $< $@ + $(MAKE) $(AM_MAKEFLAGS) $< + +# Leading 'am--fnord' is there to ensure the list of targets does not +# expand to empty, as could happen e.g. with make check TESTS=''. +am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) +am--force-recheck: + @: + +$(TEST_SUITE_LOG): $(TEST_LOGS) + @$(am__set_TESTS_bases); \ + am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ + redo_bases=`for i in $$bases; do \ + am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ + done`; \ + if test -n "$$redo_bases"; then \ + redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ + redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ + if $(am__make_dryrun); then :; else \ + rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ fi; \ - if test "$$failed" -eq 0; then \ - if test "$$xfail" -eq 0; then \ - banner="$$All$$all $$tests passed"; \ - else \ - if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ - banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ - fi; \ - else \ - if test "$$xpass" -eq 0; then \ - banner="$$failed of $$all $$tests failed"; \ + fi; \ + if test -n "$$am__remaking_logs"; then \ + echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ + "recursion detected" >&2; \ + else \ + am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ + fi; \ + if $(am__make_dryrun); then :; else \ + st=0; \ + errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ + for i in $$redo_bases; do \ + test -f $$i.trs && test -r $$i.trs \ + || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ + test -f $$i.log && test -r $$i.log \ + || { echo "$$errmsg $$i.log" >&2; st=1; }; \ + done; \ + test $$st -eq 0 || exit 1; \ + fi + @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ + ws='[ ]'; \ + results=`for b in $$bases; do echo $$b.trs; done`; \ + test -n "$$results" || results=/dev/null; \ + all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ + pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ + fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ + skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ + xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ + xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ + error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ + if test `expr $$fail + $$xpass + $$error` -eq 0; then \ + success=true; \ + else \ + success=false; \ + fi; \ + br='==================='; br=$$br$$br$$br$$br; \ + result_count () \ + { \ + if test x"$$1" = x"--maybe-color"; then \ + maybe_colorize=yes; \ + elif test x"$$1" = x"--no-color"; then \ + maybe_colorize=no; \ else \ - if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ - banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + echo "$@: invalid 'result_count' usage" >&2; exit 4; \ fi; \ - fi; \ - dashes="$$banner"; \ - skipped=""; \ - if test "$$skip" -ne 0; then \ - if test "$$skip" -eq 1; then \ - skipped="($$skip test was not run)"; \ + shift; \ + desc=$$1 count=$$2; \ + if test $$maybe_colorize = yes && test $$count -gt 0; then \ + color_start=$$3 color_end=$$std; \ else \ - skipped="($$skip tests were not run)"; \ + color_start= color_end=; \ fi; \ - test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$skipped"; \ - fi; \ - report=""; \ - if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ - report="Please report to $(PACKAGE_BUGREPORT)"; \ - test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$report"; \ - fi; \ - dashes=`echo "$$dashes" | sed s/./=/g`; \ - if test "$$failed" -eq 0; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - fi; \ - echo "$${col}$$dashes$${std}"; \ - echo "$${col}$$banner$${std}"; \ - test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ - test -z "$$report" || echo "$${col}$$report$${std}"; \ - echo "$${col}$$dashes$${std}"; \ - test "$$failed" -eq 0; \ - else :; fi + echo "$${color_start}# $$desc $$count$${color_end}"; \ + }; \ + create_testsuite_report () \ + { \ + result_count $$1 "TOTAL:" $$all "$$brg"; \ + result_count $$1 "PASS: " $$pass "$$grn"; \ + result_count $$1 "SKIP: " $$skip "$$blu"; \ + result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ + result_count $$1 "FAIL: " $$fail "$$red"; \ + result_count $$1 "XPASS:" $$xpass "$$red"; \ + result_count $$1 "ERROR:" $$error "$$mgn"; \ + }; \ + { \ + echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ + $(am__rst_title); \ + create_testsuite_report --no-color; \ + echo; \ + echo ".. contents:: :depth: 2"; \ + echo; \ + for b in $$bases; do echo $$b; done \ + | $(am__create_global_log); \ + } >$(TEST_SUITE_LOG).tmp || exit 1; \ + mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ + if $$success; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ + fi; \ + echo "$${col}$$br$${std}"; \ + echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ + echo "$${col}$$br$${std}"; \ + create_testsuite_report --maybe-color; \ + echo "$$col$$br$$std"; \ + if $$success; then :; else \ + echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ + if test -n "$(PACKAGE_BUGREPORT)"; then \ + echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ + fi; \ + echo "$$col$$br$$std"; \ + fi; \ + $$success || exit 1 + +check-TESTS: + @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list + @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + trs_list=`for i in $$bases; do echo $$i.trs; done`; \ + log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ + exit $$?; +recheck: all $(check_SCRIPTS) + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + bases=`for i in $$bases; do echo $$i; done \ + | $(am__list_recheck_tests)` || exit 1; \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + log_list=`echo $$log_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ + am__force_recheck=am--force-recheck \ + TEST_LOGS="$$log_list"; \ + exit $$? +check-missing-doc.log: check-missing-doc + @p='check-missing-doc'; \ + b='check-missing-doc'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +.test.log: + @p='$<'; \ + $(am__set_b); \ + $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +@am__EXEEXT_TRUE@.test$(EXEEXT).log: +@am__EXEEXT_TRUE@ @p='$<'; \ +@am__EXEEXT_TRUE@ $(am__set_b); \ +@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ +@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ +@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ +@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) distdir: $(DISTFILES) - @list='$(MANS)'; if test -n "$$list"; then \ - list=`for p in $$list; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ - if test -n "$$list" && \ - grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ - echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \ - grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ - echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ - echo " typically 'make maintainer-clean' will remove them" >&2; \ - exit 1; \ - else :; fi; \ - else :; fi @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -915,6 +1195,9 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: + -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) + -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) + -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) @@ -1003,9 +1286,9 @@ uninstall-man: uninstall-man3 uninstall-man5 .MAKE: all check check-am install install-am install-strip -.PHONY: CTAGS GTAGS all all-am all-local check check-TESTS check-am \ - clean clean-generic clean-libtool clean-local \ - clean-noinstPROGRAMS cscopelist ctags distclean \ +.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-TESTS \ + check-am clean clean-generic clean-libtool clean-local \ + clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ @@ -1017,7 +1300,7 @@ uninstall-man: uninstall-man3 uninstall-man5 installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags uninstall uninstall-am uninstall-docDATA \ + recheck tags tags-am uninstall uninstall-am uninstall-docDATA \ uninstall-htmldocDATA uninstall-man uninstall-man3 \ uninstall-man5 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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <0, 0, >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 <0, 0, >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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 <fontconfig/fontconfig.h> + </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 Binary files differindex aef31d51..79de82c1 100644 --- a/doc/fontconfig-devel.pdf +++ b/doc/fontconfig-devel.pdf 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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" -> </TD +><A +HREF="fcconfiggetsysroot.html" +ACCESSKEY="N" +>Next >>></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" -> </TD +><A +HREF="fcconfiggetsysroot.html" +ACCESSKEY="N" +>Next >>></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" -> </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" +><<< Previous</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +> </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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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" +> </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" +> </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 >>></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 >>></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" ><<< 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" ><<< 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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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 >>></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 >>></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" ><<< 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" ><<< 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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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 -- Add a typed value to a pattern</DIV +>FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange -- 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 -- Return a typed value from a pattern</DIV +>FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange -- 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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" +><<< Previous</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +> </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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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" +> </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" +> </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 >>></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 >>></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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" ><<< 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" ><<< 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" +><<< 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 >>></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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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 >>></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" +><<< Previous</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +> </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 -- 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 <fontconfig/fontconfig.h> + </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" +><<< 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" +> </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" +> </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" > -- Get the default languages list</DT ><DT ><A +HREF="fclangsetgetlangs.html" +>FcLangSetGetLangs</A +> -- get the list of languages in the langset</DT +><DT +><A HREF="fcgetlangs.html" >FcGetLangs</A > -- 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 +> -- Copy a range object</DT +><DT +><A +HREF="fcrangecreatedouble.html" +>FcRangeCreateDouble</A +> -- create a range object for double</DT +><DT +><A +HREF="fcrangecreateinteger.html" +>FcRangeCreateInteger</A +> -- create a range object for integer</DT +><DT +><A +HREF="fcrangedestroy.html" +>FcRangeDestroy</A +> -- destroy a range object</DT +><DT +><A +HREF="fcrangegetdouble.html" +>FcRangeGetDouble</A +> -- 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 > -- load a configuration file</DT +><DT +><A +HREF="fcconfiggetsysroot.html" +>FcConfigGetSysRoot</A +> -- Obtain the system root directory</DT +><DT +><A +HREF="fcconfigsetsysroot.html" +>FcConfigSetSysRoot</A +> -- 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 +> -- Convert from OpenType weight values to fontconfig ones</DT +><DT +><A +HREF="fcweighttoopentype.html" +>FcWeightToOpenType</A +> -- 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" > -- load a directory cache</DT ><DT ><A +HREF="fcdircacherescan.html" +>FcDirCacheRescan</A +> -- Re-scan a directory cache</DT +><DT +><A HREF="fcdircacheread.html" >FcDirCacheRead</A > -- 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" > -- create a string iterator</DT ><DT ><A +HREF="fcstrlistfirst.html" +>FcStrListFirst</A +> -- get first string in iteration</DT +><DT +><A HREF="fcstrlistnext.html" >FcStrListNext</A > -- 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->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->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" ><architecture></TT >.cache-<TT CLASS="LITERAL" -><version</TT +><version></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 Binary files differindex 42781804..c976f7e9 100644 --- a/doc/fontconfig-user.pdf +++ b/doc/fontconfig-user.pdf 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><hash value></literal>-<literal><architecture></literal>.cache-<literal><version</literal>'', +named ``<literal><hash value></literal>-<literal><architecture></literal>.cache-<literal><version></literal>'', where <literal><version></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><int></literal>, <literal><double></literal>, <literal><string></literal>, <literal><bool></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> @@ -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 @@ -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]) || @@ -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 (®, (const char *)regex, cflags)) != 0) - { - if (FcDebug () & FC_DBG_MATCHV) - { - char buf[512]; - - regerror (ret, ®, buf, 512); - printf("Regexp compile error: %s\n", buf); - } - return FcFalse; - } - ret = regexec (®, (const char *)s, 0, NULL, eflags); - if (ret != 0) - { - if (FcDebug () & FC_DBG_MATCHV) - { - char buf[512]; - - regerror (ret, ®, buf, 512); - printf("Regexp exec error: %s\n", buf); - } - } - regfree (®); - - 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='[0;31m' # Red. + grn='[0;32m' # Green. + lgn='[1;32m' # Light green. + blu='[1;34m' # Blue. + mgn='[0;35m' # Magenta. + std='[m' # No color. +else + red= grn= lgn= blu= mgn= std= +fi + +do_exit='rm -f $log_file $trs_file; (exit $st); exit $st' +trap "st=129; $do_exit" 1 +trap "st=130; $do_exit" 2 +trap "st=141; $do_exit" 13 +trap "st=143; $do_exit" 15 + +# Test script is run here. +"$@" >$log_file 2>&1 +estatus=$? +if test $enable_hard_errors = no && test $estatus -eq 99; then + estatus=1 +fi + +case $estatus:$expect_failure in + 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; + 0:*) col=$grn res=PASS recheck=no gcopy=no;; + 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; + 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; + *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; + *:*) col=$red res=FAIL recheck=yes gcopy=yes;; +esac + +# Report outcome to console. +echo "${col}${res}${std}: $test_name" + +# Register the test result, and other relevant metadata. +echo ":test-result: $res" > $trs_file +echo ":global-test-result: $res" >> $trs_file +echo ":recheck: $recheck" >> $trs_file +echo ":copy-in-global-log: $gcopy" >> $trs_file + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: 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='[0;31m'; \ + grn='[0;32m'; \ + lgn='[1;32m'; \ + blu='[1;34m'; \ + mgn='[0;35m'; \ + brg='[1m'; \ + std='[m'; \ + fi; \ +} +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__recheck_rx = ^[ ]*:recheck:[ ]* +am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* +am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* +# A command that, given a newline-separated list of test names on the +# standard input, print the name of the tests that are to be re-run +# upon "make recheck". +am__list_recheck_tests = $(AWK) '{ \ + recheck = 1; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + { \ + if ((getline line2 < ($$0 ".log")) < 0) \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ + { \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ + { \ + break; \ + } \ + }; \ + if (recheck) \ + print $$0; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# A command that, given a newline-separated list of test names on the +# standard input, create the global log from their .trs and .log files. +am__create_global_log = $(AWK) ' \ +function fatal(msg) \ +{ \ + print "fatal: making $@: " msg | "cat >&2"; \ + exit 1; \ +} \ +function rst_section(header) \ +{ \ + print header; \ + len = length(header); \ + for (i = 1; i <= len; i = i + 1) \ + printf "="; \ + printf "\n\n"; \ +} \ +{ \ + copy_in_global_log = 1; \ + global_test_result = "RUN"; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".trs"); \ + if (line ~ /$(am__global_test_result_rx)/) \ + { \ + sub("$(am__global_test_result_rx)", "", line); \ + sub("[ ]*$$", "", line); \ + global_test_result = line; \ + } \ + else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ + copy_in_global_log = 0; \ + }; \ + if (copy_in_global_log) \ + { \ + rst_section(global_test_result ": " $$0); \ + while ((rc = (getline line < ($$0 ".log"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".log"); \ + print line; \ + }; \ + printf "\n"; \ + }; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# Restructured Text title. +am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } +# Solaris 10 'make', and several other traditional 'make' implementations, +# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it +# by disabling -e (using the XSI extension "set +e") if it's set. +am__sh_e_setup = case $$- in *e*) set +e;; esac +# Default flags passed to test drivers. +am__common_driver_flags = \ + --color-tests "$$am__color_tests" \ + --enable-hard-errors "$$am__enable_hard_errors" \ + --expect-failure "$$am__expect_failure" +# To be inserted before the command running the test. Creates the +# directory for the log if needed. Stores in $dir the directory +# containing $f, in $tst the test, in $log the log. Executes the +# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and +# passes TESTS_ENVIRONMENT. Set up options for the wrapper that +# will run the test scripts (or their associated LOG_COMPILER, if +# thy have one). +am__check_pre = \ +$(am__sh_e_setup); \ +$(am__vpath_adj_setup) $(am__vpath_adj) \ +$(am__tty_colors); \ +srcdir=$(srcdir); export srcdir; \ +case "$@" in \ + */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ + *) am__odir=.;; \ +esac; \ +test "x$$am__odir" = x"." || test -d "$$am__odir" \ + || $(MKDIR_P) "$$am__odir" || exit $$?; \ +if test -f "./$$f"; then dir=./; \ +elif test -f "$$f"; then dir=; \ +else dir="$(srcdir)/"; fi; \ +tst=$$dir$$f; log='$@'; \ +if test -n '$(DISABLE_HARD_ERRORS)'; then \ + am__enable_hard_errors=no; \ +else \ + am__enable_hard_errors=yes; \ +fi; \ +case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ + am__expect_failure=yes;; \ + *) \ + am__expect_failure=no;; \ +esac; \ +$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) +# A shell command to get the names of the tests scripts with any registered +# extension removed (i.e., equivalently, the names of the test logs, with +# the '.log' extension removed). The result is saved in the shell variable +# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, +# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", +# since that might cause problem with VPATH rewrites for suffix-less tests. +# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. +am__set_TESTS_bases = \ + bases='$(TEST_LOGS)'; \ + bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ + bases=`echo $$bases` +RECHECK_LOGS = $(TEST_LOGS) +AM_RECURSIVE_TARGETS = check recheck +TEST_SUITE_LOG = test-suite.log +am__test_logs1 = $(TESTS:=.log) +am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) +TEST_LOGS = $(am__test_logs2:.sh.log=.log) +SH_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver +SH_LOG_COMPILE = $(SH_LOG_COMPILER) $(AM_SH_LOG_FLAGS) $(SH_LOG_FLAGS) +am__set_b = \ + case '$@' in \ + */*) \ + case '$*' in \ + */*) b='$*';; \ + *) b=`echo '$@' | sed 's/\.log$$//'`; \ + esac;; \ + *) \ + b='$*';; \ + esac DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -164,6 +414,8 @@ FC_FONTPATH = @FC_FONTPATH@ FGREP = @FGREP@ FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ FREETYPE_LIBS = @FREETYPE_LIBS@ +GIT = @GIT@ +GPERF = @GPERF@ GREP = @GREP@ HASDOCBOOK = @HASDOCBOOK@ HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@ @@ -205,12 +457,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@ +PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RM = @RM@ SED = @SED@ @@ -234,7 +493,6 @@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ ax_pthread_config = @ax_pthread_config@ -baseconfigdir = @baseconfigdir@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -242,7 +500,6 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ -configdir = @configdir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -267,34 +524,48 @@ mkdir_p = @mkdir_p@ ms_librarian = @ms_librarian@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ +pkgconfigdir = @pkgconfigdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ -templatedir = @templatedir@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -xmldir = @xmldir@ check_SCRIPTS = run-test.sh -TESTS_ENVIRONMENT = src=${srcdir} EXEEXT=${EXEEXT} sh +TEST_EXTENSIONS = \ + .sh \ + $(NULL) + +AM_TESTS_ENVIRONMENT = \ + src=${srcdir}; export src; \ + EXEEXT=${EXEEXT}; export EXEEXT; \ + $(NULL) + +SH_LOG_COMPILER = sh TESTS = run-test.sh TESTDATA = 4x6.pcf 8x16.pcf out.expected fonts.conf.in -@HAVE_PTHREAD_TRUE@noinst_PROGRAMS = $(check_PROGRAMS) +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir) @HAVE_PTHREAD_TRUE@test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la # We don't enable this test by default because it will require config and fonts # to meaningfully test anything, and we are not installed yet. #TESTS += test-pthread +noinst_PROGRAMS = $(check_PROGRAMS) +@OS_WIN32_FALSE@test_migration_LDADD = $(top_builddir)/src/libfontconfig.la EXTRA_DIST = $(check_SCRIPTS) $(TESTDATA) CLEANFILES = all: all-am .SUFFIXES: -.SUFFIXES: .c .lo .o .obj +.SUFFIXES: .c .lo .log .o .obj .sh .sh$(EXEEXT) .trs $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -343,6 +614,11 @@ clean-noinstPROGRAMS: list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list + +test-migration$(EXEEXT): $(test_migration_OBJECTS) $(test_migration_DEPENDENCIES) $(EXTRA_test_migration_DEPENDENCIES) + @rm -f test-migration$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_migration_OBJECTS) $(test_migration_LDADD) $(LIBS) + test-pthread$(EXEEXT): $(test_pthread_OBJECTS) $(test_pthread_DEPENDENCIES) $(EXTRA_test_pthread_DEPENDENCIES) @rm -f test-pthread$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_pthread_OBJECTS) $(test_pthread_LDADD) $(LIBS) @@ -353,6 +629,7 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-migration.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@ .c.o: @@ -360,14 +637,14 @@ distclean-compile: @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -382,26 +659,15 @@ mostlyclean-libtool: clean-libtool: -rm -rf .libs _libs -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -413,15 +679,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $$unique; \ fi; \ fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -430,9 +692,10 @@ GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am -cscopelist: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP)'; \ +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ @@ -448,98 +711,161 @@ cscopelist: $(HEADERS) $(SOURCES) $(LISP) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -check-TESTS: $(TESTS) - @failed=0; all=0; xfail=0; xpass=0; skip=0; \ - srcdir=$(srcdir); export srcdir; \ - list=' $(TESTS) '; \ - $(am__tty_colors); \ - if test -n "$$list"; then \ - for tst in $$list; do \ - if test -f ./$$tst; then dir=./; \ - elif test -f $$tst; then dir=; \ - else dir="$(srcdir)/"; fi; \ - if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xpass=`expr $$xpass + 1`; \ - failed=`expr $$failed + 1`; \ - col=$$red; res=XPASS; \ - ;; \ - *) \ - col=$$grn; res=PASS; \ - ;; \ - esac; \ - elif test $$? -ne 77; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xfail=`expr $$xfail + 1`; \ - col=$$lgn; res=XFAIL; \ - ;; \ - *) \ - failed=`expr $$failed + 1`; \ - col=$$red; res=FAIL; \ - ;; \ - esac; \ - else \ - skip=`expr $$skip + 1`; \ - col=$$blu; res=SKIP; \ - fi; \ - echo "$${col}$$res$${std}: $$tst"; \ - done; \ - if test "$$all" -eq 1; then \ - tests="test"; \ - All=""; \ - else \ - tests="tests"; \ - All="All "; \ +# Recover from deleted '.trs' file; this should ensure that +# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create +# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells +# to avoid problems with "make -n". +.log.trs: + rm -f $< $@ + $(MAKE) $(AM_MAKEFLAGS) $< + +# Leading 'am--fnord' is there to ensure the list of targets does not +# expand to empty, as could happen e.g. with make check TESTS=''. +am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) +am--force-recheck: + @: + +$(TEST_SUITE_LOG): $(TEST_LOGS) + @$(am__set_TESTS_bases); \ + am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ + redo_bases=`for i in $$bases; do \ + am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ + done`; \ + if test -n "$$redo_bases"; then \ + redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ + redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ + if $(am__make_dryrun); then :; else \ + rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ fi; \ - if test "$$failed" -eq 0; then \ - if test "$$xfail" -eq 0; then \ - banner="$$All$$all $$tests passed"; \ - else \ - if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ - banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ - fi; \ - else \ - if test "$$xpass" -eq 0; then \ - banner="$$failed of $$all $$tests failed"; \ + fi; \ + if test -n "$$am__remaking_logs"; then \ + echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ + "recursion detected" >&2; \ + else \ + am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ + fi; \ + if $(am__make_dryrun); then :; else \ + st=0; \ + errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ + for i in $$redo_bases; do \ + test -f $$i.trs && test -r $$i.trs \ + || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ + test -f $$i.log && test -r $$i.log \ + || { echo "$$errmsg $$i.log" >&2; st=1; }; \ + done; \ + test $$st -eq 0 || exit 1; \ + fi + @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ + ws='[ ]'; \ + results=`for b in $$bases; do echo $$b.trs; done`; \ + test -n "$$results" || results=/dev/null; \ + all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ + pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ + fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ + skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ + xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ + xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ + error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ + if test `expr $$fail + $$xpass + $$error` -eq 0; then \ + success=true; \ + else \ + success=false; \ + fi; \ + br='==================='; br=$$br$$br$$br$$br; \ + result_count () \ + { \ + if test x"$$1" = x"--maybe-color"; then \ + maybe_colorize=yes; \ + elif test x"$$1" = x"--no-color"; then \ + maybe_colorize=no; \ else \ - if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ - banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + echo "$@: invalid 'result_count' usage" >&2; exit 4; \ fi; \ - fi; \ - dashes="$$banner"; \ - skipped=""; \ - if test "$$skip" -ne 0; then \ - if test "$$skip" -eq 1; then \ - skipped="($$skip test was not run)"; \ + shift; \ + desc=$$1 count=$$2; \ + if test $$maybe_colorize = yes && test $$count -gt 0; then \ + color_start=$$3 color_end=$$std; \ else \ - skipped="($$skip tests were not run)"; \ + color_start= color_end=; \ fi; \ - test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$skipped"; \ - fi; \ - report=""; \ - if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ - report="Please report to $(PACKAGE_BUGREPORT)"; \ - test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$report"; \ - fi; \ - dashes=`echo "$$dashes" | sed s/./=/g`; \ - if test "$$failed" -eq 0; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - fi; \ - echo "$${col}$$dashes$${std}"; \ - echo "$${col}$$banner$${std}"; \ - test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ - test -z "$$report" || echo "$${col}$$report$${std}"; \ - echo "$${col}$$dashes$${std}"; \ - test "$$failed" -eq 0; \ - else :; fi + echo "$${color_start}# $$desc $$count$${color_end}"; \ + }; \ + create_testsuite_report () \ + { \ + result_count $$1 "TOTAL:" $$all "$$brg"; \ + result_count $$1 "PASS: " $$pass "$$grn"; \ + result_count $$1 "SKIP: " $$skip "$$blu"; \ + result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ + result_count $$1 "FAIL: " $$fail "$$red"; \ + result_count $$1 "XPASS:" $$xpass "$$red"; \ + result_count $$1 "ERROR:" $$error "$$mgn"; \ + }; \ + { \ + echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ + $(am__rst_title); \ + create_testsuite_report --no-color; \ + echo; \ + echo ".. contents:: :depth: 2"; \ + echo; \ + for b in $$bases; do echo $$b; done \ + | $(am__create_global_log); \ + } >$(TEST_SUITE_LOG).tmp || exit 1; \ + mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ + if $$success; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ + fi; \ + echo "$${col}$$br$${std}"; \ + echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ + echo "$${col}$$br$${std}"; \ + create_testsuite_report --maybe-color; \ + echo "$$col$$br$$std"; \ + if $$success; then :; else \ + echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ + if test -n "$(PACKAGE_BUGREPORT)"; then \ + echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ + fi; \ + echo "$$col$$br$$std"; \ + fi; \ + $$success || exit 1 + +check-TESTS: + @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list + @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + trs_list=`for i in $$bases; do echo $$i.trs; done`; \ + log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ + exit $$?; +recheck: all $(check_PROGRAMS) $(check_SCRIPTS) + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + bases=`for i in $$bases; do echo $$i; done \ + | $(am__list_recheck_tests)` || exit 1; \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + log_list=`echo $$log_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ + am__force_recheck=am--force-recheck \ + TEST_LOGS="$$log_list"; \ + exit $$? +.sh.log: + @p='$<'; \ + $(am__set_b); \ + $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +@am__EXEEXT_TRUE@.sh$(EXEEXT).log: +@am__EXEEXT_TRUE@ @p='$<'; \ +@am__EXEEXT_TRUE@ $(am__set_b); \ +@am__EXEEXT_TRUE@ $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \ +@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ +@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \ +@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -597,6 +923,9 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: + -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) + -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) + -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) @@ -681,9 +1010,9 @@ uninstall-am: .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool \ - clean-noinstPROGRAMS cscopelist ctags distclean \ + clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ @@ -693,7 +1022,8 @@ uninstall-am: install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags uninstall uninstall-am + pdf pdf-am ps ps-am recheck tags tags-am uninstall \ + uninstall-am -include $(top_srcdir)/git.mk 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> |