451 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			451 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| 
								 | 
							
								#!/bin/bash
							 | 
						||
| 
								 | 
							
								######################## EDIT START #########################
							 | 
						||
| 
								 | 
							
								DEF_APP="demo"
							 | 
						||
| 
								 | 
							
								DEF_CHIP_TYPE="kl1"
							 | 
						||
| 
								 | 
							
								DEF_CHIP_ID="wq"
							 | 
						||
| 
								 | 
							
								DEF_RELEASE="release"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								GROUP_APP=("demo" "cus_at" "sila" "demo_lwip")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#demo app support
							 | 
						||
| 
								 | 
							
								DEMO_GROUP_BOARD=("goldfinger_17p" "goldfinger_17p"  "goldfinger_17p"  "stamp_22p"  "stamp_22p"  "si301x_30p"  "si301x_30p"  "htzd"   "ledc"   "ledc"   "ledc"   "ledc_3p0"   "ledc_3p0"    "d2d"   "d2d")
							 | 
						||
| 
								 | 
							
								DEMO_GROUP_IMAGE_TYPE=("cco"       "cco"             "sta"             "cco"        "sta"        "cco"         "sta"      "cco"    "cco"       "cco"    "sta"    "cco"        "sta"         "cco"   "sta")
							 | 
						||
| 
								 | 
							
								DEMO_GROUP_FLASH_SIZE=(2           2                 2                 2            2            2             2          2        2           2        2        2            2             2       2)
							 | 
						||
| 
								 | 
							
								DEMO_GROUP_PSRAM_SIZE=(0           4                 0                 0            0            0             0          4        0           4        0        0            0             4       4)
							 | 
						||
| 
								 | 
							
								DEMO_GROUP_LENGTH=${#DEMO_GROUP_BOARD[*]}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#cus_at app support
							 | 
						||
| 
								 | 
							
								CUS_AT_GROUP_BOARD=("goldfinger_17p" "goldfinger_17p"  "goldfinger_17p"  "stamp_22p"  "stamp_22p"  "si301x_30p"  "si301x_30p"  "htzd"   "ledc"   "ledc"   "ledc"   "ledc_3p0"   "ledc_3p0")
							 | 
						||
| 
								 | 
							
								CUS_AT_GROUP_IMAGE_TYPE=("cco"       "cco"             "sta"             "cco"        "sta"        "cco"         "sta"         "cco"    "cco"    "cco"    "sta"    "cco"        "sta")
							 | 
						||
| 
								 | 
							
								CUS_AT_GROUP_FLASH_SIZE=(2           2                 2                 2            2            2             2             2        2        2        2        2            2)
							 | 
						||
| 
								 | 
							
								CUS_AT_GROUP_PSRAM_SIZE=(0           4                 0                 0            0            0             0             4        0        4        0        0            0)
							 | 
						||
| 
								 | 
							
								CUS_AT_GROUP_LENGTH=${#CUS_AT_GROUP_BOARD[*]}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#demo_lwip app support
							 | 
						||
| 
								 | 
							
								DEMO_LWIP_GROUP_BOARD=("htzd"        "htzd"        "d2d"        "d2d")
							 | 
						||
| 
								 | 
							
								DEMO_LWIP_GROUP_IMAGE_TYPE=("cco"    "sta"         "cco"        "sta")
							 | 
						||
| 
								 | 
							
								DEMO_LWIP_GROUP_FLASH_SIZE=(2        2             2            2)
							 | 
						||
| 
								 | 
							
								DEMO_LWIP_GROUP_PSRAM_SIZE=(4        4             4            4)
							 | 
						||
| 
								 | 
							
								DEMO_LWIP_GROUP_LENGTH=${#DEMO_LWIP_GROUP_BOARD[*]}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#DEF_APP
							 | 
						||
| 
								 | 
							
								for k in $@; do
							 | 
						||
| 
								 | 
							
								    for arg in ${GROUP_APP[@]}; do
							 | 
						||
| 
								 | 
							
								        if [ "$k" == "$arg" ]; then
							 | 
						||
| 
								 | 
							
								            DEF_APP="$k"
							 | 
						||
| 
								 | 
							
								            break
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								declare -a GROUP_BOARD
							 | 
						||
| 
								 | 
							
								declare -a GROUP_IMAGE
							 | 
						||
| 
								 | 
							
								declare -a GROUP_FLASH
							 | 
						||
| 
								 | 
							
								declare -a GROUP_PSRAM
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [ "${DEF_APP}" == "demo" ]; then
							 | 
						||
| 
								 | 
							
								for ((i=0; i < DEMO_GROUP_LENGTH; i++));do
							 | 
						||
| 
								 | 
							
								    GROUP_BOARD[$i]=${DEMO_GROUP_BOARD[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_IMAGE[$i]=${DEMO_GROUP_IMAGE_TYPE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_FLASH[$i]=${DEMO_GROUP_FLASH_SIZE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_PSRAM[$i]=${DEMO_GROUP_PSRAM_SIZE[i]}
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								GROUP_LENGTH=${DEMO_GROUP_LENGTH}
							 | 
						||
| 
								 | 
							
								elif [ "${DEF_APP}" == "cus_at" ] || [ "${DEF_APP}" == "sila" ]; then
							 | 
						||
| 
								 | 
							
								for ((i=0; i < CUS_AT_GROUP_LENGTH; i++));do
							 | 
						||
| 
								 | 
							
								    GROUP_BOARD[$i]=${CUS_AT_GROUP_BOARD[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_IMAGE[$i]=${CUS_AT_GROUP_IMAGE_TYPE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_FLASH[$i]=${CUS_AT_GROUP_FLASH_SIZE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_PSRAM[$i]=${CUS_AT_GROUP_PSRAM_SIZE[i]}
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								GROUP_LENGTH=${CUS_AT_GROUP_LENGTH}
							 | 
						||
| 
								 | 
							
								elif [ "${DEF_APP}" == "demo_lwip" ]; then
							 | 
						||
| 
								 | 
							
								for ((i=0; i < DEMO_LWIP_GROUP_LENGTH; i++));do
							 | 
						||
| 
								 | 
							
								    GROUP_BOARD[$i]=${DEMO_LWIP_GROUP_BOARD[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_IMAGE[$i]=${DEMO_LWIP_GROUP_IMAGE_TYPE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_FLASH[$i]=${DEMO_LWIP_GROUP_FLASH_SIZE[i]}
							 | 
						||
| 
								 | 
							
								    GROUP_PSRAM[$i]=${DEMO_LWIP_GROUP_PSRAM_SIZE[i]}
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								GROUP_LENGTH=${DEMO_LWIP_GROUP_LENGTH}
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#DEF_REL
							 | 
						||
| 
								 | 
							
								for k in $@; do
							 | 
						||
| 
								 | 
							
								    if [ "$k" == "debug" ]; then
							 | 
						||
| 
								 | 
							
								        DEF_RELEASE="debug"
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								###################### EDIT END ###################################
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								###################### THE BELLOW WILL NOT BE EDIT EVEN IF TO ADD NEW SDK ########################
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#print help info.
							 | 
						||
| 
								 | 
							
								if [ "?" == "$1" ]; then
							 | 
						||
| 
								 | 
							
								    echo  "*$0 [APP] [DBG_OPTION]"
							 | 
						||
| 
								 | 
							
								    echo  "*   [APP] -- Necessary, (${GROUP_APP[@]}), the app name that you want to build, default is demo."
							 | 
						||
| 
								 | 
							
								    echo  "*   [DBG_OPTION] -- Optional, (debug release), default is release."
							 | 
						||
| 
								 | 
							
								    echo
							 | 
						||
| 
								 | 
							
								    echo  "* Support img as follows:"
							 | 
						||
| 
								 | 
							
								    echo ""
							 | 
						||
| 
								 | 
							
								    echo "*********************** DEMO APP ******************************************"
							 | 
						||
| 
								 | 
							
								    for ((index=0; index < DEMO_GROUP_LENGTH; index++)); do
							 | 
						||
| 
								 | 
							
								        echo "*   $index. demo ${DEMO_GROUP_IMAGE_TYPE[$index]}   ${DEMO_GROUP_BOARD[$index]} (${DEMO_GROUP_FLASH_SIZE[$index]}M flash ${DEMO_GROUP_PSRAM_SIZE[$index]}M psram)"
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								    echo ""
							 | 
						||
| 
								 | 
							
								    echo "*********************** CUS_AT APP ******************************************"
							 | 
						||
| 
								 | 
							
								    for ((index=0; index < CUS_AT_GROUP_LENGTH; index++)); do
							 | 
						||
| 
								 | 
							
								        echo "*   $index. cus_at ${CUS_AT_GROUP_IMAGE_TYPE[$index]}   ${CUS_AT_GROUP_BOARD[$index]} (${CUS_AT_GROUP_FLASH_SIZE[$index]}M flash ${CUS_AT_GROUP_PSRAM_SIZE[$index]}M psram)"
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								    echo ""
							 | 
						||
| 
								 | 
							
								    echo "*********************** SILA APP ******************************************"
							 | 
						||
| 
								 | 
							
								    for ((index=0; index < CUS_AT_GROUP_LENGTH; index++)); do
							 | 
						||
| 
								 | 
							
								        echo "*   $index. sila ${CUS_AT_GROUP_IMAGE_TYPE[$index]}   ${CUS_AT_GROUP_BOARD[$index]} (${CUS_AT_GROUP_FLASH_SIZE[$index]}M flash ${CUS_AT_GROUP_PSRAM_SIZE[$index]}M psram)"
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								    echo ""
							 | 
						||
| 
								 | 
							
								    echo "*********************** DEMO_LWIP APP ******************************************"
							 | 
						||
| 
								 | 
							
								    for ((index=0; index < DEMO_LWIP_GROUP_LENGTH; index++)); do
							 | 
						||
| 
								 | 
							
								        echo "*   $index. demo ${DEMO_LWIP_GROUP_IMAGE_TYPE[$index]}   ${DEMO_LWIP_GROUP_BOARD[$index]} (${DEMO_LWIP_GROUP_FLASH_SIZE[$index]}M flash ${DEMO_LWIP_GROUP_PSRAM_SIZE[$index]}M psram)"
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								    exit 0
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								BUILD_NUM=0
							 | 
						||
| 
								 | 
							
								MAINLINE_FOLDER=".."
							 | 
						||
| 
								 | 
							
								CMAKE_FOLDER="../../SDKCmake"
							 | 
						||
| 
								 | 
							
								CMAKE_SDK_FOLDER="${CMAKE_FOLDER}/iot_sdk"
							 | 
						||
| 
								 | 
							
								SDK_FOLDER="../tools/gen_img/sdk_${DEF_APP}_${DEF_RELEASE}"
							 | 
						||
| 
								 | 
							
								OEM_TOOL="./../tools/gen_img/oem_tool"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								set -o errexit
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [ -d ${SDK_FOLDER} ]; then
							 | 
						||
| 
								 | 
							
								    rm -rf ${SDK_FOLDER}
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								mkdir -p ${SDK_FOLDER}
							 | 
						||
| 
								 | 
							
								pushd "${SDK_FOLDER}"
							 | 
						||
| 
								 | 
							
								    mkdir app
							 | 
						||
| 
								 | 
							
								    mkdir board
							 | 
						||
| 
								 | 
							
								    mkdir build
							 | 
						||
| 
								 | 
							
								    mkdir output
							 | 
						||
| 
								 | 
							
								    mkdir tools
							 | 
						||
| 
								 | 
							
								popd
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#prepare common file.
							 | 
						||
| 
								 | 
							
								if [ ! -d ${CMAKE_SDK_FOLDER}/cmake ] || [ ! -d ${CMAKE_SDK_FOLDER}/.scripts ] \
							 | 
						||
| 
								 | 
							
								|| [ ! -d ${MAINLINE_FOLDER}/export/inc ] || [ ! -f ${CMAKE_SDK_FOLDER}/build_target_firmware.sh ]; then
							 | 
						||
| 
								 | 
							
								    echo "ERR: common file not exist."
							 | 
						||
| 
								 | 
							
								    exit 1
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								cp -rf ${CMAKE_SDK_FOLDER}/cmake ${SDK_FOLDER}
							 | 
						||
| 
								 | 
							
								cp -rf ${CMAKE_SDK_FOLDER}/.scripts ${SDK_FOLDER}/build
							 | 
						||
| 
								 | 
							
								cp -rf ${CMAKE_SDK_FOLDER}/build_target_firmware.sh ${SDK_FOLDER}/build
							 | 
						||
| 
								 | 
							
								cp -rf ${MAINLINE_FOLDER}/export/inc ${SDK_FOLDER}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								sed -i "s/DEF_CHIP_TYPE=.*/DEF_CHIP_TYPE=${DEF_CHIP_TYPE}/g" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								sed -i "s/DEF_CHIP_ID=.*/DEF_CHIP_ID=${DEF_CHIP_ID}/g" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								sed -i "s/DEF_RELEASE=.*/DEF_RELEASE=${DEF_RELEASE}/g" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								IOT_VER_FILE="${MAINLINE_FOLDER}/inc/iot_version.h"
							 | 
						||
| 
								 | 
							
								get_iot_ver() {
							 | 
						||
| 
								 | 
							
								    ver_file=$1
							 | 
						||
| 
								 | 
							
								    major_ver=`cat ${ver_file} |grep " AP_FIRMWARE_VERSION_MAJOR"|awk '{print $3}'`
							 | 
						||
| 
								 | 
							
								    mionor_ver=`cat ${ver_file} |grep " AP_FIRMWARE_VERSION_MINOR"|awk '{print $3}'`
							 | 
						||
| 
								 | 
							
								    micro_ver=`cat ${ver_file} |grep " AP_FIRMWARE_VERSION_MICRO"|awk '{print $3}'`
							 | 
						||
| 
								 | 
							
								    build_ver=`cat ${ver_file} |grep " AP_FIRMWARE_VERSION_BUILD"|awk '{print $3}'`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    major_ver=${major_ver//(/}
							 | 
						||
| 
								 | 
							
								    major_ver=${major_ver//)/}
							 | 
						||
| 
								 | 
							
								    mionor_ver=${mionor_ver//(/}
							 | 
						||
| 
								 | 
							
								    mionor_ver=${mionor_ver//)/}
							 | 
						||
| 
								 | 
							
								    micro_ver=${micro_ver//(/}
							 | 
						||
| 
								 | 
							
								    micro_ver=${micro_ver//)/}
							 | 
						||
| 
								 | 
							
								    build_ver=${build_ver//(/}
							 | 
						||
| 
								 | 
							
								    build_ver=${build_ver//)/}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    IOT_VER="${major_ver}.${mionor_ver}.${micro_ver}.${build_ver}"
							 | 
						||
| 
								 | 
							
								    return
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get_git_ver() {
							 | 
						||
| 
								 | 
							
								    commit_id=`git log -1 | grep "commit" | awk '{print $2}'`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GIT_VER="${commit_id:0:6}"
							 | 
						||
| 
								 | 
							
								    return
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#build_sdk_start img_type app board flash_size psram_size
							 | 
						||
| 
								 | 
							
								build_sdk_start() {
							 | 
						||
| 
								 | 
							
								    local build_app=$1
							 | 
						||
| 
								 | 
							
								    local img_type=$2
							 | 
						||
| 
								 | 
							
								    local build_board=$3
							 | 
						||
| 
								 | 
							
								    local flash_size=$4
							 | 
						||
| 
								 | 
							
								    local psram_size=$5
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    IMG_UPPER=$(echo ${img_type} | tr '[a-z]' '[A-Z]')
							 | 
						||
| 
								 | 
							
								    BOARD_UPPER=$(echo ${build_board} | tr '[a-z]' '[A-Z]')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ "${build_app}" == "demo" ]; then
							 | 
						||
| 
								 | 
							
								        DEF_APP_ID=3
							 | 
						||
| 
								 | 
							
								    elif [ "${build_app}" == "cus_at" ]; then
							 | 
						||
| 
								 | 
							
								        DEF_APP_ID=18
							 | 
						||
| 
								 | 
							
								    elif [ "${build_app}" == "sila" ]; then
							 | 
						||
| 
								 | 
							
								        DEF_APP_ID=24
							 | 
						||
| 
								 | 
							
								    elif [ "${build_app}" == "demo_lwip" ]; then
							 | 
						||
| 
								 | 
							
								        DEF_APP_ID=12
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        echo "ERR: not support app ${build_app}"
							 | 
						||
| 
								 | 
							
								        return 1
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #build-sdk
							 | 
						||
| 
								 | 
							
								    build_sdk_app=0
							 | 
						||
| 
								 | 
							
								    sdk_app_dir="${SDK_FOLDER}/app/${build_app}"
							 | 
						||
| 
								 | 
							
								    if [ ! -d "${sdk_app_dir}" ]; then
							 | 
						||
| 
								 | 
							
								        mkdir -p ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								        build_sdk_app=1
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ "${build_sdk_app}" == "1" ]; then
							 | 
						||
| 
								 | 
							
								        if [ ! -d "${CMAKE_SDK_FOLDER}/iot_${build_app}_app" ]; then
							 | 
						||
| 
								 | 
							
								            echo "ERR: dir not exist : ${CMAKE_SDK_FOLDER}/iot_${build_app}_app"
							 | 
						||
| 
								 | 
							
								            return 1
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								        cp -rf ${CMAKE_SDK_FOLDER}/iot_${build_app}_app/. ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								        if [ "${build_app}" == "demo" ]; then
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/${build_app}/* ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            # copy utils files
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/utils/* ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            rm -f ${sdk_app_dir}/demo_speed_test*
							 | 
						||
| 
								 | 
							
								            sed -i "/#elif (IOT_DEMO_SUB_FUN == IOT_DEMO_SEL_SPEED_TEST)/,/app_demo_spd_module_init();/d" ${sdk_app_dir}/demo.c
							 | 
						||
| 
								 | 
							
								            sed -i "/${SRC_DIR}\/demo_speed_test.c/d" ${sdk_app_dir}/.CMakeLists.txt
							 | 
						||
| 
								 | 
							
								        elif [ "${build_app}" == "cus_at" ]; then
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/at ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/common ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/driver ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/customer ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            rm -f ${sdk_app_dir}/driver/app_gpio*
							 | 
						||
| 
								 | 
							
								            rm -f ${sdk_app_dir}/common/app_1901.*
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            sed -i "/#if APP_IO_OPERATION_ENABLE/,/#endif \/\* end APP_IO_OPERATION_ENABLE \*\//d" ${sdk_app_dir}/at/app_atcmd_handle.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if APP_IO_OPERATION_ENABLE/,/#endif \/\* end APP_IO_OPERATION_ENABLE \*\//d" ${sdk_app_dir}/common/app_config.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if APP_IO_OPERATION_ENABLE/,/#endif \/\* end APP_IO_OPERATION_ENABLE \*\//d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if (IOT_AT_ONLY == 0)/,/#endif \/\* end IOT_AT_ONLY \*\//d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if (IOT_AT_ONLY == 1)/d" ${sdk_app_dir}/at/app_atcmd_handle.c ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#endif \/\* end IOT_AT_ONLY for set mode \*\//d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#include \"app_1901.h\"/d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if SUPPORT_IEEE_1901/,/#else/d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#endif \/\* end SUPPORT_IEEE_1901 \*\//d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#else \/\* else IOT_AT_ONLY == 0 \*\//,/#endif \/\* end IOT_AT_ONLY \*\//d" ${sdk_app_dir}/at/app_atcmd_handle.c
							 | 
						||
| 
								 | 
							
								            # copy utils files
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/utils ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								        elif [ "${build_app}" == "sila" ]; then
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/at ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/common ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/driver ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/customer ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/iot_cus_at_app/proto ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								            rm -f ${sdk_app_dir}/common/app_1901.*
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            sed -i "/#include \"app_1901.h\"/d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if SUPPORT_IEEE_1901/,/#else/d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#endif \/\* end SUPPORT_IEEE_1901 \*\//d" ${sdk_app_dir}/common/app_main.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#if (IOT_AT_ONLY == 1)/,/#else \/\* else IOT_AT_ONLY == 0 \*\//d" ${sdk_app_dir}/at/app_atcmd_handle.c
							 | 
						||
| 
								 | 
							
								            sed -i "/#endif \/\* end IOT_AT_ONLY \*\//d" ${sdk_app_dir}/at/app_atcmd_handle.c
							 | 
						||
| 
								 | 
							
								            # copy utils files
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/utils ${sdk_app_dir}
							 | 
						||
| 
								 | 
							
								        elif [ "${build_app}" == "demo_lwip" ]; then
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/demo ${sdk_app_dir}/
							 | 
						||
| 
								 | 
							
								            cp -rf ${MAINLINE_FOLDER}/app/utils/* ${sdk_app_dir}/demo/
							 | 
						||
| 
								 | 
							
								            rm -f ${sdk_app_dir}/demo/demo_speed_test*
							 | 
						||
| 
								 | 
							
								            sed -i "/#elif (IOT_DEMO_SUB_FUN == IOT_DEMO_SEL_SPEED_TEST)/,/app_demo_spd_module_init();/d" ${sdk_app_dir}/demo/demo.c
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ ! -d "${SDK_FOLDER}/board/${build_board}" ]; then
							 | 
						||
| 
								 | 
							
								        mkdir "${SDK_FOLDER}/board/${build_board}"
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ "${img_type}" == "cco" ]; then
							 | 
						||
| 
								 | 
							
								        chk_files=("sbl.bin" "sp.bin" "libcco_app.a" "libht_cco_1p.a" "libht_cco_3p.a" "macro_config.ini")
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        chk_files=("sbl.bin" "sp.bin" "libsta_app.a" "libht_sta.a" "macro_config.ini")
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #Whether need to recompile.
							 | 
						||
| 
								 | 
							
								    taget_source_dir="../tools/gen_img/lib_sdk_source/${img_type}_${DEF_APP_ID}_${flash_size}m_${psram_size}m_${DEF_CHIP_TYPE}_${DEF_CHIP_ID}_${DEF_RELEASE}"
							 | 
						||
| 
								 | 
							
								    for bin_file in ${chk_files[@]}; do
							 | 
						||
| 
								 | 
							
								        if [ ! -f ${taget_source_dir}/${bin_file} ]; then
							 | 
						||
| 
								 | 
							
								            echo "WAR: file not exist : ${taget_source_dir}/${bin_file}"
							 | 
						||
| 
								 | 
							
								            local need_build_flag=1
							 | 
						||
| 
								 | 
							
								            break
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare sdk component.
							 | 
						||
| 
								 | 
							
								    if [ "${need_build_flag}" == "1" ]; then
							 | 
						||
| 
								 | 
							
								        if [ "${DEF_RELEASE}" == "debug" ]; then
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define\ AP_FIRMWARE_VERSION_TYPE\ .*/\#define\ AP_FIRMWARE_VERSION_TYPE \(1\)/" ${IOT_VER_FILE}
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_PRINTF_DEBUG\ .*/\#define\ IOT_PRINTF_DEBUG 1/" ${MAINLINE_FOLDER}/export/inc/iot_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_PRINTF_DEBUG\ .*/\#define\ IOT_PRINTF_DEBUG 1/" ${MAINLINE_FOLDER}/export/inc/config/plc_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_EXCEPTION_DEBUG\ .*/\#define\ IOT_EXCEPTION_DEBUG 1/" ${MAINLINE_FOLDER}/export/inc/iot_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_EXCEPTION_DEBUG\ .*/\#define\ IOT_EXCEPTION_DEBUG 1/" ${MAINLINE_FOLDER}/export/inc/config/plc_config_api.h
							 | 
						||
| 
								 | 
							
								        else
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define\ AP_FIRMWARE_VERSION_TYPE\ .*/\#define\ AP_FIRMWARE_VERSION_TYPE \(0\)/" ${IOT_VER_FILE}
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_PRINTF_DEBUG\ .*/\#define\ IOT_PRINTF_DEBUG 0/" ${MAINLINE_FOLDER}/export/inc/iot_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_PRINTF_DEBUG\ .*/\#define\ IOT_PRINTF_DEBUG 0/" ${MAINLINE_FOLDER}/export/inc/config/plc_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_EXCEPTION_DEBUG\ .*/\#define\ IOT_EXCEPTION_DEBUG 0/" ${MAINLINE_FOLDER}/export/inc/iot_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define IOT_EXCEPTION_DEBUG\ .*/\#define\ IOT_EXCEPTION_DEBUG 0/" ${MAINLINE_FOLDER}/export/inc/config/plc_config_api.h
							 | 
						||
| 
								 | 
							
								            sed -i "s/\#define\ DBGLOG_DEFAULT_LEVEL\ .*/\#define\ DBGLOG_DEFAULT_LEVEL DBGLOG_ERR/" ${MAINLINE_FOLDER}/common/dbglog/iot_dbglog.c
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								        ./build_flash_smart.sh ${img_type} ${DEF_APP_ID} ${flash_size}m ${psram_size}m ${DEF_CHIP_ID} ${DEF_RELEASE} ${DEF_CHIP_TYPE}
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ ! -d "${SDK_FOLDER}/board/${build_board}/${img_type}" ]; then
							 | 
						||
| 
								 | 
							
								        mkdir "${SDK_FOLDER}/board/${build_board}/${img_type}"
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    target_chip_resource_dir=${SDK_FOLDER}/board/${build_board}/${img_type}/${flash_size}m_flash_${psram_size}m_psram
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ -d ${target_chip_resource_dir} ]; then
							 | 
						||
| 
								 | 
							
								        rm -rf ${target_chip_resource_dir}
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								    mkdir -p ${target_chip_resource_dir}/bin
							 | 
						||
| 
								 | 
							
								    mkdir ${target_chip_resource_dir}/ld
							 | 
						||
| 
								 | 
							
								    mkdir ${target_chip_resource_dir}/lib
							 | 
						||
| 
								 | 
							
								    mkdir ${target_chip_resource_dir}/cfg
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare cfg.
							 | 
						||
| 
								 | 
							
								    CFG_DIR="${MAINLINE_FOLDER}/build/cfg"
							 | 
						||
| 
								 | 
							
								    if [ "${psram_size}" == "0" ]; then
							 | 
						||
| 
								 | 
							
								        cfg_file=smart_${flash_size}m_${img_type}.cfg
							 | 
						||
| 
								 | 
							
								        upg_cfg_file=smart_${flash_size}m_${img_type}_upgrade.cfg
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        cfg_file=smart_${flash_size}m_${img_type}_psram.cfg
							 | 
						||
| 
								 | 
							
								        upg_cfg_file=smart_${flash_size}m_${img_type}_upgrade_psram.cfg
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    cp ${CFG_DIR}/${cfg_file} ${target_chip_resource_dir}/cfg
							 | 
						||
| 
								 | 
							
								    cp ${CFG_DIR}/${upg_cfg_file} ${target_chip_resource_dir}/cfg
							 | 
						||
| 
								 | 
							
								    sed -i "s/img_size=./img_size=${flash_size}/g" ${target_chip_resource_dir}/cfg/${cfg_file}
							 | 
						||
| 
								 | 
							
								    sed -i "/img_size=./a flash_size=${flash_size}" ${target_chip_resource_dir}/cfg/${cfg_file}
							 | 
						||
| 
								 | 
							
								    sed -i "/flash_size=./a psram_size=${psram_size}" ${target_chip_resource_dir}/cfg/${cfg_file}
							 | 
						||
| 
								 | 
							
								    sed -i "s/img_size=./img_size=${flash_size}/g" ${target_chip_resource_dir}/cfg/${upg_cfg_file}
							 | 
						||
| 
								 | 
							
								    sed -i "/img_size=./a flash_size=${flash_size}" ${target_chip_resource_dir}/cfg/${upg_cfg_file}
							 | 
						||
| 
								 | 
							
								    sed -i "/flash_size=./a psram_size=${psram_size}" ${target_chip_resource_dir}/cfg/${upg_cfg_file}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare oem, cco and sta share one oem for goldfinger_17p stamp_22p and si301x_30p.
							 | 
						||
| 
								 | 
							
								    if [ ${build_board} == "goldfinger_17p" ] || [ ${build_board} == "stamp_22p" ] \
							 | 
						||
| 
								 | 
							
								    || [ ${build_board} == "si301x_30p" ]; then
							 | 
						||
| 
								 | 
							
								        oem_ini="${MAINLINE_FOLDER}/tools/oem/${BOARD_UPPER}_OEM.ini"
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        oem_ini="${MAINLINE_FOLDER}/tools/oem/${BOARD_UPPER}${IMG_UPPER}01_OEM.ini"
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #goldfinger_17p stamp_22p si301x_30p ledc_3p0 d2d share pib of htzd.
							 | 
						||
| 
								 | 
							
								    if [ ${build_board} == "goldfinger_17p" ] || [ ${build_board} == "stamp_22p" ] \
							 | 
						||
| 
								 | 
							
								    || [ ${build_board} == "si301x_30p" ] || [ ${build_board} == "ledc_3p0" ] || [ ${build_board} == "d2d" ]; then
							 | 
						||
| 
								 | 
							
								        pib_bin="${MAINLINE_FOLDER}/tools/pib/HTZD${IMG_UPPER}01_PIB.bin"
							 | 
						||
| 
								 | 
							
								        lp_pib_bin="${MAINLINE_FOLDER}/tools/pib/HTZD${IMG_UPPER}01_LP_PIB.bin"
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        pib_bin="${MAINLINE_FOLDER}/tools/pib/${BOARD_UPPER}${IMG_UPPER}01_PIB.bin"
							 | 
						||
| 
								 | 
							
								        lp_pib_bin="${MAINLINE_FOLDER}/tools/pib/${BOARD_UPPER}${IMG_UPPER}01_LP_PIB.bin"
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ "${img_type}" == "cco" ]; then
							 | 
						||
| 
								 | 
							
								        if [ ! -f ${taget_source_dir}/sp.bin ] || [ ! -f ${taget_source_dir}/sbl.bin ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${taget_source_dir}/libcco_app.a ] || [ ! -f ${taget_source_dir}/libht_cco_1p.a ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${taget_source_dir}/libht_cco_3p.a ] || [ ! -f ${pib_bin} ] || [ ! -f ${taget_source_dir}/macro_config.ini ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${lp_pib_bin} ]; then
							 | 
						||
| 
								 | 
							
								            echo "ERR: sdk cco file missing."
							 | 
						||
| 
								 | 
							
								            return 1
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        cp ${taget_source_dir}/libht_cco_3p.a ${target_chip_resource_dir}/lib/
							 | 
						||
| 
								 | 
							
								        cp ${taget_source_dir}/libht_cco_1p.a ${target_chip_resource_dir}/lib/
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        if [ ! -f ${taget_source_dir}/sp.bin ] || [ ! -f ${taget_source_dir}/sbl.bin ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${taget_source_dir}/libsta_app.a ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${taget_source_dir}/libht_sta.a ] || [ ! -f ${pib_bin} ] || [ ! -f ${taget_source_dir}/macro_config.ini ] \
							 | 
						||
| 
								 | 
							
								        || [ ! -f ${lp_pib_bin} ]; then
							 | 
						||
| 
								 | 
							
								            echo "ERR: sdk sta file missing."
							 | 
						||
| 
								 | 
							
								            return 1
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								        cp ${taget_source_dir}/libht_sta.a ${target_chip_resource_dir}/lib/libht_sta.a
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								    cp ${oem_ini} ./tmp_oem.ini
							 | 
						||
| 
								 | 
							
								    if [ "${img_type}" == "cco" ]; then
							 | 
						||
| 
								 | 
							
								        sed -i "s/mid.*/mid 1/g" ./tmp_oem.ini
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        sed -i "s/mid.*/mid 0/g" ./tmp_oem.ini
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								    $OEM_TOOL --input=./tmp_oem.ini --output=${target_chip_resource_dir}/bin/oem.bin
							 | 
						||
| 
								 | 
							
								    rm ./tmp_oem.ini
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    cp ${pib_bin} ${target_chip_resource_dir}/bin/pib.bin
							 | 
						||
| 
								 | 
							
								    cp ${lp_pib_bin} ${target_chip_resource_dir}/bin/lp_pib.bin
							 | 
						||
| 
								 | 
							
								    cp ${taget_source_dir}/sbl.bin ${target_chip_resource_dir}/bin
							 | 
						||
| 
								 | 
							
								    cp ${taget_source_dir}/sp.bin ${target_chip_resource_dir}/bin
							 | 
						||
| 
								 | 
							
								    cp ${taget_source_dir}/lib${img_type}_app.a ${target_chip_resource_dir}/lib
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare board macro.
							 | 
						||
| 
								 | 
							
								    cp ${taget_source_dir}/macro_config.ini ${target_chip_resource_dir}/
							 | 
						||
| 
								 | 
							
								    sed -i "/^$/d" ${target_chip_resource_dir}/macro_config.ini
							 | 
						||
| 
								 | 
							
								    sed -i "s/^/-D/g" ${target_chip_resource_dir}/macro_config.ini
							 | 
						||
| 
								 | 
							
								    sed -i ':a;N;$!ba;s/\n/ /g' ${target_chip_resource_dir}/macro_config.ini
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare lds
							 | 
						||
| 
								 | 
							
								    src_ld_dir="${MAINLINE_FOLDER}/startup/ldscripts/riscv"
							 | 
						||
| 
								 | 
							
								    if [ "${psram_size}" == "0" ]; then
							 | 
						||
| 
								 | 
							
								        cp  ${src_ld_dir}/link_flash_smart_${img_type}.lds ${target_chip_resource_dir}/ld/link_flash_${img_type}.lds
							 | 
						||
| 
								 | 
							
								    else
							 | 
						||
| 
								 | 
							
								        cp ${src_ld_dir}/link_flash_smart_psram_${psram_size}m_${img_type}.lds ${target_chip_resource_dir}/ld/link_flash_${img_type}.lds
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ ! -f "${MAINLINE_FOLDER}/startup/ldscripts/riscv/sp_smart_${img_type}.addrs.ld" ]; then
							 | 
						||
| 
								 | 
							
								        echo "WAR: file not exist : ${MAINLINE_FOLDER}/startup/ldscripts/riscv/sp_smart_${img_type}.addrs.ld"
							 | 
						||
| 
								 | 
							
								        return 1
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if [ -e ${src_ld_dir}/rom.addrs.ld ]; then
							 | 
						||
| 
								 | 
							
								        cp ${src_ld_dir}/rom.addrs.ld ${target_chip_resource_dir}/ld/rom.addrs.ld
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    cp -f ${MAINLINE_FOLDER}/startup/ldscripts/riscv/sp_smart_${img_type}.addrs.ld ${target_chip_resource_dir}/ld/
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    #prepare tools
							 | 
						||
| 
								 | 
							
								    cp -f ${MAINLINE_FOLDER}/tools/gen_img/elzma ${SDK_FOLDER}/tools
							 | 
						||
| 
								 | 
							
								    cp -f ${MAINLINE_FOLDER}/tools/gen_img/ah ${SDK_FOLDER}/tools
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    # add iot version.
							 | 
						||
| 
								 | 
							
								    get_iot_ver ${IOT_VER_FILE}
							 | 
						||
| 
								 | 
							
								    sed -i "s/IOT_VER=.*/IOT_VER=\"${IOT_VER}\"/g" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    # add git version.
							 | 
						||
| 
								 | 
							
								    cd ${MAINLINE_FOLDER}/../../../
							 | 
						||
| 
								 | 
							
								    get_git_ver
							 | 
						||
| 
								 | 
							
								    cd -
							 | 
						||
| 
								 | 
							
								    if [ "${GIT_VER}" != "" ]; then
							 | 
						||
| 
								 | 
							
								        sed -i "s/GIT_VER=.*/GIT_VER=\"${GIT_VER}-\"/g" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    sed -i "/GROUP_NUM=.*/a GROUP_${BUILD_NUM}=(${build_app} ${build_board} ${img_type} $4 $5)" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								    ((BUILD_NUM=${BUILD_NUM}+1))
							 | 
						||
| 
								 | 
							
								    return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#start build sdk.
							 | 
						||
| 
								 | 
							
								echo "==To build all taget=="
							 | 
						||
| 
								 | 
							
								target_sdk_folder="tools/gen_img/sdk_iot_${DEF_RELEASE}"
							 | 
						||
| 
								 | 
							
								for ((index=0; index < GROUP_LENGTH; index++)); do
							 | 
						||
| 
								 | 
							
								    build_sdk_start ${DEF_APP} ${GROUP_IMAGE[$index]} ${GROUP_BOARD[$index]} ${GROUP_FLASH[$index]} ${GROUP_PSRAM[$index]}
							 | 
						||
| 
								 | 
							
								    if [ "$?" == "0" ]; then
							 | 
						||
| 
								 | 
							
								        echo "== ${DEF_APP} ${GROUP_IMAGE[$index]} ${GROUP_BOARD[$index]} (${GROUP_FLASH[$index]}M flash  +  ${GROUP_PSRAM[$index]}M psram) sdk build successfully=="
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								echo "==Build all target successfully, dir location : $target_sdk_folder=="
							 | 
						||
| 
								 | 
							
								sed -i "s/GROUP_NUM=.*/GROUP_NUM=${BUILD_NUM}/" ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								chmod 755 ${SDK_FOLDER}/build/build_target_firmware.sh
							 | 
						||
| 
								 | 
							
								dos2unix ${SDK_FOLDER}/build/build_target_firmware.sh
							 |