Android build system 分析之 envsetup.sh

來源:互聯網
上載者:User

每次進入到android source目錄後的第一件事恐怕就是先執行. build/envsetup.sh,完成一些命令的初始化,今天主要分析envsetup.sh。

1. 命令-也就是envsetup.sh中的函數

function help()                   # 顯示協助資訊
function get_abs_build_var()           # 擷取絕對變數
function get_build_var()              # 擷取絕對變數
function check_product()             # 檢查product
function check_variant()              # 檢查變數
function setpaths()                # 設定檔案路徑
function printconfig()               # 列印配置
function set_stuff_for_environment()        # 設定環境變數
function set_sequence_number()          # 設定序號
function settitle()                  # 設定標題
function choosetype()               # 設定type
function chooseproduct()              # 設定product
function choosevariant()               # 設定variant
function tapas()                    # 功能同choosecombo
function choosecombo()             # 設定編譯參數
function add_lunch_combo()           # 添加lunch項目
function print_lunch_menu()           # 列印lunch列表
function lunch()                  # 配置lunch
function m()                   # make from top
function findmakefile()              # 尋找makefile
function mm()                  # make from current directory
function mmm()                 # make the supplied directories
function croot()                 # 回到根目錄
function cproj()
function pid()
function systemstack()
function gdbclient()
function jgrep()                 # 尋找java檔案
function cgrep()                  # 尋找c/cpp檔案
function resgrep()
function tracedmdump()
function runhat()
function getbugreports()
function startviewserver()
function stopviewserver()
function isviewserverstarted()
function smoketest()
function runtest()
function godir ()                  # 跳到指定目錄

 

# add the default one here
add_lunch_combo generic-eng

 

# Execute the contents of any vendorsetup.sh files we can find.
for f in `/bin/ls vendor/*/vendorsetup.sh vendor/*/build/vendorsetup.sh 2> /dev/null`
do
    echo "including $f"
    . $f
done

 

2. lunch命令

  已經有人分析過了,直接搬過來:

  http://www.lupaworld.com/home.php?mod=space&uid=131820&do=blog&id=149462

  這裡說一下check_product的流程:

  待續

3. choosecombo

  待續

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.