From ace2e322299759bae8d365ea0d305cbbe0da2746 Mon Sep 17 00:00:00 2001 From: Gedare Bloom Date: Thu, 21 Nov 2013 16:58:11 -0500 Subject: Waf: Add top-level wscript and rtems_waf module to support waf builds. --- README.waf | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 README.waf (limited to 'README.waf') diff --git a/README.waf b/README.waf new file mode 100644 index 0000000..623e1c2 --- /dev/null +++ b/README.waf @@ -0,0 +1,53 @@ +RTEMS Waf +~~~~~~~~~ + +You can find the Waf project here: + + http://code.google.com/p/waf/ + +Simple instructions on How to set up Waf is here: + + http://www.rtems.org/ftp/pub/rtems/people/chrisj/rtl/rtems-linker/waf.html + +Steps +----- + +1. Build or install the tools. In this example the path is + $HOME/Development/rtems/4.11. + +2. Build and install the RTEMS Board Support Packages you want to use. In this + example the path is $HOME/Development/rtems/build/4.11. + +3. Unpack this package somewhere, anywhere on your disk and change into the top + level directory. + +4. Configure with your specific settings. In this case the path to the tools + and RTEMS and provided on the command line and so do not need to be in your + path or environment [1] and we limit the build to 'sparc/sis' BSP: + + $ waf configure --rtems=$HOME/Development/rtems/build/4.11 \ + --rtems-tools=$HOME/Development/rtems/4.11 \ + --rtems-bsps=sparc/sis + + You can use '--rtems-archs=sparc,i386' or + '--rtems-bsps=sparc/sis,i386/pc586' to build for more than BSP at a time. + +5. Build: + + $ waf + +6. Run the executable using the simulator: + + $ $HOME/Development/rtems/4.11/bin/sparc-rtems4.11-run \ + ./build/sparc-rtems4.11-sis/hello + +[1] It is good practice to keep your environment as empty as possible. Setting + paths to tools or specific values to configure or control builds is + dangerous because settings can leak between different builds and change + what you expect a build to do. The waf tool used here lets you specify on + the command line the tools and RTEMS paths and this is embedded in waf's + configuration information. If you have a few source trees working at any + one time with different tool sets or configurations you can easly move + between them safe in the knowledge that one build will not infect another. + + -- cgit v1.2.3