1. 程式人生 > >Makefile初探4-引用其他的Makefile(include)

Makefile初探4-引用其他的Makefile(include)

  • 有時候Makefile總體比較複雜,因此分成好幾個Makefile來寫。然後在主Makefile中引用其他的,用include指令來引用。引用的效果也是原地展開,和C語言中的標頭檔案包含非常相似。

語法: include filename  (filename 可以包含萬用字元和路徑)

例項1:

主目錄的Makefile檔案如下:

  1 all:
  2     @echo "main makefile begin"
  3     @echo "$(FLAG)"
  4     @echo "main makefile end"
  5 include ./include/Makefile

./include目錄下的Makefile檔案如下: 

  1 FLAG:=ARM
  2 
  3 other-all:
  4     @echo "other makefile begin"
  5     @echo "other makefile end"

在主目錄下執行make all命令之後,結果如下:

main makefile begin
ARM
main makefile end

 注意一個細節:在include目錄下的Makefile檔案FLAG變數的賦值是:=賦值,而主Makefile檔案中的include命令卻是在末尾,這樣也能打印出ARM。

例項2:

主目錄的Makefile檔案如下:命令前面加上@表示靜默執行,即螢幕不列印本次執行的命令,只是輸出本次命令執行之後的結果

  1 all:
  2     @echo "main makefile begin"
  3 
  4     make other-all
  5     @echo "main makefile end"
  6 include ./include/Makefile

./include目錄下的Makefile檔案如下:

  1 other-all:
  2     @echo "other makefile begin"
  3     @echo "other makefile end"

在主目錄下執行make all命令之後,結果如下:

main makefile begin
make other-all
make[1]: Entering directory `/home/exbot/liyijun'
other makefile begin
other makefile end
make[1]: Leaving directory `/home/exbot/liyijun'
main makefile end

 

本文只是介紹了最簡單的用法,具體的細節請移步以下博文:

https://www.cnblogs.com/cuckoos/articles/5049984.html