[PATCH] build: Add the BSP family to the enable set
Chris Johns
chrisj at rtems.org
Thu Jul 22 00:02:15 UTC 2021
On 22/7/21 8:55 am, Joel Sherrill wrote:
> On Wed, Jul 21, 2021, 5:49 PM Chris Johns <chrisj at rtems.org
> <mailto:chrisj at rtems.org>> wrote:
>
> On 22/7/21 8:35 am, Joel Sherrill wrote:
> > On Wed, Jul 21, 2021 at 2:10 PM Sebastian Huber
> > <sebastian.huber at embedded-brains.de
> <mailto:sebastian.huber at embedded-brains.de>> wrote:
> >>
> >> On 21/07/2021 21:05, Gedare Bloom wrote:
> >>>>> The problem is that one BSP which supports SMP "riscv/griscv" is
> identical to
> >>>>> the family "riscv/griscv" which contains BSPs which do not support SMP
> >>>>> ("riscv/grv32i" and riscv/grv32im").
> >>>> Hmm, tricky. Can the BSPs that do not support SMP disable SMP in the BSP
> >>>> specific config, ie override/specialise in the BSP?
> >>>>
> >>> Or, can we avoid having duplication between BSP names and family names?
> >>
> >> Yes, good idea. We could use a "family/" prefix for example
> >> ("family/<arch>/<bsp-family-name>").
>
> Great idea.
>
> > Ideally we would never have a family and BSP variant have the same name.
> > But that rule is violated multiple times now.
>
> Yeap.
>
> > I am not sure where your triple is intended to be used but we have used
> > the pattern arch/BSP which is really <arch>/<bsp_variant> as the
> > full name of BSPs.
> >
> > If we want to step that further, we could do something similar to the
> > GNU target triple where the middle component is a rarely used vendor.
> > <arch>/<bsp_family>/<bsp_variant>.
>
> I think we are to late for this because the spec file format follows what I did
> in the eco-system and I would prefer we maintained a single unified way of doing
> this than changing it.
>
> > In recent history, there was an issue of BSP variant names needing to
> > be unique across all architectures. This may also need to apply to bsp
> > family names.
>
> What about "bsps/<family>". This means you have:
>
> powerpc/mvme2307
> bsps/motorola_powerpc
>
> Is the first line is our BSP formal naming pattern and the second is how
> families are named, that should be ok.
It is as you state. In a formal sense it is:
BSP: <arch>/<bsp>
BSP FAMILY: bsps</bsp-family>
This format and approach does not break existing eco-system code that is set up
to parse a single `/` into two parts, the arch and bsp. A check of the arch
component for `bsps` can raise an error, ie unknown arch, or be extended to
handle a BSP family.
> Rules for uniqueness apply.
Yes.
Chris
More information about the devel
mailing list