Commit 0c91664f authored by Tom Anderson's avatar Tom Anderson Committed by Thomas Anderson

Reland "Update fontconfig to 6cc99d6a"

This is a reland of e6db40d9

Reason for reland: All bots should now have libuuid1 installed (bug 853048).

Original change's description:
> Update fontconfig to 6cc99d6a
>
> Changelog [1].  This is necessary to pick up [2] for fixing undefined-shift
> UBSAN errors detected by clusterfuzz, [3] to allow removing a build workaround,
> [4] to fix a bug and clean up some log spam, [5] to fix CFI builds, and [6] to
> fix a use-after-free.
>
> Fontconfig also now requires libuuid as a dependency, so whitelist it as a
> dependency since we statically link fontconfig.
>
> [1] https://chromium.googlesource.com/external/fontconfig/+log/b546940435ebfb0df575bc7a2350d1e913919c34..6cc99d6a82ad67d2f5eac887b28bca13c0dfddde
> [2] https://chromium.googlesource.com/external/fontconfig/+/c60ed9ef66e59584f8b54323018e9e6c69925c7e
> [3] https://chromium.googlesource.com/external/fontconfig/+/b8a225b3c3495942480377b7b3404710c70be914
> [4] https://chromium.googlesource.com/external/fontconfig/+/7ad010e80bdf8e41303e322882ece908f5e04c74
> [5] https://chromium.googlesource.com/external/fontconfig/+/096e8019be595c2224aaabf98da630ee917ee51c
> [6] https://chromium.googlesource.com/external/fontconfig/+/6cc99d6a82ad67d2f5eac887b28bca13c0dfddde
>
> BUG=831146,822737,787020,829890,847323
> TBR=thestig,dnicoara
>
> Change-Id: Ic2d1bd19af8ca131c960a30d09246827c115ccec
> Reviewed-on: https://chromium-review.googlesource.com/1095538
> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Reviewed-by: Daniel Nicoara <dnicoara@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#567445}

TBR=thestig,dnicoara

Bug: 831146, 822737, 787020, 829890, 847323, 853048
Change-Id: Id42738aaf5841bd219dc0e9209680c87e88f4869
Reviewed-on: https://chromium-review.googlesource.com/1104759Reviewed-by: default avatarThomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568221}
parent bc0aae7d
......@@ -588,7 +588,7 @@ deps = {
# Used for embedded builds. CrOS & Linux use the system version.
'src/third_party/fontconfig/src': {
'url': Var('chromium_git') + '/external/fontconfig.git' + '@' + 'b546940435ebfb0df575bc7a2350d1e913919c34',
'url': Var('chromium_git') + '/external/fontconfig.git' + '@' + '6cc99d6a82ad67d2f5eac887b28bca13c0dfddde',
'condition': 'checkout_linux',
},
......
......@@ -7,6 +7,7 @@
#include <fontconfig/fontconfig.h>
#include "base/base_paths.h"
#include "base/environment.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/logging.h"
......@@ -381,31 +382,35 @@ const char kFontsConfTemplate[] = R"(<?xml version="1.0"?>
} // namespace
void SetUpFontconfig() {
FilePath dir_module;
PathService::Get(DIR_MODULE, &dir_module);
FilePath font_cache = dir_module.Append("fontconfig_caches");
FilePath test_fonts = dir_module.Append("test_fonts");
std::string fonts_conf = ReplaceStringPlaceholders(
kFontsConfTemplate, {font_cache.value(), test_fonts.value()}, nullptr);
FcConfig* config = FcConfigCreate();
CHECK(config);
#if FC_VERSION >= 21205
CHECK(FcConfigParseAndLoadFromMemory(
config, reinterpret_cast<const FcChar8*>(fonts_conf.c_str()), FcTrue));
#else
FilePath temp;
CHECK(CreateTemporaryFile(&temp));
CHECK(WriteFile(temp, fonts_conf.c_str(), fonts_conf.size()));
CHECK(FcConfigParseAndLoad(
config, reinterpret_cast<const FcChar8*>(temp.value().c_str()), FcTrue));
CHECK(DeleteFile(temp, false));
#endif
CHECK(FcConfigBuildFonts(config));
CHECK(FcConfigSetCurrent(config));
// Decrement the reference count for |config|. It's now owned by fontconfig.
FcConfigDestroy(config);
// TODO(thomasanderson): Use FONTCONFIG_SYSROOT to avoid having to write
// a new fonts.conf with updated paths.
std::unique_ptr<Environment> env = Environment::Create();
if (!env->HasVar("FONTCONFIG_FILE")) {
// fonts.conf must be generated on-the-fly since it contains absolute paths
// which may be different if
// 1. The user moves/renames their build directory (or any parent dirs).
// 2. The build directory is mapped on a swarming bot at a location
// different from the one the buildbot used.
FilePath dir_module;
PathService::Get(DIR_MODULE, &dir_module);
FilePath font_cache = dir_module.Append("fontconfig_caches");
FilePath test_fonts = dir_module.Append("test_fonts");
std::string fonts_conf = ReplaceStringPlaceholders(
kFontsConfTemplate, {font_cache.value(), test_fonts.value()}, nullptr);
// Write the data to a different file and then atomically rename it to
// fonts.conf. This avoids the file being in a bad state when different
// parallel tests call this function at the same time.
FilePath fonts_conf_file_temp;
CHECK(CreateTemporaryFileInDir(dir_module, &fonts_conf_file_temp));
CHECK(
WriteFile(fonts_conf_file_temp, fonts_conf.c_str(), fonts_conf.size()));
FilePath fonts_conf_file = dir_module.Append("fonts.conf");
CHECK(ReplaceFile(fonts_conf_file_temp, fonts_conf_file, nullptr));
env->SetVar("FONTCONFIG_FILE", fonts_conf_file.value());
}
CHECK(FcInit());
}
void TearDownFontconfig() {
......
......@@ -2,25 +2,26 @@
"Debian 10 (Buster)": {
"libappindicator3-1": "0.4.92-5",
"libasound2": "1.1.3-5",
"libatk-bridge2.0-0": "2.26.1-1",
"libatk1.0-0": "2.26.1-3",
"libc6": "2.26-4",
"libcairo2": "1.15.8-3",
"libcups2": "2.2.6-4",
"libdbus-1-3": "1.12.2-1",
"libatk-bridge2.0-0": "2.26.2-1",
"libatk1.0-0": "2.28.1-1",
"libc6": "2.27-3",
"libcairo2": "1.15.10-1",
"libcups2": "2.2.7-2",
"libdbus-1-3": "1.12.6-2",
"libexpat1": "2.2.5-3",
"libgcc1": "1:7.2.0-19",
"libgdk-pixbuf2.0-0": "2.36.11-1",
"libglib2.0-0": "2.54.3-2",
"libgtk-3-0": "3.22.26-2",
"libnspr4": "2:4.16-1+b1",
"libnss3": "2:3.34.1-1",
"libpango-1.0-0": "1.40.14-1",
"libpangocairo-1.0-0": "1.40.14-1",
"libstdc++6": "7.2.0-19",
"libx11-6": "2:1.6.4-3",
"libx11-xcb1": "2:1.6.4-3",
"libxcb1": "1.12-1",
"libgcc1": "1:8-20180402-1",
"libgdk-pixbuf2.0-0": "2.36.11-2",
"libglib2.0-0": "2.56.0-4",
"libgtk-3-0": "3.22.29-3",
"libnspr4": "2:4.18-1",
"libnss3": "2:3.35-2",
"libpango-1.0-0": "1.42.0-1",
"libpangocairo-1.0-0": "1.42.0-1",
"libstdc++6": "8-20180402-1",
"libuuid1": "2.31.1-0.5",
"libx11-6": "2:1.6.5-1",
"libx11-xcb1": "2:1.6.5-1",
"libxcb1": "1.13-1",
"libxcomposite1": "1:0.4.4-2",
"libxcursor1": "1:1.1.15-1",
"libxdamage1": "1:1.1.4-3",
......@@ -42,7 +43,7 @@
"libcups2": "1.7.5-11+deb8u1",
"libdbus-1-3": "1.8.22-0+deb8u1",
"libexpat1": "2.1.0-6+deb8u4",
"libgcc1": "1:4.9.2-10",
"libgcc1": "1:4.9.2-10+deb8u1",
"libgdk-pixbuf2.0-0": "2.31.1-2+deb8u7",
"libglib2.0-0": "2.42.1-1+b1",
"libgtk-3-0": "3.14.5-1+deb8u1",
......@@ -50,7 +51,8 @@
"libnss3": "2:3.26-1+debu8u3",
"libpango-1.0-0": "1.36.8-3",
"libpangocairo-1.0-0": "1.36.8-3",
"libstdc++6": "4.9.2-10",
"libstdc++6": "4.9.2-10+deb8u1",
"libuuid1": "2.25.2-6",
"libx11-6": "2:1.6.2-3+deb8u1",
"libx11-xcb1": "2:1.6.2-3+deb8u1",
"libxcb1": "1.10-3+b1",
......@@ -72,10 +74,10 @@
"libatk1.0-0": "2.22.0-1",
"libc6": "2.24-11+deb9u1",
"libcairo2": "1.14.8-1",
"libcups2": "2.2.1-8",
"libdbus-1-3": "1.10.24-0+deb9u1",
"libcups2": "2.2.1-8+deb9u1",
"libdbus-1-3": "1.10.26-0+deb9u1",
"libexpat1": "2.2.0-2+deb9u1",
"libgcc1": "1:6.3.0-18",
"libgcc1": "1:6.3.0-18+deb9u1",
"libgdk-pixbuf2.0-0": "2.36.5-2+deb9u2",
"libglib2.0-0": "2.50.3-2",
"libgtk-3-0": "3.22.11-1",
......@@ -83,7 +85,8 @@
"libnss3": "2:3.26.2-1.1+deb9u1",
"libpango-1.0-0": "1.40.5-1",
"libpangocairo-1.0-0": "1.40.5-1",
"libstdc++6": "6.3.0-18",
"libstdc++6": "6.3.0-18+deb9u1",
"libuuid1": "2.29.2-1+deb9u1",
"libx11-6": "2:1.6.4-3",
"libx11-xcb1": "2:1.6.4-3",
"libxcb1": "1.12-1",
......@@ -105,7 +108,7 @@
"libatk1.0-0": "2.10.0-2ubuntu2",
"libc6": "2.19-0ubuntu6.14",
"libcairo2": "1.13.0~20140204-0ubuntu1.1",
"libcups2": "1.7.2-0ubuntu1.7",
"libcups2": "1.7.2-0ubuntu1.9",
"libdbus-1-3": "1.6.18-0ubuntu4.4",
"libexpat1": "2.1.0-4ubuntu1.4",
"libgcc1": "1:4.9.3-0ubuntu4",
......@@ -116,7 +119,8 @@
"libnss3": "2:3.28.4-0ubuntu0.14.04.3",
"libpango-1.0-0": "1.36.3-1ubuntu1.1",
"libpangocairo-1.0-0": "1.36.3-1ubuntu1.1",
"libstdc++6": "4.8.4-2ubuntu1~14.04.3",
"libstdc++6": "4.8.4-2ubuntu1~14.04.4",
"libuuid1": "2.20.1-5.1ubuntu20.9",
"libx11-6": "2:1.6.2-1ubuntu2",
"libx11-xcb1": "2:1.6.2-1ubuntu2",
"libxcb1": "1.10-2ubuntu1",
......@@ -138,7 +142,7 @@
"libatk1.0-0": "2.18.0-1",
"libc6": "2.23-0ubuntu10",
"libcairo2": "1.14.6-1",
"libcups2": "2.1.3-4ubuntu0.3",
"libcups2": "2.1.3-4ubuntu0.4",
"libdbus-1-3": "1.10.6-1ubuntu3.1",
"libexpat1": "2.1.0-7ubuntu0.16.04.3",
"libgcc1": "1:6.0.1-0ubuntu1",
......@@ -149,7 +153,8 @@
"libnss3": "2:3.28.4-0ubuntu0.16.04.3",
"libpango-1.0-0": "1.38.1-1",
"libpangocairo-1.0-0": "1.38.1-1",
"libstdc++6": "5.4.0-6ubuntu1~16.04.4",
"libstdc++6": "5.4.0-6ubuntu1~16.04.9",
"libuuid1": "2.27.1-6ubuntu3.4",
"libx11-6": "2:1.6.3-1ubuntu2",
"libx11-xcb1": "2:1.6.3-1ubuntu2",
"libxcb1": "1.11.1-1ubuntu1",
......@@ -174,7 +179,7 @@
"libcups2": "2.2.4-7ubuntu3",
"libdbus-1-3": "1.10.22-1ubuntu1",
"libexpat1": "2.2.3-1",
"libgcc1": "1:7.2.0-8ubuntu3",
"libgcc1": "1:7.2.0-8ubuntu3.2",
"libgdk-pixbuf2.0-0": "2.36.11-1ubuntu0.1",
"libglib2.0-0": "2.54.1-1ubuntu1",
"libgtk-3-0": "3.22.25-0ubuntu0.1",
......@@ -182,7 +187,8 @@
"libnss3": "2:3.32-1ubuntu3",
"libpango-1.0-0": "1.40.12-1",
"libpangocairo-1.0-0": "1.40.12-1",
"libstdc++6": "7.2.0-8ubuntu3",
"libstdc++6": "7.2.0-8ubuntu3.2",
"libuuid1": "2.30.1-0ubuntu4.1",
"libx11-6": "2:1.6.4-3",
"libx11-xcb1": "2:1.6.4-3",
"libxcb1": "1.12-1ubuntu1",
......
......@@ -52,6 +52,7 @@ PACKAGE_FILTER = set([
"libpango-1.0-0",
"libpangocairo-1.0-0",
"libstdc++6",
"libuuid1",
"libx11-6",
"libx11-xcb1",
"libxcb1",
......
......@@ -236,6 +236,10 @@
"libstdc++.so.6(GLIBCXX_3.4.7)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.8)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.9)(64bit)",
"libuuid.so.1()(64bit)",
"libuuid.so.1(UUIDD_PRIVATE)(64bit)",
"libuuid.so.1(UUID_1.0)(64bit)",
"libuuid.so.1(UUID_2.20)(64bit)",
"libxcb.so.1()(64bit)",
"rtld(GNU_HASH)"
],
......@@ -482,6 +486,10 @@
"libstdc++.so.6(GLIBCXX_3.4.7)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.8)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.9)(64bit)",
"libuuid.so.1()(64bit)",
"libuuid.so.1(UUIDD_PRIVATE)(64bit)",
"libuuid.so.1(UUID_1.0)(64bit)",
"libuuid.so.1(UUID_2.20)(64bit)",
"libxcb.so.1()(64bit)",
"rtld(GNU_HASH)"
],
......@@ -729,6 +737,10 @@
"libstdc++.so.6(GLIBCXX_3.4.7)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.8)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.9)(64bit)",
"libuuid.so.1()(64bit)",
"libuuid.so.1(UUIDD_PRIVATE)(64bit)",
"libuuid.so.1(UUID_1.0)(64bit)",
"libuuid.so.1(UUID_2.20)(64bit)",
"libxcb.so.1()(64bit)",
"rtld(GNU_HASH)"
],
......@@ -1179,6 +1191,14 @@
"libstdc++.so.6(GLIBCXX_3.4.8)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.9)",
"libstdc++.so.6(GLIBCXX_3.4.9)(64bit)",
"libuuid.so.1",
"libuuid.so.1()(64bit)",
"libuuid.so.1(UUIDD_PRIVATE)",
"libuuid.so.1(UUIDD_PRIVATE)(64bit)",
"libuuid.so.1(UUID_1.0)",
"libuuid.so.1(UUID_1.0)(64bit)",
"libuuid.so.1(UUID_2.20)",
"libuuid.so.1(UUID_2.20)(64bit)",
"libxcb.so.1",
"libxcb.so.1()(64bit)",
"rtld(GNU_HASH)"
......@@ -1638,6 +1658,14 @@
"libstdc++.so.6(GLIBCXX_3.4.8)(64bit)",
"libstdc++.so.6(GLIBCXX_3.4.9)",
"libstdc++.so.6(GLIBCXX_3.4.9)(64bit)",
"libuuid.so.1",
"libuuid.so.1()(64bit)",
"libuuid.so.1(UUIDD_PRIVATE)",
"libuuid.so.1(UUIDD_PRIVATE)(64bit)",
"libuuid.so.1(UUID_1.0)",
"libuuid.so.1(UUID_1.0)(64bit)",
"libuuid.so.1(UUID_2.20)",
"libuuid.so.1(UUID_2.20)(64bit)",
"libxcb.so.1",
"libxcb.so.1()(64bit)",
"rtld(GNU_HASH)"
......
......@@ -54,6 +54,7 @@ PACKAGE_FILTER = [
"librt.so",
"libsmime3.so",
"libstdc++.so",
"libuuid.so",
"libxcb.so",
"rtld(GNU_HASH)",
]
......
......@@ -15,7 +15,6 @@ if (use_bundled_fontconfig) {
sources = [
"src/src/fcarch.h",
"src/src/fcatomic.c",
"src/src/fcblanks.c",
"src/src/fccache.c",
"src/src/fccfg.c",
"src/src/fccharset.c",
......@@ -26,6 +25,7 @@ if (use_bundled_fontconfig) {
"src/src/fcformat.c",
"src/src/fcfreetype.c",
"src/src/fcfs.c",
"src/src/fchash.c",
"src/src/fcinit.c",
"src/src/fclang.c",
"src/src/fclist.c",
......@@ -34,6 +34,7 @@ if (use_bundled_fontconfig) {
"src/src/fcname.c",
"src/src/fcobjs.c",
"src/src/fcpat.c",
"src/src/fcptrlist.c",
"src/src/fcrange.c",
"src/src/fcserialize.c",
"src/src/fcstat.c",
......@@ -52,14 +53,17 @@ if (use_bundled_fontconfig) {
defines = [
"HAVE_CONFIG_H",
"FC_CACHEDIR=\"/var/cache/fontconfig\"",
"FC_TEMPLATEDIR=\"/usr/share/fontconfig/conf.avail\"",
"FONTCONFIG_PATH=\"/etc/fonts\"",
]
# This is a hack to remove visibility("default") annotations. Fontconfig
# symbols should not be exported from chrome, nacl_helper, or anything
# else.
# Fontconfig symbols should not be exported from chrome, nacl_helper, or
# anything else.
if (!is_component_build) {
defines += [ "visibility(x)=" ]
defines += [
"FC_ATTRIBUTE_VISIBILITY_HIDDEN=__attribute((visibility(\"hidden\")))",
"FC_ATTRIBUTE_VISIBILITY_EXPORT=__attribute((visibility(\"hidden\")))",
]
}
deps = [
......@@ -82,6 +86,10 @@ if (use_bundled_fontconfig) {
"-Wno-pointer-bool-conversion",
]
}
if (!is_win) {
libs = [ "uuid" ]
}
}
} else {
config("fontconfig_config") {
......
spang@chromium.org
dnicoara@chromium.org
thomasanderson@chromium.org
Name: fontconfig
URL: http://www.freedesktop.org/wiki/Software/fontconfig/
Version: 2.12.6
Version: 6cc99d6a82ad67d2f5eac887b28bca13c0dfddde
License: MIT
License File: src/COPYING
Security Critical: yes
......@@ -12,9 +12,11 @@ Modifications:
- None
To import a new snapshot of fontconfig:
- Checkout the latest release tag: git checkout 2.12.6
- Checkout the latest revision:
git fetch origin master
git checkout origin/master
- Change the DEPS entry to the newly checked out commit.
- Update generated files:
./autogen.sh --enable-libxml2 && make
./autogen.sh --enable-libxml2 --disable-docs && make
rsync -R $(git ls-files --others '*.h' '*/*.h') ../include
- Update this README to reflect the new version number.
......@@ -13,6 +13,10 @@
/* Use libxml2 instead of Expat */
#define ENABLE_LIBXML2 1
/* Define to 1 if translation of program messages to the user's native
language is requested. */
#define ENABLE_NLS 1
/* Additional font directories */
#define FC_ADD_FONTS "yes"
......@@ -23,7 +27,7 @@
#define FC_DEFAULT_FONTS "/usr/share/fonts"
/* The type of len parameter of the gperf hash/lookup function */
#define FC_GPERF_SIZE_T unsigned int
#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
......@@ -34,6 +38,21 @@
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.
*/
#define HAVE_DCGETTEXT 1
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#define HAVE_DIRENT_H 1
......@@ -53,15 +72,12 @@
/* Define to 1 if you have the `fstatvfs' function. */
#define HAVE_FSTATVFS 1
/* FT_Bitmap_Size structure includes y_ppem field */
#define HAVE_FT_BITMAP_SIZE_Y_PPEM 1
/* Define to 1 if you have the `FT_Done_MM_Var' function. */
/* #undef HAVE_FT_DONE_MM_VAR */
/* Define to 1 if you have the `FT_Get_BDF_Property' function. */
#define HAVE_FT_GET_BDF_PROPERTY 1
/* Define to 1 if you have the `FT_Get_Next_Char' function. */
#define HAVE_FT_GET_NEXT_CHAR 1
/* Define to 1 if you have the `FT_Get_PS_Font_Info' function. */
#define HAVE_FT_GET_PS_FONT_INFO 1
......@@ -71,9 +87,6 @@
/* 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 `FT_Select_Size' function. */
#define HAVE_FT_SELECT_SIZE 1
/* Define to 1 if you have the `getexecname' function. */
/* #undef HAVE_GETEXECNAME */
......@@ -89,6 +102,12 @@
/* Define to 1 if you have the `getprogname' function. */
/* #undef HAVE_GETPROGNAME */
/* Define if the GNU gettext() function is already present or preinstalled. */
#define HAVE_GETTEXT 1
/* Define if you have the iconv() function and it works. */
/* #undef HAVE_ICONV */
/* Have Intel __sync_* atomic primitives */
#define HAVE_INTEL_ATOMIC_PRIMITIVES 1
......@@ -161,6 +180,12 @@
/* 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. */
#define HAVE_STRERROR_R 1
/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1
......@@ -214,12 +239,6 @@
/* Define to 1 if you have the <sys/vfs.h> header file. */
#define HAVE_SYS_VFS_H 1
/* Define to 1 if `usLowerOpticalPointSize' is a member of `TT_OS2'. */
#define HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE 1
/* Define to 1 if `usUpperOpticalPointSize' is a member of `TT_OS2'. */
#define HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE 1
/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
......@@ -251,7 +270,7 @@
#define PACKAGE_NAME "fontconfig"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "fontconfig 2.12.6"
#define PACKAGE_STRING "fontconfig 2.13.0"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "fontconfig"
......@@ -260,7 +279,7 @@
#define PACKAGE_URL ""
/* Define to the version of this package. */
#define PACKAGE_VERSION "2.12.6"
#define PACKAGE_VERSION "2.13.0"
/* Define to necessary symbol if this constant uses a non-standard name on
your system. */
......@@ -313,7 +332,7 @@
/* Version number of package */
#define VERSION "2.12.6"
#define VERSION "2.13.0"
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
......
......@@ -22,7 +22,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
#define FC_NUM_CASE_FOLD 288
#define FC_NUM_CASE_FOLD 291
#define FC_NUM_CASE_FOLD_CHARS 471
#define FC_MAX_CASE_FOLD_CHARS 6
#define FC_MAX_CASE_FOLD_EXPAND 4
......@@ -146,6 +146,8 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x00001c86, FC_CASE_FOLD_RANGE, 0x0001, -6204 },
{ 0x00001c87, FC_CASE_FOLD_RANGE, 0x0001, -6180 },
{ 0x00001c88, FC_CASE_FOLD_RANGE, 0x0001, -30269 },
{ 0x00001c90, FC_CASE_FOLD_RANGE, 0x002b, -3008 },
{ 0x00001cbd, FC_CASE_FOLD_RANGE, 0x0003, -3008 },
{ 0x00001e00, FC_CASE_FOLD_EVEN_ODD, 0x0095, 1 },
{ 0x00001e96, FC_CASE_FOLD_FULL, 0x0003, 27 },
{ 0x00001e97, FC_CASE_FOLD_FULL, 0x0003, 30 },
......@@ -298,7 +300,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x0000a7b1, FC_CASE_FOLD_RANGE, 0x0001, 23254 },
{ 0x0000a7b2, FC_CASE_FOLD_RANGE, 0x0001, 23275 },
{ 0x0000a7b3, FC_CASE_FOLD_RANGE, 0x0001, 928 },
{ 0x0000a7b4, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 },
{ 0x0000a7b4, FC_CASE_FOLD_EVEN_ODD, 0x0005, 1 },
{ 0x0000ab70, FC_CASE_FOLD_RANGE, 0x0050, 26672 },
{ 0x0000fb00, FC_CASE_FOLD_FULL, 0x0002, 435 },
{ 0x0000fb01, FC_CASE_FOLD_FULL, 0x0002, 437 },
......@@ -317,6 +319,7 @@ static const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = {
{ 0x000104b0, FC_CASE_FOLD_RANGE, 0x0024, 40 },
{ 0x00010c80, FC_CASE_FOLD_RANGE, 0x0033, 64 },
{ 0x000118a0, FC_CASE_FOLD_RANGE, 0x0020, 32 },
{ 0x00016e40, FC_CASE_FOLD_RANGE, 0x0020, 32 },
{ 0x0001e900, FC_CASE_FOLD_RANGE, 0x0022, 34 },
};
......
extern __typeof (FcFreeTypeCharIndex) IA__FcFreeTypeCharIndex __attribute((visibility("hidden")));
extern __typeof (FcFreeTypeCharIndex) IA__FcFreeTypeCharIndex FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharIndex IA__FcFreeTypeCharIndex
extern __typeof (FcFreeTypeCharSetAndSpacing) IA__FcFreeTypeCharSetAndSpacing __attribute((visibility("hidden")));
extern __typeof (FcFreeTypeCharSetAndSpacing) IA__FcFreeTypeCharSetAndSpacing FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharSetAndSpacing IA__FcFreeTypeCharSetAndSpacing
extern __typeof (FcFreeTypeCharSet) IA__FcFreeTypeCharSet __attribute((visibility("hidden")));
extern __typeof (FcFreeTypeCharSet) IA__FcFreeTypeCharSet FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeCharSet IA__FcFreeTypeCharSet
extern __typeof (FcPatternGetFTFace) IA__FcPatternGetFTFace __attribute((visibility("hidden")));
extern __typeof (FcPatternGetFTFace) IA__FcPatternGetFTFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternGetFTFace IA__FcPatternGetFTFace
extern __typeof (FcPatternAddFTFace) IA__FcPatternAddFTFace __attribute((visibility("hidden")));
extern __typeof (FcPatternAddFTFace) IA__FcPatternAddFTFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcPatternAddFTFace IA__FcPatternAddFTFace
extern __typeof (FcFreeTypeQueryFace) IA__FcFreeTypeQueryFace __attribute((visibility("hidden")));
extern __typeof (FcFreeTypeQueryFace) IA__FcFreeTypeQueryFace FC_ATTRIBUTE_VISIBILITY_HIDDEN;
#define FcFreeTypeQueryFace IA__FcFreeTypeQueryFace
#if HAVE_GNUC_ATTRIBUTE
#ifdef __fcfreetype__
# undef FcFreeTypeCharIndex
extern __typeof (FcFreeTypeCharIndex) FcFreeTypeCharIndex __attribute((alias("IA__FcFreeTypeCharIndex"), visibility("default")));
extern __typeof (FcFreeTypeCharIndex) FcFreeTypeCharIndex __attribute((alias("IA__FcFreeTypeCharIndex"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
# undef FcFreeTypeCharSetAndSpacing
extern __typeof (FcFreeTypeCharSetAndSpacing) FcFreeTypeCharSetAndSpacing __attribute((alias("IA__FcFreeTypeCharSetAndSpacing"), visibility("default")));
extern __typeof (FcFreeTypeCharSetAndSpacing) FcFreeTypeCharSetAndSpacing __attribute((alias("IA__FcFreeTypeCharSetAndSpacing"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
# undef FcFreeTypeCharSet
extern __typeof (FcFreeTypeCharSet) FcFreeTypeCharSet __attribute((alias("IA__FcFreeTypeCharSet"), visibility("default")));
extern __typeof (FcFreeTypeCharSet) FcFreeTypeCharSet __attribute((alias("IA__FcFreeTypeCharSet"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
#endif /* __fcfreetype__ */
#ifdef __fcpat__
# undef FcPatternGetFTFace
extern __typeof (FcPatternGetFTFace) FcPatternGetFTFace __attribute((alias("IA__FcPatternGetFTFace"), visibility("default")));
extern __typeof (FcPatternGetFTFace) FcPatternGetFTFace __attribute((alias("IA__FcPatternGetFTFace"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
# undef FcPatternAddFTFace
extern __typeof (FcPatternAddFTFace) FcPatternAddFTFace __attribute((alias("IA__FcPatternAddFTFace"), visibility("default")));
extern __typeof (FcPatternAddFTFace) FcPatternAddFTFace __attribute((alias("IA__FcPatternAddFTFace"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
#endif /* __fcpat__ */
#ifdef __fcfreetype__
# undef FcFreeTypeQueryFace
extern __typeof (FcFreeTypeQueryFace) FcFreeTypeQueryFace __attribute((alias("IA__FcFreeTypeQueryFace"), visibility("default")));
extern __typeof (FcFreeTypeQueryFace) FcFreeTypeQueryFace __attribute((alias("IA__FcFreeTypeQueryFace"))) FC_ATTRIBUTE_VISIBILITY_EXPORT;
#endif /* */
#endif /* HAVE_GNUC_ATTRIBUTE */
#ifndef _FONTCONFIG_SRC_FCSTDINT_H
#define _FONTCONFIG_SRC_FCSTDINT_H 1
#ifndef _GENERATED_STDINT_H
#define _GENERATED_STDINT_H "fontconfig 2.12.6"
/* generated using gnu compiler gcc (Debian 6.3.0-18) 6.3.0 20170516 */
#define _GENERATED_STDINT_H "fontconfig 2.13.0"
/* generated using gnu compiler gcc (Debian 7.3.0-21) 7.3.0 */
#define _STDINT_HAVE_STDINT_H 1
#include <stdint.h>
#endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment