The Make Build System

Girts edited this page Mar 2, 2018 · 3 revisions


Supported platforms

Further Information

Clone this wiki locally

The general structure

RIOT uses a recursive Makefile system. The starting point for these structure is typically the Makefile within the application's Makefile. Among other variables it sets the path to the RIOT repository as $RIOTBASE.



Usually, the last thing in an application's Makefile is to include the Makefile.include from $RIOTBASE.


In the simplest case a module just needs to provide a Makefile that does nothing more than including Makefile.base from $RIOTBASE. If the name of your module does not match the name of the directory containing the code, one has to set the variable MODULE as well. E.g. by adding MODULE = FOOBAR as the first line of the module's Makefile.


All RIOT specific variables used in the Make build system are listed and briefly explained in Makefile.vars.