]> begriffs open source - cmsis/blob - CMSIS/CoreValidation/Project/Validation.csolution.yml
Add new compiler macros:
[cmsis] / CMSIS / CoreValidation / Project / Validation.csolution.yml
1 # yaml-language-server: $schema=https://raw.githubusercontent.com/Open-CMSIS-Pack/devtools/schemas/projmgr/1.3.0/tools/projmgr/schemas/csolution.schema.json
2
3 solution:
4   packs:
5     - pack: ARM::CMSIS
6       path: ../../../
7
8   misc:
9     - compiler: AC6
10       C: [-std=c99, -gdwarf-4, -ffunction-sections]
11       Link: [--entry=Reset_Handler, --symbols, --map]
12     - compiler: GCC
13       C: [-std=gnu99, -gdwarf-2, -ffunction-sections, -fdata-sections]
14       Link: [--specs=nano.specs, --specs=rdimon.specs]
15     - compiler: IAR
16       Link: [--semihosting]
17
18   target-types:
19     #CM0
20     - type: CM0
21       device: ARMCM0
22
23     #CM0plus
24     - type: CM0plus
25       device: ARMCM0P
26
27     #CM3
28     - type: CM3
29       device: ARMCM3
30
31     #CM4
32     - type: CM4
33       device: ARMCM4
34
35     #CM4FP
36     - type: CM4FP
37       device: ARMCM4_FP
38
39     #CM7
40     - type: CM7
41       device: ARMCM7
42
43     #CM7SP
44     - type: CM7SP
45       device: ARMCM7_SP
46
47     #CM7DP
48     - type: CM7DP
49       device: ARMCM7_DP
50
51     #CM23
52     - type: CM23
53       device: ARMCM23
54       processor:
55         trustzone: off
56
57      #CM23S
58     - type: CM23S
59       device: ARMCM23_TZ
60       processor:
61         trustzone: secure
62
63      #CM23NS
64     - type: CM23NS
65       device: ARMCM23_TZ
66       processor:
67         trustzone: non-secure
68
69     #CM33
70     - type: CM33
71       device: ARMCM33_DSP_FP
72       processor:
73         trustzone: off
74
75      #CM33S
76     - type: CM33S
77       device: ARMCM33_DSP_FP_TZ
78       processor:
79         trustzone: secure
80
81      #CM33NS
82     - type: CM33NS
83       device: ARMCM33_DSP_FP_TZ
84       processor:
85         trustzone: non-secure
86
87     #CM35P
88     - type: CM35P
89       device: ARMCM35P_DSP_FP
90       processor:
91         trustzone: off
92
93      #CM35PS
94     - type: CM35PS
95       device: ARMCM35P_DSP_FP_TZ
96       processor:
97         trustzone: secure
98
99      #CM35PNS
100     - type: CM35PNS
101       device: ARMCM35P_DSP_FP_TZ
102       processor:
103         trustzone: non-secure
104
105      #CM55S
106     - type: CM55S
107       device: ARMCM55
108       processor:
109         trustzone: secure
110
111      #CM55NS
112     - type: CM55NS
113       device: ARMCM55
114       processor:
115         trustzone: non-secure
116
117      #CM85S
118     - type: CM85S
119       device: ARMCM85
120       processor:
121         trustzone: secure
122
123      #CM85NS
124     - type: CM85NS
125       device: ARMCM85
126       processor:
127         trustzone: non-secure
128
129     #CA5
130     - type: CA5
131       device: ARMCA5
132
133     #CA7
134     - type: CA7
135       device: ARMCA7
136
137     #CA9
138     - type: CA9
139       device: ARMCA9
140
141   build-types:
142   #AC6_low, AC6_mid, AC6_high, AC6_size, AC6_OZ,
143     - type: AC6_low
144       compiler: AC6
145       misc:
146         - compiler: AC6
147           C: [-O1]
148     - type: AC6_mid
149       compiler: AC6
150       misc:
151         - compiler: AC6
152           C: [-O2]
153     - type: AC6_high
154       compiler: AC6
155       misc:
156         - compiler: AC6
157           C: [-O3]
158     - type: AC6_size
159       compiler: AC6
160       misc:
161         - compiler: AC6
162           C: [-Os]
163     - type: AC6_tiny
164       compiler: AC6
165       misc:
166         - compiler: AC6
167           C: [-Oz]
168   #GCC_low, GCC_mid, GCC_high, GCC_size, GCC_OZ,
169     - type: GCC_low
170       compiler: GCC
171       misc:
172         - compiler: GCC
173           C: [-O1]
174     - type: GCC_mid
175       compiler: GCC
176       misc:
177         - compiler: GCC
178           C: [-O2]
179     - type: GCC_high
180       compiler: GCC
181       misc:
182         - compiler: GCC
183           C: [-O3]
184     - type: GCC_size
185       compiler: GCC
186       misc:
187         - compiler: GCC
188           C: [-Os]
189     - type: GCC_tiny
190       compiler: GCC
191       misc:
192         - compiler: GCC
193           C: [-Ofast]
194   #IAR_low
195     - type: IAR_low
196       compiler: IAR
197       misc:
198         - compiler: IAR
199           C: [-Ol, --dlib_config DLib_Config_Full.h]
200     - type: IAR_mid
201       compiler: IAR
202       misc:
203         - compiler: IAR
204           C: [-Om, --dlib_config DLib_Config_Full.h]
205     - type: IAR_high
206       compiler: IAR
207       misc:
208         - compiler: IAR
209           C: [-Oh, --dlib_config DLib_Config_Full.h]
210     - type: IAR_size
211       compiler: IAR
212       misc:
213         - compiler: IAR
214           C: [-Ohz, --dlib_config DLib_Config_Full.h]
215     - type: IAR_tiny
216       compiler: IAR
217       misc:
218         - compiler: IAR
219           C: [-Ohs, --dlib_config DLib_Config_Full.h]
220
221   projects:
222     - project: ./Validation.cproject.yml
223
224     - project: ./Bootloader.cproject.yml
225       for-type:
226         - +CM23S
227         - +CM33S
228         - +CM35PS
229         - +CM55S
230         - +CM85S
231
232   output-dirs:
233     cprjdir: ./$Project$.$BuildType$+$TargetType$
234     intdir:  ./$Project$.$BuildType$+$TargetType$/$Project$.$BuildType$+$TargetType$_intdir
235     outdir:  ./$Project$.$BuildType$+$TargetType$/$Project$.$BuildType$+$TargetType$_outdir