The egrep and fgrep commands have been deprecated since 2007. Beginning
with GNU Grep 3.8, calling these commands will now issue a warning to the
user that instead they should use grep -E and grep -F, respectively.
Beginning with doxygen 1.9.8 "Modules" are renamed to "Topics". This
patch adds the new entry to the layout file. Having both, "Modules" and
"Topics" in the layout file should generate similar output for older and
newer doxygen versions.
This lists and documents features in a machine readable form. It is
intended to be used for documentation and the build system.
Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
Co-authored-by: chrysn <chrysn@fsfe.org>
Add a python script that allows having a single YAML file as source of
truth for what features are available, and also add documentation such
as help texts and grouping to them.
This utility converts such a YAML file to a Makefile with the contents
```
FEATURES_EXISTING := \
feature_a \
feature_b \
... \
features_z \
#
```
This allows the Makefile based build system to easily check if all
provided features and all requested features do actually exist.
In addition, this also converts the YAML file to a markdown file that
documents the features. This file is then intended to be used by
Doxygen to document the provided features.
Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
Co-authored-by: chrysn <chrysn@fsfe.org>
This drops support for the legacy riscv-none-embed target triple. That
value has been incorrect since the beginning and the toolchain that
used that has been long declared obsolete and is fairly outdated.
With our CI updating the toolchain, we no longer need to check for
that.
On RISC-V a RAM overlow is reported as:
/opt/xpack-riscv-none-elf-gcc-13.2.0-2/bin/../lib/gcc/riscv-none-elf/13.2.0/../../../../riscv-none-elf/bin/ld: section .stack VMA [80003f00,80003fff] overlaps section .bss VMA [800000a8,80003fb7]
This extends the list of patters detecting RAM overflow.
Co-authored-by: benpicco <benpicco@googlemail.com>
This adds mspdebug as package, similar to EDBG, so that the
programmer/debugger is build from source.
This has the advantage that we can indeed provide patches of our own.
The first patch fixes a bug with the CPU detection of `mspdebug` in
combination with the Olimex MSP430-JTAG-TINY-V2. The second adds the
`--expect-id <CPU_NAME>` argument.
The RIOT integration is updated to directly make use of the
`--expect-id` parameter. No more spending time debugging why firmware
the firmware for the `olimex-msp430-h2618` doesn't run when flashed on
the `olimex-msp430h1611` hardware :D
- Test native64 like native in murdock
- Add native64 to "Platform: native" in github labeler
- Add "BUILDTEST_MCU_GROUP == x86_64" to `dist/tools/ci/build_and_test.sh`
This will use the make test-input-hash-changed feature to save
the test hashes with the results and optionally skip running
the test if nothing has changed.
Murdock already has this feature but it is not easily accessible.
This should prevent unneeded flash cycles as well as speeding up
constant rerunning of tests for boards.
Also complete and explain `PROGRAMMER=`, `OPENOCD_DEBUG_ADAPTER=`, and
`OPENOCD_RESET_USE_CONNECT_ASSERT_SRST=` when using zsh.
Co-authored-by: benpicco <benpicco@googlemail.com>
When using OpenOCD RTT (real-time transfer) for stdio with
`USEMODULE=stdio_rtt make ...`, it is no longer possible to debug
while being connected to stdio. By also opening gdb at RIOT's default
GDB port, `make debug-client` can be used to connect from GDB to the
OpenOCD instance providing stdio via RTT.
Sometimes we want to roll-back to a previous firmware version.
To do so we need a higher riotbot version numbers still.
Add an update command to the riotboot_gen_hdr tool so that an existing
firmware image can be re-rolled out with a new version number.
This adds command completion that, when manually installed, provides
RIOT-aware command completion for `make` in zsh. The completion
supports:
- most commonly used `make` goals including a help text
- most commonly used `make` variables (such as `BOARD=`, `LTO=`,
`BUILD_IN_DOCKER=`, `TOOLCHAIN=`)
- possible values for these variables, including a list of boards
detected at runtime to complete `BOARD=`
Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
Since the native process is a child process of pyterm when called via
make we need to dig deeper for riotctrl. This also means that we require
pyserial to execute it.
Likely a change in the command line interface of EDBG broke the
`make reset` integration. This adds the missing flag.
Note: Since the binary is build on demand with our build system, we
can in fact rely on every using the same version of EDBG. Hence,
we don't need to be backwards compatible with the flag.
Previously the `add_insufficient_memory_board.sh` script would only
add the tested board to `Makefile.ci` when resource requirements grew,
but never remove it when resource requirements got lower.
This updates the script to also remove boards from `Makefile.ci` if
it is no longer needed. It is also rename (`add` --> `update`) to
match the change in behavior.