Skip to content

Commit 9ee37e6

Browse files
authored
Update flags handling in copy-libs.sh script
1 parent 879b1f7 commit 9ee37e6

File tree

1 file changed

+17
-8
lines changed

1 file changed

+17
-8
lines changed

tools/copy-libs.sh

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ LD_SCRIPT_DIRS=""
7575
PIO_CC_FLAGS="-flto=auto "
7676
PIO_C_FLAGS="-flto=auto "
7777
PIO_CXX_FLAGS="-flto=auto "
78+
# PIO_CXX_FLAGS="-flto=auto -std=gnu++2a "
7879
PIO_AS_FLAGS=""
7980
PIO_LD_FLAGS="-flto "
8081
PIO_LD_FUNCS=""
@@ -126,7 +127,7 @@ for item in "${@:2:${#@}-5}"; do
126127
DEFINES+="$item "
127128
fi
128129
elif [ "$prefix" = "-O" ]; then
129-
PIO_CC_FLAGS+="$item "
130+
PIO_CC_FLAGS+="$item "
130131
elif [[ "$item" != "-Wall" && "$item" != "-Werror=all" && "$item" != "-Wextra" ]]; then
131132
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=" && "${item:0:8}" != "-fno-lto" ]]; then
132133
C_FLAGS+="$item "
@@ -312,24 +313,32 @@ for item; do
312313
fi
313314
done
314315

316+
# Remove -std=gnu++2b from PIO_CXX_FLAGS
317+
# PIO_CXX_FLAGS="${PIO_CXX_FLAGS/-std=gnu++2b/}"
318+
315319
#
316320
# END OF DATA EXTRACTION FROM CMAKE
317321
#
318322

319323
mkdir -p "$AR_SDK"
320324

325+
# Keep only -march, -mabi and -mlongcalls flags for Assembler
326+
PIO_AS_FLAGS=$(
327+
{
328+
echo "$PIO_CXX_FLAGS" | grep -oE '\-march=[^[:space:]]*|\-mabi=[^[:space:]]*|\-mlongcalls'
329+
echo "$PIO_CC_FLAGS" | grep -oE '\-march=[^[:space:]]*|\-mabi=[^[:space:]]*|\-mlongcalls'
330+
} | awk '!seen[$0]++' | paste -sd ' '
331+
)
332+
321333
# start generation of pioarduino-build.py
322334
AR_PLATFORMIO_PY="$AR_SDK/pioarduino-build.py"
323335
cat configs/pio_start.txt > "$AR_PLATFORMIO_PY"
324336

325337
echo " ASFLAGS=[" >> "$AR_PLATFORMIO_PY"
326-
if [ "$IS_XTENSA" = "y" ]; then
327-
echo " \"-mlongcalls\"" >> "$AR_PLATFORMIO_PY"
328-
elif [ "$IDF_TARGET" = "esp32p4" ]; then
329-
echo " \"-march=rv32imafc_zicsr_zifencei_xesppie\"" >> "$AR_PLATFORMIO_PY"
330-
else
331-
echo " \"-march=rv32imc_zicsr_zifencei\"" >> "$AR_PLATFORMIO_PY"
332-
fi
338+
set -- $PIO_AS_FLAGS
339+
for item; do
340+
echo " \"$item\"," >> "$AR_PLATFORMIO_PY"
341+
done
333342
echo " ]," >> "$AR_PLATFORMIO_PY"
334343
echo "" >> "$AR_PLATFORMIO_PY"
335344

0 commit comments

Comments
 (0)