public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] BaseTools: Fix the different token with the same PCD
@ 2018-07-20  7:51 Feng, YunhuaX
  2018-07-23  2:07 ` Gao, Liming
  0 siblings, 1 reply; 2+ messages in thread
From: Feng, YunhuaX @ 2018-07-20  7:51 UTC (permalink / raw)
  To: edk2-devel@lists.01.org; +Cc: Zhu, Yonghong, Gao, Liming

If the different token with the same PCD names are used in the driver,
build can pass. If the different token with the same PCD name are used
in the different library, then the driver build will fail. The reason
is that the driver autogen.c is not generated correctly for the second
case. BaseTools should check the duplicated PCD name is the driver and
its linked libraries.

Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com>
---
 BaseTools/Source/Python/AutoGen/GenC.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/BaseTools/Source/Python/AutoGen/GenC.py b/BaseTools/Source/Python/AutoGen/GenC.py
index 3b396491d0..97ae7bc77a 100644
--- a/BaseTools/Source/Python/AutoGen/GenC.py
+++ b/BaseTools/Source/Python/AutoGen/GenC.py
@@ -935,11 +935,11 @@ def CreateModulePcdCode(Info, AutoGenC, AutoGenH, Pcd):
 
     if Pcd.Type in PCD_DYNAMIC_EX_TYPE_SET:
         if Info.IsLibrary:
             PcdList = Info.LibraryPcdList
         else:
-            PcdList = Info.ModulePcdList
+            PcdList = Info.ModulePcdList + Info.LibraryPcdList
         PcdExCNameTest = 0
         for PcdModule in PcdList:
             if PcdModule.Type in PCD_DYNAMIC_EX_TYPE_SET and Pcd.TokenCName == PcdModule.TokenCName:
                 PcdExCNameTest += 1
             # get out early once we found > 1...
-- 
2.12.2.windows.2



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] BaseTools: Fix the different token with the same PCD
  2018-07-20  7:51 [PATCH] BaseTools: Fix the different token with the same PCD Feng, YunhuaX
@ 2018-07-23  2:07 ` Gao, Liming
  0 siblings, 0 replies; 2+ messages in thread
From: Gao, Liming @ 2018-07-23  2:07 UTC (permalink / raw)
  To: Feng, YunhuaX, edk2-devel@lists.01.org

Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: Feng, YunhuaX
>Sent: Friday, July 20, 2018 3:52 PM
>To: edk2-devel@lists.01.org
>Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Gao, Liming
><liming.gao@intel.com>
>Subject: [PATCH] BaseTools: Fix the different token with the same PCD
>
>If the different token with the same PCD names are used in the driver,
>build can pass. If the different token with the same PCD name are used
>in the different library, then the driver build will fail. The reason
>is that the driver autogen.c is not generated correctly for the second
>case. BaseTools should check the duplicated PCD name is the driver and
>its linked libraries.
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Yonghong Zhu <yonghong.zhu@intel.com>
>Contributed-under: TianoCore Contribution Agreement 1.1
>Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com>
>---
> BaseTools/Source/Python/AutoGen/GenC.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/BaseTools/Source/Python/AutoGen/GenC.py
>b/BaseTools/Source/Python/AutoGen/GenC.py
>index 3b396491d0..97ae7bc77a 100644
>--- a/BaseTools/Source/Python/AutoGen/GenC.py
>+++ b/BaseTools/Source/Python/AutoGen/GenC.py
>@@ -935,11 +935,11 @@ def CreateModulePcdCode(Info, AutoGenC,
>AutoGenH, Pcd):
>
>     if Pcd.Type in PCD_DYNAMIC_EX_TYPE_SET:
>         if Info.IsLibrary:
>             PcdList = Info.LibraryPcdList
>         else:
>-            PcdList = Info.ModulePcdList
>+            PcdList = Info.ModulePcdList + Info.LibraryPcdList
>         PcdExCNameTest = 0
>         for PcdModule in PcdList:
>             if PcdModule.Type in PCD_DYNAMIC_EX_TYPE_SET and
>Pcd.TokenCName == PcdModule.TokenCName:
>                 PcdExCNameTest += 1
>             # get out early once we found > 1...
>--
>2.12.2.windows.2



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-07-23  2:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-20  7:51 [PATCH] BaseTools: Fix the different token with the same PCD Feng, YunhuaX
2018-07-23  2:07 ` Gao, Liming

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox