@@ -99,13 +99,30 @@ def is_pio_build():
99
99
ASFLAGS = env .get ("CCFLAGS" , [])[:],
100
100
)
101
101
102
+ # add platform_def file GCC format to CPPDEFINES
103
+ def add_defines_from_platform_def (file ):
104
+ with open (file , "r" ) as fp :
105
+ lines = fp .readlines ()
106
+ for line in lines :
107
+ line = line .strip ()
108
+ if line .startswith ("-D" ):
109
+ defn = line [2 :].split ('=' )
110
+ env .Append ( CPPDEFINES = [ (defn [0 ], defn [1 ]) ] )
111
+
112
+ add_defines_from_platform_def (os .path .join (FRAMEWORK_DIR , "lib" , "platform_def.txt" ))
113
+ add_defines_from_platform_def (os .path .join (FRAMEWORK_DIR , "lib" , chip , "platform_def.txt" ))
114
+ env .Append (
115
+ CPPDEFINES = [
116
+ ("ARDUINO" , 10810 ),
117
+ "ARDUINO_ARCH_RP2040" ,
118
+ ("F_CPU" , "$BOARD_F_CPU" ),
119
+ ("BOARD_NAME" , '\\ "%s\\ "' % env .subst ("$BOARD" )),
120
+ ]
121
+ )
122
+
102
123
if chip == "rp2040" :
103
124
env .Append (
104
125
CPPDEFINES = [
105
- ("ARDUINO" , 10810 ),
106
- "ARDUINO_ARCH_RP2040" ,
107
- ("F_CPU" , "$BOARD_F_CPU" ),
108
- ("BOARD_NAME" , '\\ "%s\\ "' % env .subst ("$BOARD" )),
109
126
"ARM_MATH_CM0_FAMILY" ,
110
127
"ARM_MATH_CM0_PLUS" ,
111
128
"TARGET_RP2040" ,
@@ -118,82 +135,14 @@ def is_pio_build():
118
135
elif (chip == "rp2350" ) or (chip == "rp2350-riscv" ):
119
136
env .Append (
120
137
CPPDEFINES = [
121
- ("ARDUINO" , 10810 ),
122
- "ARDUINO_ARCH_RP2040" ,
123
- ("F_CPU" , "$BOARD_F_CPU" ),
124
- ("BOARD_NAME" , '\\ "%s\\ "' % env .subst ("$BOARD" )),
125
- ("CFG_TUSB_MCU" , "OPT_MCU_RP2040" ),
126
- ("CFG_TUSB_OS" , "OPT_OS_PICO" ),
127
- ("LIB_BOOT_STAGE2_HEADERS" , "1" ),
128
- ("LIB_PICO_ATOMIC" , "1" ),
129
- ("LIB_PICO_BIT_OPS" , "1" ),
130
- ("LIB_PICO_BIT_OPS_PICO" , "1" ),
131
- ("LIB_PICO_CLIB_INTERFACE" , "1" ),
132
- ("LIB_PICO_CRT0" , "1" ),
133
- ("LIB_PICO_CXX_OPTIONS" , "1" ),
134
- ("LIB_PICO_DIVIDER" , "1" ),
135
- ("LIB_PICO_DIVIDER_COMPILER" , "1" ),
136
- ("LIB_PICO_DOUBLE" , "1" ),
137
- ("LIB_PICO_FIX_RP2040_USB_DEVICE_ENUMERATION" , "1" ),
138
- ("LIB_PICO_FLOAT" , "1" ),
139
- ("LIB_PICO_INT64_OPS" , "1" ),
140
- ("LIB_PICO_INT64_OPS_COMPILER" , "1" ),
141
- ("LIB_PICO_MEM_OPS" , "1" ),
142
- ("LIB_PICO_MEM_OPS_COMPILER" , "1" ),
143
- ("LIB_PICO_NEWLIB_INTERFACE" , "1" ),
144
- ("LIB_PICO_PLATFORM" , "1" ),
145
- ("LIB_PICO_PLATFORM_COMPILER" , "1" ),
146
- ("LIB_PICO_PLATFORM_PANIC" , "1" ),
147
- ("LIB_PICO_PLATFORM_SECTIONS" , "1" ),
148
- ("LIB_PICO_RUNTIME" , "1" ),
149
- ("LIB_PICO_RUNTIME_INIT" , "1" ),
150
- ("LIB_PICO_STANDARD_BINARY_INFO" , "1" ),
151
- ("LIB_PICO_STANDARD_LINK" , "1" ),
152
- ("LIB_PICO_SYNC" , "1" ),
153
- ("LIB_PICO_SYNC_CRITICAL_SECTION" , "1" ),
154
- ("LIB_PICO_SYNC_MUTEX" , "1" ),
155
- ("LIB_PICO_SYNC_SEM" , "1" ),
156
- ("LIB_PICO_TIME" , "1" ),
157
- ("LIB_PICO_TIME_ADAPTER" , "1" ),
158
- ("LIB_PICO_UNIQUE_ID" , "1" ),
159
- ("LIB_PICO_UTIL" , "1" ),
160
- ("LIB_TINYUSB_BOARD" , "1" ),
161
- ("LIB_TINYUSB_DEVICE" , "1" ),
162
- ("PICO_32BIT" , "1" ),
163
- ("PICO_BOARD" , '\\ "pico2\\ "' ),
164
- ("PICO_BUILD" , "1" ),
165
- ("PICO_COPY_TO_RAM" , "0" ),
166
- ("PICO_CXX_ENABLE_EXCEPTIONS" , "0" ),
167
- ("PICO_NO_FLASH" , "0" ),
168
- ("PICO_NO_HARDWARE" , "0" ),
169
- ("PICO_ON_DEVICE" , "1" ),
170
- ("PICO_RP2040_USB_DEVICE_ENUMERATION_FIX" , "1" ),
171
- ("PICO_RP2040_USB_DEVICE_UFRAME_FIX" , "1" ),
172
138
("PICO_RP2350" , "1" ),
173
- ("PICO_USE_BLOCKED_RAM" , "0" ),
174
139
"TARGET_RP2350" ,
175
140
("PICO_RP2350" , "1" ),
176
141
# at this point, the main.py builder script hasn't updated upload.maximum_size yet,
177
142
# so it's the original value for the full flash.
178
143
("PICO_FLASH_SIZE_BYTES" , board .get ("upload.maximum_size" ))
179
144
]
180
145
)
181
- if chip == "rp2350" :
182
- env .Append (
183
- CPPDEFINES = [
184
- ("LIB_PICO_DOUBLE_PICO" , "1" ),
185
- ("LIB_PICO_FLOAT_PICO" , "1" ),
186
- ("LIB_PICO_FLOAT_PICO_VFP" , "1" )
187
- ]
188
- )
189
- elif chip == "rp2350-riscv" :
190
- env .Append (
191
- CPPDEFINES = [
192
- ("LIB_PICO_DOUBLE_COMPILER" , "1" ),
193
- ("LIB_PICO_FLOAT_COMPILER" , "1" ),
194
- ("PICO_RISCV" , "1" )
195
- ]
196
- )
197
146
198
147
if chip == "rp2040" :
199
148
toolopts = ["-march=armv6-m" , "-mcpu=cortex-m0plus" , "-mthumb" ]
0 commit comments