summaryrefslogtreecommitdiffstats
path: root/wscript
blob: f32fb8dfac1c444bd14a311a0b0221318b8eac53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# 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.
#

rtems_version = "5"
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, version = rtems_version, long_commands = True)

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')
    bld.recurse('c11')

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

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