Better document sysroot.

All non trivial users of FontConfig must use FcConfigGetSysRoot to
resolve file properties in patterns. In order to support sysroot the
filename in the file property must be relative to the sysroot, but the
value of the file property in a pattern is directly exposed, making it
impossible for FontConfig to resolve the filename itself transparently.
This commit is contained in:
Ben Wagner 2019-02-19 00:40:32 +00:00
parent 586e35450e
commit 40e27f5d98
2 changed files with 11 additions and 5 deletions

View File

@ -393,7 +393,9 @@ parse error, semantic error or allocation failure. Otherwise returns FcTrue.
@TYPE1@ const FcConfig * @ARG1@ config @TYPE1@ const FcConfig * @ARG1@ config
@PURPOSE@ Obtain the system root directory @PURPOSE@ Obtain the system root directory
@DESC@ @DESC@
Obtrains the system root directory in 'config' if available. Obtains the system root directory in 'config' if available. All files
(including file properties in patterns) obtained from this 'config' are
relative to this system root directory.
@SINCE@ 2.10.92 @SINCE@ 2.10.92
@@ @@
@ -403,10 +405,13 @@ Obtrains the system root directory in 'config' if available.
@TYPE2@ const FcChar8 * @ARG2@ sysroot @TYPE2@ const FcChar8 * @ARG2@ sysroot
@PURPOSE@ Set the system root directory @PURPOSE@ Set the system root directory
@DESC@ @DESC@
Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot' Set 'sysroot' as the system root directory. All file paths used or created with
to the cache directories in order to allow people to generate caches at this 'config' (including file properties in patterns) will be considered or
the build time. Note that this causes changing current config. i.e. made relative to this 'sysroot'. This allows a host to generate caches for
this function calls FcConfigSetCurrent() internally. targets at build time. This also allows a cache to be re-targeted to a
different base directory if 'FcConfigGetSysRoot' is used to resolve file paths.
When setting this on the current config this causes changing current config
(calls FcConfigSetCurrent()).
@SINCE@ 2.10.92 @SINCE@ 2.10.92
@@ @@

View File

@ -168,6 +168,7 @@ convenience for the application's rendering mechanism.
normal hinter normal hinter
globaladvance FC_GLOBAL_ADVANCE Bool Use font global advance data (deprecated) globaladvance FC_GLOBAL_ADVANCE Bool Use font global advance data (deprecated)
file FC_FILE String The filename holding the font file FC_FILE String The filename holding the font
relative to the config's sysroot
index FC_INDEX Int The index of the font within index FC_INDEX Int The index of the font within
the file the file
ftface FC_FT_FACE FT_Face Use the specified FreeType ftface FC_FT_FACE FT_Face Use the specified FreeType