Supports switching default board

This commit is contained in:
Eric Ratliff
2026-02-19 10:23:16 -06:00
parent b909da298e
commit 6cacc07109
9 changed files with 456 additions and 16 deletions

View File

@@ -70,6 +70,22 @@ exit /b 0
:: -- Resolve board --------------------------------------------------------
if "%BOARD_NAME%"=="" set "BOARD_NAME=%DEFAULT_BOARD%"
if "%BOARD_NAME%"=="" (
echo FAIL: No default board set in .anvil.toml.
echo.
echo Add a default to the [build] section of .anvil.toml:
echo default = "uno"
echo.
echo And make sure a matching [boards.uno] section exists:
echo [boards.uno]
echo fqbn = "arduino:avr:uno"
echo.
echo Or with Anvil: anvil board --default uno
echo List boards: anvil board --listall
echo arduino-cli board listall
exit /b 1
)
set "BOARD_SECTION=[boards.%BOARD_NAME%]"
set "IN_SECTION=0"
set "FQBN="
@@ -96,8 +112,15 @@ for /f "usebackq tokens=*" %%L in ("%CONFIG%") do (
)
if "!FQBN!"=="" (
echo FAIL: No board '%BOARD_NAME%' in .anvil.toml.
echo Add it: anvil board --add %BOARD_NAME%
echo FAIL: No [boards.%BOARD_NAME%] section in .anvil.toml.
echo.
echo Add it to .anvil.toml:
echo [boards.%BOARD_NAME%]
echo fqbn = "arduino:avr:uno" ^(replace with your board^)
echo.
echo Or with Anvil: anvil board --add %BOARD_NAME%
echo List boards: anvil board --listall
echo arduino-cli board listall
exit /b 1
)

View File

@@ -87,10 +87,35 @@ done
# -- Resolve board ---------------------------------------------------------
ACTIVE_BOARD="${BOARD_NAME:-$DEFAULT_BOARD}"
if [[ -z "$ACTIVE_BOARD" ]]; then
echo "${RED}FAIL${RST} No default board set in .anvil.toml." >&2
echo "" >&2
echo " Add a default to the [build] section of .anvil.toml:" >&2
echo " default = \"uno\"" >&2
echo "" >&2
echo " And make sure a matching [boards.uno] section exists:" >&2
echo " [boards.uno]" >&2
echo " fqbn = \"arduino:avr:uno\"" >&2
echo "" >&2
echo " Or with Anvil: anvil board --default uno" >&2
echo " List boards: anvil board --listall" >&2
echo " arduino-cli board listall" >&2
exit 1
fi
FQBN="$(toml_section_get "boards.$ACTIVE_BOARD" "fqbn")"
if [[ -z "$FQBN" ]]; then
die "No board '$ACTIVE_BOARD' in .anvil.toml.\n Add it: anvil board --add $ACTIVE_BOARD"
echo "${RED}FAIL${RST} No [boards.$ACTIVE_BOARD] section in .anvil.toml." >&2
echo "" >&2
echo " Add it to .anvil.toml:" >&2
echo " [boards.$ACTIVE_BOARD]" >&2
echo " fqbn = \"arduino:avr:uno\" # replace with your board" >&2
echo "" >&2
echo " Or with Anvil: anvil board --add $ACTIVE_BOARD" >&2
echo " List boards: anvil board --listall" >&2
echo " arduino-cli board listall" >&2
exit 1
fi
if [[ -n "$BOARD_NAME" ]]; then

View File

@@ -84,6 +84,22 @@ exit /b 0
:: -- Resolve board --------------------------------------------------------
if "%BOARD_NAME%"=="" set "BOARD_NAME=%DEFAULT_BOARD%"
if "%BOARD_NAME%"=="" (
echo FAIL: No default board set in .anvil.toml.
echo.
echo Add a default to the [build] section of .anvil.toml:
echo default = "uno"
echo.
echo And make sure a matching [boards.uno] section exists:
echo [boards.uno]
echo fqbn = "arduino:avr:uno"
echo.
echo Or with Anvil: anvil board --default uno
echo List boards: anvil board --listall
echo arduino-cli board listall
exit /b 1
)
set "BOARD_SECTION=[boards.%BOARD_NAME%]"
set "IN_SECTION=0"
set "BOARD_BAUD="

View File

@@ -82,6 +82,22 @@ done
# -- Resolve board ---------------------------------------------------------
ACTIVE_BOARD="${BOARD_NAME:-$DEFAULT_BOARD}"
if [[ -z "$ACTIVE_BOARD" ]]; then
echo "${RED}FAIL${RST} No default board set in .anvil.toml." >&2
echo "" >&2
echo " Add a default to the [build] section of .anvil.toml:" >&2
echo " default = \"uno\"" >&2
echo "" >&2
echo " And make sure a matching [boards.uno] section exists:" >&2
echo " [boards.uno]" >&2
echo " fqbn = \"arduino:avr:uno\"" >&2
echo "" >&2
echo " Or with Anvil: anvil board --default uno" >&2
echo " List boards: anvil board --listall" >&2
echo " arduino-cli board listall" >&2
exit 1
fi
BOARD_BAUD="$(toml_section_get "boards.$ACTIVE_BOARD" "baud")"
if [[ -n "$BOARD_BAUD" ]]; then
BAUD="$BOARD_BAUD"

View File

@@ -99,6 +99,22 @@ exit /b 0
:: -- Resolve board --------------------------------------------------------
if "%BOARD_NAME%"=="" set "BOARD_NAME=%DEFAULT_BOARD%"
if "%BOARD_NAME%"=="" (
echo FAIL: No default board set in .anvil.toml.
echo.
echo Add a default to the [build] section of .anvil.toml:
echo default = "uno"
echo.
echo And make sure a matching [boards.uno] section exists:
echo [boards.uno]
echo fqbn = "arduino:avr:uno"
echo.
echo Or with Anvil: anvil board --default uno
echo List boards: anvil board --listall
echo arduino-cli board listall
exit /b 1
)
set "BOARD_SECTION=[boards.%BOARD_NAME%]"
set "IN_SECTION=0"
set "FQBN="
@@ -127,8 +143,15 @@ for /f "usebackq tokens=*" %%L in ("%CONFIG%") do (
)
if "!FQBN!"=="" (
echo FAIL: No board '%BOARD_NAME%' in .anvil.toml.
echo Add it: anvil board --add %BOARD_NAME%
echo FAIL: No [boards.%BOARD_NAME%] section in .anvil.toml.
echo.
echo Add it to .anvil.toml:
echo [boards.%BOARD_NAME%]
echo fqbn = "arduino:avr:uno" ^(replace with your board^)
echo.
echo Or with Anvil: anvil board --add %BOARD_NAME%
echo List boards: anvil board --listall
echo arduino-cli board listall
exit /b 1
)
if not "!BOARD_BAUD!"=="" set "BAUD=!BOARD_BAUD!"

View File

@@ -101,10 +101,35 @@ done
# -- Resolve board ---------------------------------------------------------
ACTIVE_BOARD="${BOARD_NAME:-$DEFAULT_BOARD}"
if [[ -z "$ACTIVE_BOARD" ]]; then
echo "${RED}FAIL${RST} No default board set in .anvil.toml." >&2
echo "" >&2
echo " Add a default to the [build] section of .anvil.toml:" >&2
echo " default = \"uno\"" >&2
echo "" >&2
echo " And make sure a matching [boards.uno] section exists:" >&2
echo " [boards.uno]" >&2
echo " fqbn = \"arduino:avr:uno\"" >&2
echo "" >&2
echo " Or with Anvil: anvil board --default uno" >&2
echo " List boards: anvil board --listall" >&2
echo " arduino-cli board listall" >&2
exit 1
fi
FQBN="$(toml_section_get "boards.$ACTIVE_BOARD" "fqbn")"
if [[ -z "$FQBN" ]]; then
die "No board '$ACTIVE_BOARD' in .anvil.toml.\n Add it: anvil board --add $ACTIVE_BOARD"
echo "${RED}FAIL${RST} No [boards.$ACTIVE_BOARD] section in .anvil.toml." >&2
echo "" >&2
echo " Add it to .anvil.toml:" >&2
echo " [boards.$ACTIVE_BOARD]" >&2
echo " fqbn = \"arduino:avr:uno\" # replace with your board" >&2
echo "" >&2
echo " Or with Anvil: anvil board --add $ACTIVE_BOARD" >&2
echo " List boards: anvil board --listall" >&2
echo " arduino-cli board listall" >&2
exit 1
fi
BOARD_BAUD="$(toml_section_get "boards.$ACTIVE_BOARD" "baud")"