Homebrewでnginxを入れるときに比較的簡単に--add-moduleする方法
なんかHomebrewなネタが続く。
nginxでサードパーティモジュールを入れるときに
./configure --add-module=/path/to/module1/source
とかすると思うんですが、Homebrewでnginxいれようとすると、あらかじめ定義されたモジュールしか入れられないっぽい。
仕方ないので、普通にFormulaいじるかーと思ったものの一応ぐぐったらすでに汎用的に使えるFormulaを書いてくれてる人がちらほら。
ポリシーに沿わないとかで、残念ながら本流には取り込まれていないようですが、実用に問題はないと思われます。
件のPull Requestは→: Compile nginx w/external modules by kevsmith · Pull Request #6600 · Homebrew/legacy-homebrew · GitHub
そのまま使おうと思ったけど、結構古いFormulaがベースなので、ついでに最近のFormulaをベースにマージしたものを作成してから使うことに。
それがこれ→ [Homebrew] nginx w/external modules · GitHub
こんな感じで使う。今回はHttpHeadersMoreModuleを入れてコンパイルする例。
git clone https://github.com/agentzh/headers-more-nginx-module.git cd headers-more-nginx-module brew install https://raw.github.com/gist/3691439/d3588835afe9656dcc7079b07bebcb5b08b1c468/nginx.rb --with-module=`pwd`
そのほかリンカオプションも渡せるみたい。上述のPull Requestのページに例が載ってます。
ところでこのnginxのformulaに--with-passengerなんてオプションがあるけどPATHが引き継がれないからかRVM使ってるとうまくインストールできない。passenger-configみつからないって怒られる。
仕方ないのでこの--with-moduleでrvm環境下のpassengerのパス渡してインストールした。今のところ特に問題なし。