From patchwork Wed Dec 19 19:13:38 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: pango: have postinstalls run at do_rootfs time Date: Wed, 19 Dec 2012 19:13:38 -0000 From: Laurentiu Palcu X-Patchwork-Id: 41359 Message-Id: <1355944418-30809-1-git-send-email-laurentiu.palcu@intel.com> To: openembedded-core@lists.openembedded.org Since pango-native is built anyway and all the modules are in the native sysroot, create the cache file by scanning those files instead of the target files. The latter will fail because the shared objects wouldn't be from the same ELF class. [YOCTO #3600] Signed-off-by: Laurentiu Palcu --- meta/recipes-graphics/pango/pango.inc | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/meta/recipes-graphics/pango/pango.inc b/meta/recipes-graphics/pango/pango.inc index 839c00d..81c2a7e 100644 --- a/meta/recipes-graphics/pango/pango.inc +++ b/meta/recipes-graphics/pango/pango.inc @@ -10,7 +10,7 @@ SECTION = "libs" LICENSE = "LGPLv2.0+" X11DEPENDS = "virtual/libx11 libxft" -DEPENDS = "glib-2.0 fontconfig freetype zlib virtual/libiconv cairo elfutils" +DEPENDS = "glib-2.0 fontconfig freetype zlib virtual/libiconv cairo elfutils pango-native" PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" PACKAGECONFIG[x11] = "--with-x,--without-x,${X11DEPENDS}" @@ -44,13 +44,31 @@ LEAD_SONAME = "libpango-1.0*" LIBV = "1.6.0" postinst_prologue() { +if ! [ -e $D${sysconfdir}/pango ] ; then + mkdir -p $D${sysconfdir}/pango +fi + if [ "x$D" != "x" ]; then - exit 1 +pango-querymodules $(ls -d -1 $D${libdir}/pango/${LIBV}/modules/*.so|\ + sed -e "s:$D:$NATIVE_ROOT:g") >\ + $D${sysconfdir}/pango/${MLPREFIX}pango.modules \ + 2>$D${sysconfdir}/pango/${MLPREFIX}pango.err + +# pango-querymodules always returns 0, so we need to check if pango.err has +# anything in it +if [ -s $D${sysconfdir}/pango/${MLPREFIX}pango.err ]; then + rm $D${sysconfdir}/pango/${MLPREFIX}pango.err + exit 1 fi -if ! [ -e $D${sysconfdir}/pango ] ; then - mkdir -p $D${sysconfdir}/pango +sed -i -e "s:$NATIVE_ROOT::g" $D${sysconfdir}/pango/${MLPREFIX}pango.modules + +# remove the empty pango.err +rm $D${sysconfdir}/pango/${MLPREFIX}pango.err + +exit 0 fi + } do_install_append () {