一、文檔背景
在用Makefile進(jìn)行工程管理的過(guò)程中,Makefile的嵌套調(diào)用是研發(fā)人員必須掌握的基礎(chǔ)知識(shí)。
二、 解決的問(wèn)題或者進(jìn)行問(wèn)題分析
本文將以一個(gè)實(shí)際案例,講解Makefile的嵌套調(diào)用的實(shí)現(xiàn)。理解Makefile的嵌套調(diào)用需掌握Makefile的基本內(nèi)容,如:Makefile文件的基本組成、常用的自動(dòng)變量、常用的隱性規(guī)則等。
三、 如何Makefile的嵌套調(diào)用
工程的目錄結(jié)構(gòu)如圖3-1所示:

圖3-1
實(shí)現(xiàn)流程如下
1. 在“math”目錄下創(chuàng)建main.c、Makefile及mathlib子目錄,Makefile的內(nèi)容如圖3-2所示:

圖3-2
2. 在"mathlib"子目錄下,創(chuàng)建Makefile文件及include、Add、Sub、Mul與Div子目錄,Makefile文件的內(nèi)容如圖3-3所示:

圖3-3
3. 在“Add”目錄下,創(chuàng)建add.c及Makefile文件,Makefile文件的內(nèi)容如圖3-4所示:

圖3-4
4. 其他的子目錄的內(nèi)容與“Add”目錄的內(nèi)容類似。
四、通過(guò)在主目錄下運(yùn)行“make”與“make clean”驗(yàn)證Makefile的嵌套調(diào)用
1. 在“math”目錄下,運(yùn)行"make",然后執(zhí)行目標(biāo)文件,如圖4-1所示:

圖4-1
2. 在“math”目錄下,運(yùn)行"make clean",然后查看目錄下的文件,如圖4-2所示:

圖4-2
五、討論分析
1. 如果需要把庫(kù)文件存放在“mathlib”目錄下,需要如何修改Makefile文件的內(nèi)容。
六、結(jié)論
了解Makefile文件的基本組成、常用的自動(dòng)變量、常用的隱性規(guī)則等,實(shí)現(xiàn)Makefile的嵌套調(diào)用相對(duì)來(lái)說(shuō)還是比較容易的。