1solution:
2  compiler: AC6
3
4  language-C: c11
5  language-CPP: c++17
6  cdefault:
7
8  packs:
9    - pack: ARM::CMSIS@6.0.0
10    - pack: ARM::V2M_MPS3_SSE_300_BSP@1.4.0
11    - pack: ARM::CMSIS-Compiler@2.0.0
12    - pack: ARM::Cortex_DFP@1.0.0
13
14  target-types:
15    - type: MPS3-Corstone-300
16      device: ARM::SSE-300-MPS3
17      board: ARM::V2M-MPS3-SSE-300-FVP
18      define:
19        - CORTEXM
20        - SSE300MPS3
21        - MPS3
22        - ARMCM55
23      misc:
24        - for-compiler: GCC
25          C:
26            - -Wno-sign-compare
27            - -Wno-unused-parameter
28          CPP:
29            - -Wno-sign-compare
30            - -Wno-unused-parameter
31          Link:
32            - --specs=nosys.specs
33        - for-compiler: CLANG
34          C:
35            - -Wno-sign-compare
36            - -Wno-unused-parameter
37          CPP:
38            - -Wno-sign-compare
39            - -Wno-unused-parameter
40          Link:
41            - -lcrt0
42
43    - type: VHT-Corstone-300
44      device: ARM::SSE-300-MPS3
45      board: ARM::V2M-MPS3-SSE-300-FVP
46      define:
47        - CORTEXM
48        - ARMCM55
49        - SSE300MPS3
50        - VHT
51      misc:
52        - for-compiler: GCC
53          Link:
54            - --specs=rdimon.specs
55          Library:
56            - -lrdimon
57        - for-compiler: CLANG
58          Link:
59            - -lcrt0-semihost
60            - -lsemihost
61
62    - type: VHT-Corstone-300-NOMVE
63      device: ARM::SSE-300-MPS3
64      board: ARM::V2M-MPS3-SSE-300-FVP
65      define:
66        - CORTEXM
67        - ARMCM55
68        - SSE300MPS3
69        - VHT
70        - ARM_MATH_AUTOVECTORIZE # The pack force MVE so
71        # we have to disable but autovectorization still generating MVE
72      misc:
73        - for-compiler: AC6
74          C: 
75            - -mcpu=cortex-m55+nomve
76        - for-compiler: GCC
77          C: 
78            - -mcpu=cortex-m55+nomve
79          Link:
80            - --specs=rdimon.specs
81          Library:
82            - -lrdimon
83        - for-compiler: CLANG
84          C: 
85            - -mcpu=cortex-m55+nomve
86          Link:
87            - -lcrt0-semihost
88            - -lsemihost
89
90    - type: VHT_M33
91      device: ARMCM33
92      define:
93        - CORTEXM
94        - ARMCM33
95        - VHT
96      misc:
97        - for-compiler: GCC
98          Link:
99            - --specs=rdimon.specs
100          Library:
101            - -lrdimon
102        - for-compiler: CLANG
103          Link:
104            - -lcrt0-semihost
105            - -lsemihost
106
107    - type: VHT_M7
108      device: ARMCM7
109      define:
110        - CORTEXM
111        - ARMCM7
112        - VHT
113      misc:
114        - for-compiler: GCC
115          Link:
116            - --specs=rdimon.specs
117          Library:
118            - -lrdimon
119        - for-compiler: CLANG
120          Link:
121            - -lcrt0-semihost
122            - -lsemihost
123
124    - type: VHT_M7_UNROLLED
125      device: ARMCM7
126      define:
127        - CORTEXM
128        - ARM_MATH_LOOPUNROLL
129        - ARMCM7_DP
130        - VHT
131      misc:
132        - for-compiler: GCC
133          Link:
134            - --specs=rdimon.specs
135          Library:
136            - -lrdimon
137        - for-compiler: CLANG
138          Link:
139            - -lcrt0-semihost
140            - -lsemihost
141
142    - type: VHT_M4
143      device: ARMCM4
144      define:
145        - CORTEXM
146        - ARMCM4
147        - VHT
148      misc:
149        - for-compiler: GCC
150          Link:
151            - --specs=rdimon.specs
152          Library:
153            - -lrdimon
154        - for-compiler: CLANG
155          Link:
156            - -lcrt0-semihost
157            - -lsemihost
158
159    - type: VHT_M3
160      device: ARMCM3
161      define:
162        - CORTEXM
163        - ARMCM3
164        - VHT
165      misc:
166        - for-compiler: GCC
167          Link:
168            - --specs=rdimon.specs
169          Library:
170            - -lrdimon
171        - for-compiler: CLANG
172          Link:
173            - -lcrt0-semihost
174            - -lsemihost
175
176    - type: VHT_M0P
177      device: ARMCM0P
178      define:
179        - CORTEXM
180        - ARMCM0P
181        - VHT
182      misc:
183        - for-compiler: GCC
184          Link:
185            - --specs=rdimon.specs
186          Library:
187            - -lrdimon
188        - for-compiler: CLANG
189          Link:
190            - -lcrt0-semihost
191            - -lsemihost
192
193
194
195  build-types:
196    - type: Release
197      debug: on
198
199
200  projects:
201    - project: ./test.cproject.yml
202