Makefile

Makefileの変数展開はレシピの実行前に行われる

makeなんてよく使うものだから分かっているつもりだったけど実はよく分かっていなかったのが、変数展開がどのタイミングで行われるかということ。 itchyny.hatenablog.com Makefileでの := は simply expanded variable といって一度しか展開されないが、 = …

Makefileで遊ぼう 〜 階乗, フィボナッチ数, Brainfuck処理系まで

しばしば見落とされがちですが, Makefileは立派な(=チューリング完全な)プログラミング言語です. GNU Make, 3rd Edition([1], 以降make本と記します)をパラパラしながら読み終わりました. 最後の最後で, Makefileの中で「数字の計算をする方法」が書いてあり, …

Makefileの中でファイルを依存関係順に並び替えて結合する / Topological sorting

複数のファイルを結合して一つのソースコードに結合したい. cat src/*js > output.js \(^o^)/ おわたー でもでも, ファイルに依存関係があったらどうしよ.例えば, file1.js -> file2.js -> file4.js -> file3.js -> file5.js のように依存していたら? fil…