[riot-devel] Updates to the build system - modules definition

Gaëtan Harter gaetan.harter at fu-berlin.de
Thu Nov 23 15:24:29 CET 2017


Dear RIOT developers,

I would like to introduce some packaging concepts around RIOT.
To consider modules like well defined distribution packages and not only 
source files added to an application firmware. This would allow software 
architecture/configuration informations to be parseable by external 
tools without reading source code and without an application context.

My need is allowing a graphical interface to describe, configure 
applications with possibly external modules and generate the Makefile.

I want to start a task force on this in two weeks after some preliminary 
discussions on the concepts.


      Current state

Some of these module information is already present but not in a easy to 
get way so it does not fit my need.

To highlight some of the problems:

  * it is scattered in different centralized files
      o Makes it hard to add external modules
      o Needs different files to get one module metadata
  * some is defined in a Turing complete language
      o Hard to parse
      o only available in a compilation context
  * some information/configuration only in source files


      Implementation

I am thinking about adding declaratively defined information/metadata on 
modules distributed to each module directory. This could be achieved by
changing to a new build system with these features already included. 
However, integration into the current build system would be preferred in 
order to be able
to incrementally integrate, test and document new changes.


        Roadmap

  * Initial feedback period of two weeks
  * Define and break down intermediate tasks
  * Iteration cycles on each sub task and integration


      Further steps

I would like to gather feedback on the concept here, and find interested 
people to start working on it, for reviewing, advices, giving their 
constraints and implementing if you have time.

I will give a two weeks time limit for the initial review until I start 
working onthis.

Thank you in advance.

Cheers,
Gaëtan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/devel/attachments/20171123/aeb47abc/attachment.html>


More information about the devel mailing list