91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
|  | #!/bin/bash
 | ||
|  | 
 | ||
|  | #If an error occurs, exit and return the error. | ||
|  | set -o errexit | ||
|  | 
 | ||
|  | DEF_APP=12 | ||
|  | DEF_IMAGE_TYPE="" | ||
|  | DEF_FLASH_SIZE="2m" | ||
|  | DEF_PSRAM_SIZE="0m" | ||
|  | DEF_CHIP_ID="wq" | ||
|  | DEF_REL="release" | ||
|  | DEF_CHIP_TYPE="kl1" | ||
|  | 
 | ||
|  | GROUP_IMAGE_TYPE=("cco" "sta") | ||
|  | GROUP_FLASH_SIZE=("1m" "2m" "4m") | ||
|  | GROUP_PSRAM_SIZE=("0m" "2m" "4m") | ||
|  | GROUP_REL=("debug" "release") | ||
|  | 
 | ||
|  | INPUT_IMG_TYPE=$(echo $1 | tr '[A-Z]' '[a-z]') | ||
|  | INPUT_FLASH_SIZE=$(echo $2 | tr '[A-Z]' '[a-z]') | ||
|  | INPUT_PSRAM_SIZE=$(echo $3 | tr '[A-Z]' '[a-z]') | ||
|  | 
 | ||
|  | usage() { | ||
|  |     echo  "$0 [IMAGE_TYPE] [FLASH_SIZE] [PSRAM_SIZE] [BUILD_TYPE]" | ||
|  |     echo  "*       [IMAGE_TYPE] -- Necessary, cco or sta." | ||
|  |     echo  "*       [FLASH_SIZE] -- Optional, 1m/2m/4m, default is 2m." | ||
|  |     echo  "*       [PSRAM_SIZE] -- Optional, 0m/2m/4m, default cco:4m, sta:0m." | ||
|  |     echo  "*       [BUILD_TYPE] -- Optional, release or debug." | ||
|  |     exit 1 | ||
|  | } | ||
|  | 
 | ||
|  | if [ "?" == "$1" ] || [ "" == "$1" ] ; then | ||
|  |     usage | ||
|  | fi | ||
|  | 
 | ||
|  | #DEF_REL | ||
|  | for k in $@; do | ||
|  |     for arg in ${GROUP_REL[@]}; do | ||
|  |         if [ "$k" == "${arg}" ]; then | ||
|  |             DEF_REL="$k" | ||
|  |             break | ||
|  |         fi | ||
|  |     done | ||
|  | done | ||
|  | 
 | ||
|  | if [ "$DEF_REL" != "" ]; then | ||
|  |     GROUP_REL[0]=$DEF_REL | ||
|  |     GROUP_REL[1]="NULL" | ||
|  | fi | ||
|  | 
 | ||
|  | #DEF_IMAGE_TYPE | ||
|  | for arg in ${GROUP_IMAGE_TYPE[@]}; do | ||
|  |     if [ "${INPUT_IMG_TYPE}" == "${arg}" ]; then | ||
|  |         DEF_IMAGE_TYPE="${INPUT_IMG_TYPE}" | ||
|  |         break | ||
|  |     fi | ||
|  | done | ||
|  | 
 | ||
|  | if [ "$DEF_IMAGE_TYPE" == "cco" ]; then | ||
|  |     DEF_PSRAM_SIZE="4m" | ||
|  | elif [ "$DEF_IMAGE_TYPE" == "sta" ]; then | ||
|  |     DEF_PSRAM_SIZE="0m" | ||
|  | else | ||
|  |     usage | ||
|  | fi | ||
|  | 
 | ||
|  | #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 | ||
|  | 
 | ||
|  | #start building... | ||
|  | for ARG_REL in ${GROUP_REL[@]}; do | ||
|  |     if [ "${ARG_REL}" == "NULL" ]; then | ||
|  |         break | ||
|  |     fi | ||
|  | 
 | ||
|  |     echo "./build_flash_smart.sh ${DEF_IMAGE_TYPE} ${DEF_APP} ${DEF_FLASH_SIZE} ${DEF_PSRAM_SIZE} ${DEF_CHIP_ID} ${ARG_REL} ${DEF_CHIP_TYPE}" | ||
|  |     ./build_flash_smart.sh ${DEF_IMAGE_TYPE} ${DEF_APP} ${DEF_FLASH_SIZE} ${DEF_PSRAM_SIZE} ${DEF_CHIP_ID} ${ARG_REL} ${DEF_CHIP_TYPE} | ||
|  | done |