summaryrefslogtreecommitdiffstats
path: root/rtemsspec
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2022-09-02 07:40:52 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-09-02 10:50:11 +0200
commit51a30258f70d9cfe4780c45815962a9debf945b5 (patch)
tree87cfcd84d43a27350bf44b4e9fa2a4ffaad66100 /rtemsspec
parentspec: Add C interfaces to a group (diff)
downloadrtems-central-51a30258f70d9cfe4780c45815962a9debf945b5.tar.bz2
spec: Add external interfaces to a group
Remove interface container item type.
Diffstat (limited to 'rtemsspec')
-rw-r--r--rtemsspec/interface.py10
-rw-r--r--rtemsspec/tests/spec-interface/asm.yml4
-rw-r--r--rtemsspec/tests/spec-interface/command-line-other.yml17
-rw-r--r--rtemsspec/tests/spec-interface/command-line.yml2
-rw-r--r--rtemsspec/tests/spec-interface/smp.yml4
-rw-r--r--rtemsspec/tests/spec/interface-more.yml4
6 files changed, 27 insertions, 14 deletions
diff --git a/rtemsspec/interface.py b/rtemsspec/interface.py
index 882c442a..949c51f6 100644
--- a/rtemsspec/interface.py
+++ b/rtemsspec/interface.py
@@ -723,8 +723,7 @@ class _HeaderFile:
def add_includes(self, item: Item) -> None:
""" Adds the includes of the item to the header file includes. """
for parent in item.parents("interface-placement"):
- if parent.type == "interface/header-file":
- self._includes.append(parent)
+ self._includes.append(parent)
def _add_child(self, item: Item) -> None:
self._nodes[item.uid] = Node(self, item)
@@ -836,9 +835,10 @@ def _gather_enabled_by_defined(item_level_interfaces: List[str],
item_cache: ItemCache) -> Dict[str, str]:
enabled_by_defined = {} # type: Dict[str, str]
for uid in item_level_interfaces:
- for child in item_cache[uid].children("interface-placement"):
- define = f"defined(${{{child.uid}:/name}})"
- enabled_by_defined[child["name"]] = define
+ for child in item_cache[uid].children("interface-ingroup"):
+ if child.type == "interface/unspecified-define":
+ define = f"defined(${{{child.uid}:/name}})"
+ enabled_by_defined[child["name"]] = define
return enabled_by_defined
diff --git a/rtemsspec/tests/spec-interface/asm.yml b/rtemsspec/tests/spec-interface/asm.yml
index 2e56eab5..ec45b32a 100644
--- a/rtemsspec/tests/spec-interface/asm.yml
+++ b/rtemsspec/tests/spec-interface/asm.yml
@@ -8,9 +8,9 @@ definition:
description: null
enabled-by: true
index-entries: []
-interface-type: define
+interface-type: unspecified-define
links:
-- role: interface-placement
+- role: interface-ingroup
uid: command-line
- role: other
uid: command-line
diff --git a/rtemsspec/tests/spec-interface/command-line-other.yml b/rtemsspec/tests/spec-interface/command-line-other.yml
new file mode 100644
index 00000000..7b317f9f
--- /dev/null
+++ b/rtemsspec/tests/spec-interface/command-line-other.yml
@@ -0,0 +1,17 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: null
+copyrights:
+- Copyright (C) 2022 embedded brains GmbH (http://www.embedded-brains.de)
+definition:
+ defaults: null
+ variants: []
+description: null
+enabled-by: true
+index-entries: []
+interface-type: unspecified-function
+links:
+- role: interface-ingroup
+ uid: command-line
+name: func
+notes: null
+type: interface
diff --git a/rtemsspec/tests/spec-interface/command-line.yml b/rtemsspec/tests/spec-interface/command-line.yml
index 1e343f08..4f5144e2 100644
--- a/rtemsspec/tests/spec-interface/command-line.yml
+++ b/rtemsspec/tests/spec-interface/command-line.yml
@@ -3,7 +3,7 @@ copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
enabled-by: true
index-entries: []
-interface-type: container
+interface-type: group
links:
- role: interface-placement
uid: domain-command-line
diff --git a/rtemsspec/tests/spec-interface/smp.yml b/rtemsspec/tests/spec-interface/smp.yml
index a3765196..82ab5c37 100644
--- a/rtemsspec/tests/spec-interface/smp.yml
+++ b/rtemsspec/tests/spec-interface/smp.yml
@@ -3,9 +3,9 @@ copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
enabled-by: true
index-entries: []
-interface-type: define
+interface-type: unspecified-define
links:
-- role: interface-placement
+- role: interface-ingroup
uid: command-line
name: RTEMS_SMP
type: interface
diff --git a/rtemsspec/tests/spec/interface-more.yml b/rtemsspec/tests/spec/interface-more.yml
index aff1b49a..9719d9b9 100644
--- a/rtemsspec/tests/spec/interface-more.yml
+++ b/rtemsspec/tests/spec/interface-more.yml
@@ -19,10 +19,6 @@ links:
uid: interface
- role: spec-refinement
spec-key: interface-type
- spec-value: container
- uid: interface
-- role: spec-refinement
- spec-key: interface-type
spec-value: define
uid: interface
- role: spec-refinement