2001.htmlこのルールを作る上で何が難しいかというと、入力ファイルがあるディレクトリの場所に関係なく、出力先を統一したい点です。Makefileでよくある型ルールを使えば、次のように書きます。$@しかし、これでは出力先は入力ファイルと同じ場所になり、期待通りになりません。出力ファイル2期待する結果は次の通りです。endef関数Fに入力ファイル(JSON)と出力ファイル(HTML)を引数として与えて、出力をeval関数で評価します。出力ファイル(HTML)例えば、入力ファイルが「data/1000/1001.json」だとすると、notdir関数によって「1001.json」となり、patsubst関数による置き換えで「html/1001.html」となります。全てのファイルが生成されます。まとめると、Makefile全体としては次のようになります。html/2000.html以上です。