[yocto] meta-kernel-dev forces a rebuild of linux-yocto from do_fetch every time

Darren Hart dvhart at linux.intel.com
Wed Feb 1 16:36:13 PST 2012


The poky-extras meta-kernel-dev layer seems to force a complete rebuild
of linux-yocto from do_fetch at every invocation of bitbake, even if
nothing changed in the kernel.

For example, if I run:

$ bitbake core-image-minimal

And it builds everything, including linux-yocto, but do_bootimg fails in
core-image-minimal, and I then fix the issue in bootimg.bbclass and run:

$ bitbake core-image-minimal

It starts with do_fetch of linux-yocto.

The linux-yocto_3.0.bbappend in my meta-kernel-dev looks like the following:

    FILESEXTRAPATHS := "${THISDIR}/${PN}"

    COMPATIBLE_MACHINE = ${MACHINE}

    # KMACHINE is the branch to build
    # KMACHINE_<MACHINE> ?= "yocto/${LINUX_KERNEL_TYPE}/${KMACHINE}"

    # KERNEL_FEATURES are features to be added to the kernel, and must
    # point to configurations stored on the 'meta' branch of the kernel
    # that is being built.
    # KERNEL_FEATURES ?= <FOO>

    # It is often nice to have a local clone of the kernel repos, to
    # allow patches to be staged, branches created, etc. Modify

    # KSRC_linux_yocto to point to your local clone as appropriate.
    # KSRC_linux_yocto ?= /path/to/local/linux-yocto-3.0
    KMACHINE ?= "yocto/${LINUX_KERNEL_TYPE}/${KMACHINE}"

    SRC_URI =
"git://${KSRC_linux_yocto};protocol=file;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"

    KERNEL_REVISION_CHECKING=
    SRCREV=${AUTOREV}
    #BB_LOCALCOUNT_OVERRIDE = "1"
    LOCALCOUNT = "0"



In my bblayers, I have:

$ cat bblayers.conf

    # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
    # changes incompatibly
    LCONF_VERSION = "4"

    #PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
    #PREFERRED_VERSION_linux-yocto-rt = "3.0+git%"
    KSRC_linux_yocto=/home/dvhart/source/linux/linux-yocto-3.0.git
    KSRC_linux_yocto_dev=/home/dvhart/source/linux/linux-yocto-dev.git

    BBFILES ?= ""
    BBLAYERS = " \
      /home/dvhart/source/poky/meta \
      /home/dvhart/source/poky/meta-yocto \
      /home/dvhart/source/poky/layers/meta-intel \
      /home/dvhart/source/poky/layers/meta-intel/meta-sys940x \
      /home/dvhart/source/poky/layers/poky-extras/meta-kernel-dev \
      "

Bruce says it doesn't behave this way for him. Anyone have any ideas
what might be triggering this?

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel



More information about the yocto mailing list