Adds a separate board for native64 instead of the `NATIVE_64BIT` workaround.
The files in `boards/native64` are more or less dummy files and just include
the `boards/native` logic (similar to `openlabs-kw41z-mini-256kib`).
The main logic for native is in `makefiles/arch/native.inc.mk`, `cpu/native`
and `boards/native`.
The remaining changes concern the build system, and change native board checks
to native CPU checks to cover both boards.
* Added arch_64bit feature and added it to all packages that require 32 bit.
* hacl, wolfssl: Fixed different types between function declaration and implementation.
* lwip: Add required flag for 64 bit and bug fix in `lwip_sock`.
* micro-ecc: Workaround for GCC warning when using `__int128`.
Makefiles don't do comments, so these were forwarded into the variable.
*Most* users would expand the arguments to a shell where it'd be
ignored, but not all of them.
Contributes-To: https://github.com/RIOT-OS/RIOT/pull/18489
(This is also where the one version that is added here was removed).
Add the possibility to set JERRY_STACK to prevent stack overflows due to recursion, JERRY_GC_LIMIT to the maximum allowed heap usage increase until triggering the next garbage collection and JERRY_GC_MARK_LIMIT to adjust the maximum recursion depth during the GC mark phase
Prepare for handling pkg state with files. So it requires having the
path defined before declaring targets. In addition, it cleans up the
old git-download target.
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.
Without this disabled `nanosleep()` is used, which isn't provided for
most our platforms (though the header `<time.h>` is).
Furthermore, that macro is only used in that instance throughout the
JerryScript codebase.