<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jul 25, 2023 at 12:19 PM Sebastian Huber <<a href="mailto:sebastian.huber@embedded-brains.de">sebastian.huber@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
On 25.07.23 19:15, Gedare Bloom wrote:<br>
> On Tue, Jul 25, 2023 at 11:11 AM Sebastian Huber<br>
> <<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>>  wrote:<br>
>><br>
>><br>
>> On 25.07.23 18:01, Gedare Bloom wrote:<br>
>>> On Tue, Jul 25, 2023 at 5:13 AM Sebastian Huber<br>
>>> <<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>>   wrote:<br>
>>>> This allows application and library build systems to derive option<br>
>>>> values from the BSP base and family names.<br>
>>>> ---<br>
>>>>    spec/build/bsps/pkgconfig.yml | 2 ++<br>
>>>>    1 file changed, 2 insertions(+)<br>
>>>><br>
>>>> diff --git a/spec/build/bsps/pkgconfig.yml b/spec/build/bsps/pkgconfig.yml<br>
>>>> index e08c83fe27..afaffbbf0f 100644<br>
>>>> --- a/spec/build/bsps/pkgconfig.yml<br>
>>>> +++ b/spec/build/bsps/pkgconfig.yml<br>
>>>> @@ -15,6 +15,8 @@ content: |<br>
>>>>      ABI_FLAGS=${ABI_FLAGS}<br>
>>>>      RTEMS_ARCH=${ARCH}<br>
>>>>      RTEMS_BSP=${BSP_NAME}<br>
>>>> +  RTEMS_BSP_BASE=${BSP_BASE}<br>
>>>> +  RTEMS_BSP_FAMILY=${BSP_FAMILY}<br>
>>> These expose a little bit of the internal working of the build system.<br>
>>> I think it's fine, since these two fields should not change over time.<br>
>>> But, it commits us to maintain this mapping and these variables.<br>
>> We had the RTEMS_BSP also in the old build system, but it was actually<br>
>> what is now the RTEMS_BSP_BASE in this patch. With the user-defined BSP<br>
>> names we have for:<br>
>><br>
>> [arch/user_bsp_name]<br>
>> INHERIT = system_bsp_name<br>
>><br>
>> This results in:<br>
>><br>
>> RTEMS_BSP = user_bsp_name<br>
>> RTEMS_BSP_BASE = system_bsp_name<br>
>><br>
>> Maybe we should change this to:<br>
>><br>
>> RTEMS_BSP = system_bsp_name<br>
>> RTEMS_BSP_NAME = user_bsp_name<br>
>><br>
> This would make more sense. I don't know what it might break to make<br>
> this change now though, as external build tools may rely on the<br>
> current definition of RTEMS_BSP?<br>
<br>
Yes, this is a bit tricky since the BSP name is also encoded in the *.pc <br>
file name: ${arch}-rtems6-{user_bsp_name}.pc. This is an argument for <br>
keeping RTEMS_BSP = user_bsp_name.<br></blockquote><div><br></div><div>I would agree with that since that's the name the user expects and will be</div><div>part of any installed path, pkg config file, etc. </div><div><br></div><div>That leaves RTEMS_BSP_NAME is not great. How about RTEMS_BSP_CANONICAL?</div><div><br></div><div>RTEMS_BSP_FAMILY has been around a long time and should be well understood.</div><div>I certainly have explained the concept in the class for a LONG LONG time even is</div><div>there are examples like erc32 and leon3 which overlap CPU, family, and BSP names.</div><div>But powerpc -> motorola_shared -> mvme2100 -> user name or</div><div>arm -> xilinx-zynq -> xilinx_zynq_zedboard -> user name w/cfg do make sense.</div><div><br></div><div>We are encouraging users to "derive" custom BSPs based on specific configurations</div><div>of existing ones. Makes sense to add a naming layer.</div><div><br></div><div>--joel</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
-- <br>
embedded brains GmbH<br>
Herr Sebastian HUBER<br>
Dornierstr. 4<br>
82178 Puchheim<br>
Germany<br>
email: <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>
phone: +49-89-18 94 741 - 16<br>
fax:   +49-89-18 94 741 - 08<br>
<br>
Registergericht: Amtsgericht München<br>
Registernummer: HRB 157899<br>
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler<br>
Unsere Datenschutzerklärung finden Sie hier:<br>
<a href="https://embedded-brains.de/datenschutzerklaerung/" rel="noreferrer" target="_blank">https://embedded-brains.de/datenschutzerklaerung/</a><br>
_______________________________________________<br>
devel mailing list<br>
<a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a></blockquote></div></div>