How does yotta find header files when compiling a C file

Hi all,

According to yotta document, including a header files should be written as “module-name/header.h
for example, “sal/socket_api.h

However, when looking into some modules written in C, they didn’t follow this rule.
For example, in mbed-mesh-api module, why “nd_tasklet.c”, includes header files by declaring

#include "eventOS_event_timer.h"
#include "common_functions.h"

rather than

#include "nanostack-event-loop/eventOS_event_timer.h"
#include "mbed-client-libservice/common_functions.h"

Does yotta follow another rule when compiling module written in C? And, how does yotta find these header files?

Thank you.


If i’m not wrong, if you look into the module json file, you will find “extraincludes”, where you will find the directory of headers files

No, it doesn’t. I think “extraincludes” only indicates the path to headers when compiling C++, not C.
In my previous example, mbed-mesh-api module, its module.json even does not have “extraincludes” …