[riot-notifications] [RIOT-OS/RIOT] pkg/nanopb: add nanoPb protocol buffers library package (#11565)

Kaspar Schleiser notifications at github.com
Thu May 23 10:58:30 CEST 2019


### Contribution description

This PR adds a package for easy usage of google protocol buffers.
It adds some logic to automatically generate *.c files from *.proto files within a module's source folder.

In order to do so, a prerequisite commit adds generic support for generated sources.

### Testing procedure

See ```tests/pkg_nanopb/README.md``` for usage info. Specifically, in order to test this, you'll need to install the official protobuf compiler, it's python bindings and the nanopb generator plugin.

As that generator is not (yet) part of the build container, the test cannot be compiled on the CI.

This is an alternative to #11157. Differences:

- includes generic way to generate sources using tools like nanopb.
- uses official test code
- simpler package source compilation through using custom (one-line) Makefile instead of calling upstream cmake

### Issues/PRs references

#11157

You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/11565

-- Commit Summary --

  * make: add GENSRC (generated source files) support
  * pkg: introduce nanoPb Protocol Buffers library
  * tests/pkg_nanopb: initial commit

-- File Changes --

    M Makefile.base (12)
    A pkg/nanopb/Makefile (11)
    A pkg/nanopb/Makefile.include (1)
    A pkg/nanopb/Makefile.nanopb (3)
    A pkg/nanopb/doc.txt (8)
    A pkg/nanopb/nanopb.inc.mk (22)
    A tests/pkg_nanopb/Makefile (9)
    A tests/pkg_nanopb/README.md (29)
    A tests/pkg_nanopb/main.c (113)
    A tests/pkg_nanopb/simple.proto (9)
    A tests/pkg_nanopb/tests/01-run.py (12)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/11565.patch
https://github.com/RIOT-OS/RIOT/pull/11565.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/11565
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190523/3b0b7732/attachment.html>


More information about the notifications mailing list