public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: devel@edk2.groups.io, michael.d.kinney@intel.com
Cc: Abdul Lateef Attar <abdattar@amd.com>,
	Abner Chang <abner.chang@amd.com>,
	"Warkentin, Andrei" <andrei.warkentin@intel.com>,
	Andrew Fish <afish@apple.com>,
	Ard Biesheuvel <ardb+tianocore@kernel.org>,
	"S, Ashraf Ali" <ashraf.ali.s@intel.com>,
	Bibo Mao <maobibo@loongson.cn>,
	"Feng, Bob C" <bob.c.feng@intel.com>,
	"West, Catharine" <catharine.west@intel.com>,
	Chao Li <lichao@loongson.cn>,
	"Chiu, Chasel" <chasel.chiu@intel.com>,
	"Duggapu, Chinni B" <chinni.b.duggapu@intel.com>,
	Duke Zhai <duke.zhai@amd.com>,
	"Aktas, Erdem" <erdemaktas@google.com>,
	Eric Xing <eric.xing@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
	"Guo, Gua" <gua.guo@intel.com>, "Dong, Guo" <guo.dong@intel.com>,
	Igniculus Fu <igniculus.fu@amd.com>,
	"Lu, James" <james.lu@intel.com>,
	"Yao, Jiewen" <jiewen.yao@intel.com>,
	Kelly Steele <kelly.steele@intel.com>, Ken Yao <ken.yao@amd.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Liming Gao <gaoliming@byosoft.com.cn>,
	Michael Roth <michael.roth@amd.com>,
	"Xu, Min M" <min.m.xu@intel.com>,
	"Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>,
	Paul Grimes <paul.grimes@amd.com>,
	"Kumar, Rahul R" <rahul.r.kumar@intel.com>,
	"Ni, Ray" <ray.ni@intel.com>, Rebecca Cran <rebecca@bsdio.com>,
	"Chaganty, Rangasai V" <rangasai.v.chaganty@intel.com>,
	Sami Mujawar <sami.mujawar@arm.com>,
	"Rhodes, Sean" <sean@starlabs.systems>,
	"Zeng, Star" <star.zeng@intel.com>,
	Sunil V L <sunilvl@ventanamicro.com>,
	"Mohapatra, Susovan" <susovan.mohapatra@intel.com>,
	"Kuo, Ted" <ted.kuo@intel.com>,
	Tom Lendacky <thomas.lendacky@amd.com>,
	USER0FISH <libing1202@outlook.com>,
	Xianglai li <lixianglai@loongson.cn>,
	"Chen, Christine" <yuwei.chen@intel.com>,
	caiyuqing379 <caiyuqing_hz@outlook.com>,
	dahogn <dahogn@hotmail.com>, meng-cz <mengcz1126@gmail.com>
Subject: Re: [edk2-devel] BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules
Date: Sat, 24 Feb 2024 19:02:57 +0100	[thread overview]
Message-ID: <997ccb2c-e374-b9c3-9031-c6cf37ec3b38@redhat.com> (raw)
In-Reply-To: <CO1PR11MB49292DF95DFD9592771B75FAD24D2@CO1PR11MB4929.namprd11.prod.outlook.com>

Hi Mike,

On 2/15/24 18:29, Michael D Kinney wrote:
> Hi Laszlo,
> 
> I was also thinking the INF Version would be best approach.
> 
> I recommend we identify the EDK II Build Specification and
> EDK II INF Specification changes required to resolve this 
> issue.
> 
> https://github.com/tianocore-docs/edk2-BuildSpecification
> https://github.com/tianocore-docs/edk2-InfSpecification

I've reviewed both of these (their latest drafts).

I've prepared patches for the Build spec -- they affect section "8.3
Auto-generated code". I'm going to post the patches soon.

The INF spec seems to need no updates, *except* for the revision history
in the README. I've checked all INF_VERSION instances in the spec, and
neither looks relevant. In "2.1 Processing Overview":

https://tianocore-docs.github.io/edk2-InfSpecification/draft/2_inf_overview/21_processing_overview.html

we already state:

    [...] The EDK II utilities check EDK II INF files, and, if required,
    generate C code files based on the content of the EDK II INF. Refer
    to the EDK II Build Specification for more information regarding
    these autogenerated files.

and in "2.4 [Defines] Section":

https://tianocore-docs.github.io/edk2-InfSpecification/draft/2_inf_overview/24_[defines]_section.html

we state

    [...] The EDK II parsing utilities will use some of this section's
    information for generating AutoGen.c and AutoGen.h files. [...]

which looks sufficient to me. So I plan to post just a README update for
the INF spec.

Thanks,
Laszlo

> 
> 
> The current INF Spec uses INF_VERSION of 1.27.
> 
> Should the new version be 1.28, or is there something I am
> missing where 1.30 would be required?  Or are you wanting
> to jump from 1.2x to 1.3x to indicate a behavior change?
> 
> Thanks,
> 
> Mike
> 
> 
>> -----Original Message-----
>> From: Laszlo Ersek <lersek@redhat.com>
>> Sent: Wednesday, February 14, 2024 11:58 PM
>> To: devel@edk2.groups.io; Kinney, Michael D
>> <michael.d.kinney@intel.com>
>> Cc: Abdul Lateef Attar <abdattar@amd.com>; Abner Chang
>> <abner.chang@amd.com>; Warkentin, Andrei <andrei.warkentin@intel.com>;
>> Andrew Fish <afish@apple.com>; Ard Biesheuvel
>> <ardb+tianocore@kernel.org>; S, Ashraf Ali <ashraf.ali.s@intel.com>;
>> Bibo Mao <maobibo@loongson.cn>; Feng, Bob C <bob.c.feng@intel.com>;
>> West, Catharine <catharine.west@intel.com>; Chao Li
>> <lichao@loongson.cn>; Chiu, Chasel <chasel.chiu@intel.com>; Duggapu,
>> Chinni B <chinni.b.duggapu@intel.com>; Duke Zhai <duke.zhai@amd.com>;
>> Aktas, Erdem <erdemaktas@google.com>; Eric Xing <eric.xing@amd.com>;
>> Gerd Hoffmann <kraxel@redhat.com>; Guo, Gua <gua.guo@intel.com>; Dong,
>> Guo <guo.dong@intel.com>; Igniculus Fu <igniculus.fu@amd.com>; Lu,
>> James <james.lu@intel.com>; Yao, Jiewen <jiewen.yao@intel.com>; Kelly
>> Steele <kelly.steele@intel.com>; Ken Yao <ken.yao@amd.com>; Leif
>> Lindholm <quic_llindhol@quicinc.com>; Liming Gao
>> <gaoliming@byosoft.com.cn>; Michael Roth <michael.roth@amd.com>; Xu,
>> Min M <min.m.xu@intel.com>; Desimone, Nathaniel L
>> <nathaniel.l.desimone@intel.com>; Paul Grimes <paul.grimes@amd.com>;
>> Kumar, Rahul R <rahul.r.kumar@intel.com>; Ni, Ray <ray.ni@intel.com>;
>> Rebecca Cran <rebecca@bsdio.com>; Chaganty, Rangasai V
>> <rangasai.v.chaganty@intel.com>; Sami Mujawar <sami.mujawar@arm.com>;
>> Rhodes, Sean <sean@starlabs.systems>; Zeng, Star <star.zeng@intel.com>;
>> Sunil V L <sunilvl@ventanamicro.com>; Mohapatra, Susovan
>> <susovan.mohapatra@intel.com>; Kuo, Ted <ted.kuo@intel.com>; Tom
>> Lendacky <thomas.lendacky@amd.com>; USER0FISH <libing1202@outlook.com>;
>> Xianglai li <lixianglai@loongson.cn>; Chen, Christine
>> <yuwei.chen@intel.com>; caiyuqing379 <caiyuqing_hz@outlook.com>; dahogn
>> <dahogn@hotmail.com>; meng-cz <mengcz1126@gmail.com>
>> Subject: Re: [edk2-devel] BaseTools/AutoGen: declare
>> ProcessLibraryConstructorList() for SEC modules
>>
>> On 2/8/24 17:40, Michael D Kinney wrote:
>>> Hi Laszlo,
>>>
>>> I need to review the proposed BaseTools/AutoGen change to see what
>> options
>>> are available for compatibility.
>>>
>>> My main concern is downstream consumers that may break immediately
>> with
>>> a change like this and we need a way for them to be informed and have
>>> time to update their components just like you outline a sequence to
>> update
>>> the edk2 repo components.
>>
>> Should AutoGen declare ProcessLibraryConstructorList() for a SEC module
>> if INF_VERSION >= 1.30?
>>
>> Or should we introduce a new macro in [Defines]?
>>
>> https://tianocore-docs.github.io/edk2-
>> InfSpecification/draft/2_inf_overview/24_[defines]_section.html
>>
>> "EDK II parsing utilities will use some of this section's information
>> for generating AutoGen.c and AutoGen.h files."
>>
>> I'd prefer (INF_VERSION >= 1.30) over a dedicated macro. We should
>> ensure, over time, that ProcessLibraryConstructorList() is declared by
>> default, for SEC modules. If that declaration depended on an explicit
>> new macro in [Defines], it would much less likely become the default.
>>
>> Laszlo
> 
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115907): https://edk2.groups.io/g/devel/message/115907
Mute This Topic: https://groups.io/mt/104210524/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  parent reply	other threads:[~2024-02-24 18:03 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-07  0:50 [edk2-devel] BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules Laszlo Ersek
2024-02-07  1:04 ` [edk2-devel] [PATCH 00/11] " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 01/11] OvmfPkg/Sec: Use correct prototype of ProcessLibraryConstructorList() Laszlo Ersek
2024-02-14 14:27     ` Ard Biesheuvel
2024-02-07  1:04   ` [edk2-devel] [PATCH 02/11] OvmfPkg/RiscVVirt/Sec: don't #include <Library/PeimEntryPoint.h> Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 03/11] BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 04/11] ArmPlatformPkg: remove SEC ProcessLibraryConstructorList() declarations Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 05/11] ArmVirtPkg: remove SEC ProcessLibraryConstructorList() declaration Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 06/11] EmulatorPkg: " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 07/11] IntelFsp2Pkg: " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 08/11] OvmfPkg/RiscVVirt: " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 09/11] OvmfPkg: " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 10/11] UefiCpuPkg: " Laszlo Ersek
2024-02-07  1:04   ` [edk2-devel] [PATCH 11/11] UefiPayloadPkg: " Laszlo Ersek
2024-02-07  1:09 ` [edk2-devel] [edk2-platforms PATCH 0/6] clean up SEC ProcessLibraryConstructorList() declarations Laszlo Ersek
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 1/6] ChachaniBoardPkg: remove SEC ProcessLibraryConstructorList() declaration Laszlo Ersek
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 2/6] BeagleBoardPkg: " Laszlo Ersek
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 3/6] QuarkPlatformPkg: " Laszlo Ersek
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 4/6] SimicsOpenBoardPkg: fix SEC ProcessLibraryConstructorList() prototype Laszlo Ersek
2024-02-09  0:07     ` Nate DeSimone
2024-02-09  9:24       ` Laszlo Ersek
2024-02-09 22:53         ` Nate DeSimone
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 5/6] LoongArchQemuPkg: " Laszlo Ersek
2024-02-19  2:21     ` Chao Li
2024-02-19 20:08       ` Laszlo Ersek
2024-02-07  1:09   ` [edk2-devel] [edk2-platforms PATCH 6/6] SG2042Pkg: clean up SEC ProcessLibraryConstructorList() declaration Laszlo Ersek
2024-02-14 14:25   ` [edk2-devel] [edk2-platforms PATCH 0/6] clean up SEC ProcessLibraryConstructorList() declarations Ard Biesheuvel
2024-02-07  1:16 ` [edk2-devel] BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules Michael D Kinney
2024-02-07 15:40   ` Laszlo Ersek
2024-02-08 16:40     ` Michael D Kinney
2024-02-15  7:57       ` Laszlo Ersek
2024-02-15 17:29         ` Michael D Kinney
2024-02-16 14:16           ` Laszlo Ersek
2024-02-16 17:21             ` Michael D Kinney
2024-02-24 18:02           ` Laszlo Ersek [this message]
2024-02-24 18:37           ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=997ccb2c-e374-b9c3-9031-c6cf37ec3b38@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox