にゃははー

はへらー

autotoolsの出力

GNUのautotoolsってそのままだとmakeした時の出力が

...
g++ -c -o hoge.o hoge.c
...

とかなってるわけだけど、たまにこの出力がスマートになってるプロジェクトがあったりする。GNOMEの一部とかLinuxカーネルとかvlcとか。

...
  CXX hoge.o
...

みたいに。この出力にする方法が知りたくていろいろ.inとか読んでるけど、多すぎてピンポイントに探せない。sedとか自前でやらんといかんのかな。

というのも、私がmakefileとか書くとオプションがひどいことになってしまい、すごい勢いでスクロールしていくのでスマートになってくれたほうが読みやすくて嬉しい。
ちなみにⅠファイルのコンパイルがこれぐらいの長さになってしまう。

g++ -DHAVE_CONFIG_H -I. -I..   -g -ggdb -ansi -W -Wall -pedantic -Wshadow -Wcast-qual -Wcast-align -Wundef -Wpointer-arith -Wwrite-strings -Wmissing-format-attribute -Wno-variadic-macros -Wno-overlength-strings -Wsign-compare -O1 -fforce-addr -finline-functions -funroll-loops -fcse-follow-jumps -frerun-cse-after-loop -fexpensive-optimizations -Wctor-dtor-privacy -Wnon-virtual-dtor -Wreorder -Wno-non-template-friend -Woverloaded-virtual -ffor-scope -fno-gnu-keywords -foperator-names -fstack-check -MT manager.o -MD -MP -MF .deps/manager.Tpo -c -o manager.o manager.cpp

どこのgccだよという勢いでスクロールしてく。

aclocalのm4とかから引っ張ってくる必要があるのかねぇ。

10:39追記:
configure.inに

AM_SILENT_RULES([yes])

でおkだということを知った。スマートだ。

更に06/28 11:43追記:
ubuntu 9.04のautotoolsだとautoconfがエラーを吐く。どうやらマクロが無いらしくconfigureが作られない。そんなときはこう書く。

m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])

スマートにはならないが、そもそもconfigureが作られないよりましだろう。