From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.byosoft.com.cn (mail.byosoft.com.cn [58.240.74.242]) by mx.groups.io with SMTP id smtpd.web08.6833.1604451125399005220 for ; Tue, 03 Nov 2020 16:52:06 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=none, err=permanent DNS error (domain: byosoft.com.cn, ip: 58.240.74.242, mailfrom: gaoliming@byosoft.com.cn) Received: from DESKTOPS6D0PVI ([58.246.60.130]) (envelope-sender ) by 192.168.6.13 with ESMTP for ; Wed, 04 Nov 2020 08:52:01 +0800 X-WM-Sender: gaoliming@byosoft.com.cn X-WM-AuthFlag: YES X-WM-AuthUser: gaoliming@byosoft.com.cn From: "gaoliming" To: "'Feng, Bob C'" , Cc: "'Chen, Christine'" References: <20201026122744.45096-1-bob.c.feng@intel.com> <004901d6b0b8$11161820$33424860$@byosoft.com.cn> In-Reply-To: Subject: =?UTF-8?B?5Zue5aSNOiBbUGF0Y2hdIEJhc2VUb29sczogUmVtb3ZlIHRoZSBkZXBlbmRlbmN5IG9uIHRoZSBidWlsZCBpbnRlcm1lZGlhdGUgZmlsZQ==?= Date: Wed, 4 Nov 2020 08:52:01 +0800 Message-ID: <001e01d6b244$b52a8030$1f7f8090$@byosoft.com.cn> MIME-Version: 1.0 X-Mailer: Microsoft Outlook 16.0 Thread-Index: AQJvUmj7T0qHrxr5mlx0sEGf3xVq5gFGo6h2AuN+Yn6oZJNWcA== Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-Language: zh-cn Bob: I understand this change. Reviewed-by: Liming Gao = Thanks Liming > -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > =E5=8F=91=E4=BB=B6=E4=BA=BA: Feng, Bob C > =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: = 2020=E5=B9=B411=E6=9C=882=E6=97=A5 17:58 > =E6=94=B6=E4=BB=B6=E4=BA=BA: gaoliming ; = devel@edk2.groups.io > =E6=8A=84=E9=80=81: Chen, Christine > =E4=B8=BB=E9=A2=98: RE: [Patch] BaseTools: Remove the dependency on = the build > intermediate file >=20 > Liming, >=20 > Yes, it's also for other source files for AcpiTable, like *.asl. >=20 > Thanks, > Bob >=20 > -----Original Message----- > From: gaoliming > Sent: Monday, November 2, 2020 9:33 AM > To: Feng, Bob C ; devel@edk2.groups.io > Cc: Chen, Christine > Subject: =E5=9B=9E=E5=A4=8D: [Patch] BaseTools: Remove the dependency = on the build > intermediate file >=20 > Bob: > So, this incremental issue happens when the source file name is = changed. > Is it only for *.aslc file, or also for other file, such as *.asl? >=20 > Thanks > Liming > > -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > > =E5=8F=91=E4=BB=B6=E4=BA=BA: Bob Feng > > =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: = 2020=E5=B9=B410=E6=9C=8826=E6=97=A5 20:28 > > =E6=94=B6=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io > > =E6=8A=84=E9=80=81: Liming Gao ; Yuwei = Chen > > > > =E4=B8=BB=E9=A2=98: [Patch] BaseTools: Remove the dependency on the = build > intermediate > > file > > > > When generating compressed section, the build tool rely on the build > > intermediate files, which were generated in last build, to get the > > file list. This method will cause the incremental build to generate > > incorrect build result. To reproduce this incremental build error, = you > > can do: > > 1. build Ovmf > > 2. change the module OvmfPkg\AcpiTables a source file Facp.aslc name > > from Facp.aslc to Facpxxx.aslc. > > 3. change the Facp.aslc file name in [sources] section of > > AcpiTables.inf 4. incremental build Ovmf > > > > you will see the in AcpiTables module Makefile, the corresponding > > Facp.acpi file is not changed. > > > > This patch is to make the build always get file list from the INF. > > > > Signed-off-by: Bob Feng > > Cc: Liming Gao > > Cc: Yuwei Chen > > --- > > BaseTools/Source/Python/GenFds/Section.py | 15 --------------- > > 1 file changed, 15 deletions(-) > > > > diff --git a/BaseTools/Source/Python/GenFds/Section.py > > b/BaseTools/Source/Python/GenFds/Section.py > > index 2acb70f412..0382b2a759 100644 > > --- a/BaseTools/Source/Python/GenFds/Section.py > > +++ b/BaseTools/Source/Python/GenFds/Section.py > > @@ -139,25 +139,10 @@ class Section (SectionClassObject): > > if File.Ext =3D=3D Suffix: > > FileList.append(File.Path) > > > > if (not IsMakefile and Suffix is not None and > > os.path.exists(FfsInf.EfiOutputPath)) or (IsMakefile and Suffix is = not > None): > > - # > > - # Get Makefile path and time stamp > > - # > > - MakefileDir =3D FfsInf.EfiOutputPath[:-len('OUTPUT')] > > - Makefile =3D os.path.join(MakefileDir, 'Makefile') > > - if not os.path.exists(Makefile): > > - Makefile =3D os.path.join(MakefileDir, = 'GNUmakefile') > > - if os.path.exists(Makefile): > > - # Update to search files with suffix in all = sub-dirs. > > - Tuple =3D os.walk(FfsInf.EfiOutputPath) > > - for Dirpath, Dirnames, Filenames in Tuple: > > - for F in Filenames: > > - if os.path.splitext(F)[1] =3D=3D Suffix: > > - FullName =3D os.path.join(Dirpath, F) > > - if os.path.getmtime(FullName) > > > os.path.getmtime(Makefile): > > - FileList.append(FullName) > > if not FileList: > > SuffixMap =3D FfsInf.GetFinalTargetSuffixMap() > > if Suffix in SuffixMap: > > FileList.extend(SuffixMap[Suffix]) > > > > -- > > 2.20.1.windows.1 >=20 >=20