Skip to content

Commit 22ad092

Browse files
Use platform_def files for p.io builds
1 parent bdf3cd2 commit 22ad092

File tree

1 file changed

+21
-72
lines changed

1 file changed

+21
-72
lines changed

tools/platformio-build.py

Lines changed: 21 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -99,13 +99,30 @@ def is_pio_build():
9999
ASFLAGS=env.get("CCFLAGS", [])[:],
100100
)
101101

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+
102123
if chip == "rp2040":
103124
env.Append(
104125
CPPDEFINES=[
105-
("ARDUINO", 10810),
106-
"ARDUINO_ARCH_RP2040",
107-
("F_CPU", "$BOARD_F_CPU"),
108-
("BOARD_NAME", '\\"%s\\"' % env.subst("$BOARD")),
109126
"ARM_MATH_CM0_FAMILY",
110127
"ARM_MATH_CM0_PLUS",
111128
"TARGET_RP2040",
@@ -118,82 +135,14 @@ def is_pio_build():
118135
elif (chip == "rp2350") or (chip == "rp2350-riscv"):
119136
env.Append(
120137
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"),
172138
("PICO_RP2350", "1"),
173-
("PICO_USE_BLOCKED_RAM", "0"),
174139
"TARGET_RP2350",
175140
("PICO_RP2350", "1"),
176141
# at this point, the main.py builder script hasn't updated upload.maximum_size yet,
177142
# so it's the original value for the full flash.
178143
("PICO_FLASH_SIZE_BYTES", board.get("upload.maximum_size"))
179144
]
180145
)
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-
)
197146

198147
if chip == "rp2040":
199148
toolopts = ["-march=armv6-m", "-mcpu=cortex-m0plus", "-mthumb"]

0 commit comments

Comments
 (0)