1
1
#! /usr/bin/env bash
2
2
3
- set -e
3
+ set -eu
4
4
# set -v
5
5
6
6
# Default values
7
7
TOOLCHAIN_VERSION=" 1.62.0.0"
8
- if [ -z " ${RUSTUP_HOME} " ]; then
9
- RUSTUP_HOME=" ${HOME} /.rustup"
10
- fi
8
+ RUSTUP_HOME=" ${RUSTUP_HOME:- ${HOME} / .rustup} "
9
+ CARGO_HOME=" ${CARGO_HOME:- ${HOME} / .cargo} "
11
10
TOOLCHAIN_DESTINATION_DIR=" ${RUSTUP_HOME} /toolchains/esp"
12
11
BUILD_TARGET=" esp32,esp32s2,esp32s3"
13
12
RUSTC_MINIMAL_MINOR_VERSION=" 55"
@@ -139,7 +138,7 @@ echo "--build-target = ${BUILD_TARGET}"
139
138
echo " --cargo-home = ${CARGO_HOME} "
140
139
echo " --clear-cache = ${CLEAR_DOWNLOAD_CACHE} "
141
140
echo " --esp-idf-version = ${ESP_IDF_VERSION} "
142
- echo " --export-file = ${EXPORT_FILE} "
141
+ echo " --export-file = ${EXPORT_FILE:- } "
143
142
echo " --extra-crates = ${EXTRA_CRATES} "
144
143
echo " --installation-mode = ${INSTALLATION_MODE} "
145
144
echo " --llvm-version = ${LLVM_VERSION} "
@@ -495,7 +494,9 @@ elif [ ${ARCH} == "x86_64-apple-darwin" ]; then
495
494
ESPFLASH_BIN=" ${CARGO_HOME} /bin/espflash"
496
495
LDPROXY_URL=" https://github.com/esp-rs/embuild/releases/latest/download/ldproxy-${ARCH} .zip"
497
496
LDPROXY_BIN=" ${CARGO_HOME} /bin/ldproxy"
498
- GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
497
+ if [[ " ${EXTRA_CRATES} " =~ " cargo-generate" ]]; then
498
+ GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
499
+ fi
499
500
GENERATE_BIN=" ${CARGO_HOME} /bin/cargo-generate"
500
501
WOKWI_SERVER_URL=" https://github.com/MabezDev/wokwi-server/releases/latest/download/wokwi-server-${ARCH} .zip"
501
502
WOKWI_SERVER_BIN=" ${CARGO_HOME} /bin/wokwi-server"
@@ -510,7 +511,9 @@ elif [ ${ARCH} == "x86_64-unknown-linux-gnu" ]; then
510
511
ESPFLASH_BIN=" ${CARGO_HOME} /bin/espflash"
511
512
LDPROXY_URL=" https://github.com/esp-rs/embuild/releases/latest/download/ldproxy-${ARCH} .zip"
512
513
LDPROXY_BIN=" ${CARGO_HOME} /bin/ldproxy"
513
- GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
514
+ if [[ " ${EXTRA_CRATES} " =~ " cargo-generate" ]]; then
515
+ GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
516
+ fi
514
517
GENERATE_BIN=" ${CARGO_HOME} /bin/cargo-generate"
515
518
WOKWI_SERVER_URL=" https://github.com/MabezDev/wokwi-server/releases/latest/download/wokwi-server-${ARCH} .zip"
516
519
WOKWI_SERVER_BIN=" ${CARGO_HOME} /bin/wokwi-server"
@@ -519,7 +522,9 @@ elif [ ${ARCH} == "x86_64-unknown-linux-gnu" ]; then
519
522
elif [ ${ARCH} == " aarch64-unknown-linux-gnu" ]; then
520
523
GCC_ARCH=" linux-arm64"
521
524
SYSTEM_PACKAGES=" "
522
- GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
525
+ if [[ " ${EXTRA_CRATES} " =~ " cargo-generate" ]]; then
526
+ GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
527
+ fi
523
528
GENERATE_BIN=" ${CARGO_HOME} /bin/cargo-generate"
524
529
CARGO_ESPFLASH_URL=" https://github.com/esp-rs/espflash/releases/latest/download/cargo-espflash-${ARCH} .zip"
525
530
CARGO_ESPFLASH_BIN=" ${CARGO_HOME} /bin/cargo-espflash"
@@ -534,7 +539,9 @@ elif [ ${ARCH} == "x86_64-pc-windows-msvc" ]; then
534
539
ESPFLASH_BIN=" ${CARGO_HOME} /bin/espflash.exe"
535
540
LDPROXY_URL=" https://github.com/esp-rs/embuild/releases/latest/download/ldproxy-${ARCH} .zip"
536
541
LDPROXY_BIN=" ${CARGO_HOME} /bin/ldproxy.exe"
537
- GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
542
+ if [[ " ${EXTRA_CRATES} " =~ " cargo-generate" ]]; then
543
+ GENERATE_URL=" https://github.com/cargo-generate/cargo-generate/releases/latest/download/cargo-generate-${GENERATE_VERSION} -${ARCH} .tar.gz"
544
+ fi
538
545
GENERATE_BIN=" ${CARGO_HOME} /bin/cargo-generate.exe"
539
546
WOKWI_SERVER_URL=" https://github.com/MabezDev/wokwi-server/releases/latest/download/wokwi-server-${ARCH} .zip"
540
547
WOKWI_SERVER_BIN=" ${CARGO_HOME} /bin/wokwi-server.exe"
@@ -552,10 +559,7 @@ LLVM_ARTIFACT_VERSION=$(echo ${LLVM_VERSION} | sed -e 's/.*esp-//g' -e 's/-.*//g
552
559
LLVM_FILE=" xtensa-esp32-elf-llvm${LLVM_ARTIFACT_VERSION} -${LLVM_VERSION} -${ARCH} .tar.xz"
553
560
LLVM_DIST_URL=" ${LLVM_DIST_MIRROR} /${LLVM_FILE} "
554
561
555
- if [ -z " ${IDF_TOOLS_PATH} " ]; then
556
- IDF_TOOLS_PATH=" ${HOME} /.espressif"
557
- fi
558
-
562
+ IDF_TOOLS_PATH=" ${IDF_TOOLS_PATH:- ${HOME} / .espressif} "
559
563
IDF_TOOL_GCC_PATH=" "
560
564
IDF_TOOL_XTENSA_ELF_CLANG=" ${IDF_TOOLS_PATH} /tools/xtensa-esp32-elf-clang/${LLVM_VERSION} -${ARCH} "
561
565
0 commit comments