Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit cf5fff8

Browse filesBrowse files
authored
Refactor PlatformIO build scripts (espressif#6887)
1 parent 3e29702 commit cf5fff8
Copy full SHA for cf5fff8

File tree

Expand file treeCollapse file tree

5 files changed

+141
-283
lines changed
Filter options
Expand file treeCollapse file tree

5 files changed

+141
-283
lines changed

‎tools/platformio-build-esp32.py

Copy file name to clipboardExpand all lines: tools/platformio-build-esp32.py
+2-70Lines changed: 2 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,13 @@
2424

2525
# Extends: https://github.com/platformio/platform-espressif32/blob/develop/builder/main.py
2626

27-
from os.path import abspath, basename, isdir, isfile, join
27+
from os.path import basename, join
2828

2929
from SCons.Script import DefaultEnvironment
3030

3131
env = DefaultEnvironment()
32-
platform = env.PioPlatform()
3332

34-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
35-
assert isdir(FRAMEWORK_DIR)
33+
FRAMEWORK_DIR = env.PioPlatform().get_package_dir("framework-arduinoespressif32")
3634

3735
env.Append(
3836
ASFLAGS=[
@@ -320,71 +318,5 @@
320318
("ARDUINO_BOARD", '\\"%s\\"' % env.BoardConfig().get("name").replace('"', "")),
321319
"ARDUINO_PARTITION_%s" % basename(env.BoardConfig().get(
322320
"build.partitions", "default.csv")).replace(".csv", "").replace("-", "_")
323-
],
324-
325-
LIBSOURCE_DIRS=[
326-
join(FRAMEWORK_DIR, "libraries")
327-
],
328-
329-
FLASH_EXTRA_IMAGES=[
330-
("0x1000", join(FRAMEWORK_DIR, "tools", "sdk", "esp32", "bin", "bootloader_${BOARD_FLASH_MODE}_${__get_board_f_flash(__env__)}.bin")),
331-
("0x8000", join(env.subst("$BUILD_DIR"), "partitions.bin")),
332-
("0xe000", join(FRAMEWORK_DIR, "tools", "partitions", "boot_app0.bin"))
333321
]
334-
+ [
335-
(offset, join(FRAMEWORK_DIR, img))
336-
for offset, img in env.BoardConfig().get(
337-
"upload.arduino.flash_extra_images", []
338-
)
339-
],
340322
)
341-
342-
#
343-
# Target: Build Core Library
344-
#
345-
346-
libs = []
347-
348-
variants_dir = join(FRAMEWORK_DIR, "variants")
349-
350-
if "build.variants_dir" in env.BoardConfig():
351-
variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir"))
352-
353-
if "build.variant" in env.BoardConfig():
354-
env.Append(
355-
CPPPATH=[
356-
join(variants_dir, env.BoardConfig().get("build.variant"))
357-
]
358-
)
359-
env.BuildSources(
360-
join("$BUILD_DIR", "FrameworkArduinoVariant"),
361-
join(variants_dir, env.BoardConfig().get("build.variant"))
362-
)
363-
364-
envsafe = env.Clone()
365-
366-
libs.append(envsafe.BuildLibrary(
367-
join("$BUILD_DIR", "FrameworkArduino"),
368-
join(FRAMEWORK_DIR, "cores", env.BoardConfig().get("build.core"))
369-
))
370-
371-
env.Prepend(LIBS=libs)
372-
373-
#
374-
# Generate partition table
375-
#
376-
377-
fwpartitions_dir = join(FRAMEWORK_DIR, "tools", "partitions")
378-
partitions_csv = env.BoardConfig().get("build.partitions", "default.csv")
379-
env.Replace(
380-
PARTITIONS_TABLE_CSV=abspath(
381-
join(fwpartitions_dir, partitions_csv) if isfile(
382-
join(fwpartitions_dir, partitions_csv)) else partitions_csv))
383-
384-
partition_table = env.Command(
385-
join("$BUILD_DIR", "partitions.bin"),
386-
"$PARTITIONS_TABLE_CSV",
387-
env.VerboseAction('"$PYTHONEXE" "%s" -q $SOURCE $TARGET' % join(
388-
FRAMEWORK_DIR, "tools", "gen_esp32part.py"),
389-
"Generating partitions $TARGET"))
390-
env.Depends("$BUILD_DIR/$PROGNAME$PROGSUFFIX", partition_table)

‎tools/platformio-build-esp32c3.py

Copy file name to clipboardExpand all lines: tools/platformio-build-esp32c3.py
+2-70Lines changed: 2 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,13 @@
2424

2525
# Extends: https://github.com/platformio/platform-espressif32/blob/develop/builder/main.py
2626

27-
from os.path import abspath, basename, isdir, isfile, join
27+
from os.path import basename, join
2828

2929
from SCons.Script import DefaultEnvironment
3030

3131
env = DefaultEnvironment()
32-
platform = env.PioPlatform()
3332

34-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
35-
assert isdir(FRAMEWORK_DIR)
33+
FRAMEWORK_DIR = env.PioPlatform().get_package_dir("framework-arduinoespressif32")
3634

3735
env.Append(
3836
ASFLAGS=[
@@ -313,71 +311,5 @@
313311
("ARDUINO_BOARD", '\\"%s\\"' % env.BoardConfig().get("name").replace('"', "")),
314312
"ARDUINO_PARTITION_%s" % basename(env.BoardConfig().get(
315313
"build.partitions", "default.csv")).replace(".csv", "").replace("-", "_")
316-
],
317-
318-
LIBSOURCE_DIRS=[
319-
join(FRAMEWORK_DIR, "libraries")
320-
],
321-
322-
FLASH_EXTRA_IMAGES=[
323-
("0x0000", join(FRAMEWORK_DIR, "tools", "sdk", "esp32c3", "bin", "bootloader_${BOARD_FLASH_MODE}_${__get_board_f_flash(__env__)}.bin")),
324-
("0x8000", join(env.subst("$BUILD_DIR"), "partitions.bin")),
325-
("0xe000", join(FRAMEWORK_DIR, "tools", "partitions", "boot_app0.bin"))
326314
]
327-
+ [
328-
(offset, join(FRAMEWORK_DIR, img))
329-
for offset, img in env.BoardConfig().get(
330-
"upload.arduino.flash_extra_images", []
331-
)
332-
],
333315
)
334-
335-
#
336-
# Target: Build Core Library
337-
#
338-
339-
libs = []
340-
341-
variants_dir = join(FRAMEWORK_DIR, "variants")
342-
343-
if "build.variants_dir" in env.BoardConfig():
344-
variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir"))
345-
346-
if "build.variant" in env.BoardConfig():
347-
env.Append(
348-
CPPPATH=[
349-
join(variants_dir, env.BoardConfig().get("build.variant"))
350-
]
351-
)
352-
env.BuildSources(
353-
join("$BUILD_DIR", "FrameworkArduinoVariant"),
354-
join(variants_dir, env.BoardConfig().get("build.variant"))
355-
)
356-
357-
envsafe = env.Clone()
358-
359-
libs.append(envsafe.BuildLibrary(
360-
join("$BUILD_DIR", "FrameworkArduino"),
361-
join(FRAMEWORK_DIR, "cores", env.BoardConfig().get("build.core"))
362-
))
363-
364-
env.Prepend(LIBS=libs)
365-
366-
#
367-
# Generate partition table
368-
#
369-
370-
fwpartitions_dir = join(FRAMEWORK_DIR, "tools", "partitions")
371-
partitions_csv = env.BoardConfig().get("build.partitions", "default.csv")
372-
env.Replace(
373-
PARTITIONS_TABLE_CSV=abspath(
374-
join(fwpartitions_dir, partitions_csv) if isfile(
375-
join(fwpartitions_dir, partitions_csv)) else partitions_csv))
376-
377-
partition_table = env.Command(
378-
join("$BUILD_DIR", "partitions.bin"),
379-
"$PARTITIONS_TABLE_CSV",
380-
env.VerboseAction('"$PYTHONEXE" "%s" -q $SOURCE $TARGET' % join(
381-
FRAMEWORK_DIR, "tools", "gen_esp32part.py"),
382-
"Generating partitions $TARGET"))
383-
env.Depends("$BUILD_DIR/$PROGNAME$PROGSUFFIX", partition_table)

‎tools/platformio-build-esp32s2.py

Copy file name to clipboardExpand all lines: tools/platformio-build-esp32s2.py
+3-70Lines changed: 3 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,14 @@
2424

2525
# Extends: https://github.com/platformio/platform-espressif32/blob/develop/builder/main.py
2626

27-
from os.path import abspath, basename, isdir, isfile, join
27+
from os.path import basename, join
2828

2929
from SCons.Script import DefaultEnvironment
3030

3131
env = DefaultEnvironment()
32-
platform = env.PioPlatform()
3332

34-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
35-
assert isdir(FRAMEWORK_DIR)
33+
FRAMEWORK_DIR = env.PioPlatform().get_package_dir("framework-arduinoespressif32")
34+
3635

3736
env.Append(
3837
ASFLAGS=[
@@ -315,71 +314,5 @@
315314
("ARDUINO_BOARD", '\\"%s\\"' % env.BoardConfig().get("name").replace('"', "")),
316315
"ARDUINO_PARTITION_%s" % basename(env.BoardConfig().get(
317316
"build.partitions", "default.csv")).replace(".csv", "").replace("-", "_")
318-
],
319-
320-
LIBSOURCE_DIRS=[
321-
join(FRAMEWORK_DIR, "libraries")
322-
],
323-
324-
FLASH_EXTRA_IMAGES=[
325-
("0x1000", join(FRAMEWORK_DIR, "tools", "sdk", "esp32s2", "bin", "bootloader_${BOARD_FLASH_MODE}_${__get_board_f_flash(__env__)}.bin")),
326-
("0x8000", join(env.subst("$BUILD_DIR"), "partitions.bin")),
327-
("0xe000", join(FRAMEWORK_DIR, "tools", "partitions", "boot_app0.bin"))
328317
]
329-
+ [
330-
(offset, join(FRAMEWORK_DIR, img))
331-
for offset, img in env.BoardConfig().get(
332-
"upload.arduino.flash_extra_images", []
333-
)
334-
],
335318
)
336-
337-
#
338-
# Target: Build Core Library
339-
#
340-
341-
libs = []
342-
343-
variants_dir = join(FRAMEWORK_DIR, "variants")
344-
345-
if "build.variants_dir" in env.BoardConfig():
346-
variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir"))
347-
348-
if "build.variant" in env.BoardConfig():
349-
env.Append(
350-
CPPPATH=[
351-
join(variants_dir, env.BoardConfig().get("build.variant"))
352-
]
353-
)
354-
env.BuildSources(
355-
join("$BUILD_DIR", "FrameworkArduinoVariant"),
356-
join(variants_dir, env.BoardConfig().get("build.variant"))
357-
)
358-
359-
envsafe = env.Clone()
360-
361-
libs.append(envsafe.BuildLibrary(
362-
join("$BUILD_DIR", "FrameworkArduino"),
363-
join(FRAMEWORK_DIR, "cores", env.BoardConfig().get("build.core"))
364-
))
365-
366-
env.Prepend(LIBS=libs)
367-
368-
#
369-
# Generate partition table
370-
#
371-
372-
fwpartitions_dir = join(FRAMEWORK_DIR, "tools", "partitions")
373-
partitions_csv = env.BoardConfig().get("build.partitions", "default.csv")
374-
env.Replace(
375-
PARTITIONS_TABLE_CSV=abspath(
376-
join(fwpartitions_dir, partitions_csv) if isfile(
377-
join(fwpartitions_dir, partitions_csv)) else partitions_csv))
378-
379-
partition_table = env.Command(
380-
join("$BUILD_DIR", "partitions.bin"),
381-
"$PARTITIONS_TABLE_CSV",
382-
env.VerboseAction('"$PYTHONEXE" "%s" -q $SOURCE $TARGET' % join(
383-
FRAMEWORK_DIR, "tools", "gen_esp32part.py"),
384-
"Generating partitions $TARGET"))
385-
env.Depends("$BUILD_DIR/$PROGNAME$PROGSUFFIX", partition_table)

‎tools/platformio-build-esp32s3.py

Copy file name to clipboardExpand all lines: tools/platformio-build-esp32s3.py
+2-70Lines changed: 2 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,13 @@
2424

2525
# Extends: https://github.com/platformio/platform-espressif32/blob/develop/builder/main.py
2626

27-
from os.path import abspath, basename, isdir, isfile, join
27+
from os.path import basename, join
2828

2929
from SCons.Script import DefaultEnvironment
3030

3131
env = DefaultEnvironment()
32-
platform = env.PioPlatform()
3332

34-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
35-
assert isdir(FRAMEWORK_DIR)
33+
FRAMEWORK_DIR = env.PioPlatform().get_package_dir("framework-arduinoespressif32")
3634

3735
env.Append(
3836
ASFLAGS=[
@@ -332,71 +330,5 @@
332330
("ARDUINO_BOARD", '\\"%s\\"' % env.BoardConfig().get("name").replace('"', "")),
333331
"ARDUINO_PARTITION_%s" % basename(env.BoardConfig().get(
334332
"build.partitions", "default.csv")).replace(".csv", "").replace("-", "_")
335-
],
336-
337-
LIBSOURCE_DIRS=[
338-
join(FRAMEWORK_DIR, "libraries")
339-
],
340-
341-
FLASH_EXTRA_IMAGES=[
342-
("0x0000", join(FRAMEWORK_DIR, "tools", "sdk", "esp32s3", "bin", "bootloader_${BOARD_FLASH_MODE}_${__get_board_f_flash(__env__)}.bin")),
343-
("0x8000", join(env.subst("$BUILD_DIR"), "partitions.bin")),
344-
("0xe000", join(FRAMEWORK_DIR, "tools", "partitions", "boot_app0.bin"))
345333
]
346-
+ [
347-
(offset, join(FRAMEWORK_DIR, img))
348-
for offset, img in env.BoardConfig().get(
349-
"upload.arduino.flash_extra_images", []
350-
)
351-
],
352334
)
353-
354-
#
355-
# Target: Build Core Library
356-
#
357-
358-
libs = []
359-
360-
variants_dir = join(FRAMEWORK_DIR, "variants")
361-
362-
if "build.variants_dir" in env.BoardConfig():
363-
variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir"))
364-
365-
if "build.variant" in env.BoardConfig():
366-
env.Append(
367-
CPPPATH=[
368-
join(variants_dir, env.BoardConfig().get("build.variant"))
369-
]
370-
)
371-
env.BuildSources(
372-
join("$BUILD_DIR", "FrameworkArduinoVariant"),
373-
join(variants_dir, env.BoardConfig().get("build.variant"))
374-
)
375-
376-
envsafe = env.Clone()
377-
378-
libs.append(envsafe.BuildLibrary(
379-
join("$BUILD_DIR", "FrameworkArduino"),
380-
join(FRAMEWORK_DIR, "cores", env.BoardConfig().get("build.core"))
381-
))
382-
383-
env.Prepend(LIBS=libs)
384-
385-
#
386-
# Generate partition table
387-
#
388-
389-
fwpartitions_dir = join(FRAMEWORK_DIR, "tools", "partitions")
390-
partitions_csv = env.BoardConfig().get("build.partitions", "default.csv")
391-
env.Replace(
392-
PARTITIONS_TABLE_CSV=abspath(
393-
join(fwpartitions_dir, partitions_csv) if isfile(
394-
join(fwpartitions_dir, partitions_csv)) else partitions_csv))
395-
396-
partition_table = env.Command(
397-
join("$BUILD_DIR", "partitions.bin"),
398-
"$PARTITIONS_TABLE_CSV",
399-
env.VerboseAction('"$PYTHONEXE" "%s" -q $SOURCE $TARGET' % join(
400-
FRAMEWORK_DIR, "tools", "gen_esp32part.py"),
401-
"Generating partitions $TARGET"))
402-
env.Depends("$BUILD_DIR/$PROGNAME$PROGSUFFIX", partition_table)

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.