diff options
author | Chris Johns <chrisj@rtems.org> | 2012-04-25 10:12:19 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2012-04-25 10:12:19 +1000 |
commit | 673b40c95705127635af12bda15694fd6ab5a96b (patch) | |
tree | 5c243823cf495ba3702773f94b275a442ac218de /WAF-README |
Import the current project to git.
Diffstat (limited to 'WAF-README')
-rw-r--r-- | WAF-README | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/WAF-README b/WAF-README new file mode 100644 index 0000000..9bbb79f --- /dev/null +++ b/WAF-README @@ -0,0 +1,42 @@ +RTEMS Waf Build Module. + + Chris Johns <chrisj@rtems.org> + +Background + +Waf is a build tool that manages all aspects of building software. You can find +waf here: + + http://waf.googlecode.com/ + +I suggest you read the Waf Book to find about waf and what it does. It is fast, +easy to program and additive. It uses Python as the scripting language so the +build scripts require a Python syntax. It also allows you to use the power of +Python and its full programming language to implement a build system with the +same approach you design the software you embed on RTEMS. Just because it is a +build system does not mean you are limited to using design techniques, tools +and scripting formats from 30 years ago. + +RTEMS Module + +The rtems.py and pkgconfig.py provide the support you need. Place these files +in the top of your source tree where you will add your wscript file. You need +to add a wscript. This example is for a simple hello world program (source not +provided): + + import rtems + + def init(ctx): + rtems.init(ctx) + + def options(opt): + rtems.options(opt) + + def configure(conf): + rtems.configure(conf) + + def build(bld): + rtems.build(bld) + bld.program(target = 'hello-world', + features = 'cprogram', + source = 'main.c') |