httpdを起動するMakeターゲット
自サイトの確認にhttpdをnode.jsやらRubyのWEBrickやらで起動するのが面倒だったので、
お気に入りのmongoose httpdをダウンロード、コンパイル、実行までしてくれるMakeのターゲットを書いてみたのですよ。
ターゲットというよりかはほとんどシェルスクリプト(bash)なのですけど。
.PHONY: httpd httpd: @if [ ! -f './mongoose' ]; \ then \ os=; \ case "`uname`" in \ 'Darwin') os=mac;; \ 'Linux') os=linux;; \ esac; \ curl -O 'http://mongoose.googlecode.com/files/mongoose-3.1.tgz' && \ tar xfz ./mongoose-3.1.tgz && \ $(MAKE) $$os -C ./mongoose && \ mv ./mongoose/mongoose ./mongoose_ && \ rm -r ./mongoose ./mongoose-3.1.tgz && \ mv ./mongoose{_,}; \ fi -./mongoose -d no -i index.html -r ./
MacOSとLinuxに対応しております。Windowsはバイナリを落としてくるだけなので必要なし。
というか普通にMakeやcurlが入ってるWindows環境って少ないだろうし……
これであとは
$ make httpd
と実行すればmongooseがない場合はダウンロード、コンパイルをしてから実行します。
すでに存在している場合はそのまま実行!
面倒なことは自動化すると楽でいいね!