diff options
Diffstat (limited to 'poky/meta/recipes-graphics/fontconfig')
3 files changed, 106 insertions, 0 deletions
diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch b/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch new file mode 100644 index 0000000000..3ca9fde967 --- /dev/null +++ b/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch @@ -0,0 +1,28 @@ +From a163c81ac430cdc292add200f3e6a0c048be4d7e Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Wed, 11 Oct 2017 17:40:09 +0300 +Subject: [PATCH] src/fcxml.c: avoid double free() of filename + +It's also freed after bail1, so no need to do it here. + +Upstream-Status: Submitted [https://bugs.freedesktop.org/show_bug.cgi?id=103221] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + src/fcxml.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/fcxml.c b/src/fcxml.c +index 19ce96a..edb6054 100644 +--- a/src/fcxml.c ++++ b/src/fcxml.c +@@ -3398,7 +3398,6 @@ FcConfigParseAndLoad (FcConfig *config, + + fd = FcOpen ((char *) filename, O_RDONLY); + if (fd == -1) { +- FcStrFree (filename); + goto bail1; + } + +-- +2.14.1 + diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch b/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch new file mode 100644 index 0000000000..fca1e65946 --- /dev/null +++ b/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch @@ -0,0 +1,20 @@ +Revert part of http://cgit.freedesktop.org/fontconfig/commit/fontconfig.pc.in?id=338ffe6b886ad4ba86ff471cb59c4a5e5ffbe408 +We really dont do static linking so its not going to cause issues for us but as such this is harming us by adding absolute +paths into -I options into fontconfig.pc which is them prepended with sysroot when read back by cross pkg-config and +we end up with -I <sysroot>/<sysroot>/usr/include/fontconfig in CFLAGS of clients which depend on it. one such example +is matchbox-panel-2 and it was working fine with gcc < 5 because it tolerated non-existing paths in -I flags but gcc-5 +gently refuses and rightly so. + +Upstream-Status: Inappropriate [OE-Specific] +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: fontconfig-2.11.93/fontconfig.pc.in +=================================================================== +--- fontconfig-2.11.93.orig/fontconfig.pc.in ++++ fontconfig-2.11.93/fontconfig.pc.in +@@ -15,4 +15,4 @@ Requires: @PKGCONFIG_REQUIRES@ + Requires.private: @PKGCONFIG_REQUIRES_PRIVATELY@ + Libs: -L${libdir} -lfontconfig + Libs.private: @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@ @LIBXML2_LIBS@ +-Cflags: -I${includedir} @EXPAT_CFLAGS@ @FREETYPE_CFLAGS@ @ICONV_CFLAGS@ @LIBXML2_CFLAGS@ ++Cflags: -I${includedir} diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb new file mode 100644 index 0000000000..d4cbce80b4 --- /dev/null +++ b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb @@ -0,0 +1,58 @@ +SUMMARY = "Generic font configuration library" +DESCRIPTION = "Fontconfig is a font configuration and customization library, which \ +does not depend on the X Window System. It is designed to locate \ +fonts within the system and select them according to requirements \ +specified by applications. \ +Fontconfig is not a rasterization library, nor does it impose a \ +particular rasterization library on the application. The X-specific \ +library 'Xft' uses fontconfig along with freetype to specify and \ +rasterize fonts." + +HOMEPAGE = "http://www.fontconfig.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig" + +LICENSE = "MIT-style & MIT & PD" +LIC_FILES_CHKSUM = "file://COPYING;md5=7a0449e9bc5370402a94c00204beca3d \ + file://src/fcfreetype.c;endline=45;md5=5d9513e3196a1fbfdfa94051c09dfc84 \ + file://src/fccache.c;beginline=1367;endline=1382;md5=0326cfeb4a7333dd4dd25fbbc4b9f27f" + +SECTION = "libs" + +DEPENDS = "expat freetype zlib gperf-native" + +SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ + file://revert-static-pkgconfig.patch \ + file://0001-src-fcxml.c-avoid-double-free-of-filename.patch \ + " + +SRC_URI[md5sum] = "00e748c67fad11e7057a71ed385e8bdb" +SRC_URI[sha256sum] = "064b9ebf060c9e77011733ac9dc0e2ce92870b574cca2405e11f5353a683c334" + +UPSTREAM_CHECK_REGEX = "fontconfig-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)" + +do_configure_prepend() { + # work around https://bugs.freedesktop.org/show_bug.cgi?id=101280 + rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf +} + +PACKAGES =+ "fontconfig-utils" +FILES_${PN} =+ "${datadir}/xml/*" +FILES_fontconfig-utils = "${bindir}/*" + +# Work around past breakage in debian.bbclass +RPROVIDES_fontconfig-utils = "libfontconfig-utils" +RREPLACES_fontconfig-utils = "libfontconfig-utils" +RCONFLICTS_fontconfig-utils = "libfontconfig-utils" +DEBIAN_NOAUTONAME_fontconfig-utils = "1" + +inherit autotools pkgconfig relative_symlinks + +FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" + +# comma separated list of additional directories +# /usr/share/fonts is already included by default (you can change it with --with-default-fonts) +FONTCONFIG_FONT_DIRS ?= "no" + +EXTRA_OECONF = " --disable-docs --with-default-fonts=${datadir}/fonts --with-cache-dir=${FONTCONFIG_CACHE_DIR} --with-add-fonts=${FONTCONFIG_FONT_DIRS}" + +BBCLASSEXTEND = "native" |