makefile を読み込むなどの動作の前に、ディレクトリ dir に移動する。 (中略) このオプションは通常、make を再帰的に呼び出すときに使われる。 と書いてあります。 ほとんどの場面で 「make -C dir」は「cd dir; make」と同じと考えていいと思うが、 わずかに挙動が違う部分があることに最近気づいた。 実験のため、次のような /home/foo/Makefile, /home/foo/bar/Makefile という2つの Makefile を用意。 /home/foo/Makefileの内容: all: @ echo CURDIR = $(CURDIR) @ echo PWD = $(PWD) @ cd bar; $(MAKE) /home/foo/bar/Makefileの内容: all: @ echo CURDIR = $(CURDIR) @ echo