[meta-xilinx] [RFC] Meta-Xilinx Changes
Alejandro Hernandez
alejandro.enedino.hernandez-samaniego at xilinx.com
Tue Sep 25 07:49:30 PDT 2018
Hello all,
There have been some changes in upstream over the past few months and
this email intends to inform you all, of how these will impact the
meta-xilinx layer, while most of these changes should be transparent to
the users, this will explain what the underlying functionality looks like.
The newlib and libgloss recipes will be dropped from meta-xilinx, they
will be replaced with bbappends to simply extend their functionality for
XIlinx devices, the recipes have been upstreamed, they are both now in
openembedded-core, along with a new TCLIBC variant "newlib" to be able
to build a system which makes use of them both.
Currently as you may be aware, we are using these to build
baremetal/standalone components, we are using a multilib workaround to
be able to use different toolchains for specific components of the
system (when we're not using the meta-xilinx-tools layer, e.g. xsct),
this functionality will be dropped in the near future, in favor of using
a better way with the upstreamed components I mentioned before, taking
advantage of the multiconfig features of Yocto(not the same as multilib).
For this to work, there has also been an effort to upstream new
functionality into Yocto/OE that would allow us to depend on components
from different multiconfigs, that in this case use different toolchains,
meaning that we will now be able to create a working image, from which
all of its userspace (and kernel) components have been built with the
Linux toolchain, and depend on standalone components that have been
built with a standalone toolchain, e.g. pmu-firmware.
A new layer "meta-xilinx-standalone" will be created inside the
meta-xilinx repo which contains most of was previously mentioned, in a
few words it will contain a standalone DISTRO, that will build the
standalone components, separately from the Linux components.
To use the multiconfig features, there will now be three "local.conf"
files, which may appear confusing at first, but they are merely
separating each configuration correctly: the main one which will be only
used to specify the name of the two multiconfigs that will be used
during the build, and there will also be one conf file for each of these
multiconfigs, as mentioned before one of this files will configure the
Linux build and the other one will configure the standalone build, it
will look something like this:
build/
conf/local.conf - Contains the name of each multiconfig, for example
"standalone" and "linux".
conf/multiconf/standalone.conf - Contains the configuration for
Standalone components.
conf/multiconf/linux.conf - Contains the configuration for Linux
components.
For more information on the multiconfig features please see:
Multiconfiguration Builds
<https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#dev-building-images-for-multiple-targets-using-multiple-configurations>
on the Yocto Project manual.
As mentioned before, most of these changes should be transparent to the
users, and they will be gradually pushed into the layers.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20180925/7bcb6918/attachment.html>
More information about the meta-xilinx
mailing list