Skip to content

Commit 63a0b33

Browse files

File tree

4 files changed

+33
-16
lines changed

4 files changed

+33
-16
lines changed

docs/YML-CBuild-Format.md

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ File | Description
1616
[`*.cbuild-set.yml`](#cbuild-setyml) | [Context selection](build-overview.md#working-with-context-set) for the build process, enabled with option [--context-set:](build-tools.md#use-context-set).
1717
[`*.cbuild-run.yml`](#run-and-debug-management) | Contains the information required to [download and debug](#run-and-debug-management) a *csolution project* to a target.
1818

19+
!!! Note CMSIS-Toolbox 2.11 creates the `*.cbuild.yml` and `*.cbuild-run.yml` files in the `out` directory along with the related output files.
20+
1921
## Directory Structure
2022

2123
The `csolution` based projects are portable across different host computers and use, therefore **relative file references**.
@@ -38,14 +40,19 @@ A typical directory structure of a `csolution` based application that uses commo
3840
┣ myapp.cbuild-pack.yml
3941
┣ myapp.cbuild-set.yml
4042
┣ 📂 project1
41-
┃ ┣ mypro1.cproject.yml
42-
┃ ┣ mypro1.cbuild.Debug+Target.yml # file references are relative to directory project1
43+
┃ ┣ mypro1.cproject.yml # file references are relative to directory project1
4344
┣ 📂 project2
44-
┃ ┣ mypro2.cproject.yml
45-
┃ ┣ mypro2.cbuild.Debug+Target.yml # file references are relative to directory project2
45+
┃ ┣ mypro2.cproject.yml # file references are relative to directory project
4646
┣ 📂 layer
47-
┃ ┣ mylayer.clayer.yml
48-
```
47+
┃ ┣ mylayer.clayer.yml # file references are relative to directory layer
48+
┣ 📂 out
49+
┃ ┣ myapp+Target.cbuild-run.yml # file references are relative to directory out
50+
┣ ┣ 📂 mypro1\Target\Debug
51+
┣ ┣ ┣ mypro1.cbuild.Debug+Target.yml # file references are relative to directory out\mypro1\Target\Debug
52+
┣ ┣ 📂 mypro2\Target\Debug
53+
┣ ┣ ┣ mypro2.cbuild.Debug+Target.yml # file references are relative to directory out\mypro2\Target\Debug
54+
55+
```
4956

5057
## Lock Pack Versions
5158

@@ -139,10 +146,10 @@ build-idx:
139146
clayers:
140147
- clayer: $Board-Layer$
141148
cbuilds:
142-
- cbuild: Device/HID/HID.Debug+B-U585I-IOT02A.cbuild.yml
149+
- cbuild: out/HID/B-U585I-IOT02A/Debug/HID.Debug+B-U585I-IOT02A.cbuild.yml
143150
project: HID
144151
configuration: .Debug+B-U585I-IOT02A
145-
- cbuild: Device/MassStorage/MassStorage.Release+B-U585I-IOT02A.cbuild.yml
152+
- cbuild: out/MassStorage/B-U585I-IOT02A/Release/MassStorage.Release+B-U585I-IOT02A.cbuild.yml
146153
project: MassStorage
147154
configuration: .Release+B-U585I-IOT02A
148155
errors: true # indicates error
@@ -558,6 +565,7 @@ Keyword | Description
558565
    [`add-path:`](YML-Input-Format.md#add-path) | Additional include file paths.
559566
    [`misc:`](YML-Input-Format.md#misc) | Literal tool-specific controls.
560567
    `instances:` | Number of component instances configured.
568+
    `maxInstances:` | Maximum number component instances that can be configured.
561569
    [`generator:`](#generator) | Generator information for components that are configurable via a generator.
562570
    `implements:` | Refers to the API that the component is based on.
563571
    [`files:`](#files-of-a-component) | List of files that belong to this component.

docs/YML-Input-Format.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1411,6 +1411,8 @@ The `images:` node under `target-set:` specifies the projects with build-type an
14111411
    `info:` | Optional | Brief description of the image file.
14121412
    [`type:`](#type) | Optional | Specifies an explicit file of the image type.
14131413
    `load-offset:` | Optional | Offset applied to the binary content when loading the image file.
1414+
    [`device:`](#device) | Optional | For image files a pname can be specified to denote the processor that runs the image.
1415+
14141416

14151417
!!! Note
14161418
Either `project-context:` or `image:` is required, but these nodes are mutually exclusive.
@@ -1422,9 +1424,9 @@ Specifies the load mode for an image file. This information is used by programme
14221424

14231425
`load:` | Description
14241426
:------------------------------------|:-------------
1425-
    `image+symbols` | Load both the binary image and the debug symbol information (default for file `type: elf`).
1427+
    `image+symbols` | Load both the binary image and the debug symbol information (default for `project-context` and `image` with file type elf).
14261428
    `symbols` | Load only the debug symbol information.
1427-
    `image` | Load only the binary image (default for other file types).
1429+
    `image` | Load only the binary image (default `image` for other file types).
14281430
    `none` | No content is loaded for this image, however it is part of the build process.
14291431

14301432
#### `type:`
@@ -1449,7 +1451,7 @@ solution:
14491451
board: FRDM-MCXN947
14501452
device: NXP::MCXN947VDF
14511453
target-set:
1452-
- set: // without id, <default> set
1454+
- set: # without id, <default> set
14531455
debugger:
14541456
name: ST-Link
14551457
images:
@@ -1458,12 +1460,14 @@ solution:
14581460
- set: production
14591461
images:
14601462
- project-context: core1.Release
1463+
device: :core1 # specify the pname that runs the image
14611464
- project-context: core0.Release
1465+
device: :core0 # specify the pname that runs the image
14621466
14631467
- type: Custom-HW
14641468
device: NXP::MCXN947VDF
14651469
target-set:
1466-
- set: // without id, <default> set
1470+
- set: # without id, <default> set
14671471
debugger:
14681472
name: ULINKplus
14691473
protocol: swd

docs/build-tools.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ There are several ways to configure the CMSIS-Pack repository:
2222
Orchestrate the overall build steps utilizing the various tools of the CMSIS-Toolbox and a CMake-based compilation process.
2323

2424
```txt
25-
cbuild: Build Invocation 2.9.0 (C) 2022-2025 Arm Ltd. and Contributors
25+
cbuild: Build Invocation 2.11.0 (C) 2022-2025 Arm Ltd. and Contributors
2626
2727
Usage:
2828
cbuild [command] <name>.csolution.yml [options]
@@ -78,15 +78,19 @@ Commands:
7878
list configs Print list of configuration files
7979
list contexts Print list of contexts in a <name>.csolution.yml
8080
list components Print list of available components
81+
list debuggers Print list of debuggers from debug-adapters.yml
8182
list dependencies Print list of unresolved project dependencies
8283
list devices Print list of available device names
8384
list environment Print list of environment configurations
85+
list examples Print list of examples
86+
list templates Print list of templates
8487
list generators Print list of code generators of a given context
8588
list layers Print list of available, referenced and compatible layers
8689
list packs Print list of used packs from the pack repository
8790
list target-sets Print list of target-sets in a <name>.csolution.yml
8891
list toolchains Print list of supported toolchains
8992
run Run code generator
93+
rpc Run remote procedure call server
9094
update-rte Create/update configuration files and validate solution
9195
9296
Options:
@@ -104,7 +108,6 @@ Options:
104108
-N, --no-update-rte Skip creation of RTE directory and files
105109
-o,-O --output arg Base folder for output files, 'outdir' and 'tmpdir' (default "Same as '*.csolution.yml'")
106110
-q, --quiet Run silently, printing only error messages
107-
-R, --relative-paths Print paths relative to project or ${CMSIS_PACK_ROOT}
108111
-S, --context-set Select the context names from cbuild-set.yml for generating the target application
109112
-t, --toolchain arg Selection of the toolchain used in the project optionally with version
110113
-v, --verbose Enable verbose messages
@@ -118,7 +121,8 @@ Use 'csolution <command> -h' for more information about a command.
118121
Manage the installation of *software packs* on the host computer.
119122

120123
``` txt
121-
cpackget version 2.1.7 (C) 2021-2023 Linaro, 2024-2025 Arm Ltd.
124+
cpackget version 2.1.9
125+
(C) 2021-2023 Linaro, 2024-2025 Arm Ltd.
122126
123127
Usage:
124128
cpackget [command] [flags]
@@ -229,7 +233,7 @@ To install software packs from a public web service, run:
229233

230234
```shell
231235
cpackget add Arm::CMSIS
232-
cpackget add Arm::CMSIS@5.9.0 # optional with version specification
236+
cpackget add Arm::CMSIS@6.1.0 # optional with version specification
233237
```
234238

235239
### List Installed Packs

docs/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ Thank you for using the **CMSIS-Toolbox** that provides command-line tools for:
4040

4141
Version | Description
4242
:-----------------:|:-------------------------
43+
2.11.0 | CMSIS-Toolbox [2.11.0](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/releases/tag/2.11.0). For a [`image:`](YML-Input-Format.md#images) the [`device:`](YML-Input-Format.md#device) node can be used to specify a processor `pname`. [`csolution`](build-tools.md#csolution-invocation) adds commands that list debuggers, examples, and templates. The files [`cbuild.yml`](YML-CBuild-Format.md) and [`cbuild-run.yml`](YML-CBuild-Format.md) are now located in `out` directory.
4344
2.10.0 | CMSIS-Toolbox [2.10.0](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/releases/tag/2.10.0). Extends [`load:`](YML-Input-Format.md#load) to `project-context:`, adds a [server mode](Experimental-Features.md#server-mode) and corrects [several issues](https://github.com/orgs/Open-CMSIS-Pack/projects/22/views/7) such as ST-Link debug adapter selection and CubeMX support.
4445
2.9.0 | CMSIS-Toolbox [2.9.0](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/releases/tag/2.9.0). Added the input nodes [`link-time-optimize:`](YML-Input-Format.md#link-time-optimize) and [`target-set:`](YML-Input-Format.md#target-set) to configure application scope and [`debugger:`](YML-Input-Format.md#debugger). The [`images:`](YML-Input-Format.md#images) node (previously `load:`) adds ELF files generated with other systems. The [Run and Debug Configuration](build-overview.md#run-and-debug-configuration) using the [`cbuild-run.yml`](YML-CBuild-Format.md#run-and-debug-management) file is extended for multi-core systems and a range of supported [Debug Adapters](build-operation.md#debug-adapter-integration). See here for [more details](https://github.com/orgs/Open-CMSIS-Pack/projects/19).
4546
2.8.0 | CMSIS-Toolbox [2.8.0](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/releases/tag/2.8.0). New YML input nodes to add [`memory:`](YML-Input-Format.md#memory), configure [`debugger:`](YML-Input-Format.md#debugger), and [`load:`](YML-Input-Format.md#images) to add image files. The [`*.cbuild-run.yml`](YML-CBuild-Format.md#run-and-debug-management) file contains run and debug information for a target. See here for [more details](https://github.com/orgs/Open-CMSIS-Pack/projects/17).

0 commit comments

Comments
 (0)