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 ):
@@ -127,7 +124,26 @@ def scons_patched_match_splitext(path, suffixes=None):
127
124
128
125
LIBSOURCE_DIRS = [
129
126
join (FRAMEWORK_DIR , "libraries" )
130
- ]
127
+ ],
128
+
129
+ BUILDERS = dict (
130
+ ElfToBin = Builder (
131
+ action = env .VerboseAction (" " .join ([
132
+ '"$PYTHONEXE"' ,
133
+ '"%s"' % env .subst (join (FRAMEWORK_DIR , "tools" , "elf2bin.py" )),
134
+ "--eboot" , '"%s"' % env .subst (join (
135
+ FRAMEWORK_DIR , "bootloaders" , "eboot" , "eboot.elf" )),
136
+ "--app" , '"%s"' % "$SOURCE" ,
137
+ "--flash_mode" , "$BOARD_FLASH_MODE" ,
138
+ "--flash_freq" , "${__get_board_f_flash(__env__)}" ,
139
+ "--flash_size" , "${__get_flash_size(__env__)}" ,
140
+ "--path" , '"%s"' % env .subst (join (
141
+ platform .get_package_dir ("toolchain-xtensa" ), "bin" )),
142
+ "--out" , '"$TARGET"'
143
+ ]), "Building $TARGET" ),
144
+ suffix = ".bin"
145
+ )
146
+ )
131
147
)
132
148
133
149
# copy CCFLAGS to ASFLAGS (-x assembler-with-cpp mode)
@@ -141,18 +157,18 @@ def scons_patched_match_splitext(path, suffixes=None):
141
157
if "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3" in flatten_cppdefines :
142
158
env .Append (
143
159
CPPDEFINES = [("NONOSDK3V0" , 1 )],
144
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK3V0" ), ]
160
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK3V0" )]
145
161
)
146
162
elif "PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x" in flatten_cppdefines :
147
163
env .Append (
148
164
CPPDEFINES = [("NONOSDK22x" , 1 )],
149
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK22x" ), ]
165
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK22x" )]
150
166
)
151
167
# PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x (default)
152
168
else :
153
169
env .Append (
154
170
CPPDEFINES = [("NONOSDK221" , 1 )],
155
- LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK221" ), ]
171
+ LIBPATH = [join (FRAMEWORK_DIR , "tools" , "sdk" , "lib" , "NONOSDK221" )]
156
172
)
157
173
158
174
#
0 commit comments