Files
esp-matter/install.sh
T
2024-08-26 10:44:25 +05:30

76 lines
1.7 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
# function to print help message
print_help() {
echo "Options:"
echo " --no-host-tool Disable installation of host tools"
echo " --help Display this help message"
}
# Parse command-line arguments
NO_HOST_TOOL=false
while [[ "$#" -gt 0 ]]; do
case $1 in
--no-host-tool)
NO_HOST_TOOL=true
;;
--help)
print_help
exit 1
;;
*)
print_help
exit 1
;;
esac
shift
done
basedir=$(dirname "$0")
ESP_MATTER_PATH=$(cd "${basedir}"; pwd)
MATTER_PATH=${ESP_MATTER_PATH}/connectedhomeip/connectedhomeip
export ZAP_INSTALL_PATH=${MATTER_PATH}/.environment/cipd/packages/zap
echo ""
echo "Running Matter Setup"
echo ""
cd ${MATTER_PATH}
source ${MATTER_PATH}/scripts/bootstrap.sh
cd ${ESP_MATTER_PATH}
echo ""
echo "Building host tools"
echo ""
if [ $NO_HOST_TOOL = false ]; then
gn --root="${MATTER_PATH}" gen ${MATTER_PATH}/out/host --args='chip_inet_config_enable_ipv4=false'
ninja -C ${MATTER_PATH}/out/host chip-cert chip-tool
echo ""
echo "Host tools built at: ${MATTER_PATH}/out/host"
fi
echo ""
echo "Exit Matter environment"
echo ""
deactivate
echo ""
echo "Installing python dependencies for Matter"
echo ""
# Install python dependencies based on idf version
if [[ $(git -C $IDF_PATH describe) == v4.4* ]]; then
echo "Installing requirements from requirements_idf_v4.4.txt"
python3 -m pip install -r ${ESP_MATTER_PATH}/requirements_idf_v4.4.txt
else
echo "Installing requirements from requirements.txt"
python3 -m pip install -r ${ESP_MATTER_PATH}/requirements.txt
fi
echo "All done! You can now run:"
echo ""
echo " . ${basedir}/export.sh"
echo ""