andriod编译脚本
来源:互联网 发布:java的日志级别 编辑:程序博客网 时间:2024/04/28 15:59
编译脚本
[plain] view plain copy
- #!/bin/bash
- echo "******************************************************"
- echo "Note : 一键编译固件脚本 "
- echo "Author: chwenj@gmail.com "
- echo "Agreement: GPL "
- echo "******************************************************"
- echo "******************************************************"
- echo "Entry: "
- #获取脚本当前的路径:
- SdkPath=$(cd "$(dirname "$0")"; pwd)
- echo ""
- echo ""
- echo "The Sdk Path= $SdkPath"
- echo ""
- echo ""
- source $SdkPath/proccessing.sh
- source $SdkPath/proccess_ime.sh
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "process_preprare function: "
- process_preprare $1 $2;
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "make kernel"
- pwd
- make kernel
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "source build/envsetup.sh"
- cd ./android4.0
- pwd
- source build/envsetup.sh
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "lunch = $1-eng"
- pwd
- if [ $1 = "mc-v80c" ] ; then
- lunch crane_mc_v80c-eng
- elif [ $1 = "mc-v80" ] ; then
- lunch crane_mc_v80-eng
- elif [ $1 = "mc-v81c" ] ; then
- lunch crane_mc_v81c-eng
- elif [ $1 = "mc-v40c" ] ; then
- lunch crane_mc_v40c-eng
- elif [ $1 = "mc-v21" ] ; then
- lunch crane_mc_v21-eng
- elif [ $1 = "com-v80c" ] ; then
- lunch crane_com_v80c-eng
- elif [ $1 = "com-v80" ] ; then
- lunch crane_com_v80-eng
- elif [ $1 = "com-v81c" ] ; then
- lunch crane_com_v81c-eng
- elif [ $1 = "com-v81" ] ; then
- lunch crane_com_v81-eng
- elif [ $1 = "com-v40c" ] ; then
- lunch crane_com_v40c-eng
- else
- echo "build error cmd!"
- exit 0
- fi
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "extract-bsp"
- pwd
- extract-bsp
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "make -j8"
- pwd
- make -j8
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "processing IME"
- process_ime $1 $3
- read -p "Press ENTER to continue" var
- cd ./android4.0
- pwd
- echo "******************************************************"
- echo "pack"
- pwd
- pack
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "recovery"
- process_recovery;
- read -p "Press ENTER to continue" var
- echo "******************************************************"
- echo "Compiling img success!!!"
- echo "******************************************************"
[plain] view plain copy
- #!/bin/bash
- pSdkPath=/home/carlton/jacktestplace/a10_Project/android40_A10
- ###
- DrvPath=lichee/linux-3.0/drivers
- ###
- GpioPath=$DrvPath/char
- GpioName20=idc_v80_gpio-20.c
- GpioName14=idc_v80_gpio_14.c
- GpioDstName=idc_v80_gpio.c
- function process_gpio()
- {
- echo "proccess function_gpio: $0 $1"
- rm -vf $pSdkPath/$GpioPath/*.o
- if [ $1 = "IO-20" ] ; then
- echo "IO-20: "
- cp -vf $pSdkPath/$GpioPath/$GpioName20 $pSdkPath/$GpioPath/$GpioDstName
- elif [ $1 = "IO-14" ] ; then
- echo "IO-14: "
- cp -vf $pSdkPath/$GpioPath/$GpioName14 $pSdkPath/$GpioPath/$GpioDstName
- else
- echo "select gpio error!"
- exit 0
- fi
- }
- ###
- KbPath=$DrvPath/input/keyboard
- KbNameS=sun4i-keyboard-S.c
- KbNameM=sun4i-keyboard-M.c
- KbName4P3=sun4i-keyboard-4point3.c
- KbObjName=sun4i-keyboard.o
- KbDstName=sun4i-keyboard.c
- function process_keyboard()
- {
- echo "proccess_keyboard: $0 $1"
- rm -vf $pSdkPath/$KbPath/$KbObjName
- if [ $1 = "KB-S" ] ; then
- echo "KB-S: "
- cp -rf $pSdkPath/$KbPath/$KbNameS $pSdkPath/$KbPath/$KbDstName
- elif [ $1 = "KB-M" ] ; then
- echo "KB-M: "
- cp -rf $pSdkPath/$KbPath/$KbNameM $pSdkPath/$KbPath/$KbDstName
- elif [ $1 = "KB-4P3" ] ; then
- echo "KB-4P3: "
- cp -rf $pSdkPath/$KbPath/$KbName4P3 $pSdkPath/$KbPath/$KbDstName
- else
- echo "select KEYBOARD error!"
- exit 0
- fi
- }
- ###
- CamDevPath=$DrvPath/media/video/sun4i_csi/device
- CamCsiPath=$DrvPath/media/video/sun4i_csi/csi0
- CamIncPath=$DrvPath/media/video/sun4i_csi/include
- CamDevNameComm=ov2643.c_Common
- CamCsiNameComm=sun4i_drv_csi.c_Common
- CamIncNameComm=sun4i_dev_csi.h_Common
- CamDevNameLed=ov2643.c_LEDTAG
- CamCsiNameLed=sun4i_drv_csi.c_LEDTAG
- CamIncNameLed=sun4i_dev_csi.h_LEDTAG
- CamDevDst=ov2643.c
- CamCsiDst=sun4i_drv_csi.c
- CamIncDst=sun4i_dev_csi.h
- function process_camera()
- {
- echo "proccess_camera: $0 $1"
- rm -vf $pSdkPath/$CamDevPath/*.o $pSdkPath/$CamDevPath/*.ko $pSdkPath/$CamCsiPath/*.o
- if [ $1 = "CAM-COM" ] ; then
- echo "CAM-COM: "
- cp -vf $pSdkPath/$CamDevPath/$CamDevNameComm $pSdkPath/$CamDevPath/$CamDevDst
- cp -vf $pSdkPath/$CamCsiPath/$CamCsiNameComm $pSdkPath/$CamCsiPath/$CamCsiDst
- cp -vf $pSdkPath/$CamIncPath/$CamIncNameComm $pSdkPath/$CamIncPath/$CamIncDst
- elif [ $1 = "CAM-LED" ] ; then
- echo "CAM-LED: "
- cp -vf $pSdkPath/$CamDevPath/$CamDevNameLed $pSdkPath/$CamDevPath/$CamDevDst
- cp -vf $pSdkPath/$CamCsiPath/$CamCsiNameLed $pSdkPath/$CamCsiPath/$CamCsiDst
- cp -vf $pSdkPath/$CamIncPath/$CamIncNameLed $pSdkPath/$CamIncPath/$CamIncDst
- else
- echo "select CAMERA error!"
- exit 0
- fi
- }
- ###
- DispPath=$DrvPath/video/sun4i/lcd
- DispSrcNameRgb=lcd0_panel_cfg_20141117_rgb.c
- DispSrcNameLvds=lcd0_panel_cfg_20141117_lvds.c
- DispDstName=lcd0_panel_cfg.c
- function process_display()
- {
- echo "proccess_display: $0 $1"
- rm $pSdkPath/$DrvPath/video/sun4i/lcd/*.o
- if [ $1 = "LCD-RGB" ] ; then
- echo "LCD-RGB: "
- cp -vf $pSdkPath/$DispPath/$DispSrcNameRgb $pSdkPath/$DispPath/$DispDstName
- elif [ $1 = "LCD-LVDS" ] ; then
- echo "LCD-LVDS: "
- cp -vf $pSdkPath/$DispPath/$DispSrcNameLvds $pSdkPath/$DispPath/$DispDstName
- else
- echo "select DISPLAY I/F error!"
- exit 0
- fi
- }
- ###
- SuiPath=android4.0/frameworks/base/packages/SystemUI/src/com/android/systemui
- SuiSrcNameUp=SystemUIService.java_UP
- SuiSrcNameDown=SystemUIService.java_DOWN
- SuiDstName=SystemUIService.java
- function process_SystemUI()
- {
- echo "proccess_SystemUI: $0 $1"
- if [ $1 = "UI-UP" ] ; then
- echo "UI-UP: "
- cp -vf $pSdkPath/$SuiPath/$SuiSrcNameUp $pSdkPath/$SuiPath/$SuiDstName
- elif [ $1 = "UI-DOWN" ] ; then
- echo "UI-DOWN: "
- cp -vf $pSdkPath/$SuiPath/$SuiSrcNameDown $pSdkPath/$SuiPath/$SuiDstName
- else
- echo "select SystemUI error!"
- exit 0
- fi
- }
- ###
- SbPath=android4.0/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar
- SbSrcNameAdd=StatusBar.java_ADD
- SbSrcNameRemove=StatusBar.java_REMOVE
- SbDstName=StatusBar.java
- function process_StatusBar()
- {
- echo "proccess function_StatusBar: "
- if [ $1 = "BAR-ADD" ] ; then
- echo "BAR-ADD: "
- cp -vf $pSdkPath/$SbPath/$SbSrcNameAdd $pSdkPath/$SbPath/$SbDstName
- elif [ $1 = "BAR-REMOVE" ] ; then
- echo "PY-REMOVE: "
- cp -vf $pSdkPath/$SbPath/$SbSrcNameRemove $pSdkPath/$SbPath/$SbDstName
- else
- echo "select StatusBar error!"
- exit 0
- fi
- }
- ###
- AppInputPath=/home/carlton/jacktestplace/Routine/update_app_a10
- OutDirPath=android4.0/out/target/product
- DevPath=android4.0/device/softwinner
- function process_app()
- {
- local LunchName=crane-$1
- echo "LunchName = $LunchName"
- rm -rvf $pSdkPath/$OutDirPath/$LunchName/*.img $pSdkPath/$OutDirPath/$LunchName/system
- rm -vf $pSdkPath/$DevPath/$LunchName/apkinstall/*
- rm -vf $pSdkPath/$DevPath/$LunchName/apklib/*
- cp -vf $AppInputPath/$1/apkinstall/* $pSdkPath/$DevPath/$LunchName/apkinstall
- cp -vf $AppInputPath/$1/apklib/* $pSdkPath/$DevPath/$LunchName/apklib
- }
- function process_preprare()
- {
- echo "@@@@@@@@@@@@@@@@@@@@@@@@@"
- echo "proccess function: $0 $1 $2"
- ###小门口机
- if [ $1 = "mc-v21" ] ; then
- echo "#BRANCH: mc-v21 zone8_outdoor"
- process_camera "CAM-LED"
- process_display "LCD-LVDS"
- process_app $1
- ###4.3寸
- elif [ $1 = "mc-v40c" ] ; then
- echo "#BRANCH: mc-v40c zone8_outdoor"
- process_keyboard "KB-4P3"
- process_StatusBar "BAR-REMOVE"
- process_SystemUI "UI-DOWN"
- process_app $1
- elif [ $1 = "com-v40c" ] ; then
- echo "#BRANCH: com-v40c zone8_outdoor"
- process_keyboard "KB-4P3"
- process_StatusBar "BAR-REMOVE"
- process_SystemUI "UI-DOWN"
- process_app $1
- ###小门口机和4.3寸之外
- else
- if [ $2 = "zone8_indoor" ] ; then
- echo "#BRANCH: $1 八防区 室内机"
- process_app $1
- elif [ $2 = "zone4_indoor" ] ; then
- echo "#FIXME: $1 四防区 室内机:出现错误:不支持该机器!!!"
- exit 0
- elif [ $2 = "zone8_outdoor" ] ; then
- echo "#BRANCH: $1 八防区 门口机"
- process_keyboard "KB-M"
- process_app $1
- elif [ $2 = "zone4_outdoor" ] ; then
- echo "#FIXME: $1 四防区 室内机:出现错误:不支持该机器!!!"
- exit 0
- else
- echo "#ERROR: 严重错误,请检查process处理函数的传入参数!!!"
- exit 0
- fi
- fi
- }
- function process_recovery()
- {
- process_gpio "IO-20"
- process_keyboard "KB-S"
- process_camera "CAM-COM"
- process_display "LCD-RGB"
- process_StatusBar "BAR-ADD"
- process_SystemUI "UI-UP"
- }
[plain] view plain copy
- #!/bin/bash
- mSdkPath=/home/carlton/jacktestplace/a10_Project/android40_A10
- PdtPath=android4.0/out/target/product
- ApkPath=""
- LibPath=""
- OutPath=""
- function process_ApkPath()
- {
- echo "processing lunch ApkPath:"
- ApkPath=$mSdkPath/$PdtPath/crane-$1/system/app
- LibPath=$mSdkPath/$PdtPath/crane-$1/system/lib
- OutPath=$mSdkPath/$PdtPath/crane-$1
- }
- function process_Pinyin_remove()
- {
- ls -al $ApkPath/PinyinIME.apk
- ls -al $LibPath/libjni_pinyinime.so
- rm -vf $ApkPath/PinyinIME.apk
- rm -vf $LibPath/libjni_pinyinime.so
- }
- function process_ime()
- {
- echo "@#@#@#@#@#@#@#@#@#@#@#@#@#@#@"
- pwd
- process_ApkPath $1
- echo $ApkPath
- echo $LibPath
- echo $OutPath
- if [ $2 = "py-add" ] ; then
- echo "PinyinIME.apk add"
- elif [ $2 = "py-remove" ] ; then
- echo "PinyinIME.apk remove"
- process_Pinyin_remove;
- read -p "Press ENTER to continue" var
- pwd
- make snod
- elif [ $2 = "3rdIME-add" ] ; then
- echo "add the 3rd party IME"
- else
- echo "error!!!"
- exit 0
- fi
- }
0 0
- andriod编译脚本
- andriod系统的编译
- 编译Andriod源码 2.1
- Andriod单独编译模块
- 下载编译andriod kernel
- andriod编译环境搭建
- Andriod 编译amlogic
- andriod 编译错误
- webRTC Andriod 编译文档
- 如何编译andriod模块
- 编译Andriod源码 运行 emulator
- Andriod编译内核模块*.ko
- Andriod模块编译,mm命令
- Andriod编译内核模块*.ko
- Andriod编译内核模块*.ko
- Andriod编译内核模块*.ko
- Andriod源码下载与编译
- js脚本Andriod engine的测试
- 观察者模式
- leetcode 485. Max Consecutive Ones
- java阶段总结
- bzoj1211 [HNOI2004]树的计数 prufer序列
- Problem A: 平面上的点——Point类 (I)
- andriod编译脚本
- jdbc
- Redis数据库的基本命令和java连接
- Leetcode 560. Subarray Sum Equals K
- 谈Android模拟点击的价值和实现
- android SDK manager 安装时通常选择哪些
- Struts2标签介绍
- 不容易系列之一(递推公式)
- 读取短信并复制验证码小工具