When Dynamic command drivers links to ShellLib, the ShellLib
constructor shouldn't be called because the Shell and ShellParameters
protocols don't exist when the driver starts.
So it's required to set PcdShellLibAutoInitialize to FALSE for
dynamic command drivers.
Update the comments in DEC file to describe such requirement
for this PCD.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni <ruiyu...@intel.com>
Cc: Jaben Carsey <jaben.car...@intel.com>
---
 ShellPkg/ShellPkg.dec | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ShellPkg/ShellPkg.dec b/ShellPkg/ShellPkg.dec
index 5859c49033..48d50b87b3 100644
--- a/ShellPkg/ShellPkg.dec
+++ b/ShellPkg/ShellPkg.dec
@@ -81,6 +81,7 @@ [PcdsFeatureFlag]
 [PcdsFixedAtBuild]
   ## This flag is used to control initialization of the shell library
   #  This should be FALSE for compiling the shell application itself only.
+  #  This should be FALSE for compiling the dynamic command drivers.
   gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|TRUE|BOOLEAN|0x00000005
 
   ## This is the max buffer for ShellLib and internal Shell printings.
-- 
2.15.0.gvfs.1.preview.4

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to