OSX で make するはなし

他人が書いたコード。
ソースとオブジェクトが別の場所に入るようになっていて、 .dなんてファイルを作るようになっている。

…なっているんだが、それができてしまうと2度目の build がコケる。 何故か…。

よぉく中身を見ると、ファイルの頭に -n なんて余計な出力が……。
echo が -n を解釈しそこなったのだ。ウンコー

そこまではすぐ判るんだが、なんでそうなるのかがなかなか判らない…。最後に判明したのは、 OSX の /bin/sh は /bin/bash と違って、 builtin の echo が -n を解釈しない、ということらしい。

全部直してまわるのは莫迦らしかったので、 top に SHELL=/bin/bash と追加。

ついでに、 OSX の gcc は __unix__ を立てないんだな…。しかし__APPLE__は何か別のことをやっている謎コード…。__MACH__か否かで分けていいんだろうか…


18:06:04 - 09.02.09 - kuroyagi - その他雑記 - 3209x