From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=none, err=SPF record not found (domain: canonical.com, ip: 91.189.89.112, mailfrom: dann.frazier@canonical.com) Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by groups.io with SMTP; Mon, 23 Sep 2019 18:18:42 -0700 Received: from mail-io1-f70.google.com ([209.85.166.70]) by youngberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iCZTU-0003is-1y for devel@edk2.groups.io; Tue, 24 Sep 2019 01:18:40 +0000 Received: by mail-io1-f70.google.com with SMTP id t11so223621ioc.13 for ; Mon, 23 Sep 2019 18:18:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=+or11GbfengYbKigqc2hkAvrawPaiD38EDgImjQ30IY=; b=pXNCteFiYEu89a+wxDd/cbp3hPRAiWJMSZdefYW+52uZfjcDPhHH7YzB+DSs+odVJ3 f6+jtCCkaDY/TQTing7HKZBQLv0ZhP7Y2e3Xp9JXNZu/IS3EkJp0A51L+5TYIHFM5dEV l3s4UlM1C5ZI6wpHLR+s3CsXTBHWH2n46zoHJHZ4aMg105Rfpk27CjXCx1UCU+mty3Ky KANsgFgVjNZA5Hmh3FeX56kHM+vExDoc/iDAuZdBfN35XpgY58WIkYlVyiAp31pkgNBx ZE66KfpSdVl8SNBlTUZCF7Z+qI/uwG8Kne70ueUqUcdKIDLtYxfDnyT8G+sFsYUOlB01 qK9Q== X-Gm-Message-State: APjAAAXp3B13X8IMI05N3crBbHXG4og4Dauru7AIg1wsWHJeRQA0DK1X JDt/n4eYoCQfInJMYa8nbJRWuATlRIrZlsBo7vpfce8qsSlCPZSIpCHUVx1HiUBu8z4IAXIPqLb AM8QvIzjZ8vq4Xi9/ybTXns4MxGVRTe0= X-Received: by 2002:a6b:8f0e:: with SMTP id r14mr539343iod.262.1569287918740; Mon, 23 Sep 2019 18:18:38 -0700 (PDT) X-Google-Smtp-Source: APXvYqwpHZ4QZ8Wu94YBZATS5mO8sDD0QOcYC6hA4dqUc+u2UnkoPrjXjZEgqO/EXzFETQ2OgaYTcA== X-Received: by 2002:a6b:8f0e:: with SMTP id r14mr539314iod.262.1569287918404; Mon, 23 Sep 2019 18:18:38 -0700 (PDT) Received: from xps13.canonical.com (c-71-56-235-36.hsd1.co.comcast.net. [71.56.235.36]) by smtp.gmail.com with ESMTPSA id p20sm566025iod.43.2019.09.23.18.18.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Sep 2019 18:18:37 -0700 (PDT) Date: Mon, 23 Sep 2019 19:18:36 -0600 From: "dann frazier" To: devel@edk2.groups.io, bob.c.feng@intel.com Cc: Liming Gao Subject: Re: [edk2-devel] [Patch 05/10 V8] BaseTools: Enable Multiple Process AutoGen Message-ID: <20190924011836.GA17237@xps13.dannf> References: <20190807042537.11928-1-bob.c.feng@intel.com> <20190807042537.11928-6-bob.c.feng@intel.com> MIME-Version: 1.0 In-Reply-To: <20190807042537.11928-6-bob.c.feng@intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Aug 07, 2019 at 12:25:32PM +0800, Bob Feng wrote: > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D1875 >=20 > Assign the Module AutoGen tasks into multiple > sub process. >=20 > Cc: Liming Gao > Signed-off-by: Bob Feng > --- > .../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-A= RM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.dll -Wl,--emit-r= elocs -nostdlib -Wl,--gc-sections -u _ModuleEntryPoint -Wl,-e,_ModuleEntryP= oint,-Map,/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/= MdeModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.map -z common-page-size=3D0x20 -Wl,= --pic-veneer -Wl,--oformat=3Delf32-littlearm -z common-page-size=3D0x1000 -= Wl,--start-group,@/home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GC= C49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/static_library_files.lst,--end-gro= up -mthumb -march=3Darmv7-a -g -Os -fshort-wchar -fno-builtin -fno-strict-a= liasing -Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common -mli= ttle-endian -mabi=3Daapcs -fno-short-enums -funsigned-char -ffunction-secti= ons -fdata-sections -fomit-frame-pointer -Wno-address -mthumb -mfloat-abi= =3Dsoft -fno-pic -fno-pie -fstack-protector -mword-relocations -O0 -DDISABL= E_NEW_DEPRECATED_INTERFACES -Wl,--script=3D/home/dannf/git/edk2.debug/BaseT= ools/Scripts/GccBase.lds -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0x220 /usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bi= n/ld: error: source object /home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM= /DEBUG_GCC49/ARM/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint/O= UTPUT/UefiDriverEntryPoint.lib(DriverEntryPoint.obj) has EABI version 5, bu= t target /home/dannf/git/edk2.debug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/M= deModulePkg/Logo/LogoDxe/DEBUG/LogoDxe.dll has EABI version 0 /usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bi= n/ld: failed to merge target specific data of file /home/dannf/git/edk2.deb= ug/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdePkg/Library/UefiDriverEntryPoin= t/UefiDriverEntryPoint/OUTPUT/UefiDriverEntryPoint.lib(DriverEntryPoint.obj) /usr/lib/gcc-cross/arm-linux-gnueabihf/9/../../../../arm-linux-gnueabihf/bi= n/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 v= ersion 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/OUTP= UT/LogoDxehii.lib Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Logo/LogoDxe/OUTPUT/Logo= Dxehii.lib: ELF 32-bit LSB relocatable, ARM, version 1 (ARM), not stripped -dann