From nobody Mon Dec 23 19:21:21 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1515057886215806.239137679046; Thu, 4 Jan 2018 01:24:46 -0800 (PST) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id AE78E21F833A9; Thu, 4 Jan 2018 01:19:39 -0800 (PST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id D0B9D21F833A7 for ; Thu, 4 Jan 2018 01:19:37 -0800 (PST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Jan 2018 01:24:41 -0800 Received: from shwdeopenpsi168.ccr.corp.intel.com ([10.239.158.129]) by orsmga003.jf.intel.com with ESMTP; 04 Jan 2018 01:24:40 -0800 X-Original-To: edk2-devel@lists.01.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.100; helo=mga07.intel.com; envelope-from=yonghong.zhu@intel.com; receiver=edk2-devel@lists.01.org X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.45,506,1508828400"; d="scan'208";a="17395530" From: Yonghong Zhu To: edk2-devel@lists.01.org Date: Thu, 4 Jan 2018 17:24:37 +0800 Message-Id: <1515057877-1940-1-git-send-email-yonghong.zhu@intel.com> X-Mailer: git-send-email 2.6.1.windows.1 Subject: [edk2] [Patch] BaseTools: Not print SKUID info for PCD when it is only Single SKUID X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" when it is only single SKUID, we don't need to print the SKUID info for every PCD since in the Global section there already have this info. For DefaultStore, we use same rule. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu Reviewed-by: Liming Gao --- BaseTools/Source/Python/build/BuildReport.py | 94 +++++++++++++++++-------= ---- 1 file changed, 59 insertions(+), 35 deletions(-) diff --git a/BaseTools/Source/Python/build/BuildReport.py b/BaseTools/Sourc= e/Python/build/BuildReport.py index 5da9914..d2ac044 100644 --- a/BaseTools/Source/Python/build/BuildReport.py +++ b/BaseTools/Source/Python/build/BuildReport.py @@ -2,11 +2,11 @@ # Routines for generating build report. # # This module contains the functionality to generate build report after # build all target completes successfully. # -# Copyright (c) 2010 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.
# This program and the accompanying materials # are licensed and made available under the terms and conditions of the BS= D License # which accompanies this distribution. The full text of the license may b= e found at # http://opensource.org/licenses/bsd-license.php # @@ -754,10 +754,17 @@ class PcdReport(object): if Wa.FdfProfile: self.FdfPcdSet =3D Wa.FdfProfile.PcdDict else: self.FdfPcdSet =3D {} =20 + self.DefaultStoreSingle =3D True + self.SkuSingle =3D True + if GlobalData.gDefaultStores and len(GlobalData.gDefaultStores) > = 1: + self.DefaultStoreSingle =3D False + if GlobalData.gSkuids and len(GlobalData.gSkuids) > 1: + self.SkuSingle =3D False + self.ModulePcdOverride =3D {} for Pa in Wa.AutoGenObjectList: self.Arch =3D Pa.Arch # # Collect all platform referenced PCDs and grouped them by PCD= token space @@ -1123,81 +1130,98 @@ class PcdReport(object): else: FirstPrint =3D True SkuList =3D sorted(Pcd.SkuInfoList.keys()) for Sku in SkuList: SkuInfo =3D Pcd.SkuInfoList[Sku] + SkuIdName =3D SkuInfo.SkuIdName if TypeName in ('DYNHII', 'DEXHII'): if SkuInfo.DefaultStoreDict: DefaultStoreList =3D sorted(SkuInfo.DefaultStoreDi= ct.keys()) for DefaultStore in DefaultStoreList: Value =3D SkuInfo.DefaultStoreDict[DefaultStor= e] IsByteArray, ArrayList =3D ByteArrayForamt(Val= ue) if FirstPrint: FirstPrint =3D False if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %1= 0s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' += Pcd.DatumType + ')', '(' + SkuInfo.SkuIdName + ')', '(' + DefaultStore + '= )', '{')) + if self.DefaultStoreSingle and self.Sk= uSingle: + FileWrite(File, ' %-*s : %6s %10= s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.D= atumType + ')', '{')) + elif self.DefaultStoreSingle and not s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + = Pcd.DatumType + ')', '(' + SkuIdName + ')', '{')) + elif not self.DefaultStoreSingle and s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + = Pcd.DatumType + ')', '(' + DefaultStore + ')', '{')) + else: + FileWrite(File, ' %-*s : %6s %10= s %10s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '= (' + Pcd.DatumType + ')', '(' + SkuIdName + ')', '(' + DefaultStore + ')', = '{')) for Array in ArrayList: FileWrite(File, '%s' % (Array)) else: - FileWrite(File, ' %-*s : %6s %10s %1= 0s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' += Pcd.DatumType + ')', '(' + SkuInfo.SkuIdName + ')', '(' + DefaultStore + '= )', Value)) + if self.DefaultStoreSingle and self.Sk= uSingle: + FileWrite(File, ' %-*s : %6s %10= s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.D= atumType + ')', Value)) + elif self.DefaultStoreSingle and not s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + = Pcd.DatumType + ')', '(' + SkuIdName + ')', Value)) + elif not self.DefaultStoreSingle and s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + = Pcd.DatumType + ')', '(' + DefaultStore + ')', Value)) + else: + FileWrite(File, ' %-*s : %6s %10= s %10s %10s =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '= (' + Pcd.DatumType + ')', '(' + SkuIdName + ')', '(' + DefaultStore + ')', = Value)) else: if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %1= 0s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '= (' + SkuInfo.SkuIdName + ')', '(' + DefaultStore + ')', '{')) + if self.DefaultStoreSingle and self.Sk= uSingle: + FileWrite(File, ' %-*s : %6s %10= s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '{')) + elif self.DefaultStoreSingle and not s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(= ' + SkuIdName + ')', '{')) + elif not self.DefaultStoreSingle and s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(= ' + DefaultStore + ')', '{')) + else: + FileWrite(File, ' %-*s : %6s %10= s %10s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')= ', '(' + SkuIdName + ')', '(' + DefaultStore + ')', '{')) for Array in ArrayList: FileWrite(File, '%s' % (Array)) else: - FileWrite(File, ' %-*s : %6s %10s %1= 0s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '= (' + SkuInfo.SkuIdName + ')', '(' + DefaultStore + ')', Value)) + if self.DefaultStoreSingle and self.Sk= uSingle: + FileWrite(File, ' %-*s : %6s %10= s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', Value)) + elif self.DefaultStoreSingle and not s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(= ' + SkuIdName + ')', Value)) + elif not self.DefaultStoreSingle and s= elf.SkuSingle: + FileWrite(File, ' %-*s : %6s %10= s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(= ' + DefaultStore + ')', Value)) + else: + FileWrite(File, ' %-*s : %6s %10= s %10s %10s =3D %s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')= ', '(' + SkuIdName + ')', '(' + DefaultStore + ')', Value)) FileWrite(File, '%*s: %s: %s' % (self.MaxLen += 4, SkuInfo.VariableGuid, SkuInfo.VariableName, SkuInfo.VariableOffset)) if IsStructure: OverrideValues =3D Pcd.SkuOverrideValues[S= ku] Struct =3D OverrideValues[DefaultStore] self.PrintStructureInfo(File, Struct) self.PrintPcdDefault(File, Pcd, IsStructure, D= scMatch, DscDefaultValue, InfMatch, InfDefaultValue, DecMatch, DecDefaultVa= lue) - elif TypeName in ('DYNVPD', 'DEXVPD'): - Value =3D SkuInfo.DefaultValue - IsByteArray, ArrayList =3D ByteArrayForamt(Value) - if FirstPrint: - FirstPrint =3D False - if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumTyp= e + ')', '(' + SkuInfo.SkuIdName + ')', "{")) - for Array in ArrayList: - FileWrite(File, '%s' % (Array)) - else: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumTyp= e + ')', '(' + SkuInfo.SkuIdName + ')', Value)) - else: - if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', '(' + SkuInfo= .SkuIdName + ')', "{")) - for Array in ArrayList: - FileWrite(File, '%s' % (Array)) - else: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', '(' + SkuInfo= .SkuIdName + ')', Value)) - FileWrite(File, '%*s' % (self.MaxLen + 4, SkuInfo.VpdO= ffset)) - if IsStructure: - OverrideValues =3D Pcd.SkuOverrideValues[Sku] - if OverrideValues: - Keys =3D OverrideValues.keys() - Struct =3D OverrideValues[Keys[0]] - self.PrintStructureInfo(File, Struct) - self.PrintPcdDefault(File, Pcd, IsStructure, DscMatch,= DscDefaultValue, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue) else: Value =3D SkuInfo.DefaultValue IsByteArray, ArrayList =3D ByteArrayForamt(Value) if FirstPrint: FirstPrint =3D False if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumTyp= e + ')', '(' + SkuInfo.SkuIdName + ')', '{')) + if self.SkuSingle: + FileWrite(File, ' %-*s : %6s %10s =3D %s= ' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumType= + ')', "{")) + else: + FileWrite(File, ' %-*s : %6s %10s %10s = =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.Dat= umType + ')', '(' + SkuIdName + ')', "{")) for Array in ArrayList: FileWrite(File, '%s' % (Array)) else: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumTyp= e + ')', '(' + SkuInfo.SkuIdName + ')', Value)) + if self.SkuSingle: + FileWrite(File, ' %-*s : %6s %10s =3D %s= ' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.DatumType= + ')', Value)) + else: + FileWrite(File, ' %-*s : %6s %10s %10s = =3D %s' % (self.MaxLen, Flag + ' ' + PcdTokenCName, TypeName, '(' + Pcd.Dat= umType + ')', '(' + SkuIdName + ')', Value)) else: if IsByteArray: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(' + SkuInfo.= SkuIdName + ')', '{')) + if self.SkuSingle: + FileWrite(File, ' %-*s : %6s %10s =3D %s= ' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', "{")) + else: + FileWrite(File, ' %-*s : %6s %10s %10s = =3D %s' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', '(' + Sk= uIdName + ')', "{")) for Array in ArrayList: FileWrite(File, '%s' % (Array)) else: - FileWrite(File, ' %-*s : %6s %10s %10s =3D %= s' % (self.MaxLen, ' ', TypeName, '(' + Pcd.DatumType + ')', '(' + SkuInfo.= SkuIdName + ')', Value)) + if self.SkuSingle: + FileWrite(File, ' %-*s : %6s %10s =3D %s= ' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', Value)) + else: + FileWrite(File, ' %-*s : %6s %10s %10s = =3D %s' % (self.MaxLen, ' ' , TypeName, '(' + Pcd.DatumType + ')', '(' + Sk= uIdName + ')', Value)) + if TypeName in ('DYNVPD', 'DEXVPD'): + FileWrite(File, '%*s' % (self.MaxLen + 4, SkuInfo.= VpdOffset)) if IsStructure: OverrideValues =3D Pcd.SkuOverrideValues[Sku] if OverrideValues: Keys =3D OverrideValues.keys() Struct =3D OverrideValues[Keys[0]] --=20 2.6.1.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel