[OE-core] sstate-cache and making a package "host-dependent"
Mike Looijmans
mike.looijmans at topic.nl
Wed Jul 10 13:05:23 UTC 2013
I added a buildserver that also exports its "sstate-cache" directory, so
that other build machines can grab their stuff from it. This works fine,
but I have one problem. Some packages are meant to be dependent on the
system that built it. I want to enforce that each build machine creates
its own package, and does not grab it from the sstate-cache of the
central server.
For example,
$ cat recipes-core/meta/distro-feed-configs.bbappend
PRINC="1"
DISTRO_HOST_NAME ?= "${@os.uname()[1]}"
DISTRO_FEED_NAME ?= "feed"
DISTRO_FEED_PREFIX = "topic"
DISTRO_FEED_URI =
"http://${DISTRO_HOST_NAME}/${DISTRO_FEED_NAME}/${MACHINE}"
The purpose being that the host name of the machien that built the image
ends up in the opkg config files. This works just fine.
Now that we have a central server, all images on all build hosts grab
the package from the sstate-cache server, resulting in the feed pointing
to the central server instead of the private one, which is not what I
wanted to happen.
After reading the documentation, I added the following line to the recipe:
PACKAGE_ARCHS[vardeps] = "DISTRO_FEED_URI"
This did not have the desired effect. The package is still retrieved
from the cache, and not rebuilt locally. Even if I clean and force a
rebuild of the distro-feed-configs package, the package that ends up in
the image is still the one from the central server.
What am I missing here?
More information about the Openembedded-core
mailing list