1#!/bin/bash 2 3choices=(rv1106 rk3588 rk356x rv1109 rk3562) 4 5function usage() { 6 echo "Usage: source envsetup.sh" 7} 8 9function print_soc_menu() { 10 echo 11 echo "Select a soc to build rkaiq for: " 12 echo 13 14 local i=1 15 local choice 16 for choice in ${choices[@]} 17 do 18 echo " $i. $choice" 19 i=$(($i+1)) 20 done 21} 22 23function set_isp_hw() { 24 unset ISP_HW_VERSION 25 export ISP_HW_VERSION=-DISP_HW_V${1} 26 env | grep -q ISP_HW_VERSION && echo "Success !" || echo "Failed !" 27} 28 29function lunch() { 30 local answer 31 32 if [ "$1" ]; then 33 answer=$1 34 else 35 print_soc_menu 36 echo -n "Which would you like? [rv1106] " 37 read answer 38 fi 39 40 local selection 41 if [ -z "$answer" ] 42 then 43 selection="rv1106" 44 elif (echo -n $answer | grep -q -e "^[0-9][0-9]*$") 45 then 46 if [ $answer -le ${#choices[@]} ] 47 then 48 # array in zsh starts from 1 instead of 0. 49 if [ -n "$ZSH_VERSION" ] 50 then 51 selection=${choices[$(($answer))]} 52 else 53 selection=${choices[$(($answer-1))]} 54 fi 55 fi 56 else 57 selection=$answer 58 fi 59 60 case $selection in 61 rk3562) 62 set_isp_hw 32_LITE 63 ;; 64 rv1106) 65 set_isp_hw 32 66 ;; 67 rk3588) 68 set_isp_hw 30 69 ;; 70 rk356x) 71 set_isp_hw 21 72 ;; 73 rv1109) 74 set_isp_hw 20 75 ;; 76 *) 77 echo "Not supported SoC yet!" 78 usage 79 ;; 80 esac 81 82 unset RKAIQ_TARGET_SOC 83 export RKAIQ_TARGET_SOC=$selection 84} 85 86lunch $1 87