@@ -63,14 +63,6 @@ LD_LIBS_SEARCH=""
63
63
LD_SCRIPTS=" "
64
64
LD_SCRIPT_DIRS=" "
65
65
66
- PIO_CC_FLAGS=" "
67
- PIO_C_FLAGS=" "
68
- PIO_CXX_FLAGS=" "
69
- PIO_AS_FLAGS=" "
70
- PIO_LD_FLAGS=" "
71
- PIO_LD_FUNCS=" "
72
- PIO_LD_SCRIPTS=" "
73
-
74
66
TOOLCHAIN_PREFIX=" "
75
67
if [ " $IS_XTENSA " = " y" ]; then
76
68
TOOLCHAIN=" xtensa-$IDF_TARGET -elf"
@@ -105,8 +97,6 @@ for item in "${@:2:${#@}-5}"; do
105
97
if [[ " ${item: 2: 7} " != " ARDUINO" ]] && [[ " $item " != " -DESP32=ESP32" ]]; then # skip ARDUINO defines
106
98
DEFINES+=" $item "
107
99
fi
108
- elif [ " $prefix " = " -O" ]; then
109
- PIO_CC_FLAGS+=" $item "
110
100
elif [[ " $item " != " -Wall" && " $item " != " -Werror=all" && " $item " != " -Wextra" ]]; then
111
101
if [[ " ${item: 0: 23} " != " -mfix-esp32-psram-cache" && " ${item: 0: 18} " != " -fmacro-prefix-map" && " ${item: 0: 20} " != " -fdiagnostics-color=" && " ${item: 0: 19} " != " -fdebug-prefix-map=" ]]; then
112
102
C_FLAGS+=" $item "
@@ -124,11 +114,6 @@ for item in "${@:2:${#@}-5}"; do
124
114
if [[ " $prefix " != " -I" && " $prefix " != " -D" && " $item " != " -Wall" && " $item " != " -Werror=all" && " $item " != " -Wextra" && " $prefix " != " -O" ]]; then
125
115
if [[ " ${item: 0: 23} " != " -mfix-esp32-psram-cache" && " ${item: 0: 18} " != " -fmacro-prefix-map" && " ${item: 0: 20} " != " -fdiagnostics-color=" && " ${item: 0: 19} " != " -fdebug-prefix-map=" ]]; then
126
116
AS_FLAGS+=" $item "
127
- if [[ $C_FLAGS == * " $item " * ]]; then
128
- PIO_CC_FLAGS+=" $item "
129
- else
130
- PIO_AS_FLAGS+=" $item "
131
- fi
132
117
fi
133
118
fi
134
119
done
@@ -143,20 +128,10 @@ for item in "${@:2:${#@}-5}"; do
143
128
if [[ " $prefix " != " -I" && " $prefix " != " -D" && " $item " != " -Wall" && " $item " != " -Werror=all" && " $item " != " -Wextra" && " $prefix " != " -O" ]]; then
144
129
if [[ " ${item: 0: 23} " != " -mfix-esp32-psram-cache" && " ${item: 0: 18} " != " -fmacro-prefix-map" && " ${item: 0: 20} " != " -fdiagnostics-color=" && " ${item: 0: 19} " != " -fdebug-prefix-map=" ]]; then
145
130
CPP_FLAGS+=" $item "
146
- if [[ $PIO_CC_FLAGS != * " $item " * ]]; then
147
- PIO_CXX_FLAGS+=" $item "
148
- fi
149
131
fi
150
132
fi
151
133
done
152
134
153
- set -- $C_FLAGS
154
- for item; do
155
- if [[ $PIO_CC_FLAGS != * " $item " * ]]; then
156
- PIO_C_FLAGS+=" $item "
157
- fi
158
- done
159
-
160
135
# parse link command to extract libs and flags
161
136
add_next=0
162
137
is_dir=0
180
155
fi
181
156
if [ " $IDF_TARGET " = " esp32" ]; then
182
157
LD_SCRIPTS+=" -T esp32.rom.redefined.ld "
183
- PIO_LD_SCRIPTS+=" esp32.rom.redefined.ld "
184
158
fi
185
159
set -- $str
186
160
for item; do
@@ -213,7 +187,6 @@ for item; do
213
187
is_dir=0
214
188
elif [[ " ${item: 0: 23} " != " -mfix-esp32-psram-cache" && " ${item: 0: 18} " != " -fmacro-prefix-map" && " ${item: 0: 19} " != " -fdebug-prefix-map=" && " ${item: 0: 17} " != " -Wl,--start-group" && " ${item: 0: 15} " != " -Wl,--end-group" ]]; then
215
189
LD_FLAGS+=" $item "
216
- PIO_LD_FLAGS+=" $item "
217
190
fi
218
191
fi
219
192
else
@@ -225,10 +198,8 @@ for item; do
225
198
elif [ " $is_script " = " 1" ]; then
226
199
is_script=0
227
200
LD_SCRIPTS+=" $item "
228
- PIO_LD_SCRIPTS+=" $item "
229
201
else
230
202
LD_FLAGS+=" $item "
231
- PIO_LD_FUNCS+=" $item "
232
203
fi
233
204
else
234
205
if [ " ${item: ${# item} -2: 2} " = " .a" ]; then
@@ -288,194 +259,6 @@ done
288
259
289
260
mkdir -p " $AR_SDK "
290
261
291
- # start generation of platformio-build.py
292
- AR_PLATFORMIO_PY=" $AR_SDK /platformio-build.py"
293
- cat configs/pio_start.txt > " $AR_PLATFORMIO_PY "
294
-
295
- echo " ASFLAGS=[" >> " $AR_PLATFORMIO_PY "
296
- if [ " $IS_XTENSA " = " y" ]; then
297
- echo " \" -mlongcalls\" " >> " $AR_PLATFORMIO_PY "
298
- else
299
- echo " \" -march=rv32imc\" " >> " $AR_PLATFORMIO_PY "
300
- fi
301
- echo " ]," >> " $AR_PLATFORMIO_PY "
302
- echo " " >> " $AR_PLATFORMIO_PY "
303
-
304
- echo " ASPPFLAGS=[" >> " $AR_PLATFORMIO_PY "
305
- set -- $PIO_AS_FLAGS
306
- for item; do
307
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
308
- done
309
- echo " \" -x\" , \" assembler-with-cpp\" " >> " $AR_PLATFORMIO_PY "
310
- echo " ]," >> " $AR_PLATFORMIO_PY "
311
- echo " " >> " $AR_PLATFORMIO_PY "
312
-
313
- echo " CFLAGS=[" >> " $AR_PLATFORMIO_PY "
314
- set -- $PIO_C_FLAGS
315
- last_item=" ${@: -1} "
316
- for item in " ${@: 0: ${#@ } } " ; do
317
- if [ " ${item: 0: 1} " != " /" ]; then
318
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
319
- fi
320
- done
321
- echo " \" $last_item \" " >> " $AR_PLATFORMIO_PY "
322
- echo " ]," >> " $AR_PLATFORMIO_PY "
323
- echo " " >> " $AR_PLATFORMIO_PY "
324
-
325
- echo " CXXFLAGS=[" >> " $AR_PLATFORMIO_PY "
326
- set -- $PIO_CXX_FLAGS
327
- last_item=" ${@: -1} "
328
- for item in " ${@: 0: ${#@ } } " ; do
329
- if [ " ${item: 0: 1} " != " /" ]; then
330
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
331
- fi
332
- done
333
- echo " \" $last_item \" " >> " $AR_PLATFORMIO_PY "
334
- echo " ]," >> " $AR_PLATFORMIO_PY "
335
- echo " " >> " $AR_PLATFORMIO_PY "
336
-
337
- echo " CCFLAGS=[" >> " $AR_PLATFORMIO_PY "
338
- set -- $PIO_CC_FLAGS
339
- for item; do
340
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
341
- done
342
- echo " \" -MMD\" " >> " $AR_PLATFORMIO_PY "
343
- echo " ]," >> " $AR_PLATFORMIO_PY "
344
- echo " " >> " $AR_PLATFORMIO_PY "
345
-
346
- echo " LINKFLAGS=[" >> " $AR_PLATFORMIO_PY "
347
- set -- $PIO_LD_FLAGS
348
- for item; do
349
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
350
- done
351
- set -- $PIO_LD_SCRIPTS
352
- for item; do
353
- echo " \" -T\" , \" $item \" ," >> " $AR_PLATFORMIO_PY "
354
- done
355
- set -- $PIO_LD_FUNCS
356
- for item; do
357
- echo " \" -u\" , \" $item \" ," >> " $AR_PLATFORMIO_PY "
358
- done
359
- echo " '-Wl,-Map=\" %s\" ' % join(\"\$ {BUILD_DIR}\" , \"\$ {PROGNAME}.map\" )" >> " $AR_PLATFORMIO_PY "
360
-
361
- echo " ]," >> " $AR_PLATFORMIO_PY "
362
- echo " " >> " $AR_PLATFORMIO_PY "
363
-
364
- # include dirs
365
- REL_INC=" "
366
- echo " CPPPATH=[" >> " $AR_PLATFORMIO_PY "
367
-
368
- set -- $INCLUDES
369
-
370
- for item; do
371
- if [[ " $item " != $PWD ]]; then
372
- ipath=" $item "
373
- fname=` basename " $ipath " `
374
- dname=` basename $( dirname " $ipath " ) `
375
- if [[ " $fname " == " main" && " $dname " == $( basename " $PWD " ) ]]; then
376
- continue
377
- fi
378
- while [[ " $dname " != " components" && " $dname " != " managed_components" && " $dname " != " build" ]]; do
379
- ipath=` dirname " $ipath " `
380
- fname=` basename " $ipath " `
381
- dname=` basename $( dirname " $ipath " ) `
382
- done
383
- if [[ " $fname " == " arduino" ]]; then
384
- continue
385
- fi
386
- if [[ " $fname " == " config" ]]; then
387
- continue
388
- fi
389
-
390
- out_sub=" ${item#* $ipath } "
391
- out_cpath=" $AR_SDK /include/$fname$out_sub "
392
- REL_INC+=" -iwithprefixbefore $fname$out_sub "
393
- if [ " $out_sub " = " " ]; then
394
- echo " join($PIO_SDK , \" include\" , \" $fname \" )," >> " $AR_PLATFORMIO_PY "
395
- else
396
- pio_sub=" ${out_sub: 1} "
397
- pio_sub=` echo $pio_sub | sed ' s/\//\\", \\"/g' `
398
- echo " join($PIO_SDK , \" include\" , \" $fname \" , \" $pio_sub \" )," >> " $AR_PLATFORMIO_PY "
399
- fi
400
- for f in ` find " $item " -name ' *.h' ` ; do
401
- rel_f=${f#* $item }
402
- rel_p=${rel_f%/* }
403
- mkdir -p " $out_cpath$rel_p "
404
- cp -n $f " $out_cpath$rel_p /"
405
- done
406
- for f in ` find " $item " -name ' *.hpp' ` ; do
407
- rel_f=${f#* $item }
408
- rel_p=${rel_f%/* }
409
- mkdir -p " $out_cpath$rel_p "
410
- cp -n $f " $out_cpath$rel_p /"
411
- done
412
- for f in ` find " $item " -name ' *.inc' ` ; do
413
- rel_f=${f#* $item }
414
- rel_p=${rel_f%/* }
415
- mkdir -p " $out_cpath$rel_p "
416
- cp -n $f " $out_cpath$rel_p /"
417
- done
418
- # Temporary measure to fix issues caused by https://github.com/espressif/esp-idf/commit/dc4731101dd567cc74bbe4d0f03afe52b7db9afb#diff-1d2ce0d3989a80830fdf230bcaafb3117f32046d16cf46616ac3d55b4df2a988R17
419
- if [[ " $fname " == " bt" && " $out_sub " == " /include/$IDF_TARGET /include" && -f " $ipath /controller/$IDF_TARGET /esp_bt_cfg.h" ]]; then
420
- mkdir -p " $AR_SDK /include/$fname /controller/$IDF_TARGET "
421
- cp -n " $ipath /controller/$IDF_TARGET /esp_bt_cfg.h" " $AR_SDK /include/$fname /controller/$IDF_TARGET /esp_bt_cfg.h"
422
- fi
423
- fi
424
- done
425
- echo " join($PIO_SDK , board_config.get(\" build.arduino.memory_type\" , (board_config.get(\" build.flash_mode\" , \" dio\" ) + \" _$OCT_PSRAM \" )), \" include\" )," >> " $AR_PLATFORMIO_PY "
426
- echo " join(FRAMEWORK_DIR, \" cores\" , board_config.get(\" build.core\" ))" >> " $AR_PLATFORMIO_PY "
427
- echo " ]," >> " $AR_PLATFORMIO_PY "
428
- echo " " >> " $AR_PLATFORMIO_PY "
429
-
430
- mkdir -p " $AR_SDK /lib"
431
-
432
- AR_LIBS=" $LD_LIBS "
433
- PIO_LIBS=" "
434
- set -- $LD_LIBS
435
- for item; do
436
- if [ " $PIO_LIBS " != " " ]; then
437
- PIO_LIBS+=" , "
438
- fi
439
- PIO_LIBS+=" \" $item \" "
440
- done
441
-
442
- set -- $LD_LIB_FILES
443
- for item; do
444
- cp " $item " " $AR_SDK /lib/"
445
- done
446
-
447
- echo " LIBPATH=[" >> " $AR_PLATFORMIO_PY "
448
- echo " join($PIO_SDK , \" lib\" )," >> " $AR_PLATFORMIO_PY "
449
- echo " join($PIO_SDK , \" ld\" )," >> " $AR_PLATFORMIO_PY "
450
- echo " join($PIO_SDK , board_config.get(\" build.arduino.memory_type\" , (board_config.get(\" build.flash_mode\" , \" dio\" ) + \" _$OCT_PSRAM \" )))" >> " $AR_PLATFORMIO_PY "
451
- echo " ]," >> " $AR_PLATFORMIO_PY "
452
- echo " " >> " $AR_PLATFORMIO_PY "
453
-
454
- echo " LIBS=[" >> " $AR_PLATFORMIO_PY "
455
- echo " $PIO_LIBS " >> " $AR_PLATFORMIO_PY "
456
- echo " ]," >> " $AR_PLATFORMIO_PY "
457
- echo " " >> " $AR_PLATFORMIO_PY "
458
-
459
- echo " CPPDEFINES=[" >> " $AR_PLATFORMIO_PY "
460
- set -- $DEFINES
461
- for item; do
462
- item=" ${item: 2} " # remove -D
463
- if [[ $item == * " =" * ]]; then
464
- item=(${item// =/ } )
465
- re=' ^[+-]?[0-9]+([.][0-9]+)?$'
466
- if [[ ${item[1]} =~ $re ]]; then
467
- echo " (\" ${item[0]} \" , ${item[1]} )," >> " $AR_PLATFORMIO_PY "
468
- else
469
- echo " (\" ${item[0]} \" , '${item[1]} ')," >> " $AR_PLATFORMIO_PY "
470
- fi
471
- else
472
- echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
473
- fi
474
- done
475
-
476
- # end generation of platformio-build.py
477
- cat configs/pio_end.txt >> " $AR_PLATFORMIO_PY "
478
-
479
262
# replace double backslashes with single one
480
263
DEFINES=` echo " $DEFINES " | tr -s ' \' `
481
264
0 commit comments