The build system contains several instances of
INCLUDES += -I$(RIOTBASE)/sys/posix/include
This is bypassing the module management system, by directly accesing
headers without depending on a module. The module is the posix module.
That line is also added when one of the posix_* modules is requested.
According to the docs, the posix module provides headers only, but in
reality there is also inet.c.
This patch:
- Moves `inet.c` into `posix_inet`, leaving `posix` as a headers-only
module.
- Rename `posix` as `posix_headers` to make it clear the module only
includes headers.
- Makes `posix_*` modules depend on `posix_headers`, thus removing the
explicit `INCLUDES+=...` in `sys/Makefile.include`.
- Ocurrences of `INCLUDES+=...` are replaced by an explicit dependency
on `posix_headers`.
Once the repo is downloaded, the version is not checked gain. This
means that even if a package's Makefile is touched, that will only
cause a rebuild of the previously downloaded version. For packages
that are normally not deleted, like edbg, this renders PKG_VERSION
bumps ineffective, unless the user manually deletes the repo
directory.
This patch fixes that by always checking that the repo is at the
right commit.
If module log is used, log.h should be included. Otherwise, it might lead to compilation problems since LOG_ERROR macro isn't know in expansion of LWIP_PLATFORM_ASSERT macro.
- copy basic objects from client implementation
- fix pkg warnings
- use lwm2m_strdup instead of strdup
- fix alignment problem in lwm2m data struct
- add fix of acc_ctrl object read
This is just a compatibility issue waiting to happen as soon as there
is support for a more standard-compliant implementation of BLE (like
e.g. NimBLE ;-)).
Upstream lua has many instances of discarding cont qualifiers through
explicit casting. This disables the warnigns for the package so that
they don't show up when one enables -Wno-cast-qual globally.
Jerryscript was never using INCLUDES so never having the 'newlib-nano' or llvm
includes. It prevented working with `llvm`.
Disable unsupported warnings for ESP32 and ESP8266 newlib that show when
using system includes.
* tested newlib version for ESP32 is 2.2.0
* tested newlib version for ESP8266 is 3.0.0
Build into the BINDIR directory instead of the source repository.
This makes 'clean' work as expected without other intervention.
Also it goes in the direction of having the package source repository
board independent.
Remove unknown rules from .PHONY.
Make 'all' be the default target for jerryscript and execute `all` target.
This way no definition order issue could happen in the future.
Do not include Makefile.base as 'DIRS' are not used here.
Also if 'all' target was to be used, there would be two rules creating
`$(BINDIR)/jerryscript.a`.
By default `Makefile.jerryscript` executes `libjerry` as it is the first
target.
The -Wno-sometimes-uninitialized suppression seems to no longer be
necessary. Removing it as it may mask a real bug.
If the problem reappears, and if the comment is correct about it
being only in an unused function, then instead of adding the CFLAG,
it should be fixed locally via a patch.