[OE-core] "base_set_filespath()" adds superfluous duplicate directory entry

Robert P. J. Day rpjday at crashcourse.ca
Tue Jan 29 16:27:02 UTC 2013


  just noticed that the standard call to base_set_filespath() adds two
entries of the top-level directory if you're doing a distroless build.
you can see this with bitbake-env:

FILESPATH="/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/arm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/am180x-evm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/armv5
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/omapl138
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap-6.0/
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/arm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/am180x-evm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/armv5
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/omapl138
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/portmap/
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/arm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/am180x-evm
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/armv5
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/omapl138
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/
/home/rpjday/oe/dist/layers/oe-core/meta/recipes-connectivity/portmap/files/"

  note the unnecessary duplication of the top-level directories for
this example using (randomly) portmap -- the directories portmap-6.0/,
portmap/ and files/.

  that's because of this code in that routine:

    overrides = ((d.getVar("FILESOVERRIDES", True) or "") + ":").split(":")
    for p in path:
        if p != "":
            for o in overrides:
                filespath.append(os.path.join(p, o))

and the fact that, if you don't set a DISTRO, what you're using is:

$ bitbake-env -r portmap FILESOVERRIDES
Parsing recipes..done.
# FILESOVERRIDES="${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}"
FILESOVERRIDES="arm:am180x-evm:armv5:omapl138:"

where you can see that ${DISTROOVERRIDES} is unset and thus gives you
a null entry, to which the routine adds a *second* (superfluous) null
entry.  not fatal, just unnecessary.

rday

p.s.  by the way, on the topic of FILESPATH, this doesn't look right:

$ grep -r FILESEXTRAPATHS_append *
meta/recipes-graphics/mesa/mesa-common.inc:FILESEXTRAPATHS_append := "${THISDIR}/mesa:"
$

  shouldn't that be "_prepend"?  should i submit a patch?




More information about the Openembedded-core mailing list