Yes, it's feasible. I still prefer to use "Library/Include" path setting for this, since only CryptoPkg/Library/* will refer to these internal header files. It may be cleaner to keep the current directory in root of CryptoPkg.
Best Regards & Thanks, LONG, Qin > -----Original Message----- > From: Gao, Liming > Sent: Thursday, April 06, 2017 2:09 PM > To: Long, Qin; Ye, Ting > Cc: edk2-devel@lists.01.org > Subject: RE: [Patch] CryptoPkg: Move openssl and CRT headers to private > include section > > Qin: > How about creating new Private directory in CryptoPkg, then move those > internal header files into it? > > Thanks > Liming > >-----Original Message----- > >From: Long, Qin > >Sent: Thursday, April 06, 2017 1:56 PM > >To: Gao, Liming <liming....@intel.com>; Ye, Ting <ting...@intel.com> > >Cc: edk2-devel@lists.01.org; Long, Qin <qin.l...@intel.com> > >Subject: [Patch] CryptoPkg: Move openssl and CRT headers to private > >include section > > > >Moving the header files for openssl and CRT wrappers to the private > >include section, since these files should be referenced by CryptoPkg > >internally. This update was supported by new [Includes.Common.Private] > >setting in Package DEC file. > >The external consumer modules should only use the interfaces defined in > >BaseCryptLib.h to access crypto functions. This change will be helpful > >to immediately detect any illegal direct reference to internal openssl > >headers. > >The Perl script "process_files.pl" was also updated to reflect the new > >private include path. > > > >Cc: Gao Liming <liming....@intel.com> > >Cc: Ting Ye <ting...@intel.com> > >Contributed-under: TianoCore Contribution Agreement 1.0 > >Signed-off-by: Qin Long <qin.l...@intel.com> > >Signed-off-by: Long Qin <qin.l...@intel.com> > >--- > > CryptoPkg/CryptoPkg.dec | 3 +++ > > CryptoPkg/{ => Library}/Include/CrtLibSupport.h | 0 > > CryptoPkg/{ => Library}/Include/assert.h | 0 > > CryptoPkg/{ => Library}/Include/ctype.h | 0 > > CryptoPkg/{ => Library}/Include/errno.h | 0 > > CryptoPkg/{ => Library}/Include/internal/dso_conf.h | 0 > > CryptoPkg/{ => Library}/Include/limits.h | 0 > > CryptoPkg/{ => Library}/Include/memory.h | 0 > > CryptoPkg/{ => Library}/Include/openssl/opensslconf.h | 0 > > CryptoPkg/{ => Library}/Include/stdarg.h | 0 > > CryptoPkg/{ => Library}/Include/stddef.h | 0 > > CryptoPkg/{ => Library}/Include/stdio.h | 0 > > CryptoPkg/{ => Library}/Include/stdlib.h | 0 > > CryptoPkg/{ => Library}/Include/string.h | 0 > > CryptoPkg/{ => Library}/Include/strings.h | 0 > > CryptoPkg/{ => Library}/Include/sys/time.h | 0 > > CryptoPkg/{ => Library}/Include/sys/types.h | 0 > > CryptoPkg/{ => Library}/Include/syslog.h | 0 > > CryptoPkg/{ => Library}/Include/time.h | 0 > > CryptoPkg/{ => Library}/Include/unistd.h | 0 > > CryptoPkg/Library/OpensslLib/process_files.pl | 2 +- > > 21 files changed, 4 insertions(+), 1 deletion(-) rename CryptoPkg/{ > >=> Library}/Include/CrtLibSupport.h (100%) rename CryptoPkg/{ => > >Library}/Include/assert.h (100%) rename CryptoPkg/{ => > >Library}/Include/ctype.h (100%) rename CryptoPkg/{ => > >Library}/Include/errno.h (100%) rename CryptoPkg/{ => > >Library}/Include/internal/dso_conf.h (100%) rename CryptoPkg/{ => > >Library}/Include/limits.h (100%) rename CryptoPkg/{ => > >Library}/Include/memory.h (100%) rename CryptoPkg/{ => > >Library}/Include/openssl/opensslconf.h (100%) rename CryptoPkg/{ => > >Library}/Include/stdarg.h (100%) rename CryptoPkg/{ => > >Library}/Include/stddef.h (100%) rename CryptoPkg/{ => > >Library}/Include/stdio.h (100%) rename CryptoPkg/{ => > >Library}/Include/stdlib.h (100%) rename CryptoPkg/{ => > >Library}/Include/string.h (100%) rename CryptoPkg/{ => > >Library}/Include/strings.h (100%) rename CryptoPkg/{ => > >Library}/Include/sys/time.h (100%) rename CryptoPkg/{ => > >Library}/Include/sys/types.h (100%) rename CryptoPkg/{ => > >Library}/Include/syslog.h (100%) rename CryptoPkg/{ => > >Library}/Include/time.h (100%) rename CryptoPkg/{ => > >Library}/Include/unistd.h (100%) > > > >diff --git a/CryptoPkg/CryptoPkg.dec b/CryptoPkg/CryptoPkg.dec index > >fdccbf06f7..b2fae6142a 100644 > >--- a/CryptoPkg/CryptoPkg.dec > >+++ b/CryptoPkg/CryptoPkg.dec > >@@ -24,6 +24,9 @@ > > > > [Includes] > > Include > >+ > >+[Includes.Common.Private] > >+ Library/Include > > Library/OpensslLib/openssl/include > > Library/OpensslLib/openssl/crypto/include > > > >diff --git a/CryptoPkg/Include/CrtLibSupport.h > >b/CryptoPkg/Library/Include/CrtLibSupport.h > >similarity index 100% > >rename from CryptoPkg/Include/CrtLibSupport.h rename to > >CryptoPkg/Library/Include/CrtLibSupport.h > >diff --git a/CryptoPkg/Include/assert.h > >b/CryptoPkg/Library/Include/assert.h > >similarity index 100% > >rename from CryptoPkg/Include/assert.h > >rename to CryptoPkg/Library/Include/assert.h > >diff --git a/CryptoPkg/Include/ctype.h > >b/CryptoPkg/Library/Include/ctype.h > >similarity index 100% > >rename from CryptoPkg/Include/ctype.h > >rename to CryptoPkg/Library/Include/ctype.h diff --git > >a/CryptoPkg/Include/errno.h b/CryptoPkg/Library/Include/errno.h > >similarity index 100% > >rename from CryptoPkg/Include/errno.h > >rename to CryptoPkg/Library/Include/errno.h diff --git > >a/CryptoPkg/Include/internal/dso_conf.h > >b/CryptoPkg/Library/Include/internal/dso_conf.h > >similarity index 100% > >rename from CryptoPkg/Include/internal/dso_conf.h > >rename to CryptoPkg/Library/Include/internal/dso_conf.h > >diff --git a/CryptoPkg/Include/limits.h > >b/CryptoPkg/Library/Include/limits.h > >similarity index 100% > >rename from CryptoPkg/Include/limits.h > >rename to CryptoPkg/Library/Include/limits.h > >diff --git a/CryptoPkg/Include/memory.h > >b/CryptoPkg/Library/Include/memory.h > >similarity index 100% > >rename from CryptoPkg/Include/memory.h > >rename to CryptoPkg/Library/Include/memory.h > >diff --git a/CryptoPkg/Include/openssl/opensslconf.h > >b/CryptoPkg/Library/Include/openssl/opensslconf.h > >similarity index 100% > >rename from CryptoPkg/Include/openssl/opensslconf.h > >rename to CryptoPkg/Library/Include/openssl/opensslconf.h > >diff --git a/CryptoPkg/Include/stdarg.h > >b/CryptoPkg/Library/Include/stdarg.h > >similarity index 100% > >rename from CryptoPkg/Include/stdarg.h > >rename to CryptoPkg/Library/Include/stdarg.h > >diff --git a/CryptoPkg/Include/stddef.h > >b/CryptoPkg/Library/Include/stddef.h > >similarity index 100% > >rename from CryptoPkg/Include/stddef.h > >rename to CryptoPkg/Library/Include/stddef.h > >diff --git a/CryptoPkg/Include/stdio.h > >b/CryptoPkg/Library/Include/stdio.h > >similarity index 100% > >rename from CryptoPkg/Include/stdio.h > >rename to CryptoPkg/Library/Include/stdio.h diff --git > >a/CryptoPkg/Include/stdlib.h b/CryptoPkg/Library/Include/stdlib.h > >similarity index 100% > >rename from CryptoPkg/Include/stdlib.h > >rename to CryptoPkg/Library/Include/stdlib.h > >diff --git a/CryptoPkg/Include/string.h > >b/CryptoPkg/Library/Include/string.h > >similarity index 100% > >rename from CryptoPkg/Include/string.h > >rename to CryptoPkg/Library/Include/string.h > >diff --git a/CryptoPkg/Include/strings.h > >b/CryptoPkg/Library/Include/strings.h > >similarity index 100% > >rename from CryptoPkg/Include/strings.h rename to > >CryptoPkg/Library/Include/strings.h > >diff --git a/CryptoPkg/Include/sys/time.h > >b/CryptoPkg/Library/Include/sys/time.h > >similarity index 100% > >rename from CryptoPkg/Include/sys/time.h rename to > >CryptoPkg/Library/Include/sys/time.h > >diff --git a/CryptoPkg/Include/sys/types.h > >b/CryptoPkg/Library/Include/sys/types.h > >similarity index 100% > >rename from CryptoPkg/Include/sys/types.h rename to > >CryptoPkg/Library/Include/sys/types.h > >diff --git a/CryptoPkg/Include/syslog.h > >b/CryptoPkg/Library/Include/syslog.h > >similarity index 100% > >rename from CryptoPkg/Include/syslog.h > >rename to CryptoPkg/Library/Include/syslog.h > >diff --git a/CryptoPkg/Include/time.h > >b/CryptoPkg/Library/Include/time.h > >similarity index 100% > >rename from CryptoPkg/Include/time.h > >rename to CryptoPkg/Library/Include/time.h diff --git > >a/CryptoPkg/Include/unistd.h b/CryptoPkg/Library/Include/unistd.h > >similarity index 100% > >rename from CryptoPkg/Include/unistd.h > >rename to CryptoPkg/Library/Include/unistd.h > >diff --git a/CryptoPkg/Library/OpensslLib/process_files.pl > >b/CryptoPkg/Library/OpensslLib/process_files.pl > >index 210811b9ed..716ecbf39a 100644 > >--- a/CryptoPkg/Library/OpensslLib/process_files.pl > >+++ b/CryptoPkg/Library/OpensslLib/process_files.pl > >@@ -214,7 +214,7 @@ print "Done!"; > > # > > print "\n--> Duplicating opensslconf.h into Include/openssl ... "; > >copy($OPENSSL_PATH . "/include/openssl/opensslconf.h", > >- $OPENSSL_PATH . "/../../../Include/openssl/") || > >+ $OPENSSL_PATH . "/../../Include/openssl/") || > > die "Cannot copy opensslconf.h!"; > > print "Done!\n"; > > > >-- > >2.12.2.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel