Previously the test script relied on the exact sequence of numbers
returned by the used PRNG. This resulting e.g. in
```
$ USEMODULE=prng_musl_lcg make -C tests/pthread_barrier flash test
```
to fail, only because the order in which the children completed is
slightly different due to different sleep durations. This fixes the
issue.
sys/ztimer: rework Kconfig
To eliminate circular dependencies based in periph_rtc and xtimer_ztimer_compatibility the following changes are applied:
- Change entrypoint of ztimer as a specific backend is always required
- Add a non-module symbol for ztimer_usec that bring in the ztimer and ztimer_usec module which allows the xtimer ztimer compatibility layer to only select the ztimer_usec module preventing circular dependency issues
- Perform the same computation over and over again. If the results
differ, context switches have an impact on the calculation (e.g.
when the FPU internally uses more bits than a float, but that bits
are not saved / restored on context switch)
- Give the three threads the names "t1", "t2", and "t3" and print them
on console, instead of the process ID. This makes interpretation of
the output easier, as the process IDs depend e.g. on whether a given
platforms requires an idle thread or not.
- Do not use the thread ID in the calculation, but the number at the
end of the thread name. This will result in the number printed only
depending on the precision of the (software) FPU and the printf()
implementation, and not on which threads are created in which order
(including the idle thread)
- Add a script to support running `make test`
Update tests/thread_float/tests/01-run.py
Co-authored-by: Alexandre Abadie <alexandre.abadie@inria.fr>
The pkg has not been updated in ages and upstream libcoap provides means
to build with RIOT. Users are better served using the upstream libcoap
approach to use RIOT + libcoap rather than this outdated pkg.
Patch the library to use micros() for timing, when sending a command,
for boards not supported by the library.
Use cpp11-compat with the remote-revb board. This fixes the link error
"undefined reference to __dso_handle"