PelionIoT / mbed-trace

mbed trace library
Apache License 2.0
18 stars 15 forks source link

Remove dependency to Nanomesh headers #92

Closed SeppoTakalo closed 4 years ago

SeppoTakalo commented 5 years ago

This library only uses types which are defined in stdint.h or stdbool.h, therefore it does not need dependency to Namesh libservices, which have much more compiler tweaks.

tommikas commented 5 years ago

the ip6 printing calls still need them though: https://github.com/ARMmbed/mbed-trace/blob/master/source/mbed_trace.c#L507-L551

TeroJaasko commented 5 years ago

@kjbracey-arm good catch.

And just today we happened to stumble on this issue on a code, which has #include "mbed_trace.h", but which does not have "nanostack-libservice" in its requires[] block, just "mbed-trace" and which then did not compile. Shouldn't the mbed_lib.json describe the requirement of libservice?

kjbracey commented 5 years ago

And just today we happened to stumble on this issue on a code, which has #include "mbed_trace.h", but which does not have "nanostack-libservice" in its requires[] block, just "mbed-trace" and which then did not compile. Shouldn't the mbed_lib.json describe the requirement of libservice?

The "bare metal" / requires feature was added in 5.12, but there was no systematic work on expressing dependencies throughout the tree, beyond getting "blinky" to compile. Very few libraries express their dependencies at present.

Yogesh found that he basically had to list all dependencies in the entire tree in mbed_app.json for his example, but indeed, he should only be only needing to reference top-level onces, and the tree should work itself out.

I'm not sure if anyone has been assigned this work, so people should present patches as and when they find such issues...

SeppoTakalo commented 4 years ago

Not sure how the outdated CI works.. I'm forcing the merge in.. let's see what breaks.