更新编译脚本,修改 autoota 说明文档名称
authorSnickerSun <snickersun@163.com>
Wed, 27 Nov 2024 08:01:39 +0000 (16:01 +0800)
committerSnickerSun <snickersun@163.com>
Wed, 27 Nov 2024 08:01:39 +0000 (16:01 +0800)
autobuild.sh
readme_auto_ota.txt [moved from auto_ota_readme.txt with 100% similarity]

index 93c63ea..2420681 100644 (file)
@@ -1,16 +1,51 @@
 #!/bin/bash
+# ./autobuild.sh [user|u8m|uoffline|oob128|z1|4part|leakcheck|autoota|autootacli|obu|cm|ct] [debug|release] [clean] 
+#
+# 通常三个参数可以用,每个是可选项,且三个参数输入的前后顺序可以随意。
+
+# 参数[debug|release]:
+#                      debug , 指定编译过程中生成完整的application.lst 编译会较慢,但查问题方便。
+#           release , 指定编译过程中生成简化的application.lst  编译会较快,但查问题不方便。
+
+# 参数[clean]:
+#           clean , 加此参数代表会清空output路径下对应的编译文件,重新编译,不加此参数属于增量编译,做release的时候,建议加clean参数。
+
+# 参数[user|u8m|uoffline|oob128|z1|4part|leakcheck|autoota|autootacli|obu|cm|ct]:
+#           此参数指定了要编译的不同配置版本。
+#         不加参数,为默认版本,nandflash资源为单分区。其他版本都是在此基础上的参数修改。
+#         user, 取消串口打印
+#         uoffline, 取消串口打印,开启离线日志(需要在调试ui上开启)
+#         oob128, 编译nandflash的oob区为128的版本
+#         z1,  z1客户定制版本,修改了logo等内容。由于资源文件的变化,已经不能和现在的fd230的版本同步。
+#         4part,  nandflash资源文件为4分区版本
+#         leakcheck, 添加内存泄露检测的版本。
+#         autoota, 添加autoota功能的版本,实际默认版本已经具备此能力。但需要在安全模式下才有。
+#         autootacli, autoota的终端版本,对服务端进行升级的工具版本。
+#         obu, 给公路设备做的接收端的演示版本,需要专门的手表,硬件不同。
+#         cm, ChinaMobile 移动入库软件版本
+#         ct, ChinaTelecom 电信入库软件版本
+#
 
 version=HEAD
 DATE=$(date  +%Y%m%d_%H%M%S)
 HOMEDIR=$PWD
 DEFAULT_BUILD_TYPE=release
 DEFAULT_TARGET_PACK_NAME=pack_brandy_native_js
-DEFAULT_CUSTOM_FW_VERSION=1.0.7
+DEFAULT_APPLICATION_NAME=brandy-native-js
+DEFAULT_RECOVERY_NAME=brandy-native-js-r
+DEFAULT_SSB_NAME=brandy-ssb
+DEFAULT_TARGET_PACK_NAME_USER=pack_brandy_native_js_user
+DEFAULT_APPLICATION_NAME_USER=brandy-native-js-user
+DEFAULT_CUSTOM_FW_VERSION=1.3.98
+
+TARGET_DATABASE_PATH=code/sdk/output/brandy/database_evb
 
 TARGET_PACK_NAME=$DEFAULT_TARGET_PACK_NAME
+APPLICATION_NAME=$DEFAULT_APPLICATION_NAME
+RECOVERY_NAME=$DEFAULT_RECOVERY_NAME
 RELEASE_BUILD=$DEFAULT_BUILD_TYPE
 CLEAN=
-
+BUILD_NAME=
 checkarguments()
 {
 if [ "$1" == "clean" ]
@@ -33,56 +68,133 @@ if [ "$1" == "release" ]
 then
 RELEASE_BUILD=release
 fi
+
+if [ "$1" == "user" ]
+then
+TARGET_PACK_NAME=$DEFAULT_TARGET_PACK_NAME_USER
+APPLICATION_NAME=$DEFAULT_APPLICATION_NAME_USER
+BUILD_NAME=_USER
+fi
+if [ "$1" == "u8m" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_u8m
+APPLICATION_NAME=brandy-native-js-u8m
+DEFAULT_SSB_NAME=brandy-ssb-u8m
+BUILD_NAME=_U8M
+fi
+
+if [ "$1" == "uoffline" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_uoffline
+APPLICATION_NAME=brandy-native-js-uoffline
+BUILD_NAME=_OFFLINELOG
+fi
+
+if [ "$1" == "oob128" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_oob128
+APPLICATION_NAME=brandy-native-js-oob128
+DEFAULT_SSB_NAME=brandy-ssb-oob128
+BUILD_NAME=_OOB128
+fi
+
+if [ "$1" == "z1" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_z1
+APPLICATION_NAME=brandy-native-js-z1
+BUILD_NAME=_Z1
+fi
+
+if [ "$1" == "4part" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_4part
+APPLICATION_NAME=brandy-native-js-4part
+RECOVERY_NAME=brandy-native-js-r-4part
+BUILD_NAME=_4PART
+fi
+if [ "$1" == "leakcheck" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_leakcheck
+APPLICATION_NAME=brandy-native-js-leakcheck
+BUILD_NAME=_LEAKCHECK
+fi
+if [ "$1" == "autoota" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_autoota
+APPLICATION_NAME=brandy-native-js-autoota
+BUILD_NAME=_AUTOOTA
+
+fi
+if [ "$1" == "autootacli" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_autootacli
+APPLICATION_NAME=brandy-native-js-autootacli
+BUILD_NAME=_AUTOOTACLI
+fi
+if [ "$1" == "obu" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_obu
+APPLICATION_NAME=brandy-native-js-obu
+BUILD_NAME=_OBU
+fi
+if [ "$1" == "cm" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_cm
+APPLICATION_NAME=brandy-native-js-cm
+BUILD_NAME=_CM
+fi
+if [ "$1" == "ct" ]
+then
+TARGET_PACK_NAME=pack_brandy_native_js_ct
+APPLICATION_NAME=brandy-native-js-ct
+BUILD_NAME=_CT
+fi
+
 }
 CURRENT_BRANCH=`git branch |awk '$1=="*"{print $2}'`
 COMMIT_ID=`git rev-parse HEAD`
 SOURCE_MODIFIED=`git status --short`
 cp_releasepackage()
 {      
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js/application.bin  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js/application.elf  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js/application.lst  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js/file.bin
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js-r/recovery.bin  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js-r/recovery.elf  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js-r/recovery.lst  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-ssb/ssb.bin
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-ssb/ssb.elf  
-       # code/sdk/output/package/brandy/pack_brandy_native_js/brandy-ssb/ssb.lst
 
        package_dir=$HOMEDIR/code/sdk/output/package/brandy/$TARGET_PACK_NAME/
-       application_path=$package_dir/brandy-native-js/application.bin
-       applicationelf_path=$package_dir/brandy-native-js/application.elf 
-       applicationlst_path=$package_dir/brandy-native-js/application.lst
-       recovery_path=$package_dir/brandy-native-js-r/recovery.bin
-       recoveryelf_path=$package_dir/brandy-native-js-r/recovery.elf 
-       recoverylst_path=$package_dir/brandy-native-js-r/recovery.lst
-       ssb_path=$package_dir/brandy-ssb/ssb.bin
-       ssbelf_path=$package_dir/brandy-ssb/ssb.elf 
-       ssblst_path=$package_dir/brandy-ssb/ssb.lst
+       application_path=$package_dir/$APPLICATION_NAME/application.bin
+       applicationelf_path=$package_dir/$APPLICATION_NAME/application.elf 
+       applicationlst_path=$package_dir/$APPLICATION_NAME/application.lst
+       applicationmap_path=$package_dir/$APPLICATION_NAME/application.map
+       recovery_path=$package_dir/$RECOVERY_NAME/recovery.bin
+       recoveryelf_path=$package_dir/$RECOVERY_NAME/recovery.elf 
+       recoverylst_path=$package_dir/$RECOVERY_NAME/recovery.lst
+       ssb_path=$package_dir/$DEFAULT_SSB_NAME/ssb.bin
+       ssbelf_path=$package_dir/$DEFAULT_SSB_NAME/ssb.elf 
+       ssblst_path=$package_dir/$DEFAULT_SSB_NAME/ssb.lst
        
        dspmain_path=$HOMEDIR/code/sdk/tools/pkg/bin/brandy/dsp/normal/dsp_main.bin
        dspoverlay_path=$HOMEDIR/code/sdk/tools/pkg/bin/brandy/dsp/normal/dsp_overlay.bin
        bt_path=$HOMEDIR/code/sdk/tools/pkg/bin/brandy/bt.bin
        nv_path=$HOMEDIR/code/sdk/output/brandy/nv_bin/brandy_all_nv.bin
        
-       resfile_path=$HOMEDIR/code/sdk/output/package/brandy/pack_brandy_native_js/brandy-native-js/file.bin
+       resfile_path=$HOMEDIR/code/sdk/output/package/brandy/$TARGET_PACK_NAME/$APPLICATION_NAME/file.bin
 
        filename=${TARGET_PACK_NAME}_${RELEASE_BUILD}_${DEFAULT_CUSTOM_FW_VERSION}_${DATE}_${USER}.fwpkg
-       releasedir=$HOMEDIR/release/$TARGET_PACK_NAME/$RELEASE_BUILD/V${DEFAULT_CUSTOM_FW_VERSION}_${DATE}
+       releasedir=$HOMEDIR/release/$TARGET_PACK_NAME/$RELEASE_BUILD/V${DEFAULT_CUSTOM_FW_VERSION}_${DATE}${BUILD_NAME}
        packsource=$HOMEDIR/code/sdk/tools/pkg/fwpkg/brandy/upload_app.fwpkg
        echo do release copy
        mkdir -p $releasedir/bin
        
-       cp -r $application_path $applicationelf_path $applicationlst_path $releasedir/bin/
+       if [ -d $HOMEDIR/$TARGET_DATABASE_PATH ]
+       then
+       cp -r $HOMEDIR/$TARGET_DATABASE_PATH $releasedir/
+       fi
+       cp -r $application_path $applicationelf_path $applicationlst_path $applicationmap_path $releasedir/bin/
        cp -r $recovery_path $recoveryelf_path $recoverylst_path $releasedir/bin/
        cp -r $ssb_path $ssbelf_path $ssblst_path $releasedir/bin/
        cp -r $bt_path $dspmain_path $dspoverlay_path $nv_path $releasedir/bin/
        cp -r $resfile_path $releasedir/bin/
        cp -r $HOMEDIR/build.log  $releasedir/
-       cp -r $HOMEDIR/cat1modem/*  $releasedir/
+       cp -r $HOMEDIR/cat1modem/EG810MCNLAR06A01M08_VOLTE_OCPU_QPY_BETA0312*  $releasedir/
        cp $packsource $releasedir/$filename
-
+       
        echo $filename > $releasedir/readme.txt
        echo branch name $CURRENT_BRANCH >> $releasedir/readme.txt
        echo commit $COMMIT_ID >> $releasedir/readme.txt
@@ -101,8 +213,12 @@ build_target()
 
        cd $HOMEDIR/code/sdk/
        echo ./build.py -nhso $CLEAN -$RELEASE_BUILD -build_time=$DATE -custom_fw_version=$DEFAULT_CUSTOM_FW_VERSION $TARGET_PACK_NAME 2>&1 
-       python ./build.py -nhso $CLEAN -$RELEASE_BUILD -build_time=$DATE $TARGET_PACK_NAME 2>&1 
-       # ./build.py $CLEAN -$RELEASE_BUILD -build_time=$DATE -custom_fw_version=$DEFAULT_CUSTOM_FW_VERSION $TARGET_PACK_NAME 2>&1 
+if [ "$RELEASE_BUILD" == "debug" ] 
+then
+       ./build.py -nhso $CLEAN -$RELEASE_BUILD -build_time=$DATE -custom_fw_version=$DEFAULT_CUSTOM_FW_VERSION $TARGET_PACK_NAME 2>&1 
+else
+       ./build.py -nhso $CLEAN -$RELEASE_BUILD -build_time=$DATE -custom_fw_version=$DEFAULT_CUSTOM_FW_VERSION $TARGET_PACK_NAME 2>&1 
+fi
        #./build.py -nhso $CLEAN -$RELEASE_BUILD -build_time=$DATE $TARGET_PACK_NAME 2>&1 
        ret_code=$?
        if [ $ret_code == 0 ]
@@ -123,6 +239,7 @@ build_target()
 checkarguments $1
 checkarguments $2
 checkarguments $3
+checkarguments $4
 if [ "$CLEAN" == "-c" ]
 then
 echo  $0 $TARGET_PACK_NAME $RELEASE_BUILD clean
similarity index 100%
rename from auto_ota_readme.txt
rename to readme_auto_ota.txt