source: rtems-tools/tester/wscript @ 8a7be63

5
Last change on this file since 8a7be63 was 3e14594, checked in by Chris Johns <chrisj@…>, on 07/06/16 at 07:58:56

Add rtems-bsp-builder.

This is a testing tool that builds BSPs with a range of configure options
for regression testing changes do not break the kernel code.

The builds are controlled by an INI file. The INI configuration has profiles
which define a specific set of architures and BSP to build. There are architectures
which contain BSPs and these further define the options needed to build the BSP.
There is also builds which define the variations each BSP is built with.

The build output can be pointed to any suitable disks so you can control where
the output ends up.

This initial release contains tiers and these are only seeded with something to
test with. It does not define the tiers.

Wanrings, object files and libraries are counted.

  • Property mode set to 100644
File size: 3.1 KB
Line 
1#
2# RTEMS Tools Project (http://www.rtems.org/)
3# Copyright 2013-2016 Chris Johns (chrisj@rtems.org)
4# All rights reserved.
5#
6# This file is part of the RTEMS Tools package in 'rtems-tools'.
7#
8# Redistribution and use in source and binary forms, with or without
9# modification, are permitted provided that the following conditions are met:
10#
11# 1. Redistributions of source code must retain the above copyright notice,
12# this list of conditions and the following disclaimer.
13#
14# 2. Redistributions in binary form must reproduce the above copyright notice,
15# this list of conditions and the following disclaimer in the documentation
16# and/or other materials provided with the distribution.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28# POSSIBILITY OF SUCH DAMAGE.
29#
30
31subdirs = ['covoar']
32
33def recurse(ctx):
34    for sd in subdirs:
35        ctx.recurse(sd)
36
37def init(ctx):
38    pass
39
40def options(opt):
41    recurse(opt)
42    opt.load('python')
43
44def configure(conf):
45    recurse(conf)
46
47def build(bld):
48    recurse(bld)
49
50    #
51    # Install the tester code.
52    #
53    bld(features = 'py',
54        source = ['rt/__init__.py',
55                  'rt/bsps.py',
56                  'rt/check.py',
57                  'rt/config.py',
58                  'rt/console.py',
59                  'rt/gdb.py',
60                  'rt/options.py',
61                  'rt/report.py',
62                  'rt/stty.py',
63                  'rt/test.py'],
64        install_from = '.',
65        install_path = '${PREFIX}/share/rtems/tester')
66    bld(features = 'py',
67        source = ['rt/pygdb/__init__.py',
68                  'rt/pygdb/mi_parser.py',
69                  'rt/pygdb/spark.py'],
70        install_from = '.',
71        install_path = '${PREFIX}/share/rtems/tester')
72    bld.install_files('${PREFIX}/bin',
73                      ['rtems-test',
74                       'rtems-bsp-builder'],
75                      chmod = 0o755)
76
77    #
78    # Install the tester configuration files.
79    #
80    config = bld.path.find_dir('config')
81    bld.install_files('${PREFIX}/share/rtems/tester/config',
82                      config.ant_glob('**/*'), cwd = config,
83                      relative_trick = True)
84    rtems = bld.path.find_dir('rtems')
85    bld.install_files('${PREFIX}/share/rtems/tester/rtems',
86                      rtems.ant_glob('**/*'), cwd = rtems,
87                      relative_trick = True)
88
89def install(ctx):
90    recurse(ctx)
91
92def clean(ctx):
93    recurse(ctx)
Note: See TracBrowser for help on using the repository browser.