New Build System Planning

Sebastian Huber sebastian.huber at
Thu Oct 31 07:00:14 UTC 2019


the prototype for the new build system looks good so far. You can find a 
prototype implementation of the new build system here:

I do forced pushes to this branch.

You can test it with:

git clone git://
cd rtems
git checkout --track origin/build
./waf bsp_defaults --rtems-bsps=sparc > bsps.ini
./waf configure

To build all supported BSPs, you can do:

./waf bsp_list | sed 's/\(.*\)/[\1]/' > all.ini
./waf configure --rtems-options=all.ini

My plan for next week is to do the documentation for the User Manual and 
the Software Engineering manual. The new build system introduces the 
specification items (Doorstop YAML files). To be able to do 
cross-references in the build system documentation I would like to first 
integrate the "Requirements Engineering" chapter into the Software 
Engineering manual. I will send a v2 of the "eng: Add Software 
Requirements Engineering chapter" patch next week.

Before I start to convert the 760 test programs, the 211 BSP variants, 
the 449 BSP options, and so on, I would like to get an approval for the 
build system prototype, specification, and documentation. I would like 
to avoid changing things later with a large data set.

The unit test ("testsuites/build/") is currently only a proof of 
concept. It requires Python 3.6+.

Features TODO:

* Adding Ada support (tests). It has a low priority to me in the next 
five months, but I will work on it.

* Tests which use the 'pax' host tool. I suggest to remove the automatic 
build of archives with pax and simply check in the archives as read-only 

* Tests which use the 'rtems-ld' and 'rtems-syms' host tools. Some waf 
magic is necessary here.

* clang support

Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

More information about the devel mailing list