summaryrefslogtreecommitdiff
path: root/rtemsspec/tests
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2023-11-21 11:13:16 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2023-11-21 11:15:25 +0100
commitcc0ab75a2c65917cee72410c514d9c4a90275f3a (patch)
treee99d96607df54da6c3bbb81b002a0b3c437fc203 /rtemsspec/tests
parent2ddd68a9db4dc56f1d35a4a30691bc1dc987266c (diff)
packagemanual: New
Diffstat (limited to 'rtemsspec/tests')
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/build/disabled.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/build/doc-ddf-sreld.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/build/doc-package-manual.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-ddf-sreld.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-package-manual.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2189.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2365.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2548.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/database.yml10
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/package-build.yml4
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/package-changes.yml16
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/package-status/test-1.yml13
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/package-status/test-2.yml16
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/repo/a.yml22
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/repo/b.yml22
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/source/a.yml6
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/source/archive.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/source/doc-ddf-sreld.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/source/doc-package-manual.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/steps/archive-2.yml23
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/steps/doc-ddf-sreld.yml47
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/steps/doc-package-manual.yml84
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/test-logs/membench-2.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/qdp/test-logs/perf.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/req/api.yml14
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/group.yml2
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/req/mem-basic.yml15
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/req/perf.yml25
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/target-a.yml19
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/target-b.yml19
-rw-r--r--rtemsspec/tests/spec-packagebuild/rtems/val/mem-basic.yml54
-rw-r--r--rtemsspec/tests/test-files/pkg/build/src/doc-ddf-sreld/index.rst6
-rw-r--r--rtemsspec/tests/test-files/pkg/build/src/doc-package-manual/index.rst29
-rw-r--r--rtemsspec/tests/test-files/pkg/build/src/membench.json16
-rw-r--r--rtemsspec/tests/test-files/pkg/test-log-perf.json637
-rw-r--r--rtemsspec/tests/test_packagebuild.py452
36 files changed, 1728 insertions, 8 deletions
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/build/disabled.yml b/rtemsspec/tests/spec-packagebuild/qdp/build/disabled.yml
new file mode 100644
index 00000000..dd02ea89
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/build/disabled.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}
+directory-state-type: generic
+enabled-by: false
+files: []
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/build/doc-ddf-sreld.yml b/rtemsspec/tests/spec-packagebuild/qdp/build/doc-ddf-sreld.yml
new file mode 100644
index 00000000..7ba058de
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/build/doc-ddf-sreld.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}/doc-ddf-sreld
+directory-state-type: generic
+enabled-by: true
+files: []
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/build/doc-package-manual.yml b/rtemsspec/tests/spec-packagebuild/qdp/build/doc-package-manual.yml
new file mode 100644
index 00000000..dff94d6a
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/build/doc-package-manual.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}/doc-package-manual
+directory-state-type: generic
+enabled-by: true
+files: []
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-ddf-sreld.yml b/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-ddf-sreld.yml
new file mode 100644
index 00000000..d8eb494b
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-ddf-sreld.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/deployment-directory}/doc-ddf-sreld
+directory-state-type: generic
+enabled-by: true
+files: []
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-package-manual.yml b/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-package-manual.yml
new file mode 100644
index 00000000..213b23d4
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/deployment/doc-package-manual.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/deployment-directory}/doc-package-manual
+directory-state-type: generic
+enabled-by: true
+files: []
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2189.yml b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2189.yml
new file mode 100644
index 00000000..23828c53
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2189.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights: []
+created: '2019-04-02T15:06:29.497Z'
+enabled-by: true
+identifier: '2189'
+labels: []
+links:
+- role: issue-member
+ uid: database
+milestone: null
+qdp-type: issue
+status: assigned
+subject: Insufficient documentation for rtems_clock_get_tod()
+type: qdp
+updated: '2019-04-02T15:06:29.497Z'
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2365.yml b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2365.yml
new file mode 100644
index 00000000..6eb59a51
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2365.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+created: '2019-04-02T15:06:29.497Z'
+copyrights: []
+enabled-by: true
+identifier: '2365'
+labels: []
+links:
+- role: issue-member
+ uid: database
+milestone: null
+qdp-type: issue
+status: assigned
+subject: Task pre-emption disable is broken due to pseudo ISR tasks
+type: qdp
+updated: '2019-04-02T15:06:29.497Z'
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2548.yml b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2548.yml
new file mode 100644
index 00000000..ab099623
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/2548.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+created: '2019-04-02T15:06:29.497Z'
+copyrights: []
+enabled-by: true
+identifier: '2548'
+labels: []
+links:
+- role: issue-member
+ uid: database
+milestone: null
+qdp-type: issue
+status: assigned
+subject: Problematic integer conversion in rtems_clock_get_tod()
+type: qdp
+updated: '2019-04-02T15:06:29.497Z'
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/database.yml b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/database.yml
new file mode 100644
index 00000000..93617b81
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/issue/rtems/database.yml
@@ -0,0 +1,10 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+format-identifier: '#${.:/identifier}'
+links: []
+name: RTEMS Ticket
+qdp-type: issue-database
+type: qdp
+url: https://devel.rtems.org/ticket/${.:/identifier}
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/package-build.yml b/rtemsspec/tests/spec-packagebuild/qdp/package-build.yml
index 4147fd6f..7ec67413 100644
--- a/rtemsspec/tests/spec-packagebuild/qdp/package-build.yml
+++ b/rtemsspec/tests/spec-packagebuild/qdp/package-build.yml
@@ -26,6 +26,10 @@ links:
- role: build-step
uid: steps/doc-2
- role: build-step
+ uid: steps/doc-ddf-sreld
+- role: build-step
uid: steps/archive
+- role: build-step
+ uid: steps/doc-package-manual
qdp-type: package-build
type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/package-changes.yml b/rtemsspec/tests/spec-packagebuild/qdp/package-changes.yml
new file mode 100644
index 00000000..7819522e
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/package-changes.yml
@@ -0,0 +1,16 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+change-list:
+- description: |
+ Description 1.
+ name: Name 1
+ package-status: package-status/test-1
+- description: |
+ Description 2.
+ name: Name 2
+ package-status: package-status/test-2
+links: []
+qdp-type: package-changes
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-1.yml b/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-1.yml
new file mode 100644
index 00000000..612c6e12
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-1.yml
@@ -0,0 +1,13 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: issue
+ status: open
+ uid: ../issue/rtems/2189
+- role: issue
+ status: open
+ uid: ../issue/rtems/2365
+qdp-type: package-status
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-2.yml b/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-2.yml
new file mode 100644
index 00000000..42fc5c2e
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/package-status/test-2.yml
@@ -0,0 +1,16 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: issue
+ status: closed
+ uid: ../issue/rtems/2189
+- role: issue
+ status: open
+ uid: ../issue/rtems/2365
+- role: issue
+ status: open
+ uid: ../issue/rtems/2548
+qdp-type: package-status
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/repo/a.yml b/rtemsspec/tests/spec-packagebuild/qdp/repo/a.yml
new file mode 100644
index 00000000..0cf7de1a
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/repo/a.yml
@@ -0,0 +1,22 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+branch: qdp
+commit: a412700fd90e6195c255aea2048ae2ef37244df5
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+description: A
+directory: ${../variant:/deployment-directory}/build/src/a
+directory-state-type: repository
+enabled-by: true
+files: []
+hash: null
+links:
+- role: repository
+ uid: ../variant
+origin-branch: null
+origin-commit: null
+origin-commit-url: null
+origin-url: null
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/repo/b.yml b/rtemsspec/tests/spec-packagebuild/qdp/repo/b.yml
new file mode 100644
index 00000000..e40a6f58
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/repo/b.yml
@@ -0,0 +1,22 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+branch: qdp
+commit: 52f06822b8921ad825cb593b792eab7640e26cde
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+description: B
+directory: ${../variant:/deployment-directory}/build/src/b
+directory-state-type: repository
+enabled-by: true
+files: []
+hash: null
+links:
+- role: repository
+ uid: ../variant
+origin-branch: master
+origin-commit: bcef89f2360b97005e490c92fe624ab9dec789e6
+origin-commit-url: https://git.rtems.org/rtems/commit/?id=${.:/origin-commit}
+origin-url: git://git.rtems.org/rtems.git
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/source/a.yml b/rtemsspec/tests/spec-packagebuild/qdp/source/a.yml
index 498a5546..049202ce 100644
--- a/rtemsspec/tests/spec-packagebuild/qdp/source/a.yml
+++ b/rtemsspec/tests/spec-packagebuild/qdp/source/a.yml
@@ -1,7 +1,11 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
copyrights:
- Copyright (C) 2023 embedded brains GmbH & Co. KG
-copyrights-by-license: {}
+copyrights-by-license:
+ BSD-2-Clause:
+ - Copyright (C) 2023 Alice
+ files:
+ - dir/a.txt
directory: ${../variant:/prefix-directory}
directory-state-type: generic
enabled-by: true
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/source/archive.yml b/rtemsspec/tests/spec-packagebuild/qdp/source/archive.yml
new file mode 100644
index 00000000..4361edca
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/source/archive.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/prefix-directory}
+directory-state-type: generic
+enabled-by: true
+files:
+- file: archive.tar.xz
+ hash: null
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/source/doc-ddf-sreld.yml b/rtemsspec/tests/spec-packagebuild/qdp/source/doc-ddf-sreld.yml
new file mode 100644
index 00000000..e08c4301
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/source/doc-ddf-sreld.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}/src/doc-ddf-sreld
+directory-state-type: generic
+enabled-by: true
+files:
+- file: index.rst
+ hash: null
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/source/doc-package-manual.yml b/rtemsspec/tests/spec-packagebuild/qdp/source/doc-package-manual.yml
new file mode 100644
index 00000000..366e6f7f
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/source/doc-package-manual.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}/src/doc-package-manual
+directory-state-type: generic
+enabled-by: true
+files:
+- file: index.rst
+ hash: null
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/steps/archive-2.yml b/rtemsspec/tests/spec-packagebuild/qdp/steps/archive-2.yml
new file mode 100644
index 00000000..726a1796
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/steps/archive-2.yml
@@ -0,0 +1,23 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+archive-file: archive.tar.xz
+archive-strip-prefix: ${../variant:/prefix-directory}/
+build-step-type: archive
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+description: |
+ Description.
+enabled-by: true
+links:
+- hash: null
+ name: member
+ role: input
+ uid: ../source/a
+- name: archive
+ role: output
+ uid: ../source/archive
+- name: verify-package
+ role: output
+ uid: ../deployment/verify-package
+qdp-type: build-step
+type: qdp
+verification-script: verify_package.py
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-ddf-sreld.yml b/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-ddf-sreld.yml
new file mode 100644
index 00000000..c3c4269f
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-ddf-sreld.yml
@@ -0,0 +1,47 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+build-step-type: sphinx
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+description: |
+ Builds the SRelD.
+document-type: ddf-sreld
+document-title: SRelD
+document-toctree-maxdepth: 4
+document-html-help-base-name: SRelD
+document-components:
+- action: copy-and-substitute
+ add-to-index: false
+ source: index.rst
+ destination: source/index.rst
+document-contract: Contract
+document-key: blub
+document-releases: []
+document-contributors: []
+document-copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+document-license: CC-BY-SA-4.0
+document-license-map: {}
+enabled-by: ddf-sreld
+links:
+- hash: null
+ name: spec
+ role: input
+ uid: rtems-item-cache
+- hash: null
+ name: package-changes
+ role: input
+ uid: ../package-changes
+- hash: null
+ name: source
+ role: input
+ uid: ../source/doc-ddf-sreld
+- name: destination
+ role: output
+ uid: ../deployment/doc-ddf-sreld
+- name: build
+ role: output
+ uid: ../build/doc-ddf-sreld
+output-html: null
+output-pdf: null
+qdp-type: build-step
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-package-manual.yml b/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-package-manual.yml
new file mode 100644
index 00000000..1e812b71
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/steps/doc-package-manual.yml
@@ -0,0 +1,84 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+build-step-type: sphinx
+benchmark-variants:
+- description:
+ Description 1
+ build-label: arch/bsp
+ name: Name 1
+ test-log-uid: ../test-logs/perf
+- description: |
+ Description 2
+ build-label: arch/bsp
+ name: Name 2
+ test-log-uid: ../test-logs/perf
+- description: |
+ Description 3
+ build-label: arch/bsp
+ name: Name 3
+ test-log-uid: ../build/disabled
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+description: |
+ Builds the package manual.
+document-type: package-manual
+document-title: Package Manual
+document-toctree-maxdepth: 4
+document-html-help-base-name: PM
+document-components:
+- action: add-to-index
+ add-to-index: true
+ destination: source/glossary.rst
+- action: copy-and-substitute
+ add-to-index: false
+ source: index.rst
+ destination: source/index.rst
+- action: glossary
+ add-to-index: false
+ destination: source/glossary.rst
+ glossary-groups:
+ - /glossary-general
+document-contract: Contract
+document-copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+document-key: blub
+document-releases: []
+document-contributors: []
+enabled-by: package-manual
+links:
+- hash: null
+ name: spec
+ role: input
+ uid: rtems-item-cache
+- hash: null
+ name: membench-results
+ role: input
+ uid: ../test-logs/membench-2
+- hash: null
+ name: package-changes
+ role: input
+ uid: ../package-changes
+- hash: null
+ name: source
+ role: input
+ uid: ../source/doc-package-manual
+- hash: null
+ name: archive
+ role: input
+ uid: ../source/archive
+- hash: null
+ name: verify-package
+ role: input
+ uid: ../deployment/verify-package
+- name: destination
+ role: output
+ uid: ../deployment/doc-package-manual
+- name: build
+ role: output
+ uid: ../build/doc-package-manual
+document-license: CC-BY-SA-4.0
+document-license-map: {}
+memory-benchmark-build-label: arch/bsp
+output-html: null
+output-pdf: null
+qdp-type: build-step
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/test-logs/membench-2.yml b/rtemsspec/tests/spec-packagebuild/qdp/test-logs/membench-2.yml
new file mode 100644
index 00000000..21979ff0
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/test-logs/membench-2.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/build-directory}/src
+directory-state-type: generic
+enabled-by: true
+files:
+- file: membench.json
+ hash: null
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/qdp/test-logs/perf.yml b/rtemsspec/tests/spec-packagebuild/qdp/test-logs/perf.yml
new file mode 100644
index 00000000..66a89a4e
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/qdp/test-logs/perf.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+copyrights-by-license: {}
+directory: ${../variant:/deployment-directory}
+directory-state-type: test-log
+enabled-by: true
+files:
+- file: test-log-perf.json
+ hash: null
+hash: null
+links: []
+patterns: []
+qdp-type: directory-state
+type: qdp
diff --git a/rtemsspec/tests/spec-packagebuild/req/api.yml b/rtemsspec/tests/spec-packagebuild/req/api.yml
new file mode 100644
index 00000000..3c3d4626
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/req/api.yml
@@ -0,0 +1,14 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: requirement-refinement
+ uid: root
+non-functional-type: interface-requirement
+rationale: null
+references: []
+requirement-type: non-functional
+text: |
+ The software product shall provide an API.
+type: requirement
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/group.yml b/rtemsspec/tests/spec-packagebuild/rtems/group.yml
index 7f7864b7..60560a04 100644
--- a/rtemsspec/tests/spec-packagebuild/rtems/group.yml
+++ b/rtemsspec/tests/spec-packagebuild/rtems/group.yml
@@ -12,7 +12,7 @@ links:
- role: interface-placement
uid: header
- role: requirement-refinement
- uid: ../req/root
+ uid: ../req/api
name: Name
text: |
Text.
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/req/mem-basic.yml b/rtemsspec/tests/spec-packagebuild/rtems/req/mem-basic.yml
new file mode 100644
index 00000000..f04e03a9
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/rtems/req/mem-basic.yml
@@ -0,0 +1,15 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2021 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: requirement-refinement
+ uid: ../group
+non-functional-type: quality
+rationale: null
+references: []
+requirement-type: non-functional
+text: |
+ The system shall provide a benchmark program to show the static memory usage
+ of a basic application configuration.
+type: requirement
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/req/perf.yml b/rtemsspec/tests/spec-packagebuild/rtems/req/perf.yml
new file mode 100644
index 00000000..9fd145a9
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/rtems/req/perf.yml
@@ -0,0 +1,25 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: requirement-refinement
+ uid: ../group
+non-functional-type: performance-runtime
+params: {}
+rationale: null
+references: []
+requirement-type: non-functional
+test-body:
+ brief: |
+ Brief.
+ code: |
+ code();
+ description: null
+test-cleanup: null
+test-prepare: null
+test-setup: null
+test-teardown: null
+text: |
+ Text.
+type: requirement
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/target-a.yml b/rtemsspec/tests/spec-packagebuild/rtems/target-a.yml
new file mode 100644
index 00000000..cd2b1ea3
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/rtems/target-a.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Brief target A.
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: true
+description: |
+ Description target A.
+links:
+- role: requirement-refinement
+ uid: ../req/root
+name: Name Target A
+non-functional-type: design-target
+rationale: null
+references: []
+requirement-type: non-functional
+text: |
+ The ${.:/name} shall be a target.
+type: requirement
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/target-b.yml b/rtemsspec/tests/spec-packagebuild/rtems/target-b.yml
new file mode 100644
index 00000000..0b61c867
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/rtems/target-b.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Brief target B.
+copyrights:
+- Copyright (C) 2023 embedded brains GmbH & Co. KG
+enabled-by: target-b
+description: |
+ Description target B.
+links:
+- role: requirement-refinement
+ uid: ../req/root
+name: Name Target B
+non-functional-type: design-target
+rationale: null
+references: []
+requirement-type: non-functional
+text: |
+ The ${.:/name} shall be a target.
+type: requirement
diff --git a/rtemsspec/tests/spec-packagebuild/rtems/val/mem-basic.yml b/rtemsspec/tests/spec-packagebuild/rtems/val/mem-basic.yml
new file mode 100644
index 00000000..8cfcd1cf
--- /dev/null
+++ b/rtemsspec/tests/spec-packagebuild/rtems/val/mem-basic.yml
@@ -0,0 +1,54 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2021 embedded brains GmbH & Co. KG
+enabled-by: true
+links: []
+test-brief: |
+ This static memory usage benchmark program facilitates a basic application
+ configuration.
+test-code: |
+ static void Init( rtems_task_argument arg )
+ {
+ (void) arg;
+
+ /* Nothing to do */
+ }
+
+ #define TASK_ATTRIBUTES RTEMS_DEFAULT_ATTRIBUTES
+
+ #define TASK_STORAGE_SIZE \
+ RTEMS_TASK_STORAGE_SIZE( \
+ RTEMS_MINIMUM_STACK_SIZE, \
+ TASK_ATTRIBUTES )
+
+ #define CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
+
+ #define CONFIGURE_MAXIMUM_FILE_DESCRIPTORS 0
+
+ #define CONFIGURE_DISABLE_NEWLIB_REENTRANCY
+
+ #define CONFIGURE_APPLICATION_DISABLE_FILESYSTEM
+
+ #define CONFIGURE_IDLE_TASK_STORAGE_SIZE RTEMS_MINIMUM_STACK_SIZE
+
+ #define CONFIGURE_MAXIMUM_TASKS 1
+
+ #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
+
+ #define CONFIGURE_INIT_TASK_ATTRIBUTES TASK_ATTRIBUTES
+
+ #define CONFIGURE_INIT_TASK_INITIAL_MODES RTEMS_DEFAULT_MODES
+
+ #define CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE TASK_STORAGE_SIZE
+
+ #define CONFIGURE_INIT
+
+ #include <rtems/confdefs.h>
+test-description: |
+ This resource benchmark is configured for exactly one processor, no clock
+ driver, no Newlib reentrancy support, and no file system.
+test-includes:
+- rtems.h
+test-local-includes: []
+test-target: mem-rtems-basic.c
+type: memory-benchmark
diff --git a/rtemsspec/tests/test-files/pkg/build/src/doc-ddf-sreld/index.rst b/rtemsspec/tests/test-files/pkg/build/src/doc-ddf-sreld/index.rst
new file mode 100644
index 00000000..7df5827a
--- /dev/null
+++ b/rtemsspec/tests/test-files/pkg/build/src/doc-ddf-sreld/index.rst
@@ -0,0 +1,6 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 2023 embedded brains GmbH & Co. KG
+
+${.:/changes}
+${.:/issues}
diff --git a/rtemsspec/tests/test-files/pkg/build/src/doc-package-manual/index.rst b/rtemsspec/tests/test-files/pkg/build/src/doc-package-manual/index.rst
new file mode 100644
index 00000000..8279d40b
--- /dev/null
+++ b/rtemsspec/tests/test-files/pkg/build/src/doc-package-manual/index.rst
@@ -0,0 +1,29 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 2023 embedded brains GmbH & Co. KG
+
+${.:/archive-file}
+${.:/archive-sha512}
+${.:/pkg-config}
+${.:/verify-package-file}
+${.:/verify-package-help}
+${.:/verify-package-sha512}
+${.:/make:dir super clean,}
+${.:/object-size:/rtems/task/obj}
+${.:/benchmark-variants-list}
+${.:/memory-benchmarks}
+${.:/memory-benchmark-section:/rtems/val/mem-basic:.text}
+${.:/memory-benchmark-compare-section:/rtems/val/mem-basic:/rtems/val/mem-basic:.text}
+${.:/memory-benchmark-variants-table}
+${.:/performance-variants-table}
+${.:/clear-benchmark-variants}
+${.:/memory-benchmark-variants-table}
+${.:/performance-variants-table}
+${.:/repositories}
+${.:/pre-qualified-interfaces}
+${.:/targets}
+${.:/change-list}
+${.:/open-issues}
+${.:/license-info}
+${.:/clear-copyrights-by-license}
+${.:/license-info}
diff --git a/rtemsspec/tests/test-files/pkg/build/src/membench.json b/rtemsspec/tests/test-files/pkg/build/src/membench.json
new file mode 100644
index 00000000..69b27a5f
--- /dev/null
+++ b/rtemsspec/tests/test-files/pkg/build/src/membench.json
@@ -0,0 +1,16 @@
+{
+ "arch/bsp": {
+ "membench": {
+ "/rtems/val/mem-basic": {
+ ".bss": 0,
+ ".data": 8,
+ ".noinit": 1,
+ ".rodata": 5,
+ ".text": 123
+ }
+ },
+ "object-sizes": {
+ "/rtems/task/obj": 4
+ }
+ }
+}
diff --git a/rtemsspec/tests/test-files/pkg/test-log-perf.json b/rtemsspec/tests/test-files/pkg/test-log-perf.json
new file mode 100644
index 00000000..85b30111
--- /dev/null
+++ b/rtemsspec/tests/test-files/pkg/test-log-perf.json
@@ -0,0 +1,637 @@
+{
+ "duration": 272.82567146699876,
+ "end-time": "2023-07-11T09:52:01.875951",
+ "reports": [
+ {
+ "command-line": [],
+ "data-ranges": [],
+ "executable": "ts-performance-no-clock-0.exe",
+ "executable-sha512": "EgqXYmQTKT8anJjQCs7OW4S51KtKc4eoGi5G6y8Q_ZakVWGCy_Yf2VuxMgIVDGeljyrhin76CNppSg_T_Y-plw==",
+ "info": {
+ "build": [],
+ "line-begin-of-test": 84,
+ "line-build": 87,
+ "line-end-of-test": 2443,
+ "line-state": 86,
+ "line-tools": 88,
+ "line-version": 85,
+ "name": "TestsuitesPerformanceNoClock0",
+ "state": "EXPECTED_PASS",
+ "tools": "13.2.0",
+ "version": "6.0.0.8c9a5d0e1eae450dd28344be9390936a4573740d"
+ },
+ "output": [
+ "*** BEGIN OF TEST TestsuitesPerformanceNoClock0 ***",
+ "*** TEST VERSION: 6.0.0.8c9a5d0e1eae450dd28344be9390936a4573740d",
+ "*** TEST STATE: EXPECTED_PASS",
+ "*** TEST BUILD:",
+ "*** TEST TOOLS: 13.2.0",
+ "A:TestsuitesPerformanceNoClock0",
+ "S:Platform:RTEMS",
+ "S:Compiler:13.2.0",
+ "S:Version:6.0.0.8c9a5d0e1eae450dd28344be9390936a4573740d",
+ "S:BSP:gr712rc",
+ "S:BuildLabel:sparc/gr712rc/uni/6/qual-only",
+ "S:TargetHash:SHA256:cpI09Ju6orF2eoJcmJi4igeIarypsRNwUxTrZSs9LMg=",
+ "S:RTEMS_DEBUG:0",
+ "S:RTEMS_MULTIPROCESSING:0",
+ "S:RTEMS_POSIX_API:0",
+ "S:RTEMS_PROFILING:0",
+ "S:RTEMS_SMP:0",
+ "B:ScoreCpuValPerf",
+ "M:B:RtemsReqPerf",
+ "M:V:FullCache",
+ "M:N:100",
+ "M:S:99:0.000000275",
+ "M:S:1:0.000000475",
+ "M:MI:0.000000275",
+ "M:P1:0.000000275",
+ "M:Q1:0.000000275",
+ "M:Q2:0.000000275",
+ "M:Q3:0.000000275",
+ "M:P99:0.000000475",
+ "M:MX:0.000000475",
+ "M:MAD:0.000000000",
+ "M:D:0.000027697",
+ "M:E:RtemsReqPerf:D:0.007165362",
+ "M:B:RtemsReqPerf",
+ "M:V:HotCache",
+ "M:N:100",
+ "M:S:100:0.000000275",
+ "M:MI:0.000000275",
+ "M:P1:0.000000275",
+ "M:Q1:0.000000275",
+ "M:Q2:0.000000275",
+ "M:Q3:0.000000275",
+ "M:P99:0.000000275",
+ "M:MX:0.000000275",
+ "M:MAD:0.000000000",
+ "M:D:0.000027497",
+ "M:E:RtemsReqPerf:D:0.000178950",
+ "M:B:RtemsReqPerf",
+ "M:V:DirtyCache",
+ "M:N:100",
+ "M:S:100:0.000002125",
+ "M:MI:0.000002125",
+ "M:P1:0.000002125",
+ "M:Q1:0.000002125",
+ "M:Q2:0.000002125",
+ "M:Q3:0.000002125",
+ "M:P99:0.000002125",
+ "M:MX:0.000002125",
+ "M:MAD:0.000000000",
+ "M:D:0.000212481",
+ "M:E:RtemsReqPerf:D:0.005231937",
+ "M:B:RtemsReqPerf",
+ "M:V:Load/1",
+ "M:N:100",
+ "M:S:100:0.000001062",
+ "M:MI:0.000001062",
+ "M:P1:0.000001062",
+ "M:Q1:0.000001062",
+ "M:Q2:0.000001062",
+ "M:Q3:0.000001062",
+ "M:P99:0.000001062",
+ "M:MX:0.000001062",
+ "M:MAD:0.000000000",
+ "M:D:0.000106241",
+ "M:E:RtemsReqPerf:D:0.005695012",
+ "E:ScoreCpuValPerf:N:1:F:0:D:3.654440",
+ "Z:TestsuitesPerformanceNoClock0:C:7:N:4039:F:0:D:56.967524",
+ "Y:ReportHash:SHA256:D7Ra09o36-RifrdQ5T9G7Flk31HmQL9BYw6Cq4HROA8=",
+ "",
+ "*** END OF TEST TestsuitesPerformanceNoClock0 ***",
+ "",
+ " ",
+ " CPU 0: Program exited normally."
+ ],
+ "test-suite": {
+ "bsp": "gr712rc",
+ "build-label": "sparc/gr712rc/uni/6/qual-only",
+ "compiler": "13.2.0",
+ "duration": 56.967524,
+ "failed-steps-count": 0,
+ "line-begin": 89,
+ "line-bsp": 93,
+ "line-build-label": 94,
+ "line-compiler": 91,
+ "line-duration": 2440,
+ "line-end": 2440,
+ "line-failed-steps-count": 2440,
+ "line-platform": 90,
+ "line-report-hash": 2441,
+ "line-rtems-debug": 96,
+ "line-rtems-multiprocessing": 97,
+ "line-rtems-posix-api": 98,
+ "line-rtems-profiling": 99,
+ "line-rtems-smp": 100,
+ "line-step-count": 2440,
+ "line-target-hash": 95,
+ "line-version": 92,
+ "name": "TestsuitesPerformanceNoClock0",
+ "platform": "RTEMS",
+ "report-hash": "D7Ra09o36-RifrdQ5T9G7Flk31HmQL9BYw6Cq4HROA8=",
+ "report-hash-calculated": "D7Ra09o36-RifrdQ5T9G7Flk31HmQL9BYw6Cq4HROA8=",
+ "rtems-debug": false,
+ "rtems-multiprocessing": false,
+ "rtems-posix-api": false,
+ "rtems-profiling": false,
+ "rtems-smp": false,
+ "step-count": 4039,
+ "target-hash": "cpI09Ju6orF2eoJcmJi4igeIarypsRNwUxTrZSs9LMg=",
+ "test-cases": [
+ {
+ "duration": 3.65444,
+ "failed-steps-count": 0,
+ "line-begin": 101,
+ "line-duration": 222,
+ "line-end": 222,
+ "line-failed-steps-count": 222,
+ "line-step-count": 222,
+ "name": "ScoreCpuValPerf",
+ "runtime-measurements": [
+ {
+ "duration-sum": 2.7697e-05,
+ "duration-total": 0.007165362,
+ "line-begin": 102,
+ "line-end": 116,
+ "mad": 0.0,
+ "max": 4.75e-07,
+ "min": 2.75e-07,
+ "name": "RtemsReqPerf",
+ "p1": 2.75e-07,
+ "p99": 4.75e-07,
+ "q1": 2.75e-07,
+ "q2": 2.75e-07,
+ "q3": 2.75e-07,
+ "sample-count": 100,
+ "samples": [
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 4.75e-07
+ ],
+ "variant": "FullCache"
+ },
+ {
+ "duration-sum": 2.7497e-05,
+ "duration-total": 0.00017895,
+ "line-begin": 117,
+ "line-end": 130,
+ "mad": 0.0,
+ "max": 2.75e-07,
+ "min": 2.75e-07,
+ "name": "RtemsReqPerf",
+ "p1": 2.75e-07,
+ "p99": 2.75e-07,
+ "q1": 2.75e-07,
+ "q2": 2.75e-07,
+ "q3": 2.75e-07,
+ "sample-count": 100,
+ "samples": [
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07,
+ 2.75e-07
+ ],
+ "variant": "HotCache"
+ },
+ {
+ "duration-sum": 0.000212481,
+ "duration-total": 0.005231937,
+ "line-begin": 131,
+ "line-end": 144,
+ "mad": 0.0,
+ "max": 2.125e-06,
+ "min": 2.125e-06,
+ "name": "RtemsReqPerf",
+ "p1": 2.125e-06,
+ "p99": 2.125e-06,
+ "q1": 2.125e-06,
+ "q2": 2.125e-06,
+ "q3": 2.125e-06,
+ "sample-count": 100,
+ "samples": [
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06,
+ 2.125e-06
+ ],
+ "variant": "DirtyCache"
+ },
+ {
+ "duration-sum": 0.000106241,
+ "duration-total": 0.005695012,
+ "line-begin": 145,
+ "line-end": 158,
+ "mad": 0.0,
+ "max": 1.062e-06,
+ "min": 1.062e-06,
+ "name": "RtemsReqPerf",
+ "p1": 1.062e-06,
+ "p99": 1.062e-06,
+ "q1": 1.062e-06,
+ "q2": 1.062e-06,
+ "q3": 1.062e-06,
+ "sample-count": 100,
+ "samples": [
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06,
+ 1.062e-06
+ ],
+ "variant": "Load/1"
+ }
+ ]
+ }
+ ],
+ "version": "6.0.0.8c9a5d0e1eae450dd28344be9390936a4573740d"
+ }
+ }
+ ],
+ "start-time": "2023-07-11T09:47:29.050266"
+}
diff --git a/rtemsspec/tests/test_packagebuild.py b/rtemsspec/tests/test_packagebuild.py
index 5ad614d8..eff36428 100644
--- a/rtemsspec/tests/test_packagebuild.py
+++ b/rtemsspec/tests/test_packagebuild.py
@@ -41,7 +41,9 @@ from rtemsspec.packagebuild import BuildItem, BuildItemMapper, \
build_item_input, PackageBuildDirector
from rtemsspec.packagebuildfactory import create_build_item_factory
from rtemsspec.rtems import RTEMSItemCache
+import rtemsspec.packagemanual
from rtemsspec.specverify import verify
+from rtemsspec.sphinxcontent import make_label
import rtemsspec.sphinxbuilder
import rtemsspec.testrunner
from rtemsspec.testrunner import Executable, Report, TestRunner
@@ -150,14 +152,43 @@ def _sphinx_builder_run_command(args, cwd=None, stdout=None):
if "pkg-config" in args:
stdout.append(" ".join(args))
return 0
- if args[0].endswith("verify"):
- stdout.append("verify")
+ if args[0].endswith("verify_package.py"):
+ stdout.append("verify_package.py")
return 0
return 1
+def _package_manual_generate(content, sections_by_uid, root, table_pivots,
+ mapper):
+ content.add([root.uid, mapper.item.uid] + table_pivots +
+ list(sections_by_uid.keys()))
+
+
+def _clear_benchmark_variants(ctx: ItemGetValueContext) -> str:
+ ctx.item["benchmark-variants"] = [{
+ "description": "Description",
+ "build-label": "foobar",
+ "name": "Name",
+ "test-log-uid": "../build/disabled"
+ }]
+ return "clear benchmark variants"
+
+
+def _clear_copyrights_by_license(ctx: ItemGetValueContext) -> str:
+ ctx.item.cache["/qdp/source/a"]["copyrights-by-license"] = {}
+ return "clear copyrights by license"
+
+
+def _format_path(path: Path) -> str:
+ path_2 = str(path)
+ for char in "/-_.":
+ path_2 = path_2.replace(char, f"{char}\u200b")
+ return path_2
+
+
def test_packagebuild(caplog, tmpdir, monkeypatch):
tmp_dir = Path(tmpdir)
+ tmp_dir_len = len(str(tmp_dir))
item_cache = _create_item_cache(tmp_dir, Path("spec-packagebuild"))
caplog.set_level(logging.WARN)
@@ -196,7 +227,11 @@ def test_packagebuild(caplog, tmpdir, monkeypatch):
assert [item.uid for item in related_items] == ["/rtems/test-case"]
related_types = rtems_item_cache.get_related_types_by_prefix("requirement")
assert related_types == [
- "requirement/functional/function", "requirement/non-functional/design"
+ "requirement/functional/function", "requirement/non-functional/design",
+ "requirement/non-functional/design-target",
+ "requirement/non-functional/interface-requirement",
+ "requirement/non-functional/performance-runtime",
+ "requirement/non-functional/quality"
]
related_items = rtems_item_cache.get_related_interfaces()
assert [item.uid for item in related_items] == [
@@ -204,11 +239,15 @@ def test_packagebuild(caplog, tmpdir, monkeypatch):
"/rtems/if"
]
related_items = rtems_item_cache.get_related_requirements()
- assert [item.uid for item in related_items] == ["/req/root", "/rtems/req"]
+ assert [item.uid for item in related_items] == [
+ "/req/api", "/req/root", "/rtems/req", "/rtems/req/mem-basic",
+ "/rtems/req/perf", "/rtems/target-a"
+ ]
related_items = rtems_item_cache.get_related_interfaces_and_requirements()
assert [item.uid for item in related_items] == [
- "/req/root", "/rtems/domain", "/rtems/group", "/rtems/group-acfg",
- "/rtems/header", "/rtems/if", "/rtems/req"
+ "/req/api", "/req/root", "/rtems/domain", "/rtems/group",
+ "/rtems/group-acfg", "/rtems/header", "/rtems/if", "/rtems/req",
+ "/rtems/req/mem-basic", "/rtems/req/perf", "/rtems/target-a"
]
director.build_package(None, ["/qdp/steps/a"])
@@ -236,6 +275,9 @@ def test_packagebuild(caplog, tmpdir, monkeypatch):
assert c["blub"] == "bar"
assert c.substitute(c.item["blub"], c.item) == "bar"
assert c.substitute("${/qdp/variant:/spec}") == "spec:/qdp/variant"
+ assert c.substitute(
+ "${/qdp/issue/rtems/2189:/name}"
+ ) == "`RTEMS Ticket #2189 <https://devel.rtems.org/ticket/2189>`__"
assert c.variant.uid == "/qdp/variant"
variant_config = c.variant["config"]
c.variant["config"] = ""
@@ -659,3 +701,401 @@ Terms, definitions and abbreviated terms
doc_2.add_component_action("foobar", action)
director.build_package(None, None)
assert action_run == 1
+
+ # Test SRelDBuilder
+ variant["enabled"] = ["ddf-sreld"]
+ director["/qdp/source/doc-ddf-sreld"].load()
+ director.build_package(None, None)
+ ddf_sreld_build = Path(director["/qdp/build/doc-ddf-sreld"].directory)
+ ddf_sreld_index = ddf_sreld_build / "source" / "index.rst"
+ with open(ddf_sreld_index, "r", encoding="utf-8") as src:
+ assert src.read() == f""".. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 2023 embedded brains GmbH & Co. KG
+
+Description 2.
+
+.. _NewIssues:
+
+New issues
+----------
+
+When the QDP of this package version was produced, there were the following new issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+---------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+=========================================================+
+ | RTEMS Ticket | `2548 <https://devel.rtems.org/ticket/2548>`_ | Problematic integer conversion in rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+---------------------------------------------------------+
+
+.. _OpenIssues:
+
+Open issues
+-----------
+
+When the QDP of this package version was produced, there were the following open issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+============================================================+
+ | RTEMS Ticket | `2365 <https://devel.rtems.org/ticket/2365>`_ | Task pre-emption disable is broken due to pseudo ISR tasks |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+
+.. _ClosedIssues:
+
+Closed issues
+-------------
+
+The following issues were closed for this package version.
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+======================================================+
+ | RTEMS Ticket | `2189 <https://devel.rtems.org/ticket/2189>`_ | Insufficient documentation for rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+------------------------------------------------------+
+"""
+
+ # Test PackageManualBuilder
+ variant["enabled"] = ["package-manual"]
+ director["/qdp/source/archive"].load()
+ director["/qdp/source/doc-package-manual"].load()
+ director["/qdp/test-logs/membench-2"].load()
+ pm = director["/qdp/steps/doc-package-manual"]
+ pm.mapper.add_get_value(f"{pm.item.type}:/clear-benchmark-variants",
+ _clear_benchmark_variants)
+ pm.mapper.add_get_value(f"{pm.item.type}:/clear-copyrights-by-license",
+ _clear_copyrights_by_license)
+ monkeypatch.setattr(rtemsspec.packagemanual, "run_command",
+ _sphinx_builder_run_command)
+ monkeypatch.setattr(rtemsspec.packagemanual, "generate",
+ _package_manual_generate)
+ director.build_package(None, None)
+ monkeypatch.undo()
+ pm_build = Path(director["/qdp/build/doc-package-manual"].directory)
+ pm_index = pm_build / "source" / "index.rst"
+ with open(pm_index, "r", encoding="utf-8") as src:
+ assert src.read() == f""".. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 2023 embedded brains GmbH & Co. KG
+
+archive.tar.xz
+6\u200b6\u200b3\u200b0\u200b4\u200b9\u200ba\u200b2\u200b0\u200bd\u200bf\u200be\u200ba\u200b6\u200bb\u200b8\u200bd\u200ba\u200b2\u200b8\u200bb\u200b2\u200be\u200bb\u200b9\u200b0\u200be\u200bd\u200bd\u200bd\u200b1\u200b0\u200bc\u200bc\u200bf\u200b2\u200b8\u200be\u200bf\u200b2\u200b5\u200b1\u200b9\u200b5\u200b6\u200b3\u200b3\u200b1\u200b0\u200bb\u200b9\u200bb\u200bd\u200be\u200b2\u200b5\u200bb\u200b7\u200b2\u200b6\u200b8\u200b4\u200b4\u200b4\u200b0\u200b1\u200b4\u200bc\u200b4\u200b8\u200bc\u200b4\u200b3\u200b8\u200b4\u200be\u200be\u200b5\u200bc\u200b5\u200ba\u200b5\u200b4\u200be\u200b7\u200b8\u200b3\u200b0\u200be\u200b4\u200b5\u200bf\u200bc\u200bd\u200b8\u200b7\u200bd\u200bf\u200b7\u200b9\u200b1\u200b0\u200ba\u200b7\u200bf\u200bd\u200ba\u200b7\u200b7\u200bb\u200b6\u200b8\u200bc\u200b2\u200be\u200bf\u200bd\u200bd\u200b7\u200b5\u200bf\u200b8\u200bd\u200be\u200b2\u200b5\u200be\u200b8
+.. code-block:: none
+
+ $ pkg-config --variable=ABI_FLAGS {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+ pkg-config --variable=ABI_FLAGS {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+
+ $ pkg-config --cflags {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+ pkg-config --cflags {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+
+ $ pkg-config --libs {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+ pkg-config --libs {tmp_dir}/pkg/lib/pkgconfig/sparc-rtems6-gr712rc-qual-only.pc
+verify_package.py
+.. code-block:: none
+
+ $ cd {tmp_dir}
+ $ ./verify_package.py --help
+ verify_package.py
+b​6​3​5​4​f​6​4​a​1​a​2​6​1​a​2​e​7​1​0​1​5​a​b​5​1​f​c​5​d​3​c​a​8​7​6​3​0​5​c​b​a​2​7​3​3​5​5​7​e​b​f​e​3​e​2​c​0​a​0​9​5​1​e​2​c​6​1​e​7​6​3​d​8​a​9​e​d​d​b​b​4​d​4​1​e​5​6​c​e​f​3​d​d​f​8​a​8​0​2​3​e​a​7​e​f​7​a​a​f​e​9​9​6​b​b​b​1​f​a​4​5​4​7​3​3​5​0
+.. code-block:: none
+
+ ​example
+4
+Name 1
+ Description 1
+
+Name 2
+ Description 2
+
+Name 3
+ Description 3
+/rtems/req/mem-basic
+/rtems/req/mem-basic
+/rtems/req/mem-smp-1
+/rtems/val/mem-basic
+123
++0
+.. raw:: latex
+
+ \\begin{{scriptsize}}
+
+.. table::
+ :class: longtable
+ :widths: 35,20,9,9,9,9,9
+
+ +---------------+---------+-------+---------+-------+------+---------+
+ | Specification | Variant | .text | .rodata | .data | .bss | .noinit |
+ +===============+=========+=======+=========+=======+======+=========+
+ +---------------+---------+-------+---------+-------+------+---------+
+
+.. raw:: latex
+
+ \\end{{scriptsize}}
+.. raw:: latex
+
+ \\begin{{scriptsize}}
+
+.. table::
+ :class: longtable
+ :widths: 31,14,19,12,12,12
+
+ +----------------------+-------------{'-' * tmp_dir_len}------------------------------------------------------------------------------------------+---------+----------+-------------+----------+
+ | Specification | Environment {' ' * tmp_dir_len} | Variant | Min [μs] | Median [μs] | Max [μs] |
+ +======================+============={'=' * tmp_dir_len}==========================================================================================+=========+==========+=============+==========+
+ | spec:/rtems/req/perf | `HotCache <{tmp_dir}/pkg/doc/ts/srs/html/requirements.html#spec-req-perf-runtime-environment-hot-cache>`__ | Name 1 | 0.275 | 0.275 | 0.275 |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 2 | +0 % | +0 % | +0 % |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 3 | ? | ? | ? |
+ + +-------------{'-' * tmp_dir_len}------------------------------------------------------------------------------------------+---------+----------+-------------+----------+
+ | | `FullCache <{tmp_dir}/pkg/doc/ts/srs/html/requirements.html#spec-req-perf-runtime-environment-full-cache>`__ | Name 1 | 0.275 | 0.275 | 0.475 |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 2 | +0 % | +0 % | +0 % |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 3 | ? | ? | ? |
+ + +-------------{'-' * tmp_dir_len}------------------------------------------------------------------------------------------+---------+----------+-------------+----------+
+ | | `DirtyCache <{tmp_dir}/pkg/doc/ts/srs/html/requirements.html#spec-req-perf-runtime-environment-dirty-cache>`__ | Name 1 | 2.125 | 2.125 | 2.125 |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 2 | +0 % | +0 % | +0 % |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 3 | ? | ? | ? |
+ + +-------------{'-' * tmp_dir_len}------------------------------------------------------------------------------------------+---------+----------+-------------+----------+
+ | | `Load/1 <{tmp_dir}/pkg/doc/ts/srs/html/requirements.html#spec-req-perf-runtime-environment-load>`__ | Name 1 | 1.062 | 1.062 | 1.062 |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 2 | +0 % | +0 % | +0 % |
+ + + {' ' * tmp_dir_len} +---------+----------+-------------+----------+
+ | | {' ' * tmp_dir_len} | Name 3 | ? | ? | ? |
+ +----------------------+-------------{'-' * tmp_dir_len}------------------------------------------------------------------------------------------+---------+----------+-------------+----------+
+
+.. raw:: latex
+
+ \\end{{scriptsize}}
+clear benchmark variants
+.. raw:: latex
+
+ \\begin{{scriptsize}}
+
+.. table::
+ :class: longtable
+ :widths: 35,20,9,9,9,9,9
+
+ +---------------+---------+-------+---------+-------+------+---------+
+ | Specification | Variant | .text | .rodata | .data | .bss | .noinit |
+ +===============+=========+=======+=========+=======+======+=========+
+ +---------------+---------+-------+---------+-------+------+---------+
+
+.. raw:: latex
+
+ \\end{{scriptsize}}
+There is no performance variants table available.
+.. _GitRepositoryBuildSrcB:
+
+Git Repository: build/src/b
+---------------------------
+
+B
+
+The ``qdp`` branch with
+commit ``52f06822b8921ad825cb593b792eab7640e26cde``
+was used to build the QDP. This branch is checked out after unpacking the
+archive. It is based on
+commit `bcef89f2360b97005e490c92fe624ab9dec789e6 <https://git.rtems.org/rtems/commit/?id=bcef89f2360b97005e490c92fe624ab9dec789e6>`_
+of the ``master`` branch of the ``origin`` remote repository.
+.. _Name:
+
+Name
+----
+
+* identity
+.. _NameTargetA:
+
+Name Target A
+-------------
+
+Brief target A.
+
+Description target A.
+
+.. _Name2:
+
+Name 2
+------
+
+Description 2.
+
+.. _Name2NewIssues:
+
+New issues
+^^^^^^^^^^
+
+When the QDP of this package version was produced, there were the following new issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+---------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+=========================================================+
+ | RTEMS Ticket | `2548 <https://devel.rtems.org/ticket/2548>`_ | Problematic integer conversion in rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+---------------------------------------------------------+
+
+.. _Name2OpenIssues:
+
+Open issues
+^^^^^^^^^^^
+
+When the QDP of this package version was produced, there were the following open issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+============================================================+
+ | RTEMS Ticket | `2365 <https://devel.rtems.org/ticket/2365>`_ | Task pre-emption disable is broken due to pseudo ISR tasks |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+
+.. _Name2ClosedIssues:
+
+Closed issues
+^^^^^^^^^^^^^
+
+The following issues were closed for this package version.
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+======================================================+
+ | RTEMS Ticket | `2189 <https://devel.rtems.org/ticket/2189>`_ | Insufficient documentation for rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+------------------------------------------------------+
+
+.. _Name1:
+
+Name 1
+------
+
+Description 1.
+
+.. _Name1NewIssues:
+
+New issues
+^^^^^^^^^^
+
+When the QDP of this package version was produced, there were the following new issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+============================================================+
+ | RTEMS Ticket | `2189 <https://devel.rtems.org/ticket/2189>`_ | Insufficient documentation for rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | RTEMS Ticket | `2365 <https://devel.rtems.org/ticket/2365>`_ | Task pre-emption disable is broken due to pseudo ISR tasks |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+
+.. _Name1OpenIssues:
+
+Open issues
+^^^^^^^^^^^
+
+When the QDP of this package version was produced,
+there were no open issues associated.
+
+.. _Name1ClosedIssues:
+
+Closed issues
+^^^^^^^^^^^^^
+
+When the QDP of this package version was produced,
+there were no closed issues associated.
+.. _OpenIssues:
+
+Open issues
+-----------
+
+When the QDP of this package version was produced, there were the following open issues associated:
+
+.. table::
+ :class: longtable
+ :widths: 27,14,59
+
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | Database | Identifier | Subject |
+ +==============+===============================================+============================================================+
+ | RTEMS Ticket | `2365 <https://devel.rtems.org/ticket/2365>`_ | Task pre-emption disable is broken due to pseudo ISR tasks |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+ | RTEMS Ticket | `2548 <https://devel.rtems.org/ticket/2548>`_ | Problematic integer conversion in rtems_clock_get_tod() |
+ +--------------+-----------------------------------------------+------------------------------------------------------------+
+All directories and file paths in this section are
+relative to :file:`{_format_path(tmp_dir / 'pkg')}`.
+
+.. _Directory:
+
+Directory - ..
+--------------
+
+.. _Directory FileDirATxt:
+
+File - dir/a.txt
+^^^^^^^^^^^^^^^^
+
+The license file
+:file:`.​.​/​dir/​a.​txt`
+is applicable to this directory or parts of the directory:
+
+.. code-block:: none
+
+ ​A
+
+.. _BSD2ClauseCopyrights:
+
+BSD-2-Clause copyrights
+-----------------------
+
+| © 2023 Alice
+
+.. code-block:: none
+
+ ​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 OWNER 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.
+clear copyrights by license
+All directories and file paths in this section are
+relative to :file:`{_format_path(tmp_dir / 'pkg')}`.
+"""