Re: [OE-core] [PATCH 3/6] update_font_cache: update script for multilib
On 2018年09月04日 17:12, richard.pur...@linuxfoundation.org wrote: On Sun, 2018-08-26 at 06:06 -0700, Kai Kang wrote: Packages which inherit fontcache.bbclass call postinstall script update_font_cache. And in update_font_cache, it calls ${bindir}/fc- cache by qemuwrapper. When multilib is enabled, both packages foo and lib32-foo will call ${bindir}/fc-cache and one of them will fail to run obviously. Duplicate install file fc-cache to ${libexecdir} with ${MLPREFIX} and call proper fc-cache in update_font_cache. Signed-off-by: Kai Kang --- meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb | 8 +++- scripts/postinst-intercepts/update_font_cache | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb index d4cbce80b45..db36c867741 100644 --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb @@ -35,9 +35,15 @@ do_configure_prepend() { rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf } +do_install_append_class-target() { +# duplicate fc-cache for postinstall script +mkdir -p ${D}${libexecdir} +cp ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache We may as well hardlink this, same for the following patch too. OK. Got it. --Kai Cheers, Richard -- Regards, Neil | Kai Kang -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 3/6] update_font_cache: update script for multilib
On Sun, 2018-08-26 at 06:06 -0700, Kai Kang wrote: > Packages which inherit fontcache.bbclass call postinstall script > update_font_cache. And in update_font_cache, it calls ${bindir}/fc- > cache > by qemuwrapper. When multilib is enabled, both packages foo and > lib32-foo > will call ${bindir}/fc-cache and one of them will fail to run > obviously. > > Duplicate install file fc-cache to ${libexecdir} with ${MLPREFIX} and > call proper fc-cache in update_font_cache. > > Signed-off-by: Kai Kang > --- > meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb | 8 +++- > scripts/postinst-intercepts/update_font_cache | 2 +- > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb > b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb > index d4cbce80b45..db36c867741 100644 > --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb > +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb > @@ -35,9 +35,15 @@ do_configure_prepend() { > rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf > } > > +do_install_append_class-target() { > +# duplicate fc-cache for postinstall script > +mkdir -p ${D}${libexecdir} > +cp ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache We may as well hardlink this, same for the following patch too. Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 3/6] update_font_cache: update script for multilib
Packages which inherit fontcache.bbclass call postinstall script update_font_cache. And in update_font_cache, it calls ${bindir}/fc-cache by qemuwrapper. When multilib is enabled, both packages foo and lib32-foo will call ${bindir}/fc-cache and one of them will fail to run obviously. Duplicate install file fc-cache to ${libexecdir} with ${MLPREFIX} and call proper fc-cache in update_font_cache. Signed-off-by: Kai Kang --- meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb | 8 +++- scripts/postinst-intercepts/update_font_cache | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb index d4cbce80b45..db36c867741 100644 --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb @@ -35,9 +35,15 @@ do_configure_prepend() { rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf } +do_install_append_class-target() { +# duplicate fc-cache for postinstall script +mkdir -p ${D}${libexecdir} +cp ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache +} + PACKAGES =+ "fontconfig-utils" FILES_${PN} =+ "${datadir}/xml/*" -FILES_fontconfig-utils = "${bindir}/*" +FILES_fontconfig-utils = "${bindir}/* ${libexecdir}/*" # Work around past breakage in debian.bbclass RPROVIDES_fontconfig-utils = "libfontconfig-utils" diff --git a/scripts/postinst-intercepts/update_font_cache b/scripts/postinst-intercepts/update_font_cache index 20e9048adfc..e0ec471964c 100644 --- a/scripts/postinst-intercepts/update_font_cache +++ b/scripts/postinst-intercepts/update_font_cache @@ -2,5 +2,5 @@ set -e -PSEUDO_UNLOAD=1 ${binprefix}qemuwrapper -L $D -E ${fontconfigcacheenv} $D${bindir}/fc-cache --sysroot=$D --system-only ${fontconfigcacheparams} +PSEUDO_UNLOAD=1 ${binprefix}qemuwrapper -L $D -E ${fontconfigcacheenv} $D${libexecdir}/${binprefix}fc-cache --sysroot=$D --system-only ${fontconfigcacheparams} chown -R root:root $D${fontconfigcachedir} -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core