@achimpieters,
It sounds like something in the file <wolfssl/wolfcrypt/settings.h> is defining XREALLOC to be one thing but then later in wolfssl/wolfcrypt/types.h where we try to detect based on OS/OE and set it smartly there is something not being skipped. Can you try adding a condition to types.h for
and replace the "<>" with the setting from settings.h that is defined and causing XREALLOC to be configured in settings.h?
It's hard to pin-point exactly without being able to test/build it but from the log we see the original definition is in settings.h on line 669 which in the version of settings.h I'm looking at from 4.1.0 would be in the FREERTOS section.
/project/components/common/wolfssl/wolfssl-4.1.0/wolfssl/wolfcrypt/settings.h:669:0: note: this is the location of the previous definition
#define XREALLOC(p, n, h, t) wolfSSL_Realloc((p), (n))
In types.h the re-definition happens on line 295 which is inside a section protected by the setting "NO_WOLFSSL_MEMORY" setting which leads me to believe that somehow both FREERTOS and NO_WOLFSSL_MEMORY are getting set together.
/project/components/common/wolfssl/wolfssl-4.1.0/wolfssl/wolfcrypt/types.h:295:0: warning: "XREALLOC" redefined [enabled by default]
#define XREALLOC(p, n, h, t) realloc((p), (n))
To resolve you can either remove NO_WOLFSSL_MEMORY from any custom settings you are using or you can add a second condition on line 273 of types.h to be:
#elif defined(NO_WOLFSSL_MEMORY) && !defined(FREERTOS)
Warm Regards,
K