Reviewed-by: Liming Gao <[email protected]>

> -----Original Message-----
> From: Zhu, Yonghong
> Sent: Thursday, July 27, 2017 11:38 AM
> To: [email protected]
> Cc: Gao, Liming <[email protected]>
> Subject: [Patch] BaseTools: Fix the bug to correctly check Pcd type that in 
> FDF file
> 
> We set Pcd value in FDF and used this Pcd as PatchableInModule type in
> module, it cause build report generate failure. because we incorrectly
> set the Pcd type during check whether the Pcd is used.
> 
> Cc: Liming Gao <[email protected]>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Yonghong Zhu <[email protected]>
> ---
>  BaseTools/Source/Python/build/BuildReport.py | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/BaseTools/Source/Python/build/BuildReport.py 
> b/BaseTools/Source/Python/build/BuildReport.py
> index a1ee43a..a7cbb6a 100644
> --- a/BaseTools/Source/Python/build/BuildReport.py
> +++ b/BaseTools/Source/Python/build/BuildReport.py
> @@ -736,10 +736,17 @@ class PcdReport(object):
>              #
>              UnusedPcdFullList = []
>              for item in Pa.Platform.Pcds:
>                  Pcd = Pa.Platform.Pcds[item]
>                  if not Pcd.Type:
> +                    # check the Pcd in FDF file, whether it is used in 
> module first
> +                    for T in ["FixedAtBuild", "PatchableInModule", 
> "FeatureFlag", "Dynamic", "DynamicEx"]:
> +                        PcdList = 
> self.AllPcds.setdefault(Pcd.TokenSpaceGuidCName, {}).setdefault(T, [])
> +                        if Pcd in PcdList:
> +                            Pcd.Type = T
> +                            break
> +                if not Pcd.Type:
>                      PcdTypeFlag = False
>                      for package in Pa.PackageList:
>                          for T in ["FixedAtBuild", "PatchableInModule", 
> "FeatureFlag", "Dynamic", "DynamicEx"]:
>                              if (Pcd.TokenCName, Pcd.TokenSpaceGuidCName, T) 
> in package.Pcds:
>                                  Pcd.Type = T
> --
> 2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to