New build system update

Sebastian Huber sebastian.huber at embedded-brains.de
Tue Apr 21 12:14:52 UTC 2020


Hello,

as a follow up of the issues mentioned here

https://lists.rtems.org/pipermail/devel/2020-April/059472.html

I modified the build system specification to remove the use of 
Doorstop-specific features. This includes the following attributes:

* active
* derived
* header
* level
* normative
* ref
* reviewed

Sometimes also the "text" attribute.

I changed how links are specified. Links are now an ordered list as 
specified by the specification item editor. Each list element is a 
dictionary with two required keys: "uid" and "role". For the build 
system, the role is "build-dependency". The UID can be absolute or 
relative. Items are stored with their absolute UID in a dictionary. 
Relative links are converted to absolute UIDs using the Python os.path 
module functions. With relative UIDs it is easy to write localized 
specification items:

https://git.rtems.org/sebh/rtems.git/tree/spec/build/bsps/sparc/leon3/grp.yml?h=build

Since links remain now in the order specified by the item editor, I was 
able to remove the "order" attribute and also the "top-level" group 
attribute.

A Doorstop installation is no longer required. The build specification 
can be maintained with a text editor. It could be useful to add a "./waf 
verify-spec" command to verify that the build specification items are sane.




More information about the devel mailing list