とりあえず、Linuxカーネルを離れて、makeの一般論から。 ある程度大きな規模のビルドシステムを作ろうとしたときに、設計思想としては、再帰的makeを採用するか、非再帰的makeを採用するかに分かれると思います。 (1)再帰的make では、上位階層のMakefile は下位階層のMakefileを再帰的に呼び出し、さらにその下にディレクトリがあればさらに呼び出し、といった具合に、1つ下のMakefileを呼び出して行きます。 top ├── Makefile ├── hoge │ └── Makefile └── piyo └── Makefile といった感じの階層があったとします。 (余談ですが、上のようなディレクトリ構造の絵を書くには、"tree"コマンドが重宝します。) 再帰的makeでは、top/Makefile の書き方は例えば次のような感じになっているでしょう。