my notebook blog : Make

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

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

continue reading……

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

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

continue reading……

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

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

continue reading……

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

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

continue reading……

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

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

continue reading……

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

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

continue reading……


Older Posts »