Makefile

/cygdrive/c/Users/play/0315/Makefile

all :
	make -C ./sub

/cygdrive/c/Users/play/0315/sub/Makefile

all:
	echo `pwd`
	echo $(PWD)

/cygdrive/c/Users/play/0315 ディレクトリにおいて、

$ make -s
/cygdrive/c/Users/play/0315/sub/
/cygdrive/c/Users/play/0315/

っちゅーこっちゃ。

`pwd` は、そこでコマンドを実際に実行するから、現在の作業ディレクトリ(sub)を示す

$(PWD)は、環境変数を表すだけで(Make内でのディレクトリ移動ではこの環境変数
変わらない!?)、make が呼ばれたルートディレクトリをずっと示し続ける。


Makefile を書くときは注意です。

$(PWD)で、そのMakefileが置いてあるディレクトリを見ると思って clean とかやってたら、makeが最初に呼ばれたディレクトリのファイルをいつの間にか消しているみたいな・・・・(^^;