esp-idf/install.ps1

39 wiersze
1.5 KiB
PowerShell

#!/usr/bin/env pwsh
param(
[Switch]$h
)
$IDF_PATH = $PSScriptRoot
if($h){
python "$IDF_PATH/tools/install_util.py" print_help ps1
Exit
}
Write-Output "INFO: Using IDF_PATH '$IDF_PATH' for installation."
$TARGETS = (python "$IDF_PATH/tools/install_util.py" extract targets "$args")
Write-Output "Installing ESP-IDF tools"
# PowerShell does not propagate variables to new process (spawned python), so we pass detected IDF_PATH as argument
# to avoid using any previously set IDF_PATH values in the terminal environment.
$proces_tools = Start-Process -Wait -PassThru -NoNewWindow -FilePath "python" -Args "`"$IDF_PATH/tools/idf_tools.py`" --idf-path ${IDF_PATH} install --targets=${TARGETS}"
$exit_code_tools = $proces_tools.ExitCode
if ($exit_code_tools -ne 0) { exit $exit_code_tools } # if error
$FEATURES = (python "$IDF_PATH/tools/install_util.py" extract features "$args")
Write-Output "Setting up Python environment"
# PowerShell does not propagate variables to new process (spawned python), so we pass detected IDF_PATH as argument
# to avoid using any previously set IDF_PATH values in the terminal environment.
$proces_py_env = Start-Process -Wait -PassThru -NoNewWindow -FilePath "python" -Args "`"$IDF_PATH/tools/idf_tools.py`" --idf-path ${IDF_PATH} install-python-env --features=${FEATURES}"
$exit_code_py_env = $proces_py_env.ExitCode
if ($exit_code_py_env -ne 0) { exit $exit_code_py_env } # if error
Write-Output "
All done! You can now run:
export.ps1
"