If not defined it was raising a KeyError. Use the 'get' function to
handle non defined value.
It did not put the value in the `default` case as it would have changed
the behavior when `RIOTBASE` is defined but empty.
In order to use the RIOT bootloader (riotboot) a header needs to
be created and placed before the firmware. This tool generates
such a header with the expected information by the bootloader.
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
Get FLASH_FILE and ELFFILE from command line instead of environment variable.
The documentation was claiming ELFFILE was given as a command line argument
already, but is was not.
Get BINFILE and ELFFILE from command line instead of environment variable.
Rename 'HEXFILE' to 'BINFILE' in the script as the binary file is used.
The documentation was already talking about 'BINFILE' but 'BINFILE'
was never exported by the build system and it was using 'HEXFILE' in the
implementation.
The previous doccheck would give a false negative when doxygen does
not even run (for example, because of misconfiguration).
Also, when doxygen fails to run, print the full output.
Add a script to execute sanity checks on build system files.
It should prevent bad patterns to re-appear after being cleaned.
Currently adds a check for using the content of `FEATURES` instead of
`USEMODULE`.
Modules should not check the content of FEATURES_PROVIDED/_REQUIRED/OPTIONAL
Handling specific behaviors/dependencies should by checking the content of:
* `USEMODULE`
* maybe `FEATURES_USED` if it is not a module (== not a periph_)
https://stackoverflow.com/a/24276470
In replacement strings used with the s command, assume that NO
control-character escape sequences are supported (ex '\n')
Replace with an escaped newline character. Current form works in 'bash'.
https://stackoverflow.com/a/24276470
Labels and branching commands (e.g., b) must be followed by an actual
newline or continuation via a separate -e option.
This removes all non-application based driver/devices and replaces with riot_pal.
riot_pal (riot protocol abstraction layer) can be installed with pip install riot_pal.
The purpose is ti simplify and modularize the interfaces and tests.
All tests using the if_lib interface are updated too.
In [#10030][1] it was decided to rename all labels to reflect their
respective category. The labels "NEEDS SQUASHING" and "Waiting For Other
PR" are used in the `dist/tools/pr_check/pr_check.sh` script however, so
that script needs to be adapted.
[1]: https://github.com/RIOT-OS/RIOT/issues/10030
This new tool allows configuring the reset pin for nRF52-based
boards. As the reset pin configuration is persistent, it does not
make sense to include it into the board code...
Cppcheck was (correctly) warning here that concat to strings might
result in buffer overflow because the terminating `\0` was not considered.
This is fixed here, making the cppcheck suppression also obsolete.
Extend the cppcheck suppression example to show that each suppression
should have a reason describing the intentional suppression of a
cppcheck warning or error.
Currently version information of commands and tools is only parsed
from STDOUT, however some tools like openocd print version info
to STDERR only. This commits adds parsing of STDERR for version
infos if STDOUT does not contain such info.