[PATCH 01/22] tester: Update to support new build system

Chris Johns chrisj at rtems.org
Tue Mar 2 22:47:58 UTC 2021


On 3/3/21 3:54 am, Gedare Bloom wrote:
> On Tue, Mar 2, 2021 at 8:52 AM Joel Sherrill <joel at rtems.org> wrote:
>> On Tue, Mar 2, 2021 at 9:46 AM Gedare Bloom <gedare at rtems.org> wrote:
>>>
>>> On Mon, Mar 1, 2021 at 1:01 PM Alex White <alexanderjwhite at gmail.com> wrote:
>>>>
>>>> The tester configurations had not been updated to match the paths and
>>>> conventions used by the new build system. These have been updated,
>>>> and a few more libraries have been enabled in symbol-sets.ini.
>>>> ---
>>>>  tester/rtems/testing/bsps/griscv-sis-cov.ini  |  4 +-
>>>>  tester/rtems/testing/bsps/leon3-qemu-cov.ini  |  4 +-
>>>>  tester/rtems/testing/bsps/leon3-sis-cov.ini   |  4 +-
>>>>  tester/rtems/testing/coverage/symbol-sets.ini | 91 ++++++++++---------
>>>>  4 files changed, 52 insertions(+), 51 deletions(-)
>>>>
>>>> diff --git a/tester/rtems/testing/bsps/griscv-sis-cov.ini b/tester/rtems/testing/bsps/griscv-sis-cov.ini
>>>> index 7249af6..e8de95f 100644
>>>> --- a/tester/rtems/testing/bsps/griscv-sis-cov.ini
>>>> +++ b/tester/rtems/testing/bsps/griscv-sis-cov.ini
>>>> @@ -35,7 +35,7 @@
>>>>  bsp            = griscv-sis
>>>>  arch           = riscv
>>>>  tester         = %{_rtscripts}/run.cfg
>>>> -target         = riscv-rtems5
>>>> +target         = riscv

What is this being used for? I can only it present in the cov scripts.

>>> These are the only ini files that define this target? With this
>>> change, target is same as arch. Is target needed? I can't immediately
>>> tell where it gets used later?  'target' is usually understood as the
>>> binutil/gcc target triplet, so if the triplet is not being used, the
>>> variable should be less misleading. covoar_target might be better if
>>> this variable is needed in covar? I don't see it in any other
>>> non-coverage ini files though, so maybe it is not needed at all?
>>
>>
>> covoar originally used nm, addr2line, and objdump. This has been reduced to
>> objdump but it needs the target name to be able to invoke that. At this point,
>> the target has to be provided or covoar has to have rtems6 hard-coded and
>> add rtems6 to the architecture.
>>
>> Is there a variable in the tester to set this to?
>>
>>>
>>>>  bsp_run_cmd    = %{rtems_tools}/%{bsp_arch}-rtems%{rtems_version}-sis
>>>>  bsp_run_opts   = -nouartrx -r -tlim 300 s -m 4 -cov
>>>> -bsp_covoar_cmd = -S %{bsp_symbol_path} -E %{cov_explanations} -f TSIM
>>>> +bsp_covoar_cmd = -T riscv-rtems6 -S %{bsp_symbol_path} -E %{cov_explanations} -f TSIM
>>>
>>> what about:
>>> -T %{arch}-rtems%{rtems_version}
>>>
>>> We should be limiting hard-coding version numbers.
>>
>>
>> If that works, I would be happy.
> 
> I t hink it might be %{bsp_arch} --- see bsp_run_cmd above ;)

Do you need the option? There are other tools in rtems-tool that determine the
exec-prefix. Could the toolkit's support in `rtemstoolkit/rld-cc.h` help?

We knows the arch from the machine type in the ELF file and the toolkit should
know the version. The nice thing about covoar is it keyed into the version.

Chris



More information about the devel mailing list