zdebanos commented on issue #16503:
URL: https://github.com/apache/nuttx/issues/16503#issuecomment-2998018286

   Hello,
   
   I am reporting on the state of the shv lib. I have taken the sources from my 
[nx-shv-fwupdater 
repository](https://github.com/zdebanos/nx-shv-fwupdater/tree/nuttx-build/src) 
and manually merged it into the main [shv-libs4c 
repository](https://github.com/silicon-heaven/shv-libs4c/tree/dev-zdebanos) 
which will be the library used in NuttX. Most of the sources originate from 
Michal Lenc's implementation of SHV in pysimCoder.
   
   The first task was to divide the sources into suitable directories. The 
first sublibrary is called libshvchainpack which contains the low level 
serialization procedures. The second sublibrary is called libshvtree, the core 
you are expected to include in your application - it allows for the creation of 
the remote procedure call tree with various methods. The dependancy is Pavel 
Píša's ulut library as a git submodule, providing a "C-style" containers you 
are used to from C++ with low footprint. 
   
   The second task was to adapt the build system. Since NuttX uses Makefiles 
and CMake, we expect to use both systems. As I am still struggling a bit with 
CMake, currently the library can be built and linked against a dummy main.c 
file using the OMK makefiles, created and recommended to by Pavel Píša. It 
actually allows for very nice declarative features like in CMake while, in my 
opinion, being much less cryptic than CMake (currently my biggest nemesis). As 
the OMK build system are essentially makefiles, integrating it into NuttX 
should be of no hassle. Also, I introduced some abstraction in the whole 
library so it can be adapted to any system (linux, nuttx, my own embedded 
system with no os).
   
   In next report I expect to finish the integration with the CMake build 
system. Also I want to make the application which was present in my 
nx-shv-fwupdater working. The next steps are: some cleanup, adding more 
communication types (currently, TCP/IP is supported but Serial could be 
supported, too), adding more features in compliance with the shv protocol 
specification, integration into NuttX.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to