Omakeをportsでインストールしてみる

先日 Sphinx-User.jp で小耳にはさんだ Omake が気になっていたので、入れてみようということに。
Sphinx で reStructuredText から HTML を生成する際に、毎度 "make html" とキーを叩くのが億劫になっていたんで、「渡りに舟」といった感じ。

前提条件

毎度の事ですが。

OSバージョン    : MacOSX 10.6.5 Snow Leopard
パッケージツール: MacPorts 1.9.2

MacPorts

Omake は MacPorts でパッケージが公開されているので、それを利用する。
が、その前にまずコレを。

% sudo port selfupdate
% sudo port sync
% sudo port upgrade outdated

MacPorts 自身を最新にしてあげる。重要。

次に本番。コマンド一発。

% sudo port install omake

で、ここで失敗するとですよ。

% sudo port install omake 
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for omake is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_omake/main.log
Error: Status 1 encountered during processing.
To report a bug, see http://guide.macports.org/#project.tickets

えー。困るよ。。。
と、早速Google先生に質問してみたらこれを発見。*1

https://trac.macports.org/ticket/27220

これを見る限り、omake-0.9.8.5 の Portパッケージに含まれている Omakefile に定義されているFLAGの値がよろしくないらしい。
なので、該当するファイルを直接手で編集。

% vi /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_omake/work/omake-0.9.8.5/OMakefile
57   #
58   # OCaml options
59   #
60 - OCAMLFLAGS += -w Ae$(if $(OCAML_ACCEPTS_Z_WARNING), z)
   + OCAMLFLAGS += -w Aer-29$(if $(OCAML_ACCEPTS_Z_WARNING), z)
61   if $(THREAD_ENABLED)
62       OCAMLFLAGS += -thread
63       export

で、この状態でそのまま以下のとおりに実行。

% sudo port install omake
      • > Computing dependencies for omake
      • > Building omake
      • > Staging omake into destroot
      • > Installing omake @0.9.8.5-3_1
      • > Activating omake @0.9.8.5-3_1
      • > Cleaning omake

入ったー!!w やったー。

ちなみに、↑のタイミングで間違っても

% sudo port clean --work omake

とかしちゃ、ダメ、ぜったい。
*2

とゆことで、無事インストール完了しました。

*1:実際には日本語のBlogから探してみたものの、さすがにちと古かったので諦める、、、という経緯をたどったので小一時間くらい無駄に時間使ってた。。。orz

*2:実際やってしまっても手戻りが発生するってだけの話だけなんだけどね。せっかく編集した Omakefile もろともworkを消してしまうので、やるせなくなってしまう。