Home About
たくさんある SVG ファイルを一括で PNG に置き換える makefile を書いた件

make の wildcard 指定がわかりづらい。

» Read More
GNU Make ワイルドカードを使ってカレントディレクトリの .htm を .txt に変換する

諸事情により HTML ファイルを wikiテキストに変換する必要がある。 そこでカレントディレクトリにある hoge.htm のHTMLタグをストリップした上で、 hoge.txt に保存したい。 そのとき、当然カレントディレクトリには複数の *.htm があるので、 そのファイル名から拡張子を取り除いた部分について維持したファイル名で… つまり、foo.htm には foo.txt , honya.htm は honya.txt といったファイル名変換ルールで処理したい場合の makfile の具体例をメモします。

» Read More
ディレクトリが存在している場合だけ処理する方法, ifでフロー制御 ( GNU Make )

Makefile で、CSVやSubversionレポジトリからソースツリーを作業ディレクトリにエクスポートしてビルドするような場合...
たとえば、 以下のようなMakefileを書いた場合ですが、 make clean したときに、作業ディレクトリが存在しないとエラーになります。

» Read More
ファイルが存在している場合だけ処理する方法, ifでフロー制御 ( GNU Make )

たとえば、 patch.txt が存在していた場合だけ、patchを適用したい。存在していなければ何もしない そんな作業をする Makefile を書くには if を使えばよい。

» Read More
GNU Makeでの if 関数による 実行制御

Makeでは、条件に応じて処理を変えられることが判明。 以下の例では、カレントディレクトリに index.html が 存在している場合は、proc-a マクロを実行、そうでない場合は proc-b マクロを実行します。

» Read More
Makefileでカレントディレクトリ内のディレクトリだけを抽出して使う

ブログ管理用の Makefile を書いているのだが、カレントディレクトリ以下にあるサブディレクトリだけを列挙したい。 サブディレクトリは、時間とともに変化するので、Makefileに直に書くのはやめたい。

» Read More
Makefileの中でワイルドカードを使ってファイルを指定する方法

カレントディレクトリに複数のXMLファイル (*.xml) があり、これをHTMLに変換したい。 このときMakeを使って、更新されたファイルだけ変換するようにしたいがどうすればいいか。

» Read More