Checksumming flash is not supported on xtensa platform:
Warn : not implemented yet
make: *** [.../RIOT/examples/saul/../../Makefile.include:796: flash] Error 1
Forward data soly based on the real source IPv6 address, not the virtual
MAC address.
ACK frames don't have a MAC address and should still be forwarded to all
nodes in range.
While this could theoretically be desired, it's usually just a mishap.
It is unlikely that legitimate cases will be needed in the build system;
if so, they can exclude themselves.
See-Also: https://github.com/RIOT-OS/RIOT/pull/16775
This is purely to finally unblock RIOT-OS/riotdocker#104, but may also
be useful to add future exclude patterns.
Exclude file was generated using
```sh
make doc 2> dist/tools/doccheck/exclude_patterns_base
grep "^${PWD}" dist/tools/doccheck/exclude_patterns_base | \
sed -E -e "s#^${PWD}/(.*:)([0-9]+): #\1DIGITS_MAGIC: #" \
-e 's/[]\\.$*{}|+?()[^-]/\\&/g' \
-e 's/:DIGITS_MAGIC:/:[0-9]+:/' \
> dist/tools/doccheck/exclude_patterns
rm dist/tools/doccheck/exclude_patterns_base
```
This commit fixes the generation of autoconf headers.
The `write_autoconf` function in the RIOT wrapper was overriding
the default value of the `header` arg to None in Kconfiglib's `write_autoconf`.
It's now set to the default header.
Previously, external modules had to be individually added to both
EXTERNAL_MODULE_DIRS and USEMODULE. If those where not in sync, this
resulted in build errors.
With this commit, search folders for external modules are added to
EXTERNAL_MODULE_DIRS instead. So lets say the file system structure is
like this
```
└── /path/to/external/modules
├── mod_a
│ ├── Makefile
│ ├── Makefile.dep
│ ├── Makefile.include
│ ├── foo.c
│ └── include
│ └── external_module.h
└── mod_b
├── Makefile
└── bar.c
```
One now adds `/path/to/external/modules` to EXTERNAL_MODULES and only
with `USEMODULE += mod_a` the corresponding module, dependencies and
include settings are actually used. Hence, it is possible to configure
`EXTERNAL_MODULE_DIRS` from `~/.profile` or `~/.bashrc` once and never
needs to worry about them again.
By running make compile-commands a `compile_commands.json` in the RIOT base
directory. With the environment variable `COMPILE_COMMANDS` the path of
this file can be changed to a custom location.
The `compile_commands.json` will contain the exact compile command, but
as additional flag `-I/usr/$(TARGET)/include` is added to work around
`clangd` not being able to locate the newlib system headers. The
additional includes can be overwritten using the environment variable
`COMPILE_COMMANDS_EXTRA_INCLUDES`.