Patchwork [RFC,v2] fontcache.bbclass: add fontconfig-utils runtime dependency

login
register
mail settings
Submitter Matthieu CRAPET
Date March 20, 2014, 9:18 a.m.
Message ID <1395307118-5007-1-git-send-email-Matthieu.Crapet@ingenico.com>
Download mbox | patch
Permalink /patch/68923/
State New
Headers show

Comments

Matthieu CRAPET - March 20, 2014, 9:18 a.m.
In an image recipe, you can get a warning, for example:
WARNING: The postinstall intercept hook 'update_font_cache' failed (exit code: 1)! See log for details!
WARNING: The postinstalls for the following packages will be postponed for first boot: ttf-dejavu-sans-mono

(because /usr/bin/fc-cache is missing)

In OE-core, rdepend is correctly done in each recipe:
- ttf-fonts/liberation-fonts
- ttf-fonts/ttf-bitstream-vera

In meta-OE, rdepend is not done but packagegroup-fonts-truetype.bb includes fontconfig-utils:
- ttf-fonts/ttf-arphic-uming
- ttf-fonts/ttf-dejavu
- ttf-fonts/ttf-droid
- ttf-fonts/ttf-gentium
- ttf-fonts/ttf-hunkyfonts
- ttf-fonts/ttf-inconsolata
- ttf-fonts/ttf-liberation
- ttf-fonts/ttf-mplus
- ttf-fonts/ttf-sazanami
- ttf-fonts/ttf-ubuntu-font-family
- ttf-fonts/ttf-wqy-zenhei

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
---
 meta/classes/fontcache.bbclass                             | 4 ++++
 meta/conf/documentation.conf                               | 1 +
 meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb   | 1 -
 meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb | 1 -
 4 files changed, 5 insertions(+), 2 deletions(-)

Patch

diff --git a/meta/classes/fontcache.bbclass b/meta/classes/fontcache.bbclass
index 325bcae..afd3fd2 100644
--- a/meta/classes/fontcache.bbclass
+++ b/meta/classes/fontcache.bbclass
@@ -7,6 +7,7 @@  DEPENDS += "qemu-native"
 inherit qemu
 
 FONT_PACKAGES ??= "${PN}"
+FONT_EXTRA_RDEPENDS ?= "fontconfig-utils"
 
 fontcache_common() {
 if [ "x$D" != "x" ] ; then
@@ -19,8 +20,11 @@  fi
 
 python populate_packages_append() {
     font_pkgs = d.getVar('FONT_PACKAGES', True).split()
+    deps = d.getVar("FONT_EXTRA_RDEPENDS", True)
 
     for pkg in font_pkgs:
+        if deps: d.appendVar('RDEPENDS_' + pkg, ' '+deps)
+
         bb.note("adding fonts postinst and postrm scripts to %s" % pkg)
         postinst = d.getVar('pkg_postinst_%s' % pkg, True) or d.getVar('pkg_postinst', True)
         if not postinst:
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index 53c3da2..4d49a02 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -173,6 +173,7 @@  FILESEXTRAPATHS[doc] = "Extends the search path the OpenEmbedded build system us
 FILESOVERRIDES[doc] = "A subset of OVERRIDES used by the OpenEmbedded build system for creating FILESPATH."
 FILESPATH[doc] = "The default set of directories the OpenEmbedded build system uses when searching for patches and files. It is defined in the base.bbclass class found in meta/classes in the Source Directory. Do not hand-edit the FILESPATH variable."
 FILESYSTEM_PERMS_TABLES[doc] = "Allows you to define your own file permissions settings table as part of your configuration for the packaging process."
+FONT_EXTRA_RDEPENDS[doc] = "When a recipe inherits the fontcache class, this variable specifies runtime dependencies for font packages. This variable defaults to 'fontconfig-utils'."
 FONT_PACKAGES[doc] = "When a recipe inherits the fontcache class, this variable identifies packages containing font files that need to be cached by Fontconfig."
 FULL_OPTIMIZATION[doc]= "The options to pass in TARGET_CFLAGS and CFLAGS when compiling an optimized system. This variable defaults to '-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2'."
 
diff --git a/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb b/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb
index c99521f..89fa4b2 100644
--- a/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb
+++ b/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb
@@ -8,7 +8,6 @@  BUGTRACKER = "https://bugzilla.redhat.com/"
 SECTION = "x11/fonts"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-RDEPENDS_${PN} = "fontconfig-utils"
 PR = "r4"
 PE = "1"
 
diff --git a/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb b/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
index 75f78a2..b2e4cef 100644
--- a/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
+++ b/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
@@ -8,7 +8,6 @@  SECTION = "x11/fonts"
 LICENSE = "BitstreamVera"
 LIC_FILES_CHKSUM = "file://COPYRIGHT.TXT;md5=27d7484b1e18d0ee4ce538644a3f04be"
 PR = "r7"
-RDEPENDS_${PN} = "fontconfig-utils"
 
 inherit fontcache