データ構造の名前を変更
[YACASL2.git] / doc / casl2lib / Define.mk
1 # autotest.mk > test_template > Define.mk
2 # 自動テスト用の変数、マクロ定義
3
4 ifndef DEFINE_INCLUDED
5 DEFINE_INCLUDED = 1
6
7 # 現在の日時
8 DATE = $(shell date +"%F %T")
9
10 # 現在のディレクトリー
11 CURRDIR = $(shell pwd)
12
13 # Makefile
14 MAKEFILE := Makefile
15
16 ######################################################################
17 # コマンド
18 ######################################################################
19
20 CP ?= cp
21
22 CAT ?= cat
23
24 MKDIR ?= mkdir
25
26 RM ?= rm -f
27
28 ECHO ?= echo
29
30 TIME ?= /usr/bin/time --quiet
31
32 DIFF ?= diff -c
33
34 DEV_NULL ?= /dev/null
35
36 CHMOD ?= chmod
37
38 GREP ?= grep
39
40 LINECOUNT ?= wc -l
41
42 FIND ?= find
43
44 TR ?= tr
45
46 EXPR ?= expr
47
48 LINK ?= ln -s
49
50 ######################################################################
51 # テストグループとテストでの共通マクロ
52 ######################################################################
53
54 # chk_var_null: 引数がNULLの場合、エラー
55 # 用例: $(call chk_var_null,var)
56 define chk_var_null
57     $(if $1,,$(error NULL argument))
58 endef
59
60 # chk_file_ext: 指定されたファイルが実在する場合、エラー
61 # 用例: $(call chk_file_ext,file)
62 define chk_file_ext
63     $(if $(wildcard $1),$(error $1 exists in $(CURRDIR)))
64 endef
65
66 # chk_file_notext: 指定されたファイルが実在しない場合、エラー
67 # 用例: $(call chk_file_notext,file)
68 define chk_file_notext
69     $(if $(wildcard $1),,$(error $1 not exists in $(CURRDIR)))
70 endef
71
72 ######################################################################
73 # テストグループのディレクトリー
74 ######################################################################
75
76 # テストグループとテストの変数を定義したMakefile
77 DEF_FILE := Define.mk
78
79 # テストグループの変数を定義したMakefile
80 DEF_GROUP_FILE := Define_group.mk
81
82 # テストの変数を定義したMakefile
83 DEF_TEST_FILE := Define_test.mk
84
85 # テストのターゲットを定義したMakefile
86 TEST_MAKEFILE := Test.mk
87
88 # すべてのMakefile群
89 MAKEFILES := $(DEF_FILE) $(DEF_GROUP_FILE) $(DEF_TEST_FILE) $(TEST_MAKEFILE)
90
91 MAKEFILES_ABS := $(foreach file,$(MAKEFILES),$(CURRDIR)/$(file))
92
93 # テストごとのMakefileでインクルードするMakefile群
94 TEST_MAKEFILES := $(DEF_FILE) $(DEF_TEST_FILE) $(TEST_MAKEFILE)
95
96 ######################################################################
97 # テストのディレクトリー
98 ######################################################################
99
100 # テストコマンドファイル
101 CMD_FILE := cmd
102
103 # テスト説明ファイル
104 DESC_FILE := desc.txt
105
106 # テスト想定結果ファイル
107 TEST0_FILE := 0.txt
108
109 # テスト結果ファイル
110 TEST1_FILE := 1.txt
111
112 # テストの、想定結果と結果の差分ファイル
113 DIFF_FILE := diff.txt
114
115 # テストエラーファイル
116 ERR_FILE := err.txt
117
118 # テストログファイル
119 LOG_FILE := test.log
120
121 # 実行時間ファイル
122 TIME_FILE := time.log
123
124 # テスト詳細レポートファイル
125 DETAIL_FILE := detail.log
126
127 # テストの結果として作成されるファイル群
128 TEST_RES_FILES := $(TEST1_FILE) $(DIFF_FILE) $(ERR_FILE) $(LOG_FILE) $(DETAIL_FILE) $(TIME_FILE)
129
130 endif