156 lines
4.2 KiB
Bash
Executable File
156 lines
4.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
DEF_APP=4
|
|
DEF_IMAGE_TYPE="sta"
|
|
DEF_FLASH_SIZE="2m"
|
|
DEF_PSRAM_SIZE="0m"
|
|
DEF_CHIP_ID="WQ"
|
|
DEF_REL="debug"
|
|
DEF_NOT_CLEAN="0"
|
|
|
|
GROUP_CUSTOM=("ledc" "ledc_3p0")
|
|
GROUP_FLASH_SIZE=("2m" "4m")
|
|
GROUP_PSRAM_SIZE=("0m" "2m")
|
|
GROUP_RUN_TYPE=("flash" "psram")
|
|
GROUP_REL=("debug" "release")
|
|
|
|
INPUT_FLASH_SIZE=$(echo $1 | tr '[A-Z]' '[a-z]')
|
|
INPUT_PSRAM_SIZE=$(echo $2 | tr '[A-Z]' '[a-z]')
|
|
IMG_TYPE_UPPER=$(echo ${DEF_IMAGE_TYPE} | tr '[a-z]' '[A-Z]')
|
|
|
|
usage() {
|
|
echo "$0 [FLASH_SIZE] [PSRAM_SIZE] [BUILD_TYPE] [NOT_CLEAN]"
|
|
echo "* [FLASH_SIZE] -- Optional, 2m/4m, default is 2m."
|
|
echo "* [PSRAM_SIZE] -- Optional, 0m/2m, default 0m."
|
|
echo "* [BUILD_TYPE] -- Optional, release or debug."
|
|
echo "* [NOT_CLEAN] -- Optional, input 'not_clean' means increment compile."
|
|
exit 1
|
|
}
|
|
|
|
if [ "?" == "$1" ]; then
|
|
usage
|
|
fi
|
|
|
|
#DEF_NOT_CLEAN
|
|
for k in $@; do
|
|
if [ "$k" == "not_clean" ]; then
|
|
DEF_NOT_CLEAN="1"
|
|
break
|
|
fi
|
|
done
|
|
|
|
#DEF_REL
|
|
for k in $@; do
|
|
for arg in ${GROUP_REL[@]};
|
|
do
|
|
if [ "$k" == "${arg}" ]; then
|
|
DEF_REL="$k"
|
|
break
|
|
fi
|
|
done
|
|
done
|
|
|
|
#DEF_FLASH_SIZE
|
|
for arg in ${GROUP_FLASH_SIZE[@]}; do
|
|
if [ "${INPUT_FLASH_SIZE}" == "$arg" ]; then
|
|
DEF_FLASH_SIZE="${INPUT_FLASH_SIZE}"
|
|
break
|
|
fi
|
|
done
|
|
|
|
#DEF_PSRAM_SIZE
|
|
for arg in ${GROUP_PSRAM_SIZE[@]}; do
|
|
if [ "${INPUT_PSRAM_SIZE}" == "$arg" ]; then
|
|
DEF_PSRAM_SIZE="${INPUT_PSRAM_SIZE}"
|
|
break
|
|
fi
|
|
done
|
|
|
|
if [ "${DEF_FLASH_SIZE}" == "2m" ]; then
|
|
FLASH_SIZE_nM=2
|
|
FW_KW_STR="T-"
|
|
elif [ "${DEF_FLASH_SIZE}" == "4m" ]; then
|
|
FLASH_SIZE_nM=4
|
|
FW_KW_STR="F-"
|
|
fi
|
|
|
|
if [ "${DEF_PSRAM_SIZE}" == "0m" ]; then
|
|
export psram_enable=0
|
|
PSRAM_SIZE_nM=0
|
|
unset GROUP_RUN_TYPE[1]
|
|
elif [ "${DEF_PSRAM_SIZE}" == "2m" ]; then
|
|
export psram_enable=1
|
|
PSRAM_SIZE_nM=2
|
|
unset GROUP_RUN_TYPE[0]
|
|
else
|
|
export psram_enable=1
|
|
PSRAM_SIZE_nM=4
|
|
unset GROUP_RUN_TYPE[0]
|
|
fi
|
|
|
|
if [ "$DEF_PSRAM_SIZE" == "0m" ]; then
|
|
if [ "$DEF_FLASH_SIZE" == "2m" ]; then
|
|
export layout_index=1
|
|
elif [ "$DEF_FLASH_SIZE" == "4m" ]; then
|
|
export layout_index=3
|
|
fi
|
|
else
|
|
if [ "$DEF_FLASH_SIZE" == "2m" ]; then
|
|
export layout_index=2
|
|
elif [ "$DEF_FLASH_SIZE" == "4m" ]; then
|
|
export layout_index=4
|
|
fi
|
|
fi
|
|
|
|
rm -f ../Makefile
|
|
ln -s ./build/Makefile ../Makefile
|
|
|
|
set -o errexit
|
|
|
|
CHIP_ID_ENV="export HW_CHIP_ID="
|
|
FLASH_SIZE_ENV="export flash_size="
|
|
PSRAM_SIZE_ENV="export psram_size="
|
|
CKQ_ENV="export iot_ckq=1"
|
|
SRC_ENV_FILE="env_flash_smart.sh"
|
|
cp $SRC_ENV_FILE env_tmp.sh
|
|
|
|
export smart_cco_sta=2
|
|
|
|
#start building...
|
|
ENV_STRING=${CHIP_ID_ENV}${DEF_CHIP_ID}
|
|
echo ${ENV_STRING} >> env_tmp.sh
|
|
ENV_STRING=${FLASH_SIZE_ENV}${FLASH_SIZE_nM}
|
|
echo ${ENV_STRING} >> env_tmp.sh
|
|
ENV_STRING=${PSRAM_SIZE_ENV}${PSRAM_SIZE_nM}
|
|
echo ${ENV_STRING} >> env_tmp.sh
|
|
ENV_STRING=${CKQ_ENV}
|
|
echo ${ENV_STRING} >> env_tmp.sh
|
|
#cat env_tmp.sh
|
|
. env_tmp.sh ${DEF_IMAGE_TYPE} ${DEF_APP} ${DEF_REL} ${DEF_FLASH_SIZE} ${DEF_PSRAM_SIZE} && [ "${DEF_NOT_CLEAN}" == "0" ] && make APP=${DEF_APP} -C .. clobber
|
|
make PLATFORM=CHIP APP=${DEF_APP} FLASH_SIZE=${FLASH_SIZE_nM} -C ..
|
|
rm env_tmp.sh
|
|
|
|
pushd ../tools/gen_img
|
|
for ARG_RT in ${GROUP_RUN_TYPE[@]}; do
|
|
for ARG_CUS in ${GROUP_CUSTOM[@]}; do
|
|
if [ "${ARG_CUS}" == "gprs" ]; then
|
|
continue
|
|
fi
|
|
|
|
echo "./gen_img.sh -d ${DEF_CHIP_ID} -c ${ARG_CUS} -i ${DEF_IMAGE_TYPE} -r ${ARG_RT} -a "ge_ckq" -b 1 -v ${DEF_REL} -m lzma -s ${DEF_FLASH_SIZE} -p ${PSRAM_SIZE_nM}"
|
|
./gen_img.sh -d ${DEF_CHIP_ID} -c ${ARG_CUS} -i ${DEF_IMAGE_TYPE} -r ${ARG_RT} -a "ge_ckq" -b 1 -v ${DEF_REL} -m lzma -s ${DEF_FLASH_SIZE} -p ${PSRAM_SIZE_nM}
|
|
|
|
#extra work:do not need lp bin.
|
|
CUS_UPPER=$(echo ${ARG_CUS} | tr '[a-z]' '[A-Z]')
|
|
cd ./customer/${FLASH_SIZE_nM}M/${ARG_CUS}/${DEF_IMAGE_TYPE}/out_*
|
|
find -type f ! -name "${CUS_UPPER}${IMG_TYPE_UPPER}01_PIB.bin"|grep "PIB.bin"|xargs rm -f
|
|
cd -
|
|
|
|
cd ./customer/${FLASH_SIZE_nM}M/${ARG_CUS}/${DEF_IMAGE_TYPE}/bin
|
|
find -type f ! -name "*${CUS_UPPER}${IMG_TYPE_UPPER}01-${FW_KW_STR}*"|xargs rm -f
|
|
cd -
|
|
done
|
|
done
|
|
popd
|
|
|
|
mkdir -p ../bin && cp -rf ../tools/gen_img/customer ../bin |