From 75f06b487f0ff2c7b609e88609e9d5fbc44bd489 Mon Sep 17 00:00:00 2001 From: j8takagi Date: Sat, 16 Feb 2019 12:00:44 +0900 Subject: [PATCH] =?utf8?q?AUtotest.mk=E3=81=AE=E6=9B=B4=E6=96=B0=E3=82=92?= =?utf8?q?=E5=8F=8D=E6=98=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- test/Template/Define.mk | 23 +++++++++++++++++++---- test/Template/Makefile | 9 +++------ 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/test/Template/Define.mk b/test/Template/Define.mk index da36d60..0a6f106 100644 --- a/test/Template/Define.mk +++ b/test/Template/Define.mk @@ -35,6 +35,7 @@ LN := ln -s MKDIR := mkdir -p MV := mv PRINTF := printf +REALPATH := realpath SED := sed TEST := test TIME := time @@ -67,6 +68,14 @@ define create_dir $(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) @@ -103,11 +112,17 @@ DEFINE_FILE := Define.mk # テストのターゲットを定義した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)) ###################################################################### # テストのディレクトリー diff --git a/test/Template/Makefile b/test/Template/Makefile index e88f17a..484938f 100644 --- a/test/Template/Makefile +++ b/test/Template/Makefile @@ -11,9 +11,6 @@ # 変数やマクロの定義 include Define.mk -# テストグループのMakefileとしてコピーされるファイル -GROUP_MAKEFILE := Group.mk - .PHONY: group groupdir copymk linkmk MKFILE_METHOD = $(if $(LINKMK),linkmk,copymk) @@ -25,8 +22,8 @@ groupdir: copymk: @$(CP) $(GROUP_MAKEFILE) $(GROUPDIR)/Makefile - @$(CP) $(MAKEFILES) $(GROUPDIR)/ + @$(CP) $(DEFINE_FILE) $(TEST_MAKEFILE) $(GROUPDIR)/ linkmk: - @$(LN) $(CURDIR)/$(GROUP_MAKEFILE) $(GROUPDIR)/Makefile - @$(LN) $(MAKEFILES_ABS) $(GROUPDIR)/ + @$(LN) $(DEFINE_FILE_REL) $(TEST_MAKEFILE) $(GROUPDIR)/ + @$(LN) $(GROUP_MAKEFILE_REL) $(GROUPDIR)/Makefile -- 2.18.0