Hi All,

Thank you very much for your valuable thoughts.
Below are my concerns/thoughts, Could you please help on

1. Is there any module or INF already using FeatureFlagExpression feature 
support in current edk2 source?
2. If not, could you please help in providing more detailed spec/Doc to verify 
this support.
3. Below are the few of use cases we're looking for, Did really 
FeatureFlagExpression support all of this?
                a.      If we've this support we can add different protocols in 
DEPEX section, like we can put condition check and add rotococol1 for Notebook 
and Protocol2 for Desktop.
                b.           Help in simplifying build files. We could dispense 
with the prefix to inf files and more developer convenient. 
                c.      Sometimes we would like to add Conditional  .C and .H 
for file inclusion. Helps in our Debug / release builds as well..
                                Example; we do have release and debug build, 
although Source Section has - IA32,X64, Common, IPF, EBC exclusively. 
                                          But for the same Source section, we 
can't have choices based on our build inputs...

                                                        #if Condition1
                                                          [Sources]
                                                    Main.c
                                                #elif Condition2
                                                         [Sources]
                                                            DebugMain.c

4. I don't think INF file support MACRO support, How complex in modifying the 
BaseTools to support Condition checks and MACRO support?

Thanks & Regards,
Karunakar

-----Original Message-----
From: Kinney, Michael D [mailto:michael.d.kin...@intel.com] 
Sent: Thursday, January 10, 2019 10:23 PM
To: Gao, Liming; Laszlo Ersek; Poosapalli, Karunakar; edk2-devel@lists.01.org; 
Kinney, Michael D
Cc: Vidyadhara, Sumanth; Gao, Liming; Raju, SriramKumar
Subject: RE: [edk2] Conditional Compilation support in INF file


[EXTERNAL EMAIL] 

There is one additional constraint for adding conditionals to INF files.

The UEFI Distribution Packaging Specification defines a format to share package 
and module content in a standard format and uses an XML schema for the 
metadata.  We need to be able to convert between INF <--> XML and DEC <--> XML.

http://www.uefi.org/sites/default/files/resources/Dist_Package_Spec_1_1.pdf

If we define extensions to INF or DEC files, we need to make sure these 
transforms are still supported.  If an extension prevents these transforms, 
then we either need to change the extension to be compatible or work on an 
update to the UDP spec to support the extension in the XML.

Best regards,

Mike

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-
> boun...@lists.01.org] On Behalf Of Gao, Liming
> Sent: Thursday, January 10, 2019 7:48 AM
> To: Laszlo Ersek <ler...@redhat.com>;
> karunakarpoosapa...@dell.com; edk2-devel@lists.01.org
> Cc: sumanth.vidyadh...@dell.com; Gao, Liming <liming....@intel.com>; 
> sriramkumar.r...@dell.com
> Subject: Re: [edk2] Conditional Compilation support in INF file
> 
> I have same question. What flexibility is expected in INF? I see one 
> request in [Depex] section. So, PCD support in [Depex] is added.
> 
> Edk2 INF is used to describe the source code behavior.
> If the source uses Ppi/Protocol/Guid/Pcd, these information are always 
> required to be described in INF file. The compiler can optimize the 
> code and remove the unused Ppi/Protocol/Guid/Pcd. It doesn't need 
> developer specify the conditional statement.
> 
> Thanks
> Liming
> > -----Original Message-----
> > From: Laszlo Ersek [mailto:ler...@redhat.com]
> > Sent: Thursday, January 10, 2019 8:54 PM
> > To: karunakarpoosapa...@dell.com; Gao, Liming
> <liming....@intel.com>; edk2-devel@lists.01.org
> > Cc: sumanth.vidyadh...@dell.com;
> sriramkumar.r...@dell.com
> > Subject: Re: [edk2] Conditional Compilation support in
> INF file
> >
> > On 01/10/19 07:03, karunakarpoosapa...@dell.com wrote:
> > > Hi All,
> > >
> > > I agree with providing the support like
> "FixedAtBuild PCD in INF". And we need to modify or provide support in 
> BaseTools to support
> > this feature.
> > >
> > > There are more use cases or flexibility to developer
> if we support Conditional compilation support in INF.
> > > As we're providing support in BaseTools for
> FixedAtBuild PCD support in INF, Is there any challenges or drawbacks 
> in  providing
> > conditional compilation support in INF?
> >
> > This is not for me to say authoritatively, but I'm
> unaware of any
> > specific use case that cannot be solved without this
> feature addition,
> > and any further complexity to BaseTools should be
> strongly justified.
> > "More convenient" is too vague for me, and the
> BaseTools code is already
> > hard to read and debug.
> >
> > That's just my opinion, again.
> >
> > Thanks
> > Laszlo
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to