Hi Bret,

 

  1. We don’t want to introduce duplicated codes and too many instances will also make people confused to consume.
  2. If we add a new instance of IoLib, consumer will also only use one, I think should not have the symbol collision issue.

 

 

Thanks,

Dandan

From: Bret Barkelew <Bret.Barkelew@microsoft.com>
Sent: Friday, March 26, 2021 2:35 AM
To: Bi, Dandan <dandan.bi@intel.com>; devel@edk2.groups.io
Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Sean Brogan <sean.brogan@microsoft.com>
Subject: RE: [EXTERNAL] [patch V2 27/29] UnitTestFrameworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib

 

Thanks, Dandan!

 

Apologies if this has already been asked, but is this necessary because C doesn’t have any options for symbol namespacing?

In other words, would it be just as easy to do this with a new implementation of IoLib if we didn’t have to worry about the symbol collisions?

 

- Bret

 

From: Bi, Dandan
Sent: Monday, March 22, 2021 6:52 PM
To: Bret Barkelew; devel@edk2.groups.io
Cc: Kinney, Michael D; Sean Brogan
Subject: RE: [EXTERNAL] [patch V2 27/29] UnitTestFrameworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib

 

Hi Bret,

 

Here is the branch and PR I just created for this change, please help review. Thanks.

https://github.com/dandanbi/edk2/tree/RegisterFilterLibV2

https://github.com/tianocore/edk2/pull/1509

 

 

 

Thanks,

Dandan

 

From: Bret Barkelew <Bret.Barkelew@microsoft.com>
Sent: Tuesday, March 23, 2021 2:25 AM
To: Bi, Dandan <dandan.bi@intel.com>; devel@edk2.groups.io
Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Sean Brogan <sean.brogan@microsoft.com>
Subject: RE: [EXTERNAL] [patch V2 27/29] UnitTestFrameworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib

 

Is there a PR somewhere that has a branch with all these changes applied? I’d like to poke around a little.

 

Thanks!

 

- Bret

 

From: Dandan Bi
Sent: Monday, March 22, 2021 1:10 AM
To: devel@edk2.groups.io
Cc: Kinney, Michael D; Sean Brogan; Bret Barkelew
Subject: [EXTERNAL] [patch V2 27/29] UnitTestFrameworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib

 

REF: https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D3246&amp;data=04%7C01%7CBret.Barkelew%40microsoft.com%7C77dd99e3296941afb9b408d8ed09fd3c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637519974445661033%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=oDafPDNi1k2MRYGrp%2Frhy1dB43tk%2B0YwF8%2FxdLqBXt8%3D&amp;reserved=0

MdeLibs.dsc.inc was added for some basic/default library
instances provided by MdePkg and RegisterFilterLibNull Library
was also added into it as the first version of MdeLibs.dsc.inc.

So update platform dsc to consume MdeLibs.dsc.inc for
RegisterFilterLibNull which will be consumed by IoLib and BaseLib.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc b/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc
index 8adf690098..4adb98aff5 100644
--- a/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc
+++ b/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc
@@ -1,14 +1,16 @@
 ## @file
 # UnitTestFrameworkPkg DSC include file for target based test DSC
 #
-# Copyright (c) 2019 - 2020, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2019 - 2021, Intel Corporation. All rights reserved.<BR>
 # SPDX-License-Identifier: BSD-2-Clause-Patent
 #
 ##
 
 [LibraryClasses]
+  !include MdePkg/MdeLibs.dsc.inc
+
   #
   # Entry point
   #
   PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
   UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
--
2.18.0.windows.1