]> git.proxmox.com Git - mirror_edk2.git/commit
BaseTools/GenFw: Enhance GenFw to support PRM GCC build
authorHuang, Li-Xia <lisa.huang@intel.com>
Mon, 14 Mar 2022 05:27:21 +0000 (13:27 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Wed, 16 Mar 2022 07:48:26 +0000 (07:48 +0000)
commit414cd2a4d536b444acee3fcdbe33bd0c8ef9819b
treeddfe1c9722fbc8ca870ca69147f0abff6c60d18a
parentc8ea48bdf95532f9a3a4c39a154c09988566901f
BaseTools/GenFw: Enhance GenFw to support PRM GCC build

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3802

Since PRM module needs to support export table in PE-COFF, we'll
enhance GenFw tool to support this.

Add one export flag in GenFw tool. If export flag is set:
Step1: Scan ELF symbol table based on PRM module descriptor to get
descriptor offset address;
Step2: Find PRM handlers number and name in COFF file based on the
address from step1;
Step3: Write PRM info such as handler name and export RVA into COFF
export table.

PRM option currently only supports DXE RUNTIME driver and X64 arch.

Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Signed-off-by: Lixia Huang <lisa.huang@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
BaseTools/Source/C/GenFw/Elf64Convert.c
BaseTools/Source/C/GenFw/ElfConvert.c
BaseTools/Source/C/GenFw/ElfConvert.h
BaseTools/Source/C/GenFw/GenFw.c
BaseTools/Source/C/Include/IndustryStandard/PeImage.h