source: rtems-central/rtems_spec_to_x.py @ 5df0bec

Last change on this file since 5df0bec was 5df0bec, checked in by Sebastian Huber <sebastian.huber@…>, on Mar 17, 2020 at 1:28:07 PM

applconfig: Rework

  • Property mode set to 100755
File size: 1.9 KB
Line 
1#!/usr/bin/env python
2# SPDX-License-Identifier: BSD-2-Clause
3""" This script generates glossaries of terms from the specification. """
4
5# Copyright (C) 2019, 2020 embedded brains GmbH (http://www.embedded-brains.de)
6#
7# Redistribution and use in source and binary forms, with or without
8# modification, are permitted provided that the following conditions
9# are met:
10# 1. Redistributions of source code must retain the above copyright
11#    notice, this list of conditions and the following disclaimer.
12# 2. Redistributions in binary form must reproduce the above copyright
13#    notice, this list of conditions and the following disclaimer in the
14#    documentation and/or other materials provided with the distribution.
15#
16# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
20# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26# POSSIBILITY OF SUCH DAMAGE.
27
28import yaml
29
30import rtemsqual.applconfig
31import rtemsqual.items
32import rtemsqual.glossary
33
34
35def main():
36    """ Generates glossaries of terms according to the configuration. """
37    with open("config.ini", "r") as out:
38        config = yaml.safe_load(out.read())
39    item_cache = rtemsqual.items.ItemCache(config["spec"])
40    rtemsqual.glossary.generate(config["glossary"], item_cache)
41    rtemsqual.applconfig.generate(config["appl-config"], item_cache)
42
43
44if __name__ == "__main__":
45    main()
Note: See TracBrowser for help on using the repository browser.