From c9226080df15873b1f837efce5c85ecaee1ca1a5 Mon Sep 17 00:00:00 2001 From: j8takagi Date: Fri, 3 Apr 2015 08:16:19 +0900 Subject: [PATCH] =?utf8?q?=E5=A4=B1=E6=95=97=E3=81=97=E3=81=9F=E3=83=86?= =?utf8?q?=E3=82=B9=E3=83=88=E3=81=8C=E3=81=82=E3=82=8B=E5=A0=B4=E5=90=88?= =?utf8?q?=E3=80=81=E5=A4=B1=E6=95=97=E3=83=86=E3=82=B9=E3=83=88=E3=81=AE?= =?utf8?q?=E3=83=AA=E3=82=B9=E3=83=88=E3=82=92=E8=A1=A8=E7=A4=BA=E3=81=99?= =?utf8?q?=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E4=BB=95=E6=A7=98=E5=A4=89?= =?utf8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- VERSION | 2 +- template/Define.mk | 1 + template/Group.mk | 7 +++---- template/Test.mk | 4 +--- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/VERSION b/VERSION index c38a611..fa70c3a 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -0.2p11 +0.2p12 diff --git a/template/Define.mk b/template/Define.mk index f2715d1..d4c3b94 100644 --- a/template/Define.mk +++ b/template/Define.mk @@ -34,6 +34,7 @@ LN := ln -s MKDIR := mkdir -p MV := mv SED := sed +TEST := test TIME := time TR := tr VALGRIND := valgrind diff --git a/template/Group.mk b/template/Group.mk index fa222d9..5a6f8d6 100644 --- a/template/Group.mk +++ b/template/Group.mk @@ -12,8 +12,6 @@ # make valgrind: すべてのテストで、valgrindによるメモリリークチェックを実行する # make valgrind-clean: すべてのテストで、valgrindのログファイルをクリア -SHELL = /bin/sh - include Define.mk verbose ?= 1 @@ -65,7 +63,7 @@ endef # 用例: $(call group_log_each,file_test_log,file_group_log) define group_log_each $(ECHO) $(dir $1) >>$2; - if test -s $1; then $(CAT) $1 >>$2; else $(ECHO) $(dir $1)": no log" >>$2; fi + if $(TEST) -s $1; then $(CAT) $1 >>$2; else $(ECHO) $(dir $1)": no log" >>$2; fi $(ECHO) >>$2; endef @@ -89,7 +87,7 @@ TEST_VALGRIND_FILES := $(foreach test,$(TESTS),$(test)/$(VALGRIND_FILE)) # 用例: $(call group_report,name,file_log,file_report) define group_report $(ECHO) '$1: $(SUCCESS_TEST) / $(ALL_TEST) tests passed. Details in $(GROUP_DIR)/$2' >$3 - if test $(FAIL_TEST) -eq 0; then $(ECHO) "$1: All tests are succeded." >>$3; fi + if $(TEST) $(FAIL_TEST) -eq 0; then $(ECHO) "$1: All tests are succeded." >>$3; fi endef # リストで指定したディレクトリーでmakeを実行 @@ -109,6 +107,7 @@ endef check checkall: clean $(GROUP_REPORT_FILE) @$(CAT) $(GROUP_REPORT_FILE) + @(if $(TEST) $(FAIL_TEST) -gt 0; then $(GREP) 'Failure' $(GROUP_LOG_FILE); fi) @exit $(FAIL_TEST) time: time-clean $(GROUP_TIME_FILE) diff --git a/template/Test.mk b/template/Test.mk index 56c0766..13178f6 100644 --- a/template/Test.mk +++ b/template/Test.mk @@ -1,7 +1,7 @@ # autotest.mk > test_template > Test.mk # 自動テスト用のMakefile # -# 要: Define.mk Define_test.mk +# 要: Define.mk # # オペレーター # make : CMDの標準出力をTEST1_FILEに保存したあと、TEST0_FILEとの差分を比較し、結果をLOG_FILEに出力 @@ -13,12 +13,10 @@ # make valgrind: valgrind CMDの標準出力をVARGRIND_FILEに保存 # make clean : "make" で作成されたファイルをクリア # make all-clean: "make" と "make set" で作成されたファイルをクリア -SHELL = /bin/bash ###################################################################### # マクロ ###################################################################### - # 指定されたファイルをチェックし、空の場合は削除 # 引数は、対象ファイル # 用例: $(call rm_null,file_target) -- 2.18.0