Files
poky/meta/classes/fontcache.bbclass
Jonathan Liu 9d0feb3f29 fontcache.bbclass: prepend to PACKAGEFUNCS instead of appending
Appending to PACKAGEFUNCS results in the font packages missing the
postinst/postrm scripts and the fontconfig cache not being generated
in /var/cache/fontconfig when creating images or installing font
packages. This is because the package data has already been emitted
by emit_pkgdata in PACKAGEFUNCS. Prepend to PACKAGEFUNCS to ensure
add_fontcache_postinsts is executed before emit_pkgdata.

[YOCTO #7410]

(From OE-Core rev: f0e3db4eaacc32423934ce09b91bc619dc5dbd21)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:54 +00:00

46 lines
1.3 KiB
Plaintext

#
# This class will generate the proper postinst/postrm scriptlets for font
# packages.
#
DEPENDS += "qemu-native"
inherit qemu
FONT_PACKAGES ??= "${PN}"
FONT_EXTRA_RDEPENDS ?= "fontconfig-utils"
fontcache_common() {
if [ "x$D" != "x" ] ; then
$INTERCEPT_DIR/postinst_intercept update_font_cache ${PKG} mlprefix=${MLPREFIX} bindir=${bindir} \
libdir=${libdir} base_libdir=${base_libdir} localstatedir=${localstatedir}
else
fc-cache
fi
}
python () {
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)
}
python add_fontcache_postinsts() {
for pkg in d.getVar('FONT_PACKAGES', True).split():
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:
postinst = '#!/bin/sh\n'
postinst += d.getVar('fontcache_common', True)
d.setVar('pkg_postinst_%s' % pkg, postinst)
postrm = d.getVar('pkg_postrm_%s' % pkg, True) or d.getVar('pkg_postrm', True)
if not postrm:
postrm = '#!/bin/sh\n'
postrm += d.getVar('fontcache_common', True)
d.setVar('pkg_postrm_%s' % pkg, postrm)
}
PACKAGEFUNCS =+ "add_fontcache_postinsts"