DIFF := diff -c
ECHO := echo
EXPR := expr
+FILE := file -b -e ascii
FIND := find
GREP := grep
LINECOUNT := wc -l
LN := ln -s
MKDIR := mkdir -p
MV := mv
+PRINTF := printf
+REALPATH := realpath
SED := sed
TEST := test
TIME := time
$(MKDIR) $1
endef
+
+# ファイル1からファイル2への相対パス
+# 引数は、ファイル名1、ファイル名2
+# 用例: $(call rel_to,file1,file2)
+define rel_to
+ $(strip $(shell $(REALPATH) --relative-to=$1 $2))
+endef
+
# テストディレクトリーのMakefileを作成
# 引数は、Makefile名、依存ファイル群
# 用例: $(call create_makefile,file,list_include_file)
# テストのターゲットを定義したMakefile
TEST_MAKEFILE := Test.mk
-# すべてのMakefile群
-MAKEFILES := $(DEFINE_FILE) $(TEST_MAKEFILE)
+# テストグループのMakefileとしてコピーされるファイル
+GROUP_MAKEFILE := Group.mk
+
+# DEFINE_FILEの相対パス
+DEFINE_FILE_REL = $(call rel_to,$(GROUPDIR),$(DEFINE_FILE))
+
+# TEST_MAKEFILEの相対パス
+TEST_MAKEFILE_REL = $(call rel_to,$(GROUPDIR),$(TEST_MAKEFILE))
-# すべてのMakefile群の絶対パス
-MAKEFILES_ABS := $(foreach file,$(MAKEFILES),$(CURDIR)/$(file))
+# GROUP_MAKEFILEの相対パス
+GROUP_MAKEFILE_REL = $(call rel_to,$(GROUPDIR),$(GROUP_MAKEFILE))
######################################################################
# テストのディレクトリー