12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/bin/bash
- BASE_PATH=$(pwd)
- # 定义错误信息
- ARCH_MISMATCH_ERROR="Error: ARCH in env.mk does not match arch in dadk-manifest.toml"
- if [ -z "$ARCH" ]; then
- echo "Error: ARCH environment variable is not set." >&2
- exit 1
- fi
- # Check if ROOT_PATH is set
- if [ -n "$ROOT_PATH" ]; then
- CHECK_PATH="$ROOT_PATH"
- else
- # Check if the current directory name is "tools"
- if [ "$(basename "$BASE_PATH")" = "tools" ]; then
- # Try the parent directory's dadk-manifest
- CHECK_PATH=$(dirname "$BASE_PATH")/
- else
- # Otherwise, check the current directory
- CHECK_PATH="$BASE_PATH"
- fi
- fi
- echo "Checking $CHECK_PATH"
- # 读取dadk-manifest.toml文件中的arch字段
- DADK_ARCH=$(grep -oP '(?<=arch = ")[^"]+' $CHECK_PATH/dadk-manifest.toml)
- # 检查arch字段是否为x86_64
- if [ "$ARCH" != $DADK_ARCH ]; then
- echo "$ARCH_MISMATCH_ERROR" >&2
- exit 1
- else
- echo "Arch check passed."
- exit 0
- fi
|