summaryrefslogtreecommitdiff
path: root/tester/wscript
blob: 674c4fb215a4461afc6689f42d5dc917ac11209f (plain)
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#
# RTEMS Tools Project (http://www.rtems.org/)
# Copyright 2013, 2020 Chris Johns (chrisj@rtems.org)
# All rights reserved.
#
# This file is part of the RTEMS Tools package in 'rtems-tools'.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#

subdirs = ['covoar']

def recurse(ctx):
    for sd in subdirs:
        ctx.recurse(sd)

def init(ctx):
    pass

def options(opt):
    recurse(opt)
    opt.load('python')

def configure(conf):
    recurse(conf)

def build(bld):
    recurse(bld)

    #
    # Install the tester code.
    #
    bld(features = 'py',
        source = ['__init__.py',
                  'rt/__init__.py',
                  'rt/bsps.py',
                  'rt/check.py',
                  'rt/config.py',
                  'rt/console.py',
                  'rt/coverage.py',
                  'rt/exe.py',
                  'rt/gdb.py',
                  'rt/options.py',
                  'rt/report.py',
                  'rt/run.py',
                  'rt/stty.py',
                  'rt/telnet.py',
                  'rt/test.py',
                  'rt/tftp.py',
                  'rt/tftpserver.py'],
        install_from = '.',
        install_path = '${PREFIX}/share/rtems/tester')
    bld(features = 'py',
        source = ['rt/pygdb/__init__.py',
                  'rt/pygdb/mi_parser.py',
                  'rt/pygdb/spark.py'],
        install_from = '.',
        install_path = '${PREFIX}/share/rtems/tester')
    bld.install_files('${PREFIX}/bin',
                      ['rtems-run',
                       'rtems-test',
                       'rtems-bsp-builder',
                       'rtems-tftp-server'],
                      chmod = 0o755)

    #
    # Install the tester configuration files.
    #
    config = bld.path.find_dir('config')
    bld.install_files('${PREFIX}/share/rtems/tester/config',
                      config.ant_glob('**/*'), cwd = config,
                      relative_trick = True)
    rtems = bld.path.find_dir('rtems')
    bld.install_files('${PREFIX}/share/rtems/tester/rtems',
                      rtems.ant_glob('**/*'), cwd = rtems,
                      relative_trick = True)

def install(ctx):
    recurse(ctx)

def clean(ctx):
    recurse(ctx)