mirror of
https://github.com/esp8266/Arduino.git
synced 2025-04-19 23:22:16 +03:00
Use custom "ElfToBin" builder for PIO (#6091)
This commit is contained in:
parent
eea9999dc5
commit
2df33de1e7
@ -24,13 +24,10 @@ https://arduino.cc/en/Reference/HomePage
|
||||
|
||||
# Extends: https://github.com/platformio/platform-espressif8266/blob/develop/builder/main.py
|
||||
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
from os.path import isdir, join
|
||||
|
||||
from SCons import Builder, Util
|
||||
from SCons.Script import DefaultEnvironment
|
||||
from SCons import Util
|
||||
from SCons.Script import Builder, DefaultEnvironment
|
||||
|
||||
|
||||
def scons_patched_match_splitext(path, suffixes=None):
|
||||
@ -127,7 +124,26 @@ env.Append(
|
||||
|
||||
LIBSOURCE_DIRS=[
|
||||
join(FRAMEWORK_DIR, "libraries")
|
||||
]
|
||||
],
|
||||
|
||||
BUILDERS=dict(
|
||||
ElfToBin=Builder(
|
||||
action=env.VerboseAction(" ".join([
|
||||
'"$PYTHONEXE"',
|
||||
'"%s"' % env.subst(join(FRAMEWORK_DIR, "tools", "elf2bin.py")),
|
||||
"--eboot", '"%s"' % env.subst(join(
|
||||
FRAMEWORK_DIR, "bootloaders", "eboot", "eboot.elf")),
|
||||
"--app", '"%s"' % "$SOURCE",
|
||||
"--flash_mode", "$BOARD_FLASH_MODE",
|
||||
"--flash_freq", "${__get_board_f_flash(__env__)}",
|
||||
"--flash_size", "${__get_flash_size(__env__)}",
|
||||
"--path", '"%s"' % env.subst(join(
|
||||
platform.get_package_dir("toolchain-xtensa"), "bin")),
|
||||
"--out", '"$TARGET"'
|
||||
]), "Building $TARGET"),
|
||||
suffix=".bin"
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
# copy CCFLAGS to ASFLAGS (-x assembler-with-cpp mode)
|
||||
@ -141,18 +157,18 @@ flatten_cppdefines = env.Flatten(env['CPPDEFINES'])
|
||||
if "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3" in flatten_cppdefines:
|
||||
env.Append(
|
||||
CPPDEFINES=[("NONOSDK3V0", 1)],
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK3V0"),]
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK3V0")]
|
||||
)
|
||||
elif "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x" in flatten_cppdefines:
|
||||
env.Append(
|
||||
CPPDEFINES=[("NONOSDK22x", 1)],
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK22x"),]
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK22x")]
|
||||
)
|
||||
# PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x (default)
|
||||
else:
|
||||
env.Append(
|
||||
CPPDEFINES=[("NONOSDK221", 1)],
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK221"),]
|
||||
LIBPATH=[join(FRAMEWORK_DIR, "tools", "sdk", "lib", "NONOSDK221")]
|
||||
)
|
||||
|
||||
#
|
||||
|
Loading…
x
Reference in New Issue
Block a user