@@ -377,23 +377,28 @@ for item; do
377
377
fi
378
378
done
379
379
380
- # ASFLAGS mit Prefix-Logik
380
+ # ASFLAGS mit korrigierter Include-Verkürzung (ein String wie Python-Version)
381
381
echo " ASFLAGS=[" >> " $AR_PLATFORMIO_PY "
382
382
if [ " $IS_XTENSA " = " y" ]; then
383
383
echo " \" -mlongcalls\" ," >> " $AR_PLATFORMIO_PY "
384
384
else
385
385
echo " \" -march=rv32imc\" ," >> " $AR_PLATFORMIO_PY "
386
386
fi
387
+
388
+ # Füge Include-Verkürzung aus REL_INC hinzu - KORRIGIERT wie Python-Version
387
389
if [[ -n " $REL_INC " ]]; then
388
390
echo " \" -iprefix\" , join(FRAMEWORK_DIR, \" tools\" , \" sdk\" , \" $IDF_TARGET \" )," >> " $AR_PLATFORMIO_PY "
391
+ # Verarbeite REL_INC korrekt - Flag und Pfad sind getrennt
389
392
IFS=' ' read -ra rel_inc_array <<< " $REL_INC"
390
393
i=0
391
394
while [ $i -lt ${# rel_inc_array[@]} ]; do
392
395
if [[ " ${rel_inc_array[$i]} " == " -iwithprefixbefore" ]]; then
396
+ # Nächstes Element ist der Pfad
393
397
if [ $(( i+ 1 )) -lt ${# rel_inc_array[@]} ]; then
394
398
path=" ${rel_inc_array[$((i+1))]} "
395
- echo " \" -iwithprefix\" , \" include/$path \" ," >> " $AR_PLATFORMIO_PY "
396
- i=$(( i+ 2 ))
399
+ # KORRIGIERT: Ein String wie Python-Version
400
+ echo " \" -iwithprefix/include/$path \" ," >> " $AR_PLATFORMIO_PY "
401
+ i=$(( i+ 2 )) # Überspringe Flag und Pfad
397
402
else
398
403
i=$(( i+ 1 ))
399
404
fi
@@ -402,6 +407,7 @@ if [[ -n "$REL_INC" ]]; then
402
407
fi
403
408
done
404
409
fi
410
+
405
411
echo " ]," >> " $AR_PLATFORMIO_PY "
406
412
echo " " >> " $AR_PLATFORMIO_PY "
407
413
@@ -438,22 +444,27 @@ echo " \"$last_item\"" >> "$AR_PLATFORMIO_PY"
438
444
echo " ]," >> " $AR_PLATFORMIO_PY "
439
445
echo " " >> " $AR_PLATFORMIO_PY "
440
446
441
- # CCFLAGS mit Prefix-Logik
447
+ # CCFLAGS mit korrigierter Include-Verkürzung (ein String wie Python-Version)
442
448
echo " CCFLAGS=[" >> " $AR_PLATFORMIO_PY "
443
449
set -- $PIO_CC_FLAGS
444
450
for item; do
445
451
echo " \" $item \" ," >> " $AR_PLATFORMIO_PY "
446
452
done
453
+
454
+ # Füge Include-Verkürzung aus REL_INC hinzu - KORRIGIERT wie Python-Version
447
455
if [[ -n " $REL_INC " ]]; then
448
456
echo " \" -iprefix\" , join(FRAMEWORK_DIR, \" tools\" , \" sdk\" , \" $IDF_TARGET \" )," >> " $AR_PLATFORMIO_PY "
457
+ # Verarbeite REL_INC korrekt - Flag und Pfad sind getrennt
449
458
IFS=' ' read -ra rel_inc_array <<< " $REL_INC"
450
459
i=0
451
460
while [ $i -lt ${# rel_inc_array[@]} ]; do
452
461
if [[ " ${rel_inc_array[$i]} " == " -iwithprefixbefore" ]]; then
462
+ # Nächstes Element ist der Pfad
453
463
if [ $(( i+ 1 )) -lt ${# rel_inc_array[@]} ]; then
454
464
path=" ${rel_inc_array[$((i+1))]} "
455
- echo " \" -iwithprefix\" , \" include/$path \" ," >> " $AR_PLATFORMIO_PY "
456
- i=$(( i+ 2 ))
465
+ # KORRIGIERT: Ein String wie Python-Version
466
+ echo " \" -iwithprefix/include/$path \" ," >> " $AR_PLATFORMIO_PY "
467
+ i=$(( i+ 2 )) # Überspringe Flag und Pfad
457
468
else
458
469
i=$(( i+ 1 ))
459
470
fi
@@ -462,6 +473,7 @@ if [[ -n "$REL_INC" ]]; then
462
473
fi
463
474
done
464
475
fi
476
+
465
477
echo " \" -MMD\" " >> " $AR_PLATFORMIO_PY "
466
478
echo " ]," >> " $AR_PLATFORMIO_PY "
467
479
echo " " >> " $AR_PLATFORMIO_PY "
503
515
504
516
set -- $LD_LIB_FILES
505
517
for item; do
518
+ # echo "***** Stripping $item"
506
519
" $TOOLCHAIN -strip" -g " $item "
507
520
cp " $item " " $AR_SDK /lib/"
508
521
done
@@ -537,10 +550,13 @@ for item; do
537
550
fi
538
551
done
539
552
553
+ # end generation of platformio-build.py
540
554
cat configs/pio_end.txt >> " $AR_PLATFORMIO_PY "
541
555
556
+ # replace double backslashes with single one
542
557
DEFINES=` echo " $DEFINES " | tr -s ' \' `
543
558
559
+ # target flags files
544
560
FLAGS_DIR=" $AR_SDK /flags"
545
561
mkdir -p " $FLAGS_DIR "
546
562
echo -n " $DEFINES " > " $FLAGS_DIR /defines"
@@ -556,9 +572,16 @@ if [ -d "managed_components/espressif__esp32-camera/driver/private_include/" ];
556
572
cp -r " managed_components/espressif__esp32-camera/driver/private_include/cam_hal.h" " $AR_SDK /include/espressif__esp32-camera/driver/include/"
557
573
fi
558
574
575
+ # sdkconfig
559
576
cp -f " sdkconfig" " $AR_SDK /sdkconfig"
577
+
578
+ # dependencies.lock
560
579
cp -f " dependencies.lock" " $AR_SDK /dependencies.lock"
561
580
581
+ # gen_esp32part.py
582
+ # cp "$IDF_PATH/components/partition_table/gen_esp32part.py" "$AR_GEN_PART_PY"
583
+
584
+ # copy precompiled libs (if we need them)
562
585
function copy_precompiled_lib(){
563
586
lib_file=" $1 "
564
587
lib_name=" $( basename $lib_file ) "
@@ -568,6 +591,7 @@ function copy_precompiled_lib(){
568
591
fi
569
592
}
570
593
594
+ # idf ld scripts
571
595
mkdir -p " $AR_SDK /ld"
572
596
set -- $LD_SCRIPT_DIRS
573
597
for item; do
@@ -586,6 +610,7 @@ for lib in "openthread" "espressif__esp-tflite-micro" "bt" "espressif__esp_modem
586
610
fi
587
611
done
588
612
613
+ # Handle Mem Variants
589
614
mkdir -p " $AR_SDK /$MEMCONF /include"
590
615
mv " $PWD /build/config/sdkconfig.h" " $AR_SDK /$MEMCONF /include/sdkconfig.h"
591
616
for mem_variant in ` jq -c ' .mem_variants_files[]' configs/builds.json` ; do
@@ -604,5 +629,6 @@ for mem_variant in `jq -c '.mem_variants_files[]' configs/builds.json`; do
604
629
fi
605
630
done ;
606
631
632
+ # Add IDF versions to sdkconfig
607
633
echo " #define CONFIG_ARDUINO_IDF_COMMIT \" $IDF_COMMIT \" " >> " $AR_SDK /$MEMCONF /include/sdkconfig.h"
608
634
echo " #define CONFIG_ARDUINO_IDF_BRANCH \" $IDF_BRANCH \" " >> " $AR_SDK /$MEMCONF /include/sdkconfig.h"
0 commit comments