On Wed, Aug 07, 2019 at 12:25:32PM +0800, Bob Feng wrote:
> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1875
> 
> Assign the Module AutoGen tasks into multiple
> sub process.
> 
> Cc: Liming Gao <liming....@intel.com>
> Signed-off-by: Bob Feng <bob.c.f...@intel.com>
> ---
>  .../Source/Python/AutoGen/AutoGenWorker.py    | 191 ++++++++++++++++++
>  BaseTools/Source/Python/AutoGen/DataPipe.py   |  17 +-
>  BaseTools/Source/Python/AutoGen/GenC.py       |   4 +-
>  .../Source/Python/AutoGen/ModuleAutoGen.py    |   2 +-
>  .../Source/Python/AutoGen/PlatformAutoGen.py  |  16 +-
>  .../Source/Python/AutoGen/WorkspaceAutoGen.py |   6 +-
>  BaseTools/Source/Python/build/build.py        | 125 ++++++++----
>  7 files changed, 306 insertions(+), 55 deletions(-)
>  create mode 100644 BaseTools/Source/Python/AutoGen/AutoGenWorker.py

I've bisected a regression building the ArmVirt architecture of
ArmVirtPkg/ArmVirtQemu.dsc to this commit.

$ build -a ARM -p ArmVirtPkg/ArmVirtQemu.dsc -t GCC49
[...]
"arm-linux-gnueabihf-gcc" -o 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.dll
 -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u _ModuleEntryPoint 
-Wl,-e,_ModuleEntryPoint,-Map,/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.map
 -z common-page-size=0x20 -Wl,--pic-veneer -Wl,--oformat=elf32-littlearm -z 
common-page-size=0x1000 
-Wl,--start-group,@/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/static_library_files.lst,--end-group
 -mthumb -march=armv7-a -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing 
-Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common -mlittle-endian 
-mabi=aapcs -fno-short-enums -funsigned-char -ffunction-sections 
-fdata-sections -fomit-frame-pointer -Wno-address -mthumb -mfloat-abi=soft 
-fno-pic -fno-pie -fstack-protector -mword-relocations -O0 
-DDISABLE_NEW_DEPRECATED_INTERFACES 
-Wl,--script=/home/dannf/git/edk2.debug/BaseTools/Scripts/GccBase.lds 
-Wl,--defsym=PECOFF_HEADER_SIZE=0x220
/usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bin/ld:
 error: source object 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint/OUTPUT/UefiDriverEntryPoint.lib(DriverEntryPoint.obj)
 has EABI version 5, but target 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.dll
 has EABI version 0
/usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bin/ld:
 failed to merge target specific data of file 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint/OUTPUT/UefiDriverEntryPoint.lib(DriverEntryPoint.obj)
/usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bin/ld:
 error: source object 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/LogoDxe.lib(AutoGen.obj)
 has EABI version 5, but target 
/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.dll
 has EABI version 0
[...]

It looks like this maybe a side-effect of the ordering of the entries in
static_library_files.list. Previous to this commit, LogoDxehii.lib
would appear near the end of the file - now it is near the beginning.
Moving it back to the end of the file allows the linking to continue.

Also, is it expected that this does not report being an EABI5 object?
$ file 
Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/LogoDxehii.lib
Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/LogoDxehii.lib:
 ELF 32-bit LSB relocatable, ARM, version 1 (ARM), not stripped

 -dann

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#47883): https://edk2.groups.io/g/devel/message/47883
Mute This Topic: https://groups.io/mt/32779332/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to