ウォンツテック

そでやまのーと

.if expression の expressionについて
man makeを見ると以下のものが存在する

defined
make
empty
exists
target

defined, empty, existsはそのままの意味。
makeは

.if make(clean)
※引数としてターゲット名を取る

のように使い、引数部分(この例だとclean)がmakeを呼び出す時の
コマンドライン引数に割り当てられているか、デフォルトのターゲット
であれば真となる。
targetは引数としてターゲット名をとり、存在すれば真
ちなみにdefinedは引数として変数をとり、定義されていれば真


.include
.include
.include
.include
etc..

これってmakefileの関数みたいなものっぽい。
環境変数をあらかじめ設定してこれらの.includeを呼び出してあげると
それに従ってmakeしてくれそう(ちゃんと読んでない)。
階層的なmakeではSUBDIR環境変数を設定して
.include
とかを呼び出せばそのディレクトリ以下は自動的にmakeしてくれて便利
っぽいね。