On 05/13/19 20:53, Christian Rodriguez wrote: > I think a warning would be reasonable. > > I only mention the spec because it requires all headers to be in the sources > section of the inf,
That could be required by the edk2 INF spec, yes. It's totally irrelevant for the UEFI spec however. (Originally you wrote, "[...] This would force users of the hash feature to be UEFI spec complaint [...]".) Laszlo > but it's not enforced strictly by BaseTools. Though the hashing feature > relies on this requirement. It not a big deal, I just wanted to make sure > false positive build successes were addressed. > > Thanks, > Christian > >> -----Original Message----- >> From: Laszlo Ersek [mailto:ler...@redhat.com] >> Sent: Monday, May 13, 2019 4:39 AM >> To: Rodriguez, Christian <christian.rodrig...@intel.com>; >> devel@edk2.groups.io; fel...@ami.com >> Cc: Feng, Bob C <bob.c.f...@intel.com>; Gao, Liming >> <liming....@intel.com>; Zhu, Yonghong <yonghong....@intel.com> >> Subject: Re: [edk2-devel] [PATCH] BaseTools: Include headers not mentioned >> in inf are not hashed >> >> On 05/10/19 21:45, Rodriguez, Christian wrote: >>> Hashing is not changing file format requirements as Basetools has no >> requirement on this even though the spec does have file requirements. That's >> why the initial patch was a workaround of sorts because it is allowed by >> Basetools to have local headers not in the sources section of the meta file. >>> >>> Always breaking the build is outside of the scope of this BZ and my project >> priorities. I agree it should be done, but it's out of my scope. >>> >>> I am specifically targeting the hashing feature, which relies on UEFI Spec >> requirements. >> >> I think breaking the build immediately (and unconditionally) could catch >> platforms by surprise. Can we make this a warning vs. an error? And, I'm >> totally OK if it's available only with --hash, for now. >> >> BTW -- I'm not sure why the UEFI spec is relevant here. >> >> Thanks >> Laszlo >> >>>> -----Original Message----- >>>> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of >>>> Felix Polyudov >>>> Sent: Friday, May 10, 2019 12:32 PM >>>> To: Rodriguez, Christian <christian.rodrig...@intel.com>; >>>> devel@edk2.groups.io; 'ler...@redhat.com' <ler...@redhat.com> >>>> Cc: Feng, Bob C <bob.c.f...@intel.com>; Gao, Liming >>>> <liming....@intel.com>; Zhu, Yonghong <yonghong....@intel.com> >>>> Subject: Re: [edk2-devel] [PATCH] BaseTools: Include headers not >>>> mentioned in inf are not hashed >>>> >>>> My suggestion would be to always break a build (no matter what the >>>> hashing settings are). >>>> Hashing is just an optimization technique, usage of which should not >>>> be changing source file formatting requirements. >>>> >>>>> -----Original Message----- >>>>> From: Rodriguez, Christian [mailto:christian.rodrig...@intel.com] >>>>> Sent: Friday, May 10, 2019 3:14 PM >>>>> To: devel@edk2.groups.io; Felix Polyudov; 'ler...@redhat.com' >>>>> Cc: Feng, Bob C; Gao, Liming; Zhu, Yonghong >>>>> Subject: RE: [edk2-devel] [PATCH] BaseTools: Include headers not >>>>> mentioned in inf are not hashed >>>>> >>>>> After talking to my colleagues about this, the direction seems to be >>>>> to fundamentally change this BZ. Instead of building this sort of >>>>> workaround feature, we should use the information gathered from this >>>> feature to cause the build to break when the hash feature is enabled. >>>> This would force users of the hash feature to be UEFI spec complaint. >>>>> >>>>> What do you guys think; Laszlo and Felix? >>>>> >>>>> I'll update the BZ when I get your input. >>>>> >>>>> Thanks, >>>>> Christian Rodriguez >>>>> >>>>>> -----Original Message----- >>>>>> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf >>>>>> Of Felix Polyudov >>>>>> Sent: Friday, May 10, 2019 6:41 AM >>>>>> To: devel@edk2.groups.io; 'ler...@redhat.com' <ler...@redhat.com>; >>>>>> Rodriguez, Christian <christian.rodrig...@intel.com> >>>>>> Cc: Feng, Bob C <bob.c.f...@intel.com>; Gao, Liming >>>>>> <liming....@intel.com>; Zhu, Yonghong <yonghong....@intel.com> >>>>>> Subject: Re: [edk2-devel] [PATCH] BaseTools: Include headers not >>>>>> mentioned in inf are not hashed >>>>>> >>>>>>> -----Original Message----- >>>>>>> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf >>>>>>> Of Laszlo Ersek >>>>>>> Sent: Thursday, May 09, 2019 7:53 PM >>>>>>> >>>>>>> Hello Christian, >>>>>>> >>>>>>> On 05/09/19 23:27, Christian Rodriguez wrote: >>>>>>>> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1787 >>>>>>>> >>>>>>>> Get a list of local header files that are not present in the >>>>>>>> MetaFile for this module. Add those local header files into the >>>>>>>> hashing algorithm for a module. If a local header file is not >>>>>>>> present in the MetaFile, the module will still build correctly >>>>>>>> though the hashing system didn't know about it before. >>>>>>>> >>>>>>>> Signed-off-by: Christian Rodriguez >>>>>>>> <christian.rodrig...@intel.com> >>>>>>>> Cc: Bob Feng <bob.c.f...@intel.com> >>>>>>>> Cc: Liming Gao <liming....@intel.com> >>>>>>>> Cc: Yonghong Zhu <yonghong....@intel.com> >>>>>>>> --- >>>>>>>> BaseTools/Source/Python/AutoGen/AutoGen.py | 24 >>>>>>>> ++++++++++++++++++++++++ >>>>>>>> 1 file changed, 24 insertions(+) >>>>>>> >>>>>>> I saw the BZ soon after it was reported. I almost commented, but >>>>>>> ultimately I couldn't decide what the real use case was. >>>>>>> >>>>>>> With this particular use case (i.e. INF file is missing some >>>>>>> module-specific header files that it could easily list), I think I >>>>>>> disagree, mildly (not too strongly). E.g., we fixed such omissions >>>>>>> in a bunch of INF files, last March, in the series >>>>>> >>>>>> I agree with Lazlo. >>>>>> According to section 3.9 of the INF specification (https://edk2- >>>>>> docs.gitbooks.io/edk-ii-inf- >>>>>> specification/3_edk_ii_inf_file_format/39_[sources]_sections.html), >>>>>> all source files (including module header files) must be listed in >>>>>> the [Sources] section. >>>>>> Here is the quote: >>>>>> "All HII Unicode format files must be listed in this section as >>>>>> well as any other "source" type file, such as local module header >>>>>> files, Vfr files, >>>> etc. " >>>>>> >>>>>> So, if file X is used by module Y, but is not listed in Y.inf, it's >>>>>> a violation of the INF spec., which makes it a bug that has to be fixed. >>>>>> >>>>>> >>>>>> Please consider the environment before printing this email. >>>>>> >>>>>> The information contained in this message may be confidential and >>>>>> proprietary to American Megatrends, Inc. This communication is >>>>>> intended to be read only by the individual or entity to whom it is >>>>>> addressed or by their designee. If the reader of this message is >>>>>> not the intended recipient, you are on notice that any distribution >>>>>> of this message, in any form, is strictly prohibited. Please >>>>>> promptly notify the sender by reply e-mail or by telephone at >>>>>> 770-246-8600, and >>>> then delete or destroy all copies of the transmission. >>>>>> l K q y e ,j a + U ?E e w Ӎ i vM *? ^ >>>>>> ,j N6 ˭y8b :) m ? >>>>>> 躛" }y M5 { j躓 z 'z h+ l ' r zm y 6 . Ȩ z 칷! >>>>>> +- 糊{^ & >>>> >>>> Please consider the environment before printing this email. >>>> >>>> The information contained in this message may be confidential and >>>> proprietary to American Megatrends, Inc. This communication is >>>> intended to be read only by the individual or entity to whom it is >>>> addressed or by their designee. If the reader of this message is not >>>> the intended recipient, you are on notice that any distribution of >>>> this message, in any form, is strictly prohibited. Please promptly >>>> notify the sender by reply e-mail or by telephone at 770-246-8600, and >> then delete or destroy all copies of the transmission. >>>> l K q y e ,j a + U ?E e w ӎ{ i vM *? ^ ,j >>>> N9 ˭y8b :) m ? >>>> 躛" }y M5 { j躓 z 'z h+ l ' r zm y 6 . Ȩ z 칷! +- >>>> 糊{^ & > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#40536): https://edk2.groups.io/g/devel/message/40536 Mute This Topic: https://groups.io/mt/31570019/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-