The xorg font builds use `pkg-config --variable=mapdir fontutil` to
locate encoding maps. This variable ought to be sysroot-relative, but
neither pkg-config nor font-util nor the fonts themselves provide any
facility to add the sysroot back in.
We're presently adding the sysroot by by twiddling MAPFILES_PATH in
configure.ac. This is broken; it's actually defined in aclocal.m4,
because the definition is provided by fontutil.m4. Another (more
speculative) criticism is that it also hardcodes a build-specific
absolute path into builds which might (incorrectly) encode it into
target-installable packages.
A somewhat more robust, focused, and clear solution is to override
UTIL_DIR on the make command line. (UTIL_DIR, not MAPFILES_PATH, is what
is actually referenced in the build.)
Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
inherit autotools pkgconfig
-EXTRA_OEMAKE += "FCCACHE=/bin/true"
-
-do_configure_prepend() {
- if [ -f "${S}"/configure.ac ] ; then
- sed -i "s#^MAPFILES_PATH=.*#MAPFILES_PATH=\"${STAGING_DIR_TARGET}/\$(pkg-config --variable=mapdir fontutil)\"#g" "${S}"/configure.ac
- fi
-}
+EXTRA_OEMAKE += "FCCACHE=/bin/true UTIL_DIR=${STAGING_DIR_TARGET}\$\(MAPFILES_PATH\)"
do_install_append() {
find ${D}${libdir}/X11/fonts -type f -name fonts.dir | xargs rm -f