# テスト実行の経過時間を、ファイルに出力して表示
# 引数は、テスト名、コマンドファイル、出力ファイル
-# 用例: $(call time_cmd,name,file_cmd,file_out)
+# 用例: $(call time_cmd,file_cmd,file_out)
define time_cmd
- if test ! -x $2; then $(CHMOD) u+x $2; fi
- { $(TIME) ./$2 >$(DEV_NULL) 2>&1; } 2>&1 | $(GREP) ^real >>$3
+ if test ! -x $1; then $(CHMOD) u+x $1; fi
+ ($(TIME) ./$1 1>$(DEV_NULL) 2>$(DEV_NULL)) 2>&1 | $(GREP) '^real' >$2
endef
# テスト実行コマンド。引数は、コマンドファイル、出力ファイル、エラーファイル
# エラー発生時は、エラー出力を出力ファイルとエラーファイルに保存。
# 用例: $(call exec_cmd,file_cmd,file_out,file_err)
define exec_cmd
- @if test ! -x $1; then $(CHMOD) u+x $1; fi
+ if test ! -x $1; then $(CHMOD) u+x $1; fi
./$1 >>$2 2>$3
if test -s $3; then $(CAT) $3 >>$2; fi
$(call rm_null,$3)
# make clean : "make" で作成されたファイルをクリア
# make cleanall: "make" と "make set" で作成されたファイルをクリア
-SHELL = /bin/sh
+SHELL = /bin/bash
# テスト名。カレントディレクトリー名から取得
TEST = $(notdir $(CURRDIR))
@$(call report_files,$(LOG_FILE) $(CMDSRC_FILE) $(TEST0_FILE) $(ERR_FILE) $(DIFF_FILE) $(TEST1_FILE),$@)
$(TIME_FILE): $(CMD_FILE)
- @-$(call time_cmd,$(TEST),$^,$@)
+ $(call time_cmd,$^,$@)