autoTools「チェック」後のLCOVの自動呼び出し
質問
テストが計装でコンパイルされているため、テストカバレッジレポートを取得できるAutoToolsプロジェクトのセットアップに成功しました。
「Make Check」に成功した後、Source DirでLCOVを実行することでレポートを取得できます。
私は今、このステップを自動化したい問題に直面しています。これを「チェックする」に追加するか、それを別の目標にするために「チェックカバレッジを作る」ことをしたいと思います。理想的には、結果を解析し、カバレッジが特定の割合を下回った場合に失敗したいと思います。問題は、カスタムターゲットをまったく追加する方法を理解できないことです。
私が得た最も近いのは見つけたことでした これ AutoTools Configの例ですが、そのプロジェクトのどこに目標「LCOV」が追加されているのかわかりません。 M4/auxdevel.m4でいくつかの構成フラグしか表示されません。
任意のヒント?
解決
Makefile.amのターゲットに追加の手順を追加するだけで、これが私が最終的に(#http://www.enlightenment.org/svn/e/trunk/ewl/makefile.amに触発されました):
#http://www.enlightenment.org/svn/e/trunk/ewl/Makefile.am
if ENABLE_COV
cov-reset:
@rm -fr coverage
@find . -name "*.gcda" -exec rm {} \;
@lcov --directory . --zerocounters
cov-report:
@mkdir -p coverage
@lcov --compat-libtool --directory . --capture --output-file coverage/app.info
@genhtml -o coverage/ coverage/app.info
cov:
@make cov-report
clean-local:
@make cov-reset
check:
@make cov
endif
チェック中の「@make cov」は、デフォルトの「チェック」ターゲットに「cov」ターゲットを追加します。
所属していません StackOverflow