Skip to content

Commit b720f0d

Browse files
committed
Merge branch 'release/v6.3.0'
2 parents 1d6e199 + d4e2b6c commit b720f0d

File tree

4 files changed

+45
-19
lines changed

4 files changed

+45
-19
lines changed

boards/esp32s3camlcd.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@
3838
],
3939
"name": "ESP32S3 CAM LCD",
4040
"upload": {
41-
"flash_size": "4MB",
41+
"flash_size": "8MB",
4242
"maximum_ram_size": 327680,
43-
"maximum_size": 16777216,
43+
"maximum_size": 8388608,
4444
"require_upload_port": true,
4545
"speed": 921600
4646
},

builder/frameworks/espidf.py

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
PROJECT_DIR = env.subst("$PROJECT_DIR")
8585
PROJECT_SRC_DIR = env.subst("$PROJECT_SRC_DIR")
8686
CMAKE_API_REPLY_PATH = os.path.join(".cmake", "api", "v1", "reply")
87-
SDKCONFIG_PATH = os.path.expandvars(board.get(
87+
SDKCONFIG_PATH = os.path.expandvars(board.get(
8888
"build.esp-idf.sdkconfig_path",
8989
os.path.join(PROJECT_DIR, "sdkconfig.%s" % env.subst("$PIOENV")),
9090
))
@@ -302,16 +302,25 @@ def get_app_includes(app_config):
302302

303303

304304
def extract_defines(compile_group):
305-
result = []
306-
result.extend(
307-
[
308-
d.get("define").replace('"', '\\"').strip()
309-
for d in compile_group.get("defines", [])
310-
]
311-
)
305+
def _normalize_define(define_string):
306+
define_string = define_string.strip()
307+
if "=" in define_string:
308+
define, value = define_string.split("=", maxsplit=1)
309+
if '"' in value and not value.startswith("\\"):
310+
# Escape only raw values
311+
value = value.replace('"', '\\"')
312+
return (define, value)
313+
return define_string
314+
315+
result = [
316+
_normalize_define(d.get("define", ""))
317+
for d in compile_group.get("defines", []) if d
318+
]
319+
312320
for f in compile_group.get("compileCommandFragments", []):
313321
if f.get("fragment", "").startswith("-D"):
314-
result.append(f["fragment"][2:])
322+
result.append(_normalize_define(f["fragment"][2:]))
323+
315324
return result
316325

317326

@@ -1276,6 +1285,10 @@ def _create_venv(venv_dir):
12761285
"the `variant` field! The default `esp32` variant will be used."
12771286
)
12781287
extra_components.append(ARDUINO_FRAMEWORK_DIR)
1288+
# Add path to internal Arduino libraries so that the LDF will be able to find them
1289+
env.Append(
1290+
LIBSOURCE_DIRS=[os.path.join(ARDUINO_FRAMEWORK_DIR, "libraries")]
1291+
)
12791292

12801293
print("Reading CMake configuration...")
12811294
project_codemodel = get_cmake_code_model(

platform.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"type": "git",
1919
"url": "https://github.com/platformio/platform-espressif32.git"
2020
},
21-
"version": "6.2.0",
21+
"version": "6.3.0",
2222
"frameworks": {
2323
"arduino": {
2424
"package": "framework-arduinoespressif32",
@@ -67,7 +67,7 @@
6767
"type": "framework",
6868
"optional": true,
6969
"owner": "platformio",
70-
"version": "~3.20008.0"
70+
"version": "~3.20009.0"
7171
},
7272
"framework-arduino-mbcwb": {
7373
"type": "framework",
@@ -79,7 +79,7 @@
7979
"type": "framework",
8080
"optional": true,
8181
"owner": "platformio",
82-
"version": "~3.50001.0",
82+
"version": "~3.50002.0",
8383
"optionalVersions": ["~3.40404.0"]
8484
},
8585
"tool-esptoolpy": {

platform.py

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -288,11 +288,24 @@ def configure_debug_session(self, debug_config):
288288
def extract_toolchain_versions(tool_deps):
289289
def _parse_version(original_version):
290290
assert original_version
291-
match = re.match(r"^gcc(\d+)_(\d+)_(\d+)\-esp\-(.+)$", original_version)
292-
if not match:
293-
raise ValueError("Bad package version `%s`" % original_version)
294-
assert len(match.groups()) == 4
295-
return "%s.%s.%s+%s" % (match.groups())
291+
version_patterns = (
292+
r"^gcc(?P<MAJOR>\d+)_(?P<MINOR>\d+)_(?P<PATCH>\d+)-esp-(?P<EXTRA>.+)$",
293+
r"^esp-(?P<EXTRA>.+)-(?P<MAJOR>\d+)\.(?P<MINOR>\d+)\.?(?P<PATCH>\d+)$",
294+
r"^esp-(?P<MAJOR>\d+)\.(?P<MINOR>\d+)\.(?P<PATCH>\d+)(_(?P<EXTRA>.+))?$",
295+
)
296+
for pattern in version_patterns:
297+
match = re.search(pattern, original_version)
298+
if match:
299+
result = "%s.%s.%s" % (
300+
match.group("MAJOR"),
301+
match.group("MINOR"),
302+
match.group("PATCH"),
303+
)
304+
if match.group("EXTRA"):
305+
result = result + "+%s" % match.group("EXTRA")
306+
return result
307+
308+
raise ValueError("Bad package version `%s`" % original_version)
296309

297310
if not tool_deps:
298311
raise ValueError(

0 commit comments

Comments
 (0)