From bcbff1c0def14f870bb666887fa498489e26477a Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E8=A2=81=E6=B8=85=E6=A2=A6?= <3449750381@qq.com> Date: Tue, 16 Sep 2025 03:52:13 +0000 Subject: [PATCH] Merge #2250 into sdk650pathc0423 from refs/changes/2250/head MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Code review from 袁清梦 * refs/changes/2250/head: (2 commits squashed) - 优化版本管理样式 - Merge branch 'sdk650pathc0423' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk650pathc0423 Signed-off-by: Caisking <3449750381@qq.com> Reviewed-by: snickersun@163.com Merged-by: snickersun@163.com CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/2250 --- autobuild.sh | 176 ++++++++++++++++++++++----------------------------- 1 file changed, 74 insertions(+), 102 deletions(-) diff --git a/autobuild.sh b/autobuild.sh index fcc5b5982..f4d0c3b59 100644 --- a/autobuild.sh +++ b/autobuild.sh @@ -41,58 +41,70 @@ DEFAULT_APPLICATION_NAME=brandy-native-js-fd230 DEFAULT_RECOVERY_NAME=$DEFAULT_APPLICATION_NAME-r DEFAULT_SSB_NAME=$DEFAULT_APPLICATION_NAME-ssb -# 各项目独立版本管理 -declare -A PROJECT_VERSIONS - -# 从配置文件加载版本信息 -load_versions_from_config() { - local config_file="$HOMEDIR/project_versions.conf" - if [ -f "$config_file" ]; then - while IFS='=' read -r project version; do - # 跳过注释行和空行 - if [[ ! "$project" =~ ^[[:space:]]*# ]] && [[ -n "$project" ]]; then - PROJECT_VERSIONS["$project"]="$version" - fi - done < "$config_file" - echo "Loaded versions from $config_file" - else - echo "Warning: Config file $config_file not found, using default versions" - # 使用默认版本 - PROJECT_VERSIONS["fd230"]="1.3.106" - PROJECT_VERSIONS["user"]="1.2.85" - PROJECT_VERSIONS["fd230_user"]="1.2.90" - PROJECT_VERSIONS["xts"]="1.1.50" - PROJECT_VERSIONS["u8"]="1.3.20" - PROJECT_VERSIONS["w9"]="1.2.75" - PROJECT_VERSIONS["lt22"]="1.3.15" - PROJECT_VERSIONS["n9"]="1.2.60" - PROJECT_VERSIONS["ln"]="1.3.30" - PROJECT_VERSIONS["u8m"]="1.2.40" - PROJECT_VERSIONS["uoffline"]="1.2.45" - PROJECT_VERSIONS["oob128"]="1.3.10" - PROJECT_VERSIONS["z1"]="1.1.80" - PROJECT_VERSIONS["4part"]="1.3.25" - PROJECT_VERSIONS["leakcheck"]="1.2.70" - PROJECT_VERSIONS["autoota"]="1.3.50" - PROJECT_VERSIONS["autootacli"]="1.1.30" - PROJECT_VERSIONS["obu"]="1.2.35" - PROJECT_VERSIONS["cm"]="1.3.40" - PROJECT_VERSIONS["ct"]="1.3.35" - fi -} - -# 保存版本到配置文件 -save_versions_to_config() { - local config_file="$HOMEDIR/project_versions.conf" - echo "# 项目版本配置文件" > "$config_file" - echo "# 格式: PROJECT_NAME=VERSION" >> "$config_file" - echo "# 示例: fd230=1.3.106" >> "$config_file" - echo "" >> "$config_file" - echo "# 默认项目版本" >> "$config_file" - for project in "${!PROJECT_VERSIONS[@]}"; do - echo "$project=${PROJECT_VERSIONS[$project]}" >> "$config_file" - done - echo "Versions saved to $config_file" +# ============================================================================ +# 项目版本配置 - 在这里修改各项目的版本号 +# ============================================================================ +declare -A PROJECT_VERSIONS=( + # 基础项目版本 + ["fd230"]="1.3.107" + ["user"]="1.3.107" + ["fd230_user"]="1.3.107" + + # 测试项目版本 + ["xts"]="1.3.107" + ["u8"]="1.3.107" + ["w9"]="1.3.107" + ["lt22"]="1.3.107" + ["n9"]="1.3.107" + ["ln"]="1.3.107" + + # 特殊功能版本 + ["u8m"]="1.3.107" + ["uoffline"]="1.3.107" + ["oob128"]="1.3.107" + ["z1"]="1.3.107" + ["4part"]="1.3.107" + ["leakcheck"]="1.3.107" + + # OTA相关版本 + ["autoota"]="1.3.107" + ["autootacli"]="1.3.107" + + # 行业版本 + ["obu"]="1.3.107" + ["cm"]="1.3.107" + ["ct"]="1.3.107" +) + +# 显示所有项目版本 +show_all_versions() { + echo "==========================================" + echo " 项目版本配置表" + echo "==========================================" + printf "%-15s %-10s %-20s\n" "项目名称" "版本号" "说明" + echo "------------------------------------------" + printf "%-15s %-10s %-20s\n" "fd230" "${PROJECT_VERSIONS[fd230]}" "默认项目" + printf "%-15s %-10s %-20s\n" "user" "${PROJECT_VERSIONS[user]}" "用户版本" + printf "%-15s %-10s %-20s\n" "fd230_user" "${PROJECT_VERSIONS[fd230_user]}" "FD230用户版" + printf "%-15s %-10s %-20s\n" "xts" "${PROJECT_VERSIONS[xts]}" "XTS测试版" + printf "%-15s %-10s %-20s\n" "u8" "${PROJECT_VERSIONS[u8]}" "U8项目" + printf "%-15s %-10s %-20s\n" "w9" "${PROJECT_VERSIONS[w9]}" "W9项目" + printf "%-15s %-10s %-20s\n" "lt22" "${PROJECT_VERSIONS[lt22]}" "LT22项目" + printf "%-15s %-10s %-20s\n" "n9" "${PROJECT_VERSIONS[n9]}" "N9项目" + printf "%-15s %-10s %-20s\n" "ln" "${PROJECT_VERSIONS[ln]}" "雷鸟项目" + printf "%-15s %-10s %-20s\n" "u8m" "${PROJECT_VERSIONS[u8m]}" "U8M项目" + printf "%-15s %-10s %-20s\n" "uoffline" "${PROJECT_VERSIONS[uoffline]}" "离线版本" + printf "%-15s %-10s %-20s\n" "oob128" "${PROJECT_VERSIONS[oob128]}" "OOB128版本" + printf "%-15s %-10s %-20s\n" "z1" "${PROJECT_VERSIONS[z1]}" "Z1定制版" + printf "%-15s %-10s %-20s\n" "4part" "${PROJECT_VERSIONS[4part]}" "4分区版本" + printf "%-15s %-10s %-20s\n" "leakcheck" "${PROJECT_VERSIONS[leakcheck]}" "内存检测版" + printf "%-15s %-10s %-20s\n" "autoota" "${PROJECT_VERSIONS[autoota]}" "自动OTA版" + printf "%-15s %-10s %-20s\n" "autootacli" "${PROJECT_VERSIONS[autootacli]}" "OTA命令行版" + printf "%-15s %-10s %-20s\n" "obu" "${PROJECT_VERSIONS[obu]}" "OBU项目" + printf "%-15s %-10s %-20s\n" "cm" "${PROJECT_VERSIONS[cm]}" "中国移动版" + printf "%-15s %-10s %-20s\n" "ct" "${PROJECT_VERSIONS[ct]}" "中国电信版" + echo "==========================================" + echo "" } # 默认版本 @@ -132,15 +144,15 @@ then RELEASE_BUILD=release fi -# 设置项目版本 +# 设置项目版本 - 直接从脚本内部配置获取 if [ -n "$1" ] && [ "$1" != "clean" ] && [ "$1" != "debug" ] && [ "$1" != "release" ] then if [ -n "${PROJECT_VERSIONS[$1]}" ] then CURRENT_PROJECT_VERSION=${PROJECT_VERSIONS[$1]} - echo "Setting version for project $1: $CURRENT_PROJECT_VERSION" + echo "使用项目 $1 的版本: $CURRENT_PROJECT_VERSION" else - echo "Warning: No version defined for project $1, using default version: $DEFAULT_CUSTOM_FW_VERSION" + echo "警告: 项目 $1 未定义版本,使用默认版本: $DEFAULT_CUSTOM_FW_VERSION" CURRENT_PROJECT_VERSION=$DEFAULT_CUSTOM_FW_VERSION fi fi @@ -315,63 +327,22 @@ fi cd $HOMEDIR } -# 版本管理功能 -show_versions() { - echo "=== 项目版本管理 ===" - echo "当前项目: $TARGET_PACK_NAME" - echo "当前版本: $CURRENT_PROJECT_VERSION" - echo "版本数量: ${#PROJECT_VERSIONS[@]}" - echo "" - echo "所有项目版本:" - for project in "${!PROJECT_VERSIONS[@]}"; do - echo " $project: ${PROJECT_VERSIONS[$project]}" - done - echo "" -} - -# 检查是否是版本管理命令 +# 检查是否是版本查看命令 if [ "$1" == "versions" ] || [ "$1" == "version" ] || [ "$1" == "v" ] then - load_versions_from_config - show_versions + show_all_versions exit 0 fi -# 检查是否是更新版本命令 -if [ "$1" == "update-version" ] && [ -n "$2" ] && [ -n "$3" ] -then - # 先加载版本配置 - load_versions_from_config - project_name=$2 - new_version=$3 - if [ -n "${PROJECT_VERSIONS[$project_name]}" ] - then - old_version=${PROJECT_VERSIONS[$project_name]} - PROJECT_VERSIONS[$project_name]=$new_version - echo "Updated $project_name version: $old_version -> $new_version" - # 保存到配置文件 - save_versions_to_config - else - echo "Error: Project $project_name not found" - echo "Available projects:" - for project in "${!PROJECT_VERSIONS[@]}"; do - echo " $project" - done - exit 1 - fi - exit 0 -fi - -# 加载版本配置 -load_versions_from_config - checkarguments $1 checkarguments $2 checkarguments $3 checkarguments $4 # 显示当前编译信息 -echo "=== 编译信息 ===" +echo "==========================================" +echo " 编译信息" +echo "==========================================" echo "项目: $TARGET_PACK_NAME" echo "版本: $CURRENT_PROJECT_VERSION" echo "构建类型: $RELEASE_BUILD" @@ -381,7 +352,8 @@ echo "清理模式: 是" else echo "清理模式: 否" fi -echo "==================" +echo "构建时间: $(date '+%Y-%m-%d %H:%M:%S')" +echo "==========================================" # read -n 1 -p "Press any key to continue..." -- 2.17.1