24
24
25
25
# Extends: https://github.com/platformio/platform-espressif8266/blob/develop/builder/main.py
26
26
27
- import os
28
- import subprocess
29
-
30
27
from os .path import isdir , join
31
28
32
- from SCons import Builder , Util
33
- from SCons .Script import DefaultEnvironment
29
+ from SCons import Util
30
+ from SCons .Script import Builder , DefaultEnvironment
34
31
35
32
36
33
def scons_patched_match_splitext (path , suffixes = None ):
@@ -132,7 +129,26 @@ def scons_patched_match_splitext(path, suffixes=None):
132
129
133
130
LIBSOURCE_DIRS = [
134
131
join (FRAMEWORK_DIR , "libraries" )
135
- ]
132
+ ],
133
+
134
+ BUILDERS = dict (
135
+ ElfToBin = Builder (
136
+ action = env .VerboseAction (" " .join ([
137
+ '"$PYTHONEXE"' ,
138
+ '"%s"' % env .subst (join (FRAMEWORK_DIR , "tools" , "elf2bin.py" )),
139
+ "--eboot" , '"%s"' % env .subst (join (
140
+ FRAMEWORK_DIR , "bootloaders" , "eboot" , "eboot.elf" )),
141
+ "--app" , '"%s"' % "$SOURCE" ,
142
+ "--flash_mode" , "$BOARD_FLASH_MODE" ,
143
+ "--flash_freq" , "${__get_board_f_flash(__env__)}" ,
144
+ "--flash_size" , "${__get_flash_size(__env__)}" ,
145
+ "--path" , '"%s"' % env .subst (join (
146
+ platform .get_package_dir ("toolchain-xtensa" ), "bin" )),
147
+ "--out" , '"$TARGET"'
148
+ ]), "Building $TARGET" ),
149
+ suffix = ".bin"
150
+ )
151
+ )
136
152
)
137
153
138
154
# copy CCFLAGS to ASFLAGS (-x assembler-with-cpp mode)
@@ -146,18 +162,18 @@ def scons_patched_match_splitext(path, suffixes=None):
146
162
if "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3" in flatten_cppdefines :
147
163
env .Append (
148
164
CPPDEFINES = [("NONOSDK3V0" , 1 )],
149
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK3V0" ), ]
165
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK3V0" )]
150
166
)
151
167
elif "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x" in flatten_cppdefines :
152
168
env .Append (
153
169
CPPDEFINES = [("NONOSDK22x" , 1 )],
154
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK22x" ), ]
170
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK22x" )]
155
171
)
156
172
# PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x (default)
157
173
else :
158
174
env .Append (
159
175
CPPDEFINES = [("NONOSDK221" , 1 )],
160
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK221" ), ]
176
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK221" )]
161
177
)
162
178
163
179
#
0 commit comments