[oe] [meta-oe][PATCH v3] llvm-common: move cross script install to sysroot preprocess function

Martin Jansa martin.jansa at gmail.com
Wed Jun 12 16:09:31 UTC 2013


On Wed, Jun 12, 2013 at 04:08:32PM +0200, Martin Jansa wrote:
> On Wed, Jun 12, 2013 at 11:55:05PM +1000, Jonathan Liu wrote:
> > The llvm-config script doesn't get placed in the target sysroot
> > crossscripts directory otherwise.
> > 
> > Signed-off-by: Jonathan Liu <net147 at gmail.com>
> > ---
> >  meta-oe/recipes-core/llvm/llvm-common.bb | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> > 
> > diff --git a/meta-oe/recipes-core/llvm/llvm-common.bb b/meta-oe/recipes-core/llvm/llvm-common.bb
> > index 612fd34..192919e 100644
> > --- a/meta-oe/recipes-core/llvm/llvm-common.bb
> > +++ b/meta-oe/recipes-core/llvm/llvm-common.bb
> > @@ -6,7 +6,10 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3
> >  
> >  SRC_URI = "file://llvm-config"
> >  
> > -do_install() {
> > +ALLOW_EMPTY_${PN} = "1"
> > +SYSROOT_PREPROCESS_FUNCS_append_class-target = " llvm_common_sysroot_preprocess"
> > +
> > +llvm_common_sysroot_preprocess() {
> >      install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
> >      install -m 0755 ${WORKDIR}/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/
> >  }
> 
> There is an issue with llvm-config without version when multiple
> versions of llvm are built:
> 
> WARNING: The recipe llvm2.8 is trying to install files into a shared
> area when those files already exist. Those files and their manifest
> location are:
>    /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm/usr/bin/crossscripts/llvm-config
>    Matched in manifest-qemuarm-llvm3.2
> manifest-qemuarm-llvm2.9
> manifest-qemuarm-llvm-common
> Please verify which package should provide the above files.
> 
> Shouldn't we stage llvm-common only once and only from llvm-common
> recipe? Not caused by this change, but
> http://patchwork.openembedded.org/patch/50959/
> 
> Other recipes can stage llvm-commonVER.

I've merged other llvm changes except this one and similar for
llvm.inc. I'm not using llvm on target (except llvmpipe), but shouldn't
we keep llvm-config in do_install? To install llvm-configVER by llvm
package in runtime as well as to bindir_crossscripts by
llvm_common_sysroot_preprocess? (assuming that paths returned by
llvm-configVER are correct for target - not pointing to sysroot).


-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20130612/7bc56995/attachment-0002.sig>


More information about the Openembedded-devel mailing list