summaryrefslogblamecommitdiffstats
path: root/wscript
blob: 8f976dbf4bbfbaed908a60333454b682febef4f2 (plain) (tree)
1
2
3
4
5
6
                                               
 

                                                                               
 
                                     












                                                                                                 





                                                             











                         
                                  
                        
                      
                                         
                              
                          
                         
                        
                      
                       
                             
                               
                            
                      






                                                                     
# Copyright 2013 Chris Johns (chrisj@rtems.org)
#
# This file's license is 2-clause BSD as in this distribution's LICENSE.2 file.
#

# Waf build script for RTEMS examples
#
# To configure, build and run do:
#
# $ waf configure --rtems=/Users/chris/Development/rtems/build/4.11 \
#                 --rtems-tools=/Users/chris/Development/rtems/4.11 \
#                 --rtems-bsps=sparc/sis
# $ waf
# $ /Users/chris/Development/rtems/4.11/bin/sparc-rtems4.11-run ./build/sparc-rtems4.11-sis/hello
#
# You can use '--rtems-archs=sparc,i386' or '--rtems-bsps=sparc/sis,i386/pc586'
# to build for more than BSP at a time.
#

try:
    import rtems_waf.rtems as rtems
except:
    print 'error: no rtems_waf git submodule; see README.waf'
    import sys
    sys.exit(1)

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.env.CFLAGS += ['-O2','-g']
    bld.recurse('hello')
    bld.recurse('gdb')
    bld.recurse('filesystem/fat_ramdisk')
    bld.recurse('classic_api')
    bld.recurse('file_io')
    bld.recurse('ticker')
    bld.recurse('uboot')
    bld.recurse('led')
    bld.recurse('misc')
    bld.recurse('benchmarks')
    bld.recurse('micromonitor')
    bld.recurse('posix_api')
    bld.recurse('cxx')

def rebuild(ctx):
    import waflib.Options
    waflib.Options.commands.extend(['clean', 'build'])

def tags(ctx):
    ctx.exec_command('etags $(find . -name \*.[sSch])', shell = True)