[edk2-devel] [PATCH v2 0/8] BaseTools: remove duplicate includes.

Gerd Hoffmann posted 8 patches 1 year ago
Failed in applying to current master (apply log)
There is a newer version of this series
BaseTools/Source/C/Common/WinNtInclude.h      |  66 --
BaseTools/Source/C/EfiRom/EfiRom.h            |  14 +-
.../Source/C/Include/AArch64/ProcessorBind.h  | 148 ----
.../Source/C/Include/Arm/ProcessorBind.h      | 147 ----
.../Source/C/Include/Ia32/ProcessorBind.h     | 155 ----
.../Source/C/Include/IndustryStandard/Acpi.h  | 117 ---
.../C/Include/IndustryStandard/Acpi1_0.h      | 285 -------
.../C/Include/IndustryStandard/Acpi2_0.h      | 520 ------------
.../C/Include/IndustryStandard/Acpi3_0.h      | 668 ---------------
.../C/Include/IndustryStandard/Bluetooth.h    |  56 --
.../C/Include/IndustryStandard/EfiPci.h       |  51 --
...emoryMappedConfigurationSpaceAccessTable.h |  39 -
.../C/Include/IndustryStandard/PeImage.h      | 789 ------------------
.../Source/C/Include/IndustryStandard/pci22.h | 536 ------------
.../Source/C/Include/IndustryStandard/pci23.h |  18 -
.../Source/C/Include/IndustryStandard/pci30.h |  38 -
.../C/Include/LoongArch64/ProcessorBind.h     |  80 --
.../Source/C/Include/Protocol/DevicePath.h    |   2 +-
.../Source/C/Include/RiscV64/ProcessorBind.h  |  85 --
.../Source/C/Include/X64/ProcessorBind.h      | 183 ----
MdePkg/Include/IndustryStandard/PeImage.h     |  31 +
BaseTools/Source/C/Common/BasePeCoff.c        |  51 +-
BaseTools/Source/C/Common/Decompress.c        |   1 +
BaseTools/Source/C/GenFv/GenFvInternalLib.c   |  43 +-
BaseTools/Source/C/GenFw/Elf32Convert.c       |   8 +-
BaseTools/Source/C/GenFw/Elf64Convert.c       |  12 +-
BaseTools/Source/C/GenFw/ElfConvert.c         |   2 -
BaseTools/Source/C/GenFw/GenFw.c              |  18 +-
BaseTools/Source/C/Makefiles/header.makefile  |  15 +-
BaseTools/Source/C/Makefiles/ms.common        |  13 +-
30 files changed, 112 insertions(+), 4079 deletions(-)
delete mode 100644 BaseTools/Source/C/Common/WinNtInclude.h
delete mode 100644 BaseTools/Source/C/Include/AArch64/ProcessorBind.h
delete mode 100644 BaseTools/Source/C/Include/Arm/ProcessorBind.h
delete mode 100644 BaseTools/Source/C/Include/Ia32/ProcessorBind.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi1_0.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi2_0.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi3_0.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Bluetooth.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/EfiPci.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/PeImage.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci22.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci23.h
delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci30.h
delete mode 100644 BaseTools/Source/C/Include/LoongArch64/ProcessorBind.h
delete mode 100644 BaseTools/Source/C/Include/RiscV64/ProcessorBind.h
delete mode 100644 BaseTools/Source/C/Include/X64/ProcessorBind.h
[edk2-devel] [PATCH v2 0/8] BaseTools: remove duplicate includes.
Posted by Gerd Hoffmann 1 year ago
There is alot of code duplication between BaseTools and MdePkg (and also
MdeModulePkg).  This patch series starts reducing this by removing some
header files.  BaseTools are switched over to use the include files in
MdePkg instead.  It also cleans up some (apparently) obsolete code and
adapts BaseTools code in a few places to work with the MdePkg version of
the include files.

v2 changes:
 - rebase to latest master, resolve conflicts.
 - pick up reviews and acks.

take care,
  Gerd

Gerd Hoffmann (8):
  BaseTools: remove WinNtInclude.h
  BaseTools: remove duplicate includes: <arch>/ProcessorBind.h
  BaseTools: remove duplicate includes: IndustryStandard/Acpi*.h
  MdePkg/PeImage.h: add bits from BaseTools version
  BaseTools: drop IMAGE_FILE_MACHINE_ARM hacks
  BaseTools: switch from EFI_IMAGE_MACHINE_* to IMAGE_FILE_MACHINE_*
  BaseTools: remove duplicate includes: IndustryStandard/PeImage.h
  BaseTools: remove duplicate includes: IndustryStandard/*.h

 BaseTools/Source/C/Common/WinNtInclude.h      |  66 --
 BaseTools/Source/C/EfiRom/EfiRom.h            |  14 +-
 .../Source/C/Include/AArch64/ProcessorBind.h  | 148 ----
 .../Source/C/Include/Arm/ProcessorBind.h      | 147 ----
 .../Source/C/Include/Ia32/ProcessorBind.h     | 155 ----
 .../Source/C/Include/IndustryStandard/Acpi.h  | 117 ---
 .../C/Include/IndustryStandard/Acpi1_0.h      | 285 -------
 .../C/Include/IndustryStandard/Acpi2_0.h      | 520 ------------
 .../C/Include/IndustryStandard/Acpi3_0.h      | 668 ---------------
 .../C/Include/IndustryStandard/Bluetooth.h    |  56 --
 .../C/Include/IndustryStandard/EfiPci.h       |  51 --
 ...emoryMappedConfigurationSpaceAccessTable.h |  39 -
 .../C/Include/IndustryStandard/PeImage.h      | 789 ------------------
 .../Source/C/Include/IndustryStandard/pci22.h | 536 ------------
 .../Source/C/Include/IndustryStandard/pci23.h |  18 -
 .../Source/C/Include/IndustryStandard/pci30.h |  38 -
 .../C/Include/LoongArch64/ProcessorBind.h     |  80 --
 .../Source/C/Include/Protocol/DevicePath.h    |   2 +-
 .../Source/C/Include/RiscV64/ProcessorBind.h  |  85 --
 .../Source/C/Include/X64/ProcessorBind.h      | 183 ----
 MdePkg/Include/IndustryStandard/PeImage.h     |  31 +
 BaseTools/Source/C/Common/BasePeCoff.c        |  51 +-
 BaseTools/Source/C/Common/Decompress.c        |   1 +
 BaseTools/Source/C/GenFv/GenFvInternalLib.c   |  43 +-
 BaseTools/Source/C/GenFw/Elf32Convert.c       |   8 +-
 BaseTools/Source/C/GenFw/Elf64Convert.c       |  12 +-
 BaseTools/Source/C/GenFw/ElfConvert.c         |   2 -
 BaseTools/Source/C/GenFw/GenFw.c              |  18 +-
 BaseTools/Source/C/Makefiles/header.makefile  |  15 +-
 BaseTools/Source/C/Makefiles/ms.common        |  13 +-
 30 files changed, 112 insertions(+), 4079 deletions(-)
 delete mode 100644 BaseTools/Source/C/Common/WinNtInclude.h
 delete mode 100644 BaseTools/Source/C/Include/AArch64/ProcessorBind.h
 delete mode 100644 BaseTools/Source/C/Include/Arm/ProcessorBind.h
 delete mode 100644 BaseTools/Source/C/Include/Ia32/ProcessorBind.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi1_0.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi2_0.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi3_0.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Bluetooth.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/EfiPci.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/PeImage.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci22.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci23.h
 delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci30.h
 delete mode 100644 BaseTools/Source/C/Include/LoongArch64/ProcessorBind.h
 delete mode 100644 BaseTools/Source/C/Include/RiscV64/ProcessorBind.h
 delete mode 100644 BaseTools/Source/C/Include/X64/ProcessorBind.h

-- 
2.39.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#102837): https://edk2.groups.io/g/devel/message/102837
Mute This Topic: https://groups.io/mt/98200420/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH v2 0/8] BaseTools: remove duplicate includes.
Posted by Rebecca Cran 1 year ago
BaseTools fails to build on my system (Ubuntu 22.04.2 with g++ 11.3.0) 
after applying the patches.


g++ -o ../bin/VfrCompile  AParser.o DLexerBase.o ATokenBuffer.o 
EfiVfrParser.o VfrLexer.o VfrSyntax.o VfrFormPkg.o VfrError.o 
VfrUtilityLib.o VfrCompiler.o -L../libs -lCommon
/usr/bin/ld: VfrFormPkg.o: in function 
`CFormPkg::AdjustDynamicInsertOpcode(char*, char*, unsigned char)':
VfrFormPkg.cpp:(.text+0x12e0): undefined reference to `__assert_fail'
/usr/bin/ld: VfrFormPkg.cpp:(.text+0x160c): undefined reference to 
`__assert_fail'
/usr/bin/ld: VfrFormPkg.cpp:(.text+0x168c): undefined reference to 
`__assert_fail'
/usr/bin/ld: VfrFormPkg.cpp:(.text+0x16d8): undefined reference to 
`__assert_fail'
/usr/bin/ld: VfrFormPkg.o: in function `CIfrObj::CIfrObj(unsigned char, 
char**, unsigned char, unsigned char)':
VfrFormPkg.cpp:(.text+0x27a5): undefined reference to `__assert_fail'
/usr/bin/ld: VfrFormPkg.o:VfrFormPkg.cpp:(.text+0x3012): more undefined 
references to `__assert_fail' follow
/usr/bin/ld: VfrUtilityLib.o: in function 
`CVfrStringDB::GetVarStoreNameFormStringId(unsigned short)':
VfrUtilityLib.cpp:(.text+0x662f): undefined reference to `fseek'
/usr/bin/ld: VfrUtilityLib.cpp:(.text+0x6646): undefined reference to 
`fseek'
/usr/bin/ld: VfrCompiler.o: in function `CVfrCompiler::GenRecordListFile()':
VfrCompiler.cpp:(.text+0x18ed): undefined reference to `feof'
/usr/bin/ld: VfrLexer.o: in function `VfrLexer::nextTokenType()':
VfrLexer.cpp:(.text+0x13e3): undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function 
`InternalAllocatePool':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:685: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function 
`ReadUnaligned64':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:1060: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function 
`WriteUnaligned64':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:1071: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function 
`InternalAllocateCopyPool':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:1132: 
undefined reference to `__assert_fail'
/usr/bin/ld: 
../libs/libCommon.a(CommonLib.o):/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:1903: 
more undefined references to `__assert_fail' follow
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function `GetFileImage':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:168: 
undefined reference to `fseek'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:193: 
undefined reference to `fseek'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function `_filelength':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:475: 
undefined reference to `fstat'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function `StrnLenS':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:657: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function `StrLen':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:741: 
undefined reference to `__assert_fail'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:742: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../libs/libCommon.a(CommonLib.o): in function 
`StrDecimalToUint64S':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:846: 
undefined reference to `__assert_fail'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:840: 
undefined reference to `__assert_fail'
/usr/bin/ld: 
../libs/libCommon.a(CommonLib.o):/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/CommonLib.c:839: 
more undefined references to `__assert_fail' follow
/usr/bin/ld: ../libs/libCommon.a(ParseInf.o): in function 
`FindSectionInStream':
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/ParseInf.c:618: 
undefined reference to `fseek'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/ParseInf.c:624: 
undefined reference to `feof'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/ParseInf.c:613: 
undefined reference to `__assert_fail'
/usr/bin/ld: 
/home/bcran/src/uefi/edk2/BaseTools/Source/C/Common/ParseInf.c:612: 
undefined reference to `__assert_fail'
/usr/bin/ld: ../bin/VfrCompile: hidden symbol `__assert_fail' isn't defined
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[2]: *** [GNUmakefile:45: ../bin/VfrCompile] Error 1
make[2]: Leaving directory 
'/home/bcran/src/uefi/edk2/BaseTools/Source/C/VfrCompile'
make[1]: *** [GNUmakefile:79: VfrCompile] Error 2
make[1]: Leaving directory '/home/bcran/src/uefi/edk2/BaseTools/Source/C'
make: *** [GNUmakefile:19: Source/C] Error 2
make: Leaving directory '/home/bcran/src/uefi/edk2/BaseTools'


-- 

Rebecca Cran


On 4/11/23 9:45 AM, Gerd Hoffmann wrote:
> There is alot of code duplication between BaseTools and MdePkg (and also
> MdeModulePkg).  This patch series starts reducing this by removing some
> header files.  BaseTools are switched over to use the include files in
> MdePkg instead.  It also cleans up some (apparently) obsolete code and
> adapts BaseTools code in a few places to work with the MdePkg version of
> the include files.
>
> v2 changes:
>   - rebase to latest master, resolve conflicts.
>   - pick up reviews and acks.
>
> take care,
>    Gerd
>
> Gerd Hoffmann (8):
>    BaseTools: remove WinNtInclude.h
>    BaseTools: remove duplicate includes: <arch>/ProcessorBind.h
>    BaseTools: remove duplicate includes: IndustryStandard/Acpi*.h
>    MdePkg/PeImage.h: add bits from BaseTools version
>    BaseTools: drop IMAGE_FILE_MACHINE_ARM hacks
>    BaseTools: switch from EFI_IMAGE_MACHINE_* to IMAGE_FILE_MACHINE_*
>    BaseTools: remove duplicate includes: IndustryStandard/PeImage.h
>    BaseTools: remove duplicate includes: IndustryStandard/*.h
>
>   BaseTools/Source/C/Common/WinNtInclude.h      |  66 --
>   BaseTools/Source/C/EfiRom/EfiRom.h            |  14 +-
>   .../Source/C/Include/AArch64/ProcessorBind.h  | 148 ----
>   .../Source/C/Include/Arm/ProcessorBind.h      | 147 ----
>   .../Source/C/Include/Ia32/ProcessorBind.h     | 155 ----
>   .../Source/C/Include/IndustryStandard/Acpi.h  | 117 ---
>   .../C/Include/IndustryStandard/Acpi1_0.h      | 285 -------
>   .../C/Include/IndustryStandard/Acpi2_0.h      | 520 ------------
>   .../C/Include/IndustryStandard/Acpi3_0.h      | 668 ---------------
>   .../C/Include/IndustryStandard/Bluetooth.h    |  56 --
>   .../C/Include/IndustryStandard/EfiPci.h       |  51 --
>   ...emoryMappedConfigurationSpaceAccessTable.h |  39 -
>   .../C/Include/IndustryStandard/PeImage.h      | 789 ------------------
>   .../Source/C/Include/IndustryStandard/pci22.h | 536 ------------
>   .../Source/C/Include/IndustryStandard/pci23.h |  18 -
>   .../Source/C/Include/IndustryStandard/pci30.h |  38 -
>   .../C/Include/LoongArch64/ProcessorBind.h     |  80 --
>   .../Source/C/Include/Protocol/DevicePath.h    |   2 +-
>   .../Source/C/Include/RiscV64/ProcessorBind.h  |  85 --
>   .../Source/C/Include/X64/ProcessorBind.h      | 183 ----
>   MdePkg/Include/IndustryStandard/PeImage.h     |  31 +
>   BaseTools/Source/C/Common/BasePeCoff.c        |  51 +-
>   BaseTools/Source/C/Common/Decompress.c        |   1 +
>   BaseTools/Source/C/GenFv/GenFvInternalLib.c   |  43 +-
>   BaseTools/Source/C/GenFw/Elf32Convert.c       |   8 +-
>   BaseTools/Source/C/GenFw/Elf64Convert.c       |  12 +-
>   BaseTools/Source/C/GenFw/ElfConvert.c         |   2 -
>   BaseTools/Source/C/GenFw/GenFw.c              |  18 +-
>   BaseTools/Source/C/Makefiles/header.makefile  |  15 +-
>   BaseTools/Source/C/Makefiles/ms.common        |  13 +-
>   30 files changed, 112 insertions(+), 4079 deletions(-)
>   delete mode 100644 BaseTools/Source/C/Common/WinNtInclude.h
>   delete mode 100644 BaseTools/Source/C/Include/AArch64/ProcessorBind.h
>   delete mode 100644 BaseTools/Source/C/Include/Arm/ProcessorBind.h
>   delete mode 100644 BaseTools/Source/C/Include/Ia32/ProcessorBind.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi1_0.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi2_0.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Acpi3_0.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/Bluetooth.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/EfiPci.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/PeImage.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci22.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci23.h
>   delete mode 100644 BaseTools/Source/C/Include/IndustryStandard/pci30.h
>   delete mode 100644 BaseTools/Source/C/Include/LoongArch64/ProcessorBind.h
>   delete mode 100644 BaseTools/Source/C/Include/RiscV64/ProcessorBind.h
>   delete mode 100644 BaseTools/Source/C/Include/X64/ProcessorBind.h
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#102847): https://edk2.groups.io/g/devel/message/102847
Mute This Topic: https://groups.io/mt/98200420/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-