Skip to content

Commit

Permalink
Merge branch 'release/v6.3.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
valeros committed May 19, 2023
2 parents 1d6e199 + d4e2b6c commit b720f0d
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 19 deletions.
4 changes: 2 additions & 2 deletions boards/esp32s3camlcd.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@
],
"name": "ESP32S3 CAM LCD",
"upload": {
"flash_size": "4MB",
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 921600
},
Expand Down
31 changes: 22 additions & 9 deletions builder/frameworks/espidf.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@
PROJECT_DIR = env.subst("$PROJECT_DIR")
PROJECT_SRC_DIR = env.subst("$PROJECT_SRC_DIR")
CMAKE_API_REPLY_PATH = os.path.join(".cmake", "api", "v1", "reply")
SDKCONFIG_PATH = os.path.expandvars(board.get(
SDKCONFIG_PATH = os.path.expandvars(board.get(
"build.esp-idf.sdkconfig_path",
os.path.join(PROJECT_DIR, "sdkconfig.%s" % env.subst("$PIOENV")),
))
Expand Down Expand Up @@ -302,16 +302,25 @@ def get_app_includes(app_config):


def extract_defines(compile_group):
result = []
result.extend(
[
d.get("define").replace('"', '\\"').strip()
for d in compile_group.get("defines", [])
]
)
def _normalize_define(define_string):
define_string = define_string.strip()
if "=" in define_string:
define, value = define_string.split("=", maxsplit=1)
if '"' in value and not value.startswith("\\"):
# Escape only raw values
value = value.replace('"', '\\"')
return (define, value)
return define_string

result = [
_normalize_define(d.get("define", ""))
for d in compile_group.get("defines", []) if d
]

for f in compile_group.get("compileCommandFragments", []):
if f.get("fragment", "").startswith("-D"):
result.append(f["fragment"][2:])
result.append(_normalize_define(f["fragment"][2:]))

return result


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

print("Reading CMake configuration...")
project_codemodel = get_cmake_code_model(
Expand Down
6 changes: 3 additions & 3 deletions platform.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"type": "git",
"url": "https://github.com/platformio/platform-espressif32.git"
},
"version": "6.2.0",
"version": "6.3.0",
"frameworks": {
"arduino": {
"package": "framework-arduinoespressif32",
Expand Down Expand Up @@ -67,7 +67,7 @@
"type": "framework",
"optional": true,
"owner": "platformio",
"version": "~3.20008.0"
"version": "~3.20009.0"
},
"framework-arduino-mbcwb": {
"type": "framework",
Expand All @@ -79,7 +79,7 @@
"type": "framework",
"optional": true,
"owner": "platformio",
"version": "~3.50001.0",
"version": "~3.50002.0",
"optionalVersions": ["~3.40404.0"]
},
"tool-esptoolpy": {
Expand Down
23 changes: 18 additions & 5 deletions platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -288,11 +288,24 @@ def configure_debug_session(self, debug_config):
def extract_toolchain_versions(tool_deps):
def _parse_version(original_version):
assert original_version
match = re.match(r"^gcc(\d+)_(\d+)_(\d+)\-esp\-(.+)$", original_version)
if not match:
raise ValueError("Bad package version `%s`" % original_version)
assert len(match.groups()) == 4
return "%s.%s.%s+%s" % (match.groups())
version_patterns = (
r"^gcc(?P<MAJOR>\d+)_(?P<MINOR>\d+)_(?P<PATCH>\d+)-esp-(?P<EXTRA>.+)$",
r"^esp-(?P<EXTRA>.+)-(?P<MAJOR>\d+)\.(?P<MINOR>\d+)\.?(?P<PATCH>\d+)$",
r"^esp-(?P<MAJOR>\d+)\.(?P<MINOR>\d+)\.(?P<PATCH>\d+)(_(?P<EXTRA>.+))?$",
)
for pattern in version_patterns:
match = re.search(pattern, original_version)
if match:
result = "%s.%s.%s" % (
match.group("MAJOR"),
match.group("MINOR"),
match.group("PATCH"),
)
if match.group("EXTRA"):
result = result + "+%s" % match.group("EXTRA")
return result

raise ValueError("Bad package version `%s`" % original_version)

if not tool_deps:
raise ValueError(
Expand Down

0 comments on commit b720f0d

Please sign in to comment.