TimerLib had to be resolved in commit 5ab97a64b51c ("ShellPkg/bcfg: Add
Shell Spec 2.2 modification functionality", 2017-03-01) because:
- the BCFG command started making calls to UefiBootManagerLib
(EfiBootManagerVariableToLoadOption(),
EfiBootManagerLoadOptionToVariable(), EfiBootManagerFreeLoadOption()),
- and "MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf"
depended on TimerLib.
Because TimerLib is platform-specific, but "ShellPkg/ShellPkg.dsc" is
meant to produce a UEFI shell binary that is platform-independent (see
"ShellBinPkg/ReadMe.txt"), we resolved TimerLib to
"BaseTimerLibNullTemplate.inf". (TimerLib functionality was never actually
needed on UefiBootManagerLib code paths that were exercised by the shell /
BCFG.)
Thanks to the last patch, UefiBootManagerLib no longer depends on
TimerLib, thus we can drop the TimerLib resolution entirely.
Cc: Jaben Carsey <jaben.carsey@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
ShellPkg/ShellPkg.dsc | 1 -
1 file changed, 1 deletion(-)
diff --git a/ShellPkg/ShellPkg.dsc b/ShellPkg/ShellPkg.dsc
index 29f537641285..1c923f585149 100644
--- a/ShellPkg/ShellPkg.dsc
+++ b/ShellPkg/ShellPkg.dsc
@@ -58,7 +58,6 @@ [LibraryClasses.common]
UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
- TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
--
2.14.1.3.gb7cf6e02401b
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
On 2/12/2018 9:45 PM, Laszlo Ersek wrote: > TimerLib had to be resolved in commit 5ab97a64b51c ("ShellPkg/bcfg: Add > Shell Spec 2.2 modification functionality", 2017-03-01) because: > > - the BCFG command started making calls to UefiBootManagerLib > (EfiBootManagerVariableToLoadOption(), > EfiBootManagerLoadOptionToVariable(), EfiBootManagerFreeLoadOption()), > > - and "MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf" > depended on TimerLib. > > Because TimerLib is platform-specific, but "ShellPkg/ShellPkg.dsc" is > meant to produce a UEFI shell binary that is platform-independent (see > "ShellBinPkg/ReadMe.txt"), we resolved TimerLib to > "BaseTimerLibNullTemplate.inf". (TimerLib functionality was never actually > needed on UefiBootManagerLib code paths that were exercised by the shell / > BCFG.) > > Thanks to the last patch, UefiBootManagerLib no longer depends on > TimerLib, thus we can drop the TimerLib resolution entirely. > > Cc: Jaben Carsey <jaben.carsey@intel.com> > Cc: Ruiyu Ni <ruiyu.ni@intel.com> > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Laszlo Ersek <lersek@redhat.com> > --- > ShellPkg/ShellPkg.dsc | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/ShellPkg/ShellPkg.dsc b/ShellPkg/ShellPkg.dsc > index 29f537641285..1c923f585149 100644 > --- a/ShellPkg/ShellPkg.dsc > +++ b/ShellPkg/ShellPkg.dsc > @@ -58,7 +58,6 @@ [LibraryClasses.common] > > UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf > HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf > - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf > PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf > DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf > DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf > Very great clean up. Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> -- Thanks, Ray _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2024 Red Hat, Inc.