From 2e04f618a3165cbc41c113293cde15940415377d Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Wed, 14 Aug 2019 19:19:21 -0700 Subject: [PATCH] [Makefile] Add rules to generate SGX-related files (.sgx, .sig, .token) --- Makefile.rules | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Makefile.rules b/Makefile.rules index 22dc72ce..f61b4335 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -122,3 +122,23 @@ quiet_cmd_csingle = [ $@ ] # single .cpp => executable quiet_cmd_cxxsingle = [ $@ ] cmd_cxxsingle = $(CXX) -MD -MP $(CXXFLAGS) $(CXXFLAGS-$@) -o $@ $< $(LDLIBS) $(LDLIBS-$@) + +# sgx sign +quiet_cmd_sgx_sign_manifest = [ $*.{sig, manifest.sgx} ] + cmd_sgx_sign_manifest = $(SGX_SIGN) -output $*.manifest.sgx -exec $* -manifest $< + +quiet_cmd_sgx_sign = [ $*.{sig, manifest.sgx} ] + cmd_sgx_sign = $(SGX_SIGN) -output $*.manifest.sgx -manifest $< + +# sgx token +quiet_cmd_sgx_get_token = [ Token: $(basename $*) ] + cmd_sgx_get_token = $(SGX_GET_TOKEN) -output $@ -sig $^ + +# sgx manifest dependency +quiet_cmd_sgx_manifest_dependency = [ $@ ] + cmd_sgx_manifest_dependency = \ + (set -e; \ + echo -n "$(patsubst %.d,%,$@) $(patsubst %.manifest.sgx.d,%.sig,$@) :"; \ + awk -F= '/^\s*sgx.trusted_files./{file=$$2; gsub("file:", "", file); printf(" \\\n\t%s", file)}' $<; \ + awk -F= '/^\s*sgx.trusted_children./{file=$$2; gsub("file:", "", file); printf(" \\\n\t%s", file); gsub(".sig", "", file); printf(" \\\n\t%s.manifest.sgx", file)}' $<; \ + echo "") > $@