- function chooseproduct()
- {
- #lhc180 add
- # Find all AndroidProducts.mk files under the dirs device/, build/target/ and vendor/
- # Extract lines containing .mk from them
- # Extract lines containing LOCAL_DIR
- # Extract the name of the product specific file
- local -a productlist
- productlist=(`/usr/bin/find $(gettop)/device/ $(gettop)/build/target/ $(gettop)/vendor/ -name AndroidProducts.mk 2>/dev/null|
- xargs grep -h \.mk|
- grep LOCAL_DIR|
- cut -d'/' -f2|cut -d' ' -f1|sort|uniq|cut -d'.' -f1`)
- local index=1
- local pselect
- echo "Product choices are:"
- for pselect in ${productlist[@]}
- do
- echo " $index. $pselect"
- let "index = $index + 1"
- done
- #lhc180 add
- if [ "x$TARGET_PRODUCT" != x ] ; then
- default_value=$TARGET_PRODUCT
- else
- default_value=full
- fi
- export TARGET_PRODUCT=
- local ANSWER
- while [ -z "$TARGET_PRODUCT" ]
- do
- echo "You can also type the name of a product if you know it."
- echo -n "Which product would you like? [$default_value] "
- if [ -z "$1" ] ; then
- read ANSWER
- else
- echo $1
- ANSWER=$1
- fi
- if [ -z "$ANSWER" ] ; then
- export TARGET_PRODUCT=$default_value
- #lhc180 add
- elif (echo -n $ANSWER | grep -q -e "^[0-9][0-9]*$") ; then
- local poo=`echo -n $ANSWER`
- if [ $poo -le ${#productlist[@]} ] ; then
- export TARGET_PRODUCT=${productlist[$(($ANSWER-1))]}
- else
- echo "** Bad product selection: $ANSWER"
- fi
- #lhc180 add
- else
- if check_product $ANSWER
- then
- export TARGET_PRODUCT=$ANSWER
- else
- echo "** Not a valid product: $ANSWER"
- fi
- fi
- if [ -n "$1" ] ; then
- break
- fi
- done
- set_stuff_for_environment
- }
- Product choices are:
- 1. core
- 2. full_maguro
- 3. full
- 4. full_panda
- 5. full_tuna
- 6. full_x86
- 7. generic_armv5
- 8. generic
- 9. generic_x86
- 10. large_emu_hw
- 11. sample_addon
- 12. sdk
- 13. sdk_x86
- 14. vbox_x86