Skip to content

Commit 244fd16

Browse files
authored
Update for issue #1722 (#1849)
Documentation clean-up and ensuring packchk tool documentation is visible for the end user.
1 parent cff11c0 commit 244fd16

26 files changed

+51
-1623
lines changed

tools/README.md

Lines changed: 14 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,56 +3,24 @@
33
These command-line tools provide the foundation for Open-CMSIS-Pack-based software development flows and are part of
44
the [**CMSIS-Toolbox**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox).
55

6-
**Package creation and validation**:
6+
## SVD file validation
77

8-
- [**packgen**](./packgen): create a software pack from a `CMake` based software repository.
9-
- [**packchk**](./packchk): semantic validation of a software pack description and the archive content.
8+
- [**svdconv**](https://open-cmsis-pack.github.io/svd-spec/main/svd_SVDConv_pg.html) validates CMSIS-SVD files and
9+
generates CMSIS-compliant device header files.
1010

11-
**Package management** including discovery of components, devices, boards and examples:
11+
## Package creation and validation
1212

13-
- [**cpackget**](./cpackget): download, add, and remove packs and local repositories.
13+
- [**packgen**](./packgen/README.md) creates a software pack from a `CMake` based software repository.
14+
- [**packchk**](./packchk/README.md) validates a software pack description and the archive content.
15+
- [**gen-pack**](https://github.com/Open-CMSIS-Pack/gen-pack) is a library with helper function to assemble a
16+
`gen_pack.sh` script that creates a Open-CMSIS-Pack.
1417

15-
**Project management** for constructing projects from local files and software components:
18+
## Project management
1619

17-
- [**csolution**](projmgr/docs/Manual/Overview.md): manage complex applications with `*.yaml` user input files and
18-
content from CMSIS-Packs; output `*.cprj` files for reproducible builds using [**cbuild**](./buildmgr/cbuild) in
19-
IDEs and CI environments.
20+
- [**csolution**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/docs/build-tools.md#csolution-invocation)
21+
creates build information for embedded applications that consist of one or more related projects.
2022

21-
**Build management** to compile and generate executable program images:
23+
## Build management
2224

23-
- [**cbuild**](./buildmgr/cbuild) (aka CMSIS-Build): convert a `*.cprj` file that describes a single target and
24-
configuration of a project to a `CMake` input; start the build process.
25-
26-
## CMSIS-Toolbox - Download and Install
27-
28-
The **CMSIS-Toolbox** is currently under development but supports already a wide range of use cases.
29-
30-
- [**Download CMSIS-Toolbox**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/releases)
31-
- [**Setup and Installation**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/docs/installation.md)
32-
- [**Implementation Progress**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/docs/progress.md)
33-
34-
## Development Cycle - Create Applications
35-
36-
The tools of the CMSIS-Toolbox provide a command-line interface for creating application projects that are based on
37-
software packs. An IDE that supports import and export of
38-
`*.cprj` project files is included for completeness.
39-
40-
Discover packs for an application by using a [*catalog of software packs*](https://www.keil.com/dd2/pack). These packs
41-
may be installed using [**cpackget**](./cpackget) and by
42-
[**csolution**](projmgr/docs/Manual/Overview.md), for example to list devices or software components. Along with user
43-
code, these items are used to describe the application project in `*.csolution.yml` and `cproject.yml` format and
44-
convert it with [**csolution**](projmgr/docs/Manual/Overview.md) into `*.cprj` files.
45-
46-
These `*.cprj` files describe a reproducible build and are the input for [**cbuild**](./buildmgr/cbuild). Using
47-
different `target-types` at the `*.csolution.yml`-level allows to create applications that run on hardware boards or
48-
simulation models (Arm Virtual Hardware).
49-
50-
## Development Cycle - Software Packs
51-
52-
CMSIS software packs may be created from a CMake based repository with [**packgen**](./packgen) or
53-
directly described in the `*.PDSC` format. These packs should be verified for consistency with
54-
[**packchk**](./packchk) before publishing in a vendor index (`*.vidx`) file.
55-
56-
Once the pack is published, it can be listed in a [*catalog of software packs*](https://www.keil.com/dd2/pack) for being
57-
discovered by developers. With [**cpackget**](./cpackget) these packs can be installed local and used to
58-
create the application program as described above.
25+
- [**cbuild**](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/docs/build-tools.md#cbuild-invocation)
26+
orchestrates the overall build steps utilizing the various tools of the CMSIS-Toolbox and a CMake-based compilation process.

tools/buildmgr/README.md

Lines changed: 0 additions & 73 deletions
This file was deleted.

tools/packchk/README.md

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@ the [CMSIS-Toolbox](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/d
66

77
`packchk` performs the following operations:
88

9+
- Checks the `*.pdsc` file against the PACK.xsd schema file in the installation path.
910
- Reads the content of the specified `*.pdsc` file. The path to this `*.pdsc` file is considered as root directory of
1011
the Software Pack.
1112
- Verifies the existence of all files in the Software Pack that are referenced in the `*.pdsc` file.
1213
- Checks for presence and correctness of mandatory elements such as `<vendor>`, `<version>`, etc. - Optionally, reads
13-
other PDSC files to resolve dependencies on `<apis>`, `<boards>`, and `<conditions>`.
14+
other `*.pdsc` files to resolve dependencies on `<apis>`, `<boards>`, and `<conditions>`.
1415
- Optionally, verifies the element `<url>`.
1516
- Optionally, composes the versioned pack ID from the information contained in the PDSC:
1617
`package:vendor.package:name.release.latest:version`
@@ -21,25 +22,26 @@ the [CMSIS-Toolbox](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/d
2122
## Usage
2223

2324
```bash
24-
packchk [-V] [--version] [-h] [--help]
25-
[OPTIONS...] <PDSC file>
26-
27-
packchk options:
28-
-i, --include arg PDSC file(s) as dependency reference
29-
-b, --log arg Log file
30-
-x, --diag-suppress arg Suppress Messages
31-
-s, --xsd arg Specify PACK.xsd path.
32-
-v, --verbose Verbose mode. Prints extra process information
33-
-w, --warning arg Warning level [0|1|2|3|all] (default: all)
34-
-u, --url arg Verifies that the specified URL matches with the <url>
35-
element in the *.PDSC file (default: "")
36-
-n, --name arg Text file for pack file name (default: "")
37-
-V, --version Print version
38-
-h, --help Print usage
39-
--disable-validation Disable the pdsc validation against the PACK.xsd
40-
--allow-suppress-error Allow to suppress error messages
41-
--break Debug halt after start
42-
--ignore-other-pdsc Ignores other PDSC files in working folder
25+
packchk [-V] [--version] [-h] [--help]
26+
[OPTIONS...] <PDSC file>
27+
28+
packchk options:
29+
-i, --include arg PDSC file(s) as dependency reference
30+
-b, --log arg Log file
31+
-x, --diag-suppress arg Suppress Messages
32+
-s, --xsd arg Specify PACK.xsd path.
33+
-v, --verbose Verbose mode. Prints extra process information
34+
-w, --warning arg Warning level [0|1|2|3|all] (default: all)
35+
-u, --url arg Verifies that the specified URL matches with the
36+
<url> element in the *.PDSC file (default: "")
37+
-n, --name arg Text file for pack file name (default: "")
38+
-V, --version Print version
39+
-h, --help Print usage
40+
--disable-validation Disable the pdsc validation against the PACK.xsd.
41+
--allow-suppress-error Allow to suppress error messages
42+
--break Debug halt after start
43+
--ignore-other-pdsc Ignores other PDSC files in working folder
44+
--pedantic Return with error value on warning
4345
```
4446

4547
## Quick Start
@@ -55,8 +57,8 @@ pack required for integration tests.
5557

5658
### Usage Examples
5759

58-
Run `packchk` on the package description file called MyVendor.MyPack.pdsc.
59-
It verifies the file against the Software Pack that is located in the same directory.
60+
Run `packchk` on the package description file called `MyVendor.MyPack.pdsc`.
61+
It runs a schema check and verifies the file against the Software Pack that is located in the same directory.
6062

6163
```bash
6264
packchk MyVendor.MyPack.pdsc

tools/packgen/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ the [CMSIS-Toolbox](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/d
1717
dependencies have been installed. It is a requirement to be able to
1818
successfully run the CMake generation step in the current environment.
1919

20-
For validating and compressing pack files, the `packchk` and `7z` utilities
20+
For validating and compressing pack files, the `packchk` and `7-zip` utilities
2121
shall be in the `PATH` system environment variable:
2222

23-
- packchk: <https://github.com/Open-CMSIS-Pack/devtools/releases/tag/tools/packchk/1.3.96>
24-
- 7z: <https://www.7-zip.org/>
23+
- [packchk](https://github.com/Open-CMSIS-Pack/devtools/releases/tag/tools%2Fpackchk%2F1.4.1)
24+
- [7-zip](https://www.7-zip.org/)
2525

2626
## Usage
2727

tools/projmgr/docs/Manual/Proposals - OutofScope.md renamed to tools/projmgr/OutofScope.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
# csolution: Proposals (on hold)
23

34
<!-- markdownlint-disable MD013 -->

tools/projmgr/README.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)