[OE-core] why are native kern tools both generated and on the meta branch?

Robert P. J. Day rpjday at crashcourse.ca
Mon Jul 16 11:15:09 UTC 2012


  side note: for the next little while, for pedagogical reasons, i'm
stepping through each phase of the OE kernel build process and
documenting what happens and what gets generated at each step, as in:

  $ bitbake -c fetch linux-yocto
  $ bitbake -c unpack linux-yocto
  $ bitbake -c kernel_checkout linux-yocto
  $ bitbake -c validate_branches linux-yocto
  $ bitbake -c patch linux-yocto
  ... etc etc ...

so, yes, upcoming questions will almost certainly be as pedantic as
ever.  you've been warned. :-P

  at this point, i've done the validate_branches step and am about to
do the patch, and i notice from linux-yocto.inc:

  do_patch[depends] = "kern-tools-native:do_populate_sysroot"

ok, i can accept that, and performing the patch should first build
and install the native kern-tools in my x86_64 sysroots directory ,
which i'm pretty sure is on my PATH so the new utilities like
createme, updateme, configme and so on will be available for the
subsequent do_patch() step.  so far, so good.

  but in the do_patch() routine itself, we have:

=====

do_patch() {
        cd ${S}

        # if kernel tools are available in-tree, they are preferred
        # and are placed on the path before any external tools. Unless
        # the external tools flag is set, in that case we do nothing.
        if [ -f "${S}/scripts/util/configme" ]; then
                if [ -z "${EXTERNAL_KERNEL_TOOLS}" ]; then
                        PATH=${S}/scripts/util:${PATH}
                fi
        fi

        kbranch=${KBRANCH}

        # if we have a defined/set meta branch we should not be generating
        # any meta data. The passed branch has what we need.
        if [ -n "${KMETA}" ]; then
                createme_flags="--disable-meta-gen"
        fi
        createme ${createme_flags} ${ARCH} ${kbranch}
	... snip ...

=====

in my case, i have a meta branch which just happens to include a
scripts/ directory containing what appears to be all of those
kern-tools.

  is there a reason for that duplication?  as i read it (and i could
be confused), the do_patch() generates and installs the necessary
native kern-tools, even as my meta branch (which is not checked out
yet) already contains all of those tools.  should i care?

rday

-- 

========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================




More information about the Openembedded-core mailing list