Add possibility to build fontconfig for Windows

As a StaticLibrary for now. Using our build mechanism, not its
own. This commit does not yet actually add any configury to get it
built, BUILD_TYPE will never contain FONTCONFIG on Windows. Running
"make fontconfig" won't work.

Squashed in:
Apply windows-related patch only on Windows

Change-Id: I067d0d14dc4a1d99b4aae656b5f948c0a9952633
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194571
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196956
Reviewed-by: Tor Lillqvist <tml@iki.fi>
Tested-by: Tor Lillqvist <tml@iki.fi>
This commit is contained in:
Tor Lillqvist
2026-01-10 16:22:52 +01:00
parent 08c6a6fc5c
commit 21dde17df5
11 changed files with 1427 additions and 3 deletions
+16 -3
View File
@@ -10,10 +10,23 @@
$(eval $(call gb_Module_Module,fontconfig))
$(eval $(call gb_Module_add_targets,fontconfig,\
ExternalProject_fontconfig \
$(if $(filter EMSCRIPTEN,$(OS)),ExternalPackage_fontconfig_data) \
$(if $(filter FONTCONFIG,$(BUILD_TYPE)),ExternalPackage_fontconfig) \
UnpackedTarball_fontconfig \
))
ifeq ($(COM),MSC)
$(eval $(call gb_Module_add_targets,fontconfig,\
StaticLibrary_fontconfig \
))
else
$(eval $(call gb_Module_add_targets,fontconfig,\
ExternalProject_fontconfig \
$(if $(filter EMSCRIPTEN,$(OS)),ExternalPackage_fontconfig_data) \
$(if $(filter FONTCONFIG,$(BUILD_TYPE)),ExternalPackage_fontconfig) \
))
endif
# vim: set noet sw=4 ts=4:
+73
View File
@@ -0,0 +1,73 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This is de facto just for Windows for now
$(eval $(call gb_StaticLibrary_StaticLibrary,fontconfig))
$(eval $(call gb_StaticLibrary_set_include,fontconfig,\
-I$(call gb_UnpackedTarball_get_dir,fontconfig) \
-I$(call gb_UnpackedTarball_get_dir,freetype)/include \
-I$(call gb_UnpackedTarball_get_dir,expat)/lib \
$$(INCLUDE) \
))
# Ignore warnings, warnings in this code is not our problem, or is it?
$(eval $(call gb_StaticLibrary_add_defs,fontconfig,\
-wd4018 \
-wd4090 \
-wd4100 \
-wd4189 \
-wd4200 \
-wd4245 \
-wd4267 \
-wd4701 \
-wd4703 \
-DHAVE_CONFIG_H \
-DFC_CACHEDIR='"C:/Windows/Temp"' \
-DCONFIGDIR='"Whatever"' \
-DFONTCONFIG_PATH='"Whatever"' \
-DFC_TEMPLATEDIR='"Whatever"' \
))
$(eval $(call gb_StaticLibrary_add_generated_cobjects,fontconfig,\
$(addprefix UnpackedTarball/fontconfig/src/, \
fcatomic \
fccache \
fccfg \
fccharset \
fccompat \
fcdbg \
fcdefault \
fcdir \
fcformat \
fcfreetype \
fcfs \
fcptrlist \
fchash \
fcinit \
fclang \
fclist \
fcmatch \
fcmatrix \
fcname \
fcobjs \
fcpat \
fcrange \
fcserialize \
fcstat \
fcstr \
fcweight \
fcxml \
ftglue \
) \
))
# vim: set noet sw=4 ts=4:
+15
View File
@@ -24,4 +24,19 @@ $(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
))
endif
ifeq ($(COM),MSC)
$(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
external/fontconfig/windowsfonts.patch \
))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,config.h,external/fontconfig/configs/wnt_fontconfig_config.h))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,src/fcalias.h,external/fontconfig/configs/wnt_fontconfig_fcalias.h))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,src/fcaliastail.h,external/fontconfig/configs/wnt_fontconfig_fcaliastail.h))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,src/fcftalias.h,external/fontconfig/configs/wnt_fontconfig_fcftalias.h))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,src/fcftaliastail.h,external/fontconfig/configs/wnt_fontconfig_fcftaliastail.h))
$(eval $(call gb_UnpackedTarball_add_file,fontconfig,src/fcobjshash.h,external/fontconfig/configs/wnt_fontconfig_fcobjshash.h))
endif
# vim: set noet sw=4 ts=4:
+444
View File
@@ -0,0 +1,444 @@
/* config.h for Windows build of fontconfig, manually edited from one generated for Linux: */
/* config.h. Generated from config.h.in by configure. */
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define if building universal (internal helper macro) */
/* #undef AC_APPLE_UNIVERSAL_BUILD */
/* The normal alignment of `double', in bytes. */
#define ALIGNOF_DOUBLE 8
/* The normal alignment of `void *', in bytes. */
#define ALIGNOF_VOID_P 8
/* Use libxml2 instead of Expat */
/* #undef ENABLE_LIBXML2 */
/* Define to 1 if translation of program messages to the user's native
language is requested. */
/* #undef ENABLE_NLS */
/* Additional font directories */
#define FC_ADD_FONTS ""
/* Architecture prefix to use for cache file names */
/* #undef FC_ARCHITECTURE */
/* System font directory. Just testing, obviously this won't work in general. */
#define FC_DEFAULT_FONTS "<dir>WINDOWSFONTDIR</dir>"
/* The type of len parameter of the gperf hash/lookup function */
#define FC_GPERF_SIZE_T size_t
/* Define to nothing if C supports flexible array members, and to 1 if it does
not. That way, with a declaration like `struct s { int n; double
d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
compilers. When computing the size of such an object, don't use 'sizeof
(struct s)' as it overestimates the size. Use 'offsetof (struct s, d)'
instead. Don't use 'offsetof (struct s, d[0])', as this doesn't work with
MSVC and with C++ compilers. */
#define FLEXIBLE_ARRAY_MEMBER /**/
/* Gettext package */
#define GETTEXT_PACKAGE "fontconfig"
/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
CoreFoundation framework. */
/* #undef HAVE_CFLOCALECOPYCURRENT */
/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
the CoreFoundation framework. */
/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */
/* Define if the GNU dcgettext() function is already present or preinstalled.
*/
/* #undef HAVE_DCGETTEXT */
/* Define to 1 if you have the <dirent.h> header file. */
/* #undef HAVE_DIRENT_H */
/* Define to 1 if you have the <dlfcn.h> header file. */
/* #undef HAVE_DLFCN_H */
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
/* #undef HAVE_DOPRNT */
/* Define to 1 if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
/* Define to 1 if you have the `fstatfs' function. */
/* #undef HAVE_FSTATFS */
/* Define to 1 if you have the `fstatvfs' function. */
/* #undef HAVE_FSTATVFS */
/* Define to 1 if you have the `FT_Done_MM_Var' function. */
#define HAVE_FT_DONE_MM_VAR 1
/* Define to 1 if you have the `FT_Get_BDF_Property' function. */
/* #undef HAVE_FT_GET_BDF_PROPERTY */
/* Define to 1 if you have the `FT_Get_PS_Font_Info' function. */
#define HAVE_FT_GET_PS_FONT_INFO 1
/* Define to 1 if you have the `FT_Get_X11_Font_Format' function. */
/* #undef HAVE_FT_GET_X11_FONT_FORMAT */
/* Define to 1 if you have the `FT_Has_PS_Glyph_Names' function. */
#define HAVE_FT_HAS_PS_GLYPH_NAMES 1
/* Define to 1 if you have the `getexecname' function. */
/* #undef HAVE_GETEXECNAME */
/* Define to 1 if you have the `getopt' function. */
/* #undef HAVE_GETOPT */
/* Define to 1 if you have the `getopt_long' function. */
/* #undef HAVE_GETOPT_LONG */
/* Define to 1 if you have the `getpagesize' function. */
/* #undef HAVE_GETPAGESIZE */
/* Define to 1 if you have the `getprogname' function. */
/* #undef HAVE_GETPROGNAME */
/* Define if the GNU gettext() function is already present or preinstalled. */
/* #undef HAVE_GETTEXT */
/* Define if you have the iconv() function and it works. */
/* #undef HAVE_ICONV */
/* Have Intel __sync_* atomic primitives */
/* #undef HAVE_INTEL_ATOMIC_PRIMITIVES */
/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1
/* Define to 1 if you have the `link' function. */
/* #undef HAVE_LINK */
/* Define to 1 if you have the `lrand48' function. */
/* #undef HAVE_LRAND48 */
/* Define to 1 if you have the `lstat' function. */
/* #undef HAVE_LSTAT */
/* Define to 1 if you have the <minix/config.h> header file. */
/* #undef HAVE_MINIX_CONFIG_H */
/* Define to 1 if you have the `mkdtemp' function. */
/* #undef HAVE_MKDTEMP */
/* Define to 1 if you have the `mkostemp' function. */
/* #undef HAVE_MKOSTEMP */
/* Define to 1 if you have the `mkstemp' function. */
/* #undef HAVE_MKSTEMP */
/* Define to 1 if you have a working `mmap' system call. */
/* #undef HAVE_MMAP */
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
/* #undef HAVE_NDIR_H */
/* Define to 1 if you have the 'posix_fadvise' function. */
/* #undef HAVE_POSIX_FADVISE */
/* Have POSIX threads */
/* #undef HAVE_PTHREAD */
/* Have PTHREAD_PRIO_INHERIT. */
/* #undef HAVE_PTHREAD_PRIO_INHERIT */
/* Define to 1 if you have the `rand' function. */
#define HAVE_RAND 1
/* Define to 1 if you have the `random' function. */
/* #undef HAVE_RANDOM */
/* Define to 1 if you have the `random_r' function. */
/* #undef HAVE_RANDOM_R */
/* Define to 1 if you have the `rand_r' function. */
/* #undef HAVE_RAND_R */
/* 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 */
/* Have sched_yield */
/* #undef HAVE_SCHED_YIELD */
/* Have Solaris __machine_*_barrier and atomic_* operations */
/* #undef HAVE_SOLARIS_ATOMIC_OPS */
/* Have C99 stdatomic atomic primitives */
/* #undef HAVE_STDATOMIC_PRIMITIVES */
/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define to 1 if you have the <stdio.h> header file. */
#define HAVE_STDIO_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define to 1 if you have the `strerror' function. */
#define HAVE_STRERROR 1
/* Define to 1 if you have the `strerror_r' function. */
/* #undef HAVE_STRERROR_R */
/* 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. */
#define HAVE_STRING_H 1
/* Define to 1 if `d_type' is a member of `struct dirent'. */
/* #undef HAVE_STRUCT_DIRENT_D_TYPE */
/* Define to 1 if `f_flags' is a member of `struct statfs'. */
/* #undef HAVE_STRUCT_STATFS_F_FLAGS */
/* Define to 1 if `f_fstypename' is a member of `struct statfs'. */
/* #undef HAVE_STRUCT_STATFS_F_FSTYPENAME */
/* Define to 1 if `f_basetype' is a member of `struct statvfs'. */
/* #undef HAVE_STRUCT_STATVFS_F_BASETYPE */
/* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */
/* #undef HAVE_STRUCT_STATVFS_F_FSTYPENAME */
/* Define to 1 if `st_mtim' is a member of `struct stat'. */
/* #undef HAVE_STRUCT_STAT_ST_MTIM */
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
/* #undef HAVE_SYS_DIR_H */
/* Define to 1 if you have the <sys/mount.h> header file. */
/* #undef HAVE_SYS_MOUNT_H */
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
/* #undef HAVE_SYS_NDIR_H */
/* Define to 1 if you have the <sys/param.h> header file. */
/* #undef HAVE_SYS_PARAM_H */
/* Define to 1 if you have the <sys/statfs.h> header file. */
/* #undef HAVE_SYS_STATFS_H */
/* Define to 1 if you have the <sys/statvfs.h> header file. */
/* #undef HAVE_SYS_STATVFS_H */
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/types.h> header file. */
/* #undef HAVE_SYS_TYPES_H */
/* Define to 1 if you have the <sys/vfs.h> header file. */
/* #undef HAVE_SYS_VFS_H */
/* Define to 1 if you have the <unistd.h> header file. */
/* #undef HAVE_UNISTD_H */
/* Define to 1 if you have the `vprintf' function. */
/* #undef HAVE_VPRINTF */
/* Can use #warning in C files */
#define HAVE_WARNING_CPP_DIRECTIVE 1
/* Define to 1 if you have the <wchar.h> header file. */
#define HAVE_WCHAR_H 1
/* Use xmlparse.h instead of expat.h */
/* #undef HAVE_XMLPARSE_H */
/* Define to 1 if you have the `XML_SetDoctypeDeclHandler' function. */
#define HAVE_XML_SETDOCTYPEDECLHANDLER 1
/* Define to 1 if you have the `_mktemp_s' function. */
/* #undef HAVE__MKTEMP_S */
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#define LT_OBJDIR ".libs/"
/* Name of package */
#define PACKAGE "fontconfig"
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new"
/* Define to the full name of this package. */
#define PACKAGE_NAME "fontconfig"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "fontconfig 2.14.2"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "fontconfig"
/* Define to the home page for this package. */
#define PACKAGE_URL ""
/* Define to the version of this package. */
#define PACKAGE_VERSION "2.14.2"
/* Define to necessary symbol if this constant uses a non-standard name on
your system. */
/* #undef PTHREAD_CREATE_JOINABLE */
/* The size of `char', as computed by sizeof. */
/* #undef SIZEOF_CHAR */
/* The size of `int', as computed by sizeof. */
/* #undef SIZEOF_INT */
/* The size of `long', as computed by sizeof. */
/* #undef SIZEOF_LONG */
/* The size of `short', as computed by sizeof. */
/* #undef SIZEOF_SHORT */
/* The size of `void*', as computed by sizeof. */
/* #undef SIZEOF_VOIDP */
/* The size of `void *', as computed by sizeof. */
#define SIZEOF_VOID_P 8
/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
#define STDC_HEADERS 1
/* Use iconv. */
/* #undef USE_ICONV */
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
/* #undef _ALL_SOURCE */
#endif
/* Enable general extensions on macOS. */
#ifndef _DARWIN_C_SOURCE
/* #undef _DARWIN_C_SOURCE */
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
/* #undef __EXTENSIONS__ */
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
/* #undef _GNU_SOURCE */
#endif
/* Enable X/Open compliant socket functions that do not require linking
with -lxnet on HP-UX 11.11. */
#ifndef _HPUX_ALT_XOPEN_SOCKET_API
/* #undef _HPUX_ALT_XOPEN_SOCKET_API */
#endif
/* Identify the host operating system as Minix.
This macro does not affect the system headers' behavior.
A future release of Autoconf may stop defining this macro. */
#ifndef _MINIX
/* # undef _MINIX */
#endif
/* Enable general extensions on NetBSD.
Enable NetBSD compatibility extensions on Minix. */
#ifndef _NETBSD_SOURCE
/* #undef _NETBSD_SOURCE */
#endif
/* Enable OpenBSD compatibility extensions on NetBSD.
Oddly enough, this does nothing on OpenBSD. */
#ifndef _OPENBSD_SOURCE
/* #undef _OPENBSD_SOURCE */
#endif
/* Define to 1 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_SOURCE
/* # undef _POSIX_SOURCE */
#endif
/* Define to 2 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_1_SOURCE
/* # undef _POSIX_1_SOURCE */
#endif
/* Enable POSIX-compatible threading on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
/* #undef _POSIX_PTHREAD_SEMANTICS */
#endif
/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */
#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
#endif
/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */
#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
#define __STDC_WANT_IEC_60559_BFP_EXT__ 1
#endif
/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */
#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
#define __STDC_WANT_IEC_60559_DFP_EXT__ 1
#endif
/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
#endif
/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */
#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
#endif
/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */
#ifndef __STDC_WANT_LIB_EXT2__
#define __STDC_WANT_LIB_EXT2__ 1
#endif
/* Enable extensions specified by ISO/IEC 24747:2009. */
#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
#define __STDC_WANT_MATH_SPEC_FUNCS__ 1
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
/* #undef _TANDEM_SOURCE */
#endif
/* Enable X/Open extensions. Define to 500 only if necessary
to make mbstate_t available. */
#ifndef _XOPEN_SOURCE
/* # undef _XOPEN_SOURCE */
#endif
/* Version number of package */
#define VERSION "2.14.2"
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#if defined AC_APPLE_UNIVERSAL_BUILD
#if defined __BIG_ENDIAN__
#define WORDS_BIGENDIAN 1
#endif
#else
#ifndef WORDS_BIGENDIAN
/* # undef WORDS_BIGENDIAN */
#endif
#endif
/* Number of bits in a file offset, on hosts where this is settable. */
/* #undef _FILE_OFFSET_BITS */
/* Define for large files, on AIX-style hosts. */
/* #undef _LARGE_FILES */
/* Define to empty if `const' does not conform to ANSI C. */
/* #undef const */
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* #undef inline */
#endif
/* Define as a signed integer type capable of holding a process identifier. */
/* #undef pid_t */
#include "config-fixups.h"
+454
View File
@@ -0,0 +1,454 @@
extern __typeof (FcBlanksCreate) IA__FcBlanksCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcBlanksCreate IA__FcBlanksCreate
extern __typeof (FcBlanksDestroy) IA__FcBlanksDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcBlanksDestroy IA__FcBlanksDestroy
extern __typeof (FcBlanksAdd) IA__FcBlanksAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcBlanksAdd IA__FcBlanksAdd
extern __typeof (FcBlanksIsMember) IA__FcBlanksIsMember FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcBlanksIsMember IA__FcBlanksIsMember
extern __typeof (FcCacheCopySet) IA__FcCacheCopySet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCacheCopySet IA__FcCacheCopySet
extern __typeof (FcCacheNumSubdir) IA__FcCacheNumSubdir FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCacheNumSubdir IA__FcCacheNumSubdir
extern __typeof (FcCacheNumFont) IA__FcCacheNumFont FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCacheNumFont IA__FcCacheNumFont
extern __typeof (FcDirCacheUnlink) IA__FcDirCacheUnlink FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheUnlink IA__FcDirCacheUnlink
extern __typeof (FcDirCacheValid) IA__FcDirCacheValid FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheValid IA__FcDirCacheValid
extern __typeof (FcDirCacheClean) IA__FcDirCacheClean FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheClean IA__FcDirCacheClean
extern __typeof (FcCacheCreateTagFile) IA__FcCacheCreateTagFile FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCacheCreateTagFile IA__FcCacheCreateTagFile
extern __typeof (FcDirCacheCreateUUID) IA__FcDirCacheCreateUUID FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheCreateUUID IA__FcDirCacheCreateUUID
extern __typeof (FcDirCacheDeleteUUID) IA__FcDirCacheDeleteUUID FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheDeleteUUID IA__FcDirCacheDeleteUUID
extern __typeof (FcConfigHome) IA__FcConfigHome FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigHome IA__FcConfigHome
extern __typeof (FcConfigEnableHome) IA__FcConfigEnableHome FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigEnableHome IA__FcConfigEnableHome
extern __typeof (FcConfigGetFilename) IA__FcConfigGetFilename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetFilename IA__FcConfigGetFilename
extern __typeof (FcConfigFilename) IA__FcConfigFilename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigFilename IA__FcConfigFilename
extern __typeof (FcConfigCreate) IA__FcConfigCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigCreate IA__FcConfigCreate
extern __typeof (FcConfigReference) IA__FcConfigReference FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigReference IA__FcConfigReference
extern __typeof (FcConfigDestroy) IA__FcConfigDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigDestroy IA__FcConfigDestroy
extern __typeof (FcConfigSetCurrent) IA__FcConfigSetCurrent FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSetCurrent IA__FcConfigSetCurrent
extern __typeof (FcConfigGetCurrent) IA__FcConfigGetCurrent FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetCurrent IA__FcConfigGetCurrent
extern __typeof (FcConfigUptoDate) IA__FcConfigUptoDate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigUptoDate IA__FcConfigUptoDate
extern __typeof (FcConfigBuildFonts) IA__FcConfigBuildFonts FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigBuildFonts IA__FcConfigBuildFonts
extern __typeof (FcConfigGetFontDirs) IA__FcConfigGetFontDirs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetFontDirs IA__FcConfigGetFontDirs
extern __typeof (FcConfigGetConfigDirs) IA__FcConfigGetConfigDirs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetConfigDirs IA__FcConfigGetConfigDirs
extern __typeof (FcConfigGetConfigFiles) IA__FcConfigGetConfigFiles FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetConfigFiles IA__FcConfigGetConfigFiles
extern __typeof (FcConfigGetCache) IA__FcConfigGetCache FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetCache IA__FcConfigGetCache
extern __typeof (FcConfigGetBlanks) IA__FcConfigGetBlanks FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetBlanks IA__FcConfigGetBlanks
extern __typeof (FcConfigGetCacheDirs) IA__FcConfigGetCacheDirs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetCacheDirs IA__FcConfigGetCacheDirs
extern __typeof (FcConfigGetRescanInterval) IA__FcConfigGetRescanInterval FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetRescanInterval IA__FcConfigGetRescanInterval
extern __typeof (FcConfigSetRescanInterval) IA__FcConfigSetRescanInterval FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSetRescanInterval IA__FcConfigSetRescanInterval
extern __typeof (FcConfigGetFonts) IA__FcConfigGetFonts FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetFonts IA__FcConfigGetFonts
extern __typeof (FcConfigAppFontAddFile) IA__FcConfigAppFontAddFile FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigAppFontAddFile IA__FcConfigAppFontAddFile
extern __typeof (FcConfigAppFontAddDir) IA__FcConfigAppFontAddDir FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigAppFontAddDir IA__FcConfigAppFontAddDir
extern __typeof (FcConfigAppFontClear) IA__FcConfigAppFontClear FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigAppFontClear IA__FcConfigAppFontClear
extern __typeof (FcConfigSubstituteWithPat) IA__FcConfigSubstituteWithPat FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSubstituteWithPat IA__FcConfigSubstituteWithPat
extern __typeof (FcConfigSubstitute) IA__FcConfigSubstitute FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSubstitute IA__FcConfigSubstitute
extern __typeof (FcConfigGetSysRoot) IA__FcConfigGetSysRoot FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetSysRoot IA__FcConfigGetSysRoot
extern __typeof (FcConfigSetSysRoot) IA__FcConfigSetSysRoot FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSetSysRoot IA__FcConfigSetSysRoot
extern __typeof (FcConfigFileInfoIterInit) IA__FcConfigFileInfoIterInit FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigFileInfoIterInit IA__FcConfigFileInfoIterInit
extern __typeof (FcConfigFileInfoIterNext) IA__FcConfigFileInfoIterNext FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigFileInfoIterNext IA__FcConfigFileInfoIterNext
extern __typeof (FcConfigFileInfoIterGet) IA__FcConfigFileInfoIterGet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigFileInfoIterGet IA__FcConfigFileInfoIterGet
extern __typeof (FcCharSetCreate) IA__FcCharSetCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetCreate IA__FcCharSetCreate
extern __typeof (FcCharSetNew) IA__FcCharSetNew FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetNew IA__FcCharSetNew
extern __typeof (FcCharSetDestroy) IA__FcCharSetDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetDestroy IA__FcCharSetDestroy
extern __typeof (FcCharSetAddChar) IA__FcCharSetAddChar FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetAddChar IA__FcCharSetAddChar
extern __typeof (FcCharSetDelChar) IA__FcCharSetDelChar FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetDelChar IA__FcCharSetDelChar
extern __typeof (FcCharSetCopy) IA__FcCharSetCopy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetCopy IA__FcCharSetCopy
extern __typeof (FcCharSetEqual) IA__FcCharSetEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetEqual IA__FcCharSetEqual
extern __typeof (FcCharSetIntersect) IA__FcCharSetIntersect FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetIntersect IA__FcCharSetIntersect
extern __typeof (FcCharSetUnion) IA__FcCharSetUnion FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetUnion IA__FcCharSetUnion
extern __typeof (FcCharSetSubtract) IA__FcCharSetSubtract FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetSubtract IA__FcCharSetSubtract
extern __typeof (FcCharSetMerge) IA__FcCharSetMerge FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetMerge IA__FcCharSetMerge
extern __typeof (FcCharSetHasChar) IA__FcCharSetHasChar FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetHasChar IA__FcCharSetHasChar
extern __typeof (FcCharSetCount) IA__FcCharSetCount FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetCount IA__FcCharSetCount
extern __typeof (FcCharSetIntersectCount) IA__FcCharSetIntersectCount FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetIntersectCount IA__FcCharSetIntersectCount
extern __typeof (FcCharSetSubtractCount) IA__FcCharSetSubtractCount FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetSubtractCount IA__FcCharSetSubtractCount
extern __typeof (FcCharSetIsSubset) IA__FcCharSetIsSubset FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetIsSubset IA__FcCharSetIsSubset
extern __typeof (FcCharSetFirstPage) IA__FcCharSetFirstPage FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetFirstPage IA__FcCharSetFirstPage
extern __typeof (FcCharSetNextPage) IA__FcCharSetNextPage FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetNextPage IA__FcCharSetNextPage
extern __typeof (FcCharSetCoverage) IA__FcCharSetCoverage FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcCharSetCoverage IA__FcCharSetCoverage
extern __typeof (FcValuePrint) IA__FcValuePrint FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcValuePrint IA__FcValuePrint
extern __typeof (FcPatternPrint) IA__FcPatternPrint FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternPrint IA__FcPatternPrint
extern __typeof (FcFontSetPrint) IA__FcFontSetPrint FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetPrint IA__FcFontSetPrint
extern __typeof (FcGetDefaultLangs) IA__FcGetDefaultLangs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcGetDefaultLangs IA__FcGetDefaultLangs
extern __typeof (FcDefaultSubstitute) IA__FcDefaultSubstitute FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDefaultSubstitute IA__FcDefaultSubstitute
extern __typeof (FcFileIsDir) IA__FcFileIsDir FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFileIsDir IA__FcFileIsDir
extern __typeof (FcFileScan) IA__FcFileScan FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFileScan IA__FcFileScan
extern __typeof (FcDirScan) IA__FcDirScan FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirScan IA__FcDirScan
extern __typeof (FcDirSave) IA__FcDirSave FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirSave IA__FcDirSave
extern __typeof (FcDirCacheLoad) IA__FcDirCacheLoad FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheLoad IA__FcDirCacheLoad
extern __typeof (FcDirCacheRescan) IA__FcDirCacheRescan FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheRescan IA__FcDirCacheRescan
extern __typeof (FcDirCacheRead) IA__FcDirCacheRead FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheRead IA__FcDirCacheRead
extern __typeof (FcDirCacheLoadFile) IA__FcDirCacheLoadFile FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheLoadFile IA__FcDirCacheLoadFile
extern __typeof (FcDirCacheUnload) IA__FcDirCacheUnload FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcDirCacheUnload IA__FcDirCacheUnload
extern __typeof (FcFreeTypeQuery) IA__FcFreeTypeQuery FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeQuery IA__FcFreeTypeQuery
extern __typeof (FcFreeTypeQueryAll) IA__FcFreeTypeQueryAll FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeQueryAll IA__FcFreeTypeQueryAll
extern __typeof (FcFontSetCreate) IA__FcFontSetCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetCreate IA__FcFontSetCreate
extern __typeof (FcFontSetDestroy) IA__FcFontSetDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetDestroy IA__FcFontSetDestroy
extern __typeof (FcFontSetAdd) IA__FcFontSetAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetAdd IA__FcFontSetAdd
extern __typeof (FcInitLoadConfig) IA__FcInitLoadConfig FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcInitLoadConfig IA__FcInitLoadConfig
extern __typeof (FcInitLoadConfigAndFonts) IA__FcInitLoadConfigAndFonts FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcInitLoadConfigAndFonts IA__FcInitLoadConfigAndFonts
extern __typeof (FcInit) IA__FcInit FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcInit IA__FcInit
extern __typeof (FcFini) IA__FcFini FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFini IA__FcFini
extern __typeof (FcGetVersion) IA__FcGetVersion FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcGetVersion IA__FcGetVersion
extern __typeof (FcInitReinitialize) IA__FcInitReinitialize FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcInitReinitialize IA__FcInitReinitialize
extern __typeof (FcInitBringUptoDate) IA__FcInitBringUptoDate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcInitBringUptoDate IA__FcInitBringUptoDate
extern __typeof (FcGetLangs) IA__FcGetLangs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcGetLangs IA__FcGetLangs
extern __typeof (FcLangNormalize) IA__FcLangNormalize FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangNormalize IA__FcLangNormalize
extern __typeof (FcLangGetCharSet) IA__FcLangGetCharSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangGetCharSet IA__FcLangGetCharSet
extern __typeof (FcLangSetCreate) IA__FcLangSetCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetCreate IA__FcLangSetCreate
extern __typeof (FcLangSetDestroy) IA__FcLangSetDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetDestroy IA__FcLangSetDestroy
extern __typeof (FcLangSetCopy) IA__FcLangSetCopy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetCopy IA__FcLangSetCopy
extern __typeof (FcLangSetAdd) IA__FcLangSetAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetAdd IA__FcLangSetAdd
extern __typeof (FcLangSetDel) IA__FcLangSetDel FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetDel IA__FcLangSetDel
extern __typeof (FcLangSetHasLang) IA__FcLangSetHasLang FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetHasLang IA__FcLangSetHasLang
extern __typeof (FcLangSetCompare) IA__FcLangSetCompare FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetCompare IA__FcLangSetCompare
extern __typeof (FcLangSetContains) IA__FcLangSetContains FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetContains IA__FcLangSetContains
extern __typeof (FcLangSetEqual) IA__FcLangSetEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetEqual IA__FcLangSetEqual
extern __typeof (FcLangSetHash) IA__FcLangSetHash FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetHash IA__FcLangSetHash
extern __typeof (FcLangSetGetLangs) IA__FcLangSetGetLangs FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetGetLangs IA__FcLangSetGetLangs
extern __typeof (FcLangSetUnion) IA__FcLangSetUnion FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetUnion IA__FcLangSetUnion
extern __typeof (FcLangSetSubtract) IA__FcLangSetSubtract FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcLangSetSubtract IA__FcLangSetSubtract
extern __typeof (FcObjectSetCreate) IA__FcObjectSetCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcObjectSetCreate IA__FcObjectSetCreate
extern __typeof (FcObjectSetAdd) IA__FcObjectSetAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcObjectSetAdd IA__FcObjectSetAdd
extern __typeof (FcObjectSetDestroy) IA__FcObjectSetDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcObjectSetDestroy IA__FcObjectSetDestroy
extern __typeof (FcObjectSetVaBuild) IA__FcObjectSetVaBuild FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcObjectSetVaBuild IA__FcObjectSetVaBuild
extern __typeof (FcObjectSetBuild) IA__FcObjectSetBuild FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcObjectSetBuild IA__FcObjectSetBuild
extern __typeof (FcFontSetList) IA__FcFontSetList FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetList IA__FcFontSetList
extern __typeof (FcFontList) IA__FcFontList FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontList IA__FcFontList
extern __typeof (FcAtomicCreate) IA__FcAtomicCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicCreate IA__FcAtomicCreate
extern __typeof (FcAtomicLock) IA__FcAtomicLock FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicLock IA__FcAtomicLock
extern __typeof (FcAtomicNewFile) IA__FcAtomicNewFile FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicNewFile IA__FcAtomicNewFile
extern __typeof (FcAtomicOrigFile) IA__FcAtomicOrigFile FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicOrigFile IA__FcAtomicOrigFile
extern __typeof (FcAtomicReplaceOrig) IA__FcAtomicReplaceOrig FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicReplaceOrig IA__FcAtomicReplaceOrig
extern __typeof (FcAtomicDeleteNew) IA__FcAtomicDeleteNew FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicDeleteNew IA__FcAtomicDeleteNew
extern __typeof (FcAtomicUnlock) IA__FcAtomicUnlock FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicUnlock IA__FcAtomicUnlock
extern __typeof (FcAtomicDestroy) IA__FcAtomicDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcAtomicDestroy IA__FcAtomicDestroy
extern __typeof (FcFontSetMatch) IA__FcFontSetMatch FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetMatch IA__FcFontSetMatch
extern __typeof (FcFontMatch) IA__FcFontMatch FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontMatch IA__FcFontMatch
extern __typeof (FcFontRenderPrepare) IA__FcFontRenderPrepare FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontRenderPrepare IA__FcFontRenderPrepare
extern __typeof (FcFontSetSort) IA__FcFontSetSort FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetSort IA__FcFontSetSort
extern __typeof (FcFontSort) IA__FcFontSort FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSort IA__FcFontSort
extern __typeof (FcFontSetSortDestroy) IA__FcFontSetSortDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFontSetSortDestroy IA__FcFontSetSortDestroy
extern __typeof (FcMatrixCopy) IA__FcMatrixCopy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixCopy IA__FcMatrixCopy
extern __typeof (FcMatrixEqual) IA__FcMatrixEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixEqual IA__FcMatrixEqual
extern __typeof (FcMatrixMultiply) IA__FcMatrixMultiply FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixMultiply IA__FcMatrixMultiply
extern __typeof (FcMatrixRotate) IA__FcMatrixRotate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixRotate IA__FcMatrixRotate
extern __typeof (FcMatrixScale) IA__FcMatrixScale FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixScale IA__FcMatrixScale
extern __typeof (FcMatrixShear) IA__FcMatrixShear FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcMatrixShear IA__FcMatrixShear
extern __typeof (FcNameRegisterObjectTypes) IA__FcNameRegisterObjectTypes FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameRegisterObjectTypes IA__FcNameRegisterObjectTypes
extern __typeof (FcNameUnregisterObjectTypes) IA__FcNameUnregisterObjectTypes FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameUnregisterObjectTypes IA__FcNameUnregisterObjectTypes
extern __typeof (FcNameGetObjectType) IA__FcNameGetObjectType FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameGetObjectType IA__FcNameGetObjectType
extern __typeof (FcNameRegisterConstants) IA__FcNameRegisterConstants FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameRegisterConstants IA__FcNameRegisterConstants
extern __typeof (FcNameUnregisterConstants) IA__FcNameUnregisterConstants FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameUnregisterConstants IA__FcNameUnregisterConstants
extern __typeof (FcNameGetConstant) IA__FcNameGetConstant FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameGetConstant IA__FcNameGetConstant
extern __typeof (FcNameGetConstantFor) IA__FcNameGetConstantFor FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameGetConstantFor IA__FcNameGetConstantFor
extern __typeof (FcNameConstant) IA__FcNameConstant FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameConstant IA__FcNameConstant
extern __typeof (FcNameParse) IA__FcNameParse FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameParse IA__FcNameParse
extern __typeof (FcNameUnparse) IA__FcNameUnparse FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcNameUnparse IA__FcNameUnparse
extern __typeof (FcPatternCreate) IA__FcPatternCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternCreate IA__FcPatternCreate
extern __typeof (FcPatternDuplicate) IA__FcPatternDuplicate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternDuplicate IA__FcPatternDuplicate
extern __typeof (FcPatternReference) IA__FcPatternReference FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternReference IA__FcPatternReference
extern __typeof (FcPatternFilter) IA__FcPatternFilter FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternFilter IA__FcPatternFilter
extern __typeof (FcValueDestroy) IA__FcValueDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcValueDestroy IA__FcValueDestroy
extern __typeof (FcValueEqual) IA__FcValueEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcValueEqual IA__FcValueEqual
extern __typeof (FcValueSave) IA__FcValueSave FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcValueSave IA__FcValueSave
extern __typeof (FcPatternDestroy) IA__FcPatternDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternDestroy IA__FcPatternDestroy
extern __typeof (FcPatternObjectCount) IA__FcPatternObjectCount FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternObjectCount IA__FcPatternObjectCount
extern __typeof (FcPatternEqual) IA__FcPatternEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternEqual IA__FcPatternEqual
extern __typeof (FcPatternEqualSubset) IA__FcPatternEqualSubset FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternEqualSubset IA__FcPatternEqualSubset
extern __typeof (FcPatternHash) IA__FcPatternHash FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternHash IA__FcPatternHash
extern __typeof (FcPatternAdd) IA__FcPatternAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAdd IA__FcPatternAdd
extern __typeof (FcPatternAddWeak) IA__FcPatternAddWeak FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddWeak IA__FcPatternAddWeak
extern __typeof (FcPatternGet) IA__FcPatternGet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGet IA__FcPatternGet
extern __typeof (FcPatternGetWithBinding) IA__FcPatternGetWithBinding FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetWithBinding IA__FcPatternGetWithBinding
extern __typeof (FcPatternDel) IA__FcPatternDel FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternDel IA__FcPatternDel
extern __typeof (FcPatternRemove) IA__FcPatternRemove FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternRemove IA__FcPatternRemove
extern __typeof (FcPatternAddInteger) IA__FcPatternAddInteger FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddInteger IA__FcPatternAddInteger
extern __typeof (FcPatternAddDouble) IA__FcPatternAddDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddDouble IA__FcPatternAddDouble
extern __typeof (FcPatternAddString) IA__FcPatternAddString FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddString IA__FcPatternAddString
extern __typeof (FcPatternAddMatrix) IA__FcPatternAddMatrix FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddMatrix IA__FcPatternAddMatrix
extern __typeof (FcPatternAddCharSet) IA__FcPatternAddCharSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddCharSet IA__FcPatternAddCharSet
extern __typeof (FcPatternAddBool) IA__FcPatternAddBool FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddBool IA__FcPatternAddBool
extern __typeof (FcPatternAddLangSet) IA__FcPatternAddLangSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddLangSet IA__FcPatternAddLangSet
extern __typeof (FcPatternAddRange) IA__FcPatternAddRange FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddRange IA__FcPatternAddRange
extern __typeof (FcPatternGetInteger) IA__FcPatternGetInteger FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetInteger IA__FcPatternGetInteger
extern __typeof (FcPatternGetDouble) IA__FcPatternGetDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetDouble IA__FcPatternGetDouble
extern __typeof (FcPatternGetString) IA__FcPatternGetString FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetString IA__FcPatternGetString
extern __typeof (FcPatternGetMatrix) IA__FcPatternGetMatrix FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetMatrix IA__FcPatternGetMatrix
extern __typeof (FcPatternGetCharSet) IA__FcPatternGetCharSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetCharSet IA__FcPatternGetCharSet
extern __typeof (FcPatternGetBool) IA__FcPatternGetBool FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetBool IA__FcPatternGetBool
extern __typeof (FcPatternGetLangSet) IA__FcPatternGetLangSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetLangSet IA__FcPatternGetLangSet
extern __typeof (FcPatternGetRange) IA__FcPatternGetRange FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetRange IA__FcPatternGetRange
extern __typeof (FcPatternVaBuild) IA__FcPatternVaBuild FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternVaBuild IA__FcPatternVaBuild
extern __typeof (FcPatternBuild) IA__FcPatternBuild FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternBuild IA__FcPatternBuild
extern __typeof (FcPatternFormat) IA__FcPatternFormat FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternFormat IA__FcPatternFormat
extern __typeof (FcRangeCreateDouble) IA__FcRangeCreateDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcRangeCreateDouble IA__FcRangeCreateDouble
extern __typeof (FcRangeCreateInteger) IA__FcRangeCreateInteger FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcRangeCreateInteger IA__FcRangeCreateInteger
extern __typeof (FcRangeDestroy) IA__FcRangeDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcRangeDestroy IA__FcRangeDestroy
extern __typeof (FcRangeCopy) IA__FcRangeCopy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcRangeCopy IA__FcRangeCopy
extern __typeof (FcRangeGetDouble) IA__FcRangeGetDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcRangeGetDouble IA__FcRangeGetDouble
extern __typeof (FcPatternIterStart) IA__FcPatternIterStart FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterStart IA__FcPatternIterStart
extern __typeof (FcPatternIterNext) IA__FcPatternIterNext FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterNext IA__FcPatternIterNext
extern __typeof (FcPatternIterEqual) IA__FcPatternIterEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterEqual IA__FcPatternIterEqual
extern __typeof (FcPatternFindIter) IA__FcPatternFindIter FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternFindIter IA__FcPatternFindIter
extern __typeof (FcPatternIterIsValid) IA__FcPatternIterIsValid FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterIsValid IA__FcPatternIterIsValid
extern __typeof (FcPatternIterGetObject) IA__FcPatternIterGetObject FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterGetObject IA__FcPatternIterGetObject
extern __typeof (FcPatternIterValueCount) IA__FcPatternIterValueCount FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterValueCount IA__FcPatternIterValueCount
extern __typeof (FcPatternIterGetValue) IA__FcPatternIterGetValue FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternIterGetValue IA__FcPatternIterGetValue
extern __typeof (FcWeightFromOpenType) IA__FcWeightFromOpenType FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcWeightFromOpenType IA__FcWeightFromOpenType
extern __typeof (FcWeightFromOpenTypeDouble) IA__FcWeightFromOpenTypeDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcWeightFromOpenTypeDouble IA__FcWeightFromOpenTypeDouble
extern __typeof (FcWeightToOpenType) IA__FcWeightToOpenType FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcWeightToOpenType IA__FcWeightToOpenType
extern __typeof (FcWeightToOpenTypeDouble) IA__FcWeightToOpenTypeDouble FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcWeightToOpenTypeDouble IA__FcWeightToOpenTypeDouble
extern __typeof (FcStrCopy) IA__FcStrCopy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrCopy IA__FcStrCopy
extern __typeof (FcStrCopyFilename) IA__FcStrCopyFilename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrCopyFilename IA__FcStrCopyFilename
extern __typeof (FcStrPlus) IA__FcStrPlus FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrPlus IA__FcStrPlus
extern __typeof (FcStrFree) IA__FcStrFree FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrFree IA__FcStrFree
extern __typeof (FcStrDowncase) IA__FcStrDowncase FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrDowncase IA__FcStrDowncase
extern __typeof (FcStrCmpIgnoreCase) IA__FcStrCmpIgnoreCase FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrCmpIgnoreCase IA__FcStrCmpIgnoreCase
extern __typeof (FcStrCmp) IA__FcStrCmp FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrCmp IA__FcStrCmp
extern __typeof (FcStrStrIgnoreCase) IA__FcStrStrIgnoreCase FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrStrIgnoreCase IA__FcStrStrIgnoreCase
extern __typeof (FcStrStr) IA__FcStrStr FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrStr IA__FcStrStr
extern __typeof (FcUtf8ToUcs4) IA__FcUtf8ToUcs4 FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcUtf8ToUcs4 IA__FcUtf8ToUcs4
extern __typeof (FcUtf8Len) IA__FcUtf8Len FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcUtf8Len IA__FcUtf8Len
extern __typeof (FcUcs4ToUtf8) IA__FcUcs4ToUtf8 FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcUcs4ToUtf8 IA__FcUcs4ToUtf8
extern __typeof (FcUtf16ToUcs4) IA__FcUtf16ToUcs4 FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcUtf16ToUcs4 IA__FcUtf16ToUcs4
extern __typeof (FcUtf16Len) IA__FcUtf16Len FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcUtf16Len IA__FcUtf16Len
extern __typeof (FcStrBuildFilename) IA__FcStrBuildFilename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrBuildFilename IA__FcStrBuildFilename
extern __typeof (FcStrDirname) IA__FcStrDirname FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrDirname IA__FcStrDirname
extern __typeof (FcStrBasename) IA__FcStrBasename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrBasename IA__FcStrBasename
extern __typeof (FcStrSetCreate) IA__FcStrSetCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetCreate IA__FcStrSetCreate
extern __typeof (FcStrSetMember) IA__FcStrSetMember FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetMember IA__FcStrSetMember
extern __typeof (FcStrSetEqual) IA__FcStrSetEqual FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetEqual IA__FcStrSetEqual
extern __typeof (FcStrSetAdd) IA__FcStrSetAdd FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetAdd IA__FcStrSetAdd
extern __typeof (FcStrSetAddFilename) IA__FcStrSetAddFilename FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetAddFilename IA__FcStrSetAddFilename
extern __typeof (FcStrSetDel) IA__FcStrSetDel FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetDel IA__FcStrSetDel
extern __typeof (FcStrSetDestroy) IA__FcStrSetDestroy FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrSetDestroy IA__FcStrSetDestroy
extern __typeof (FcStrListCreate) IA__FcStrListCreate FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrListCreate IA__FcStrListCreate
extern __typeof (FcStrListFirst) IA__FcStrListFirst FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrListFirst IA__FcStrListFirst
extern __typeof (FcStrListNext) IA__FcStrListNext FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrListNext IA__FcStrListNext
extern __typeof (FcStrListDone) IA__FcStrListDone FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcStrListDone IA__FcStrListDone
extern __typeof (FcConfigParseAndLoad) IA__FcConfigParseAndLoad FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigParseAndLoad IA__FcConfigParseAndLoad
extern __typeof (FcConfigParseAndLoadFromMemory) IA__FcConfigParseAndLoadFromMemory FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigParseAndLoadFromMemory IA__FcConfigParseAndLoadFromMemory
extern __typeof (FcConfigGetRescanInverval) IA__FcConfigGetRescanInverval FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigGetRescanInverval IA__FcConfigGetRescanInverval
extern __typeof (FcConfigSetRescanInverval) IA__FcConfigSetRescanInverval FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcConfigSetRescanInverval IA__FcConfigSetRescanInverval
@@ -0,0 +1 @@
/* Empty file */
+12
View File
@@ -0,0 +1,12 @@
extern __typeof (FcFreeTypeCharIndex) IA__FcFreeTypeCharIndex FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharIndex IA__FcFreeTypeCharIndex
extern __typeof (FcFreeTypeCharSetAndSpacing) IA__FcFreeTypeCharSetAndSpacing FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharSetAndSpacing IA__FcFreeTypeCharSetAndSpacing
extern __typeof (FcFreeTypeCharSet) IA__FcFreeTypeCharSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharSet IA__FcFreeTypeCharSet
extern __typeof (FcPatternGetFTFace) IA__FcPatternGetFTFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetFTFace IA__FcPatternGetFTFace
extern __typeof (FcPatternAddFTFace) IA__FcPatternAddFTFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddFTFace IA__FcPatternAddFTFace
extern __typeof (FcFreeTypeQueryFace) IA__FcFreeTypeQueryFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeQueryFace IA__FcFreeTypeQueryFace
@@ -0,0 +1 @@
/* Empty file */
+350
View File
@@ -0,0 +1,350 @@
/* ANSI-C code produced by gperf version 3.1 */
/* Command-line: /usr/bin/gperf --pic -m 100 fcobjshash.gperf */
/* Computed positions: -k'3,5' */
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
&& (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
&& ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
&& ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
&& ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
&& ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
&& ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
&& ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
&& ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
&& ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
&& ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
&& ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
&& ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
&& ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
&& ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
&& ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
&& ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
&& ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
&& ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
&& ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
&& ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
&& ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
/* The character set is not based on ISO-646. */
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
#endif
#line 1 "fcobjshash.gperf"
#line 13 "fcobjshash.gperf"
struct FcObjectTypeInfo {
int name;
int id;
};
#include <string.h>
/* maximum key range = 55, duplicates = 0 */
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static unsigned int
FcObjectTypeHash (register const char *str, register size_t len)
{
static const unsigned char asso_values[] =
{
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 2, 19, 30,
14, 31, 34, 51, 13, 7, 61, 61, 18, 5,
10, 40, 17, 61, 18, 2, 6, 38, 28, 46,
23, 8, 3, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61
};
register unsigned int hval = len;
switch (hval)
{
default:
hval += asso_values[(unsigned char)str[4]];
/*FALLTHROUGH*/
case 4:
case 3:
hval += asso_values[(unsigned char)str[2]];
break;
}
return hval;
}
struct FcObjectTypeNamePool_t
{
char FcObjectTypeNamePool_str6[sizeof("hash")];
char FcObjectTypeNamePool_str7[sizeof("size")];
char FcObjectTypeNamePool_str10[sizeof("dpi")];
char FcObjectTypeNamePool_str11[sizeof("charset")];
char FcObjectTypeNamePool_str12[sizeof("scalable")];
char FcObjectTypeNamePool_str13[sizeof("slant")];
char FcObjectTypeNamePool_str14[sizeof("lang")];
char FcObjectTypeNamePool_str15[sizeof("desktop")];
char FcObjectTypeNamePool_str16[sizeof("spacing")];
char FcObjectTypeNamePool_str17[sizeof("antialias")];
char FcObjectTypeNamePool_str18[sizeof("postscriptname")];
char FcObjectTypeNamePool_str19[sizeof("matrix")];
char FcObjectTypeNamePool_str20[sizeof("outline")];
char FcObjectTypeNamePool_str21[sizeof("hintstyle")];
char FcObjectTypeNamePool_str22[sizeof("file")];
char FcObjectTypeNamePool_str23[sizeof("rgba")];
char FcObjectTypeNamePool_str24[sizeof("hinting")];
char FcObjectTypeNamePool_str25[sizeof("charheight")];
char FcObjectTypeNamePool_str26[sizeof("weight")];
char FcObjectTypeNamePool_str27[sizeof("autohint")];
char FcObjectTypeNamePool_str28[sizeof("variable")];
char FcObjectTypeNamePool_str29[sizeof("family")];
char FcObjectTypeNamePool_str30[sizeof("lcdfilter")];
char FcObjectTypeNamePool_str31[sizeof("namelang")];
char FcObjectTypeNamePool_str32[sizeof("width")];
char FcObjectTypeNamePool_str33[sizeof("familylang")];
char FcObjectTypeNamePool_str34[sizeof("fonthashint")];
char FcObjectTypeNamePool_str35[sizeof("minspace")];
char FcObjectTypeNamePool_str36[sizeof("fullname")];
char FcObjectTypeNamePool_str37[sizeof("order")];
char FcObjectTypeNamePool_str38[sizeof("scale")];
char FcObjectTypeNamePool_str39[sizeof("verticallayout")];
char FcObjectTypeNamePool_str40[sizeof("fullnamelang")];
char FcObjectTypeNamePool_str41[sizeof("color")];
char FcObjectTypeNamePool_str42[sizeof("index")];
char FcObjectTypeNamePool_str43[sizeof("rasterizer")];
char FcObjectTypeNamePool_str44[sizeof("style")];
char FcObjectTypeNamePool_str45[sizeof("embolden")];
char FcObjectTypeNamePool_str46[sizeof("capability")];
char FcObjectTypeNamePool_str47[sizeof("embeddedbitmap")];
char FcObjectTypeNamePool_str48[sizeof("stylelang")];
char FcObjectTypeNamePool_str49[sizeof("fontversion")];
char FcObjectTypeNamePool_str50[sizeof("pixelsize")];
char FcObjectTypeNamePool_str51[sizeof("symbol")];
char FcObjectTypeNamePool_str52[sizeof("fontvariations")];
char FcObjectTypeNamePool_str53[sizeof("aspect")];
char FcObjectTypeNamePool_str54[sizeof("fontformat")];
char FcObjectTypeNamePool_str55[sizeof("globaladvance")];
char FcObjectTypeNamePool_str56[sizeof("fontfeatures")];
char FcObjectTypeNamePool_str57[sizeof("charwidth")];
char FcObjectTypeNamePool_str58[sizeof("decorative")];
char FcObjectTypeNamePool_str59[sizeof("foundry")];
char FcObjectTypeNamePool_str60[sizeof("prgname")];
};
static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents =
{
"hash",
"size",
"dpi",
"charset",
"scalable",
"slant",
"lang",
"desktop",
"spacing",
"antialias",
"postscriptname",
"matrix",
"outline",
"hintstyle",
"file",
"rgba",
"hinting",
"charheight",
"weight",
"autohint",
"variable",
"family",
"lcdfilter",
"namelang",
"width",
"familylang",
"fonthashint",
"minspace",
"fullname",
"order",
"scale",
"verticallayout",
"fullnamelang",
"color",
"index",
"rasterizer",
"style",
"embolden",
"capability",
"embeddedbitmap",
"stylelang",
"fontversion",
"pixelsize",
"symbol",
"fontvariations",
"aspect",
"fontformat",
"globaladvance",
"fontfeatures",
"charwidth",
"decorative",
"foundry",
"prgname"
};
#define FcObjectTypeNamePool ((const char *) &FcObjectTypeNamePool_contents)
const struct FcObjectTypeInfo *
FcObjectTypeLookup (register const char *str, register size_t len)
{
enum
{
TOTAL_KEYWORDS = 53,
MIN_WORD_LENGTH = 3,
MAX_WORD_LENGTH = 14,
MIN_HASH_VALUE = 6,
MAX_HASH_VALUE = 60
};
static const struct FcObjectTypeInfo wordlist[] =
{
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 62 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str6,FC_HASH_OBJECT},
#line 27 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str7,FC_SIZE_OBJECT},
{-1}, {-1},
#line 43 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_DPI_OBJECT},
#line 50 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str11,FC_CHARSET_OBJECT},
#line 42 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str12,FC_SCALABLE_OBJECT},
#line 24 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str13,FC_SLANT_OBJECT},
#line 51 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str14,FC_LANG_OBJECT},
#line 70 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str15,FC_DESKTOP_NAME_OBJECT},
#line 30 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str16,FC_SPACING_OBJECT},
#line 32 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str17,FC_ANTIALIAS_OBJECT},
#line 63 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str18,FC_POSTSCRIPT_NAME_OBJECT},
#line 49 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_MATRIX_OBJECT},
#line 41 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_OUTLINE_OBJECT},
#line 33 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_HINT_STYLE_OBJECT},
#line 38 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_FILE_OBJECT},
#line 44 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_RGBA_OBJECT},
#line 34 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_HINTING_OBJECT},
#line 48 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_CHAR_HEIGHT_OBJECT},
#line 25 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_WEIGHT_OBJECT},
#line 36 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_AUTOHINT_OBJECT},
#line 67 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_VARIABLE_OBJECT},
#line 18 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_FAMILY_OBJECT},
#line 58 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_LCD_FILTER_OBJECT},
#line 59 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_NAMELANG_OBJECT},
#line 26 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_WIDTH_OBJECT},
#line 19 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_FAMILYLANG_OBJECT},
#line 68 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_FONT_HAS_HINT_OBJECT},
#line 46 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_MINSPACE_OBJECT},
#line 22 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_FULLNAME_OBJECT},
#line 69 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_ORDER_OBJECT},
#line 45 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_SCALE_OBJECT},
#line 35 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_VERTICAL_LAYOUT_OBJECT},
#line 23 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_FULLNAMELANG_OBJECT},
#line 64 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_COLOR_OBJECT},
#line 39 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_INDEX_OBJECT},
#line 40 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_RASTERIZER_OBJECT},
#line 20 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_STYLE_OBJECT},
#line 55 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_EMBOLDEN_OBJECT},
#line 53 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CAPABILITY_OBJECT},
#line 56 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str47,FC_EMBEDDED_BITMAP_OBJECT},
#line 21 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str48,FC_STYLELANG_OBJECT},
#line 52 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str49,FC_FONTVERSION_OBJECT},
#line 29 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str50,FC_PIXEL_SIZE_OBJECT},
#line 65 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str51,FC_SYMBOL_OBJECT},
#line 66 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str52,FC_FONT_VARIATIONS_OBJECT},
#line 28 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str53,FC_ASPECT_OBJECT},
#line 54 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str54,FC_FONTFORMAT_OBJECT},
#line 37 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str55,FC_GLOBAL_ADVANCE_OBJECT},
#line 60 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str56,FC_FONT_FEATURES_OBJECT},
#line 47 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str57,FC_CHARWIDTH_OBJECT},
#line 57 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str58,FC_DECORATIVE_OBJECT},
#line 31 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str59,FC_FOUNDRY_OBJECT},
#line 61 "fcobjshash.gperf"
{(int)(size_t)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str60,FC_PRGNAME_OBJECT}
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
{
register unsigned int key = FcObjectTypeHash (str, len);
if (key <= MAX_HASH_VALUE)
{
register int o = wordlist[key].name;
if (o >= 0)
{
register const char *s = o + FcObjectTypeNamePool;
if (*str == *s && !strcmp (str + 1, s + 1))
return &wordlist[key];
}
}
}
return 0;
}
+55
View File
@@ -0,0 +1,55 @@
Use newer API to get the Windows fonts directory, and convert from
UTF-16 to UTF-8, assuming that the returned pathname will be treated
as UTF-8 anyway, and converted to UTF-16 before opening fonts in it
etc.
But probaly fontconfig asumes system codepage for pathnames it uses on
Windows all over the place anyway, so things are really messed up. Oh
well.
--- src/fcxml.c
+++ src/fcxml.c
@@ -58,6 +58,8 @@
#ifdef _WIN32
#include <mbstring.h>
+#include <wchar.h>
+#include <Shlobj.h>
extern FcChar8 fontconfig_instprefix[];
pfnGetSystemWindowsDirectory pGetSystemWindowsDirectory = NULL;
pfnSHGetFolderPathA pSHGetFolderPathA = NULL;
@@ -1386,18 +1387,25 @@
}
else if (strcmp ((const char *) path, "WINDOWSFONTDIR") == 0)
{
- int rc;
- path = buffer;
- _ensureWin32GettersReady();
- rc = pGetSystemWindowsDirectory ((LPSTR) buffer, sizeof (buffer) - 20);
- if (rc == 0 || rc > sizeof (buffer) - 20)
+ wchar_t *wpath;
+ int size_needed;
+
+ if (!SUCCEEDED(SHGetKnownFolderPath(&FOLDERID_Fonts, 0, NULL, &wpath)))
{
- FcConfigMessage (parse, FcSevereError, "GetSystemWindowsDirectory failed");
+ FcConfigMessage (parse, FcSevereError, "SHGetKnownFolderPath for FOLDERID_Fonts failed");
return NULL;
}
- if (path [strlen ((const char *) path) - 1] != '\\')
- strcat ((char *) path, "\\");
- strcat ((char *) path, "fonts");
+ /* We assume that the code using fontconfig handles UTF-8 strings and not system codepage */
+ size_needed = WideCharToMultiByte (CP_UTF8, 0, wpath, wcslen(wpath), NULL, 0, NULL, NULL);
+ if (size_needed <= 0 || size_needed > sizeof(buffer))
+ {
+ FcConfigMessage (parse, FcSevereError, "WideCharToMultiByte failed");
+ CoTaskMemFree (wpath);
+ return NULL;
+ }
+ path = buffer;
+ WideCharToMultiByte(CP_UTF8, 0, wpath, wcslen(wpath), path, size_needed, NULL, NULL);
+ CoTaskMemFree (wpath);
}
else
{
+6
View File
@@ -3656,6 +3656,12 @@ external/clucene/configs/_clucene-config-generic.h
external/clucene/configs/clucene-config-GCC-atomic.h
external/clucene/configs/clucene-config-MSVC.h
external/clucene/configs/clucene-config-generic.h
external/fontconfig/configs/wnt_fontconfig_config.h
external/fontconfig/configs/wnt_fontconfig_fcalias.h
external/fontconfig/configs/wnt_fontconfig_fcaliastail.h
external/fontconfig/configs/wnt_fontconfig_fcftalias.h
external/fontconfig/configs/wnt_fontconfig_fcftaliastail.h
external/fontconfig/configs/wnt_fontconfig_fcobjshash.h
external/libjpeg-turbo/jconfig.h
external/libjpeg-turbo/jconfigint.h
external/libjpeg-turbo/jversion.h