From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by mx.groups.io with SMTP id smtpd.web10.51413.1682343222190316937 for ; Mon, 24 Apr 2023 06:33:42 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=@bsdio.com header.s=fm1 header.b=ooBN5GGv; spf=pass (domain: bsdio.com, ip: 66.111.4.25, mailfrom: rebecca@bsdio.com) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 7EC975C01AB; Mon, 24 Apr 2023 09:33:41 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Mon, 24 Apr 2023 09:33:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdio.com; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1682343221; x=1682429621; bh=J8zaDpgct+aHKKOWnTCXDUGJTmCskuIwhgK m0UxP/+k=; b=ooBN5GGvbYN5B682d2+rVSc6UpGfU/RLJLB3SqHvUPIOthIZz4l tsUzKOzeoHc1HUePB7egVHIfWVZzlYVHyVf29tlDjfy97q+yzZaWmoNTZbWqevb7 7zb3pHmmu/ch0nDcwswRxmYnEZxgmN1iBcSiOqkcD+2W+HnDma30gdQjiA5c/6+p PkP7VGzM/NsRbldtkb4oSpaG2XdX+0aAKtGxM7oGHSzQXZsea4KVK1G9ePD5jZcp b3gKBuTK90fYEC1eNK6hZpHJL/4N1j2bfoQc48B+KCOF5H3aZx08Kn91LwCozWb1 ml2kh/9HIeL6IFl274fYxp51iadpxtTYLaA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1682343221; x=1682429621; bh=J8zaDpgct+aHKKOWnTCXDUGJTmCskuIwhgK m0UxP/+k=; b=XyYoddT5xphIgVxHx2lQk5IMCy/fRnMwKbpJNknbh6qgqliXPj1 uyK2GtSn//ayUmBDYXtgIUHAiK96vaqkUUY+gYLrPtZIBPdzq3ftwTLseVeTzEDj hvv74NVGgZgMDP5OMl7dXpJUAGhoKy4x+j9F1QFFKTqAlMK8/O5DoO+yNiMF+CR0 Ajf7nQqA8AXYB3jKrvZgOQHIIM/dcntJ4HHhV6FeNENxRrtLl0Uknswg1JX4B+S7 fCjm9FeCTdwiD4s9KvvwCSJYjreLQstwmQWN/dRFy6JQgBnV+LLz4f2Uy2cMWqch UV7ndl4A1qCCQGcOuVJXqrdCAtwFvhLfXvQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfedutddgieehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpeftvggs vggttggrucevrhgrnhcuoehrvggsvggttggrsegsshguihhordgtohhmqeenucggtffrrg htthgvrhhnpeeihfdtkedtudeiueejudfhkeegveeuffeuvdetuedttdfhvefhheeuheeh udeileenucffohhmrghinheprggtphhitggrrdhorhhgpdhnrghsmhdruhhspdhllhhvmh drohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhm pehrvggsvggttggrsegsshguihhordgtohhm X-ME-Proxy: Feedback-ID: i5b994698:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 24 Apr 2023 09:33:38 -0400 (EDT) Message-ID: <3c792f9e-6288-2731-6208-6a01ab578d31@bsdio.com> Date: Mon, 24 Apr 2023 07:33:38 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [PATCH v5 01/13] BaseTools,CryptoPkg: Update CLANGDWARF, remove CLANG 35/38 toolchains To: "Feng, Bob C" , "devel@edk2.groups.io" , "Gao, Liming" , "Chen, Christine" , "Kinney, Michael D" , Michael Kubacki , Sean Brogan , "Chiu, Chasel" , "Desimone, Nathaniel L" , "Zeng, Star" , Andrew Fish Cc: "Ni, Ray" , Leif Lindholm , "Liu, Zhiguang" , "Wang, Jian J" , "Lu, Xiaoyu1" , "Jiang, Guomin" , "Guo, Gua" , Ard Biesheuvel , Pedro Falcato , Gerd Hoffmann , =?UTF-8?Q?Marvin_H=c3=a4user?= References: <20230421171508.73336-1-rebecca@bsdio.com> <20230421171508.73336-2-rebecca@bsdio.com> From: "Rebecca Cran" In-Reply-To: Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Thanks, I've been able to reproduce the failure. Since it's a simple fix and is independent of my other changes, I'd prefer to avoid making this patch series larger and instead fix this first. I'll send out a patch in a few minutes. -- Rebecca Cran On 4/24/23 05:28, Feng, Bob C wrote: > Hi Rebecca, > > With this patch, the UniversalPayload will be built fail on windows. > It can be reproduced with this command on windows. > > edksetup > python UefiPayloadPkg\UniversalPayloadBuild.py -t VS2019 > > But the root cause is a bug in build_rule.template. > Under the section, 2 $(OBJCOPY) should be wrapped by "". Could you please also update build_rule.template in this patch? > > --------------------------- > > [Dynamic-Library-File] > > ?.dll > > > $(OUTPUT_DIR)(+)$(MODULE_NAME).efi > $(OUTPUT_DIR)(+)$(MODULE_NAME).map > > > "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS) > $(CP) ${dst} $(DEBUG_DIR) > $(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi > -$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR) > -$(CP) $(DEBUG_DIR)(+)*.pdb $(OUTPUT_DIR) > > $(CP) ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).debug > $(OBJCOPY) $(OBJCOPY_STRIPFLAG) ${src} > > # > #The below 2 lines are only needed for UNIXGCC tool chain, which generates PE image directly > # > -$(OBJCOPY) $(OBJCOPY_ADDDEBUGFLAG) ${src} > -$(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).debug $(BIN_DIR)(+)$(MODULE_NAME_GUID).debug > > "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS) > $(CP) ${dst} $(DEBUG_DIR) > $(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi > -$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR) > > > Thanks, > Bob > > -----Original Message----- > From: Rebecca Cran > Sent: Saturday, April 22, 2023 1:15 AM > To: devel@edk2.groups.io; Gao, Liming ; Feng, Bob C ; Chen, Christine ; Kinney, Michael D ; Michael Kubacki ; Sean Brogan ; Chiu, Chasel ; Desimone, Nathaniel L ; Zeng, Star ; Andrew Fish > Cc: Rebecca Cran ; Ni, Ray ; Leif Lindholm ; Liu, Zhiguang ; Wang, Jian J ; Lu, Xiaoyu1 ; Jiang, Guomin ; Guo, Gua ; Ard Biesheuvel ; Pedro Falcato ; Gerd Hoffmann ; Marvin Häuser > Subject: [PATCH v5 01/13] BaseTools,CryptoPkg: Update CLANGDWARF, remove CLANG 35/38 toolchains > > Update the CLANGDWARF toolchain definition in tools_def.template with the > settings from CLANG38, and delete the CLANG35 and CLANG38 toolchains. > > The CLANG35 and CLANG38 toolchains were added for compatibility with > ARM's proprietary clang-based toolchain. Things have since moved on, and > with the latest clang version being 16.0.0, versions 3.5 and 3.9 are > obsolete and can be removed. > > Update CryptoPkg: Add CLANGDWARF and remove CLANG35 and CLANG38 compiler flags > > With the removal of CLANG35 and CLANG38 and the update of the CLANGDWARF > toolchain definition in Conf/tools_def.txt update the compiler flags in > BaseCryptLib and OpensslLib. > > Signed-off-by: Rebecca Cran > Reviewed-by: Liming Gao > --- > CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf | 3 +-- > CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf | 3 +-- > CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf | 3 +-- > CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf | 3 +-- > CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf | 3 +-- > CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf | 3 +-- > CryptoPkg/Library/OpensslLib/OpensslLib.inf | 3 +-- > CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf | 3 +-- > CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 3 +-- > CryptoPkg/Library/OpensslLib/OpensslLibFull.inf | 3 +-- > CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf | 3 +-- > BaseTools/Conf/tools_def.template | 471 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ > 12 files changed, 200 insertions(+), 304 deletions(-) > > diff --git a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf > index 5be1724f0852..d99337a9ea39 100644 > --- a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf > @@ -110,8 +110,7 @@ [BuildOptions] > # > # suppress the following warnings so we do not break the build with warnings-as-errors: > # > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > > XCODE:*_*_*_CC_FLAGS = -std=c99 > diff --git a/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf > index 66261138a00b..5203941c75c1 100644 > --- a/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf > @@ -97,8 +97,7 @@ [BuildOptions] > # > # suppress the following warnings so we do not break the build with warnings-as-errors: > # > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > > XCODE:*_*_*_CC_FLAGS = -std=c99 > diff --git a/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf > index 07dbc0e7a8bd..ea64d2aa72a9 100644 > --- a/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf > @@ -106,8 +106,7 @@ [BuildOptions] > # > # suppress the following warnings so we do not break the build with warnings-as-errors: > # > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > > XCODE:*_*_*_CC_FLAGS = -std=c99 > diff --git a/CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf > index 4ad59b7bbc59..426cab2c5c8f 100644 > --- a/CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf > @@ -81,8 +81,7 @@ [BuildOptions] > # > # suppress the following warnings so we do not break the build with warnings-as-errors: > # > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > > XCODE:*_*_*_CC_FLAGS = -std=c99 > diff --git a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf > index ab1993087167..df345a8996e0 100644 > --- a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf > @@ -105,6 +105,5 @@ [BuildOptions] > > XCODE:*_*_*_CC_FLAGS = -mmmx -msse -std=c99 > > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > diff --git a/CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf > index 80261794470f..1f0f11c22cc5 100644 > --- a/CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf > +++ b/CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf > @@ -78,8 +78,7 @@ [BuildOptions] > # > # suppress the following warnings so we do not break the build with warnings-as-errors: > # > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types > > XCODE:*_*_*_CC_FLAGS = -std=c99 > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf > index 86a00b1c4b2a..003e17cb8e17 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf > @@ -639,8 +639,7 @@ [BuildOptions] > GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable -Wno-error=format > GCC:*_*_RISCV64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > GCC:*_*_LOONGARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize > # Revisit after switching to 3.0 branch > GCC:*_GCC5_*_CC_FLAGS = -Wno-unused-but-set-variable > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf b/CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf > index 2e4f95909b51..dded0b66806b 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf > @@ -687,8 +687,7 @@ [BuildOptions] > # > GCC:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) $(OPENSSL_FLAGS_CONFIG) -Wno-error=maybe-uninitialized -Wno-error=unused-but-set-variable > GCC:*_*_X64_CC_FLAGS = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) $(OPENSSL_FLAGS_CONFIG) -Wno-error=maybe-uninitialized -Wno-error=format -Wno-format -Wno-error=unused-but-set-variable -DNO_MSABI_VA_FUNCS > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize > # Revisit after switching to 3.0 branch > GCC:*_GCC5_*_CC_FLAGS = -Wno-unused-but-set-variable > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > index 637d4769e8ca..523d766f6be0 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > @@ -589,8 +589,7 @@ [BuildOptions] > GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable -Wno-error=format > GCC:*_*_RISCV64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > GCC:*_*_LOONGARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize > # Revisit after switching to 3.0 branch > GCC:*_GCC5_*_CC_FLAGS = -Wno-unused-but-set-variable > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibFull.inf b/CryptoPkg/Library/OpensslLib/OpensslLibFull.inf > index c5f90221fc66..9baf0cbfb42c 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLibFull.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibFull.inf > @@ -694,8 +694,7 @@ [BuildOptions] > GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable -Wno-error=format > GCC:*_*_RISCV64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > GCC:*_*_LOONGARCH64_CC_FLAGS = $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-format -Wno-error=unused-but-set-variable > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize > # Revisit after switching to 3.0 branch > GCC:*_GCC5_*_CC_FLAGS = -Wno-unused-but-set-variable > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf b/CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf > index 076295244a2a..beb8e6986a4a 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf > @@ -742,8 +742,7 @@ [BuildOptions] > # > GCC:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) $(OPENSSL_FLAGS_CONFIG) -Wno-error=maybe-uninitialized -Wno-error=unused-but-set-variable > GCC:*_*_X64_CC_FLAGS = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) $(OPENSSL_FLAGS_CONFIG) -Wno-error=maybe-uninitialized -Wno-error=format -Wno-format -Wno-error=unused-but-set-variable -DNO_MSABI_VA_FUNCS > - GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > - GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > + GCC:*_CLANGDWARF_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized > GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize > # Revisit after switching to 3.0 branch > GCC:*_GCC5_*_CC_FLAGS = -Wno-unused-but-set-variable > diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template > index 9a5c11f6a385..06154dedce61 100755 > --- a/BaseTools/Conf/tools_def.template > +++ b/BaseTools/Conf/tools_def.template > @@ -273,32 +273,21 @@ DEFINE DTC_BIN = ENV(DTC_PREFIX)dtc > # Required to build platforms or ACPI tables: > # Intel(r) ACPI Compiler from > # https://acpica.org/downloads > -# > -# CLANG35 -Linux,Windows- Requires: > -# Clang v3.5 or later, and GNU binutils targeting aarch64-linux-gnu or arm-linux-gnueabi > -# Optional: > -# Required to build platforms or ACPI tables: > -# Intel(r) ACPI Compiler from > -# https://acpica.org/downloads > -# CLANG38 -Linux- Requires: > -# Clang v3.8, LLVMgold plugin and GNU binutils 2.26 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi > -# Clang v3.9 or later, LLVMgold plugin and GNU binutils 2.28 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi > +# CLANGDWARF -Linux- Requires: > +# Clang 9 or above, and GNU binutils targeting x86_64-linux-gnu, aaarch64-linux-gnu or arm-linux-gnuaebi > # Optional: > # Required to build platforms or ACPI tables: > # Intel(r) ACPI Compiler from > # https://acpica.org/downloads > +# Required to compile nasm source: > +# nasm compiler from > +# NASM -- https://nasm.us > # CLANGPDB -Linux, Windows, Mac- Requires: > # Clang 9 or above from http://releases.llvm.org/ > # Optional: > # Required to compile nasm source: > # nasm compiler from > # NASM -- http://www.nasm.us/ > -# CLANGDWARF -Linux, Windows, Mac- Requires: > -# Clang 9 or above from http://releases.llvm.org/ > -# Optional: > -# Required to compile nasm source: > -# nasm compiler from > -# NASM -- http://www.nasm.us/ > # VS2008x86 -win64- Requires: > # Microsoft Visual Studio 2008 (x86) > # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830 > @@ -2480,273 +2469,191 @@ RELEASE_GCC5_LOONGARCH64_CC_FLAGS = DEF(GCC5_LOONGARCH64_CC_FLAGS) -Wno-un > > #################################################################################### > # > -# CLANG35 - This configuration is used to compile under Linux to produce > -# PE/COFF binaries using the clang compiler and assembler (v3.5 and up) > -# and GNU linker > +# Clang - This configuration is used to compile under Linux to produce > +# PE/COFF binaries using LLVM/Clang with Link Time Optimization enabled > # > #################################################################################### > -*_CLANG35_*_*_FAMILY = GCC > +*_CLANGDWARF_*_*_FAMILY = GCC > +*_CLANGDWARF_*_MAKE_PATH = make > +*_CLANGDWARF_*_*_DLL = ENV(CLANGDWARF_DLL) > +*_CLANGDWARF_*_ASL_PATH = DEF(UNIX_IASL_BIN) > > -*_CLANG35_*_MAKE_PATH = make > -*_CLANG35_*_*_DLL = ENV(CLANG35_DLL) > -*_CLANG35_*_ASL_PATH = DEF(UNIX_IASL_BIN) > +*_CLANGDWARF_*_APP_FLAGS = > +*_CLANGDWARF_*_ASL_FLAGS = DEF(IASL_FLAGS) > +*_CLANGDWARF_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > +*_CLANGDWARF_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS) > +DEFINE CLANGDWARF_IA32_PREFIX = ENV(CLANG_BIN) > +DEFINE CLANGDWARF_X64_PREFIX = ENV(CLANG_BIN) > > -*_CLANG35_*_PP_FLAGS = DEF(GCC_PP_FLAGS) > -*_CLANG35_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > -*_CLANG35_*_APP_FLAGS = > -*_CLANG35_*_ASL_FLAGS = DEF(IASL_FLAGS) > -*_CLANG35_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > -*_CLANG35_*_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > +DEFINE CLANGDWARF_IA32_TARGET = -target i686-pc-linux-gnu > +DEFINE CLANGDWARF_X64_TARGET = -target x86_64-pc-linux-gnu > > -*_CLANG35_*_CC_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_ASM_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_PP_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_VFRPP_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_ASLCC_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_ASLPP_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_DLINK_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_ASLDLINK_PATH = ENV(CLANG35_BIN)clang > -*_CLANG35_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS) > - > -DEFINE CLANG35_ARM_TARGET = -target arm-linux-gnueabi > -DEFINE CLANG35_AARCH64_TARGET = -target aarch64-linux-gnu > - > -DEFINE CLANG35_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable > -DEFINE CLANG35_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG35_ARM_TARGET) DEF(CLANG35_WARNING_OVERRIDES) > -DEFINE CLANG35_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG35_AARCH64_TARGET) -mcmodel=small DEF(CLANG35_WARNING_OVERRIDES) > - > -################## > -# CLANG35 ARM definitions > -################## > -*_CLANG35_ARM_SLINK_PATH = ENV(CLANG35_ARM_PREFIX)ar > -*_CLANG35_ARM_RC_PATH = ENV(CLANG35_ARM_PREFIX)objcopy > - > -*_CLANG35_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > -*_CLANG35_ARM_ASLDLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS) > -*_CLANG35_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > -*_CLANG35_ARM_DLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS) > -*_CLANG35_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 > -*_CLANG35_ARM_PLATFORM_FLAGS = -march=armv7-a -mkernel -Qunused-arguments > -*_CLANG35_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS) > -*_CLANG35_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) > -*_CLANG35_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS) > -*_CLANG35_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_ARM_TARGET) > -*_CLANG35_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS) > - > - DEBUG_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O1 > -RELEASE_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -Oz > - NOOPT_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > - > -################## > -# CLANG35 AARCH64 definitions > -################## > -*_CLANG35_AARCH64_SLINK_PATH = ENV(CLANG35_AARCH64_PREFIX)ar > -*_CLANG35_AARCH64_RC_PATH = ENV(CLANG35_AARCH64_PREFIX)objcopy > - > -*_CLANG35_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > -*_CLANG35_AARCH64_ASLDLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS) > -*_CLANG35_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > -*_CLANG35_AARCH64_DLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000 > -*_CLANG35_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 > -*_CLANG35_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 > -*_CLANG35_AARCH64_PLATFORM_FLAGS = > -*_CLANG35_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS) > -*_CLANG35_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS) > -*_CLANG35_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS) > -*_CLANG35_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_AARCH64_TARGET) > -*_CLANG35_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS) > - > - DEBUG_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O1 > -RELEASE_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -Oz > - NOOPT_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > - > -#################################################################################### > -# > -# Clang 3.8 - This configuration is used to compile under Linux to produce > -# PE/COFF binaries using LLVM/Clang 3.8 with Link Time Optimization enabled > -# > -#################################################################################### > -*_CLANG38_*_*_FAMILY = GCC > -*_CLANG38_*_MAKE_PATH = make > -*_CLANG38_*_*_DLL = ENV(CLANG38_DLL) > -*_CLANG38_*_ASL_PATH = DEF(UNIX_IASL_BIN) > - > -*_CLANG38_*_APP_FLAGS = > -*_CLANG38_*_ASL_FLAGS = DEF(IASL_FLAGS) > -*_CLANG38_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > -*_CLANG38_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS) > -DEFINE CLANG38_IA32_PREFIX = ENV(CLANG38_BIN) > -DEFINE CLANG38_X64_PREFIX = ENV(CLANG38_BIN) > - > -DEFINE CLANG38_IA32_TARGET = -target i686-pc-linux-gnu > -DEFINE CLANG38_X64_TARGET = -target x86_64-pc-linux-gnu > - > -DEFINE CLANG38_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-unaligned-access > -DEFINE CLANG38_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANG38_WARNING_OVERRIDES) -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference > +DEFINE CLANGDWARF_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-unaligned-access > +DEFINE CLANGDWARF_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGDWARF_WARNING_OVERRIDES) -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference > > ########################### > -# CLANG38 IA32 definitions > +# CLANGDWARF IA32 definitions > ########################### > -*_CLANG38_IA32_OBJCOPY_PATH = objcopy > -*_CLANG38_IA32_CC_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_SLINK_PATH = DEF(CLANG38_IA32_PREFIX)llvm-ar > -*_CLANG38_IA32_DLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_ASLDLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_ASM_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_PP_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_VFRPP_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_ASLCC_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_ASLPP_PATH = DEF(CLANG38_IA32_PREFIX)clang > -*_CLANG38_IA32_RC_PATH = objcopy > - > -*_CLANG38_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET) > -*_CLANG38_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 > -*_CLANG38_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET) > -*_CLANG38_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS) > -*_CLANG38_IA32_OBJCOPY_FLAGS = > -*_CLANG38_IA32_NASM_FLAGS = -f elf32 > -*_CLANG38_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET) > -*_CLANG38_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET) > -*_CLANG38_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET) > - > -DEBUG_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double > -DEBUG_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > -DEBUG_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3 > - > -RELEASE_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -malign-double > -RELEASE_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > -RELEASE_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3 > - > -NOOPT_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double > -NOOPT_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > -NOOPT_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O0 > +*_CLANGDWARF_IA32_OBJCOPY_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-objcopy > +*_CLANGDWARF_IA32_CC_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_SLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-ar > +*_CLANGDWARF_IA32_DLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_ASLDLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_ASM_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_PP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_VFRPP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_ASLCC_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_ASLPP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > +*_CLANGDWARF_IA32_RC_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-objcopy > + > +*_CLANGDWARF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 > +*_CLANGDWARF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS) > +*_CLANGDWARF_IA32_OBJCOPY_FLAGS = > +*_CLANGDWARF_IA32_NASM_FLAGS = -f elf32 > +*_CLANGDWARF_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > + > +DEBUG_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGDWARF_IA32_TARGET) -g -malign-double > +DEBUG_CLANGDWARF_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > +DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3 > + > +RELEASE_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGDWARF_IA32_TARGET) -malign-double > +RELEASE_CLANGDWARF_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > +RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3 > + > +NOOPT_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANGDWARF_IA32_TARGET) -g -malign-double > +NOOPT_CLANGDWARF_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat=elf32-i386 > +NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O0 > > ########################## > -# CLANG38 X64 definitions > +# CLANGDWARF X64 definitions > ########################## > -*_CLANG38_X64_OBJCOPY_PATH = objcopy > -*_CLANG38_X64_CC_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_SLINK_PATH = DEF(CLANG38_X64_PREFIX)llvm-ar > -*_CLANG38_X64_DLINK_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_ASLDLINK_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_ASM_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_PP_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_VFRPP_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_ASLCC_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_ASLPP_PATH = DEF(CLANG38_X64_PREFIX)clang > -*_CLANG38_X64_RC_PATH = objcopy > - > -*_CLANG38_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET) > -*_CLANG38_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64 > -*_CLANG38_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET) > -*_CLANG38_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS) > -*_CLANG38_X64_OBJCOPY_FLAGS = > -*_CLANG38_X64_NASM_FLAGS = -f elf64 > -*_CLANG38_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET) > -*_CLANG38_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET) > -*_CLANG38_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET) > - > -DEBUG_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g > -DEBUG_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > -DEBUG_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 > - > -RELEASE_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) > -RELEASE_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > -RELEASE_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 > - > -NOOPT_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g > -NOOPT_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > -NOOPT_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O0 > +*_CLANGDWARF_X64_OBJCOPY_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-objcopy > +*_CLANGDWARF_X64_CC_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_SLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-ar > +*_CLANGDWARF_X64_DLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_ASLDLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_ASM_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_PP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_VFRPP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_ASLCC_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_ASLPP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > +*_CLANGDWARF_X64_RC_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-objcopy > + > +*_CLANGDWARF_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64 > +*_CLANGDWARF_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS) > +*_CLANGDWARF_X64_OBJCOPY_FLAGS = > +*_CLANGDWARF_X64_NASM_FLAGS = -f elf64 > +*_CLANGDWARF_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > + > +DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANGDWARF_X64_TARGET) -g > +DEBUG_CLANGDWARF_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > +DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 > + > +RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANGDWARF_X64_TARGET) > +RELEASE_CLANGDWARF_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small -fuse-ld=lld > +RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld > + > +NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANGDWARF_X64_TARGET) -g > +NOOPT_CLANGDWARF_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > +NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O0 > > ################## > -# CLANG38 ARM definitions > +# CLANGDWARF ARM definitions > ################## > -DEFINE CLANG38_ARM_TARGET = -target arm-linux-gnueabi > -DEFINE CLANG38_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG38_ARM_TARGET) DEF(CLANG38_WARNING_OVERRIDES) -mno-movt > -DEFINE CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS) > - > -*_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) > -*_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > -*_CLANG38_ARM_APP_FLAGS = > -*_CLANG38_ARM_ASL_FLAGS = DEF(IASL_FLAGS) > -*_CLANG38_ARM_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > -*_CLANG38_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > - > -*_CLANG38_ARM_CC_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_ASM_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_PP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_VFRPP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_ASLCC_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_ASLPP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_DLINK_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_ARM_ASLDLINK_PATH = ENV(CLANG38_BIN)clang > - > -*_CLANG38_ARM_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar > -*_CLANG38_ARM_RC_PATH = ENV(CLANG38_ARM_PREFIX)objcopy > - > -*_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > -*_CLANG38_ARM_ASLDLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS) > -*_CLANG38_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > -*_CLANG38_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 > -*_CLANG38_ARM_PLATFORM_FLAGS = -march=armv7-a > -*_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS) > -*_CLANG38_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) > -*_CLANG38_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS) > -*_CLANG38_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_ARM_TARGET) > -*_CLANG38_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS) > - > - DEBUG_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1 > - DEBUG_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm > - NOOPT_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > - NOOPT_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) > -RELEASE_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3 > -RELEASE_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm > +DEFINE CLANGDWARF_ARM_TARGET = -target arm-linux-gnueabi > +DEFINE CLANGDWARF_ARM_CC_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -mabi=aapcs -fno-short-enums -funsigned-char -fomit-frame-pointer -Wno-address -mthumb -fno-pic -fno-pie DEF(CLANGDWARF_ARM_TARGET) DEF(CLANGDWARF_WARNING_OVERRIDES) -mno-movt > +DEFINE CLANGDWARF_ARM_DLINK_FLAGS = DEF(CLANGDWARF_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS) > + > +*_CLANGDWARF_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) > +*_CLANGDWARF_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > +*_CLANGDWARF_ARM_APP_FLAGS = > +*_CLANGDWARF_ARM_ASL_FLAGS = DEF(IASL_FLAGS) > +*_CLANGDWARF_ARM_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > +*_CLANGDWARF_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > + > +*_CLANGDWARF_ARM_CC_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_ASM_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_PP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_VFRPP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_ASLCC_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_ASLPP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_DLINK_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_ARM_ASLDLINK_PATH = ENV(CLANGDWARF_BIN)clang > + > +*_CLANGDWARF_ARM_SLINK_PATH = ENV(CLANGDWARF_BIN)llvm-ar > +*_CLANGDWARF_ARM_RC_PATH = ENV(CLANGDWARF_BIN)llvm-objcopy > + > +*_CLANGDWARF_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > +*_CLANGDWARF_ARM_ASLDLINK_FLAGS = DEF(CLANGDWARF_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS) > +*_CLANGDWARF_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANGDWARF_ARM_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > +*_CLANGDWARF_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 > +*_CLANGDWARF_ARM_PLATFORM_FLAGS = -march=armv7-a > +*_CLANGDWARF_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_ARM_TARGET) $(PLATFORM_FLAGS) > +*_CLANGDWARF_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) > +*_CLANGDWARF_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_ARM_TARGET) $(PLATFORM_FLAGS) > +*_CLANGDWARF_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_ARM_TARGET) > +*_CLANGDWARF_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS) > + > + DEBUG_CLANGDWARF_ARM_CC_FLAGS = DEF(CLANGDWARF_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1 > + DEBUG_CLANGDWARF_ARM_DLINK_FLAGS = DEF(CLANGDWARF_ARM_DLINK_FLAGS) -flto -Wl,-O1 -fuse-ld=lld -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm -Wl,--no-pie,--no-relax > + NOOPT_CLANGDWARF_ARM_CC_FLAGS = DEF(CLANGDWARF_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > + NOOPT_CLANGDWARF_ARM_DLINK_FLAGS = DEF(CLANGDWARF_ARM_DLINK_FLAGS) -fuse-ld=lld -Wl,--no-pie,--no-relax > +RELEASE_CLANGDWARF_ARM_CC_FLAGS = DEF(CLANGDWARF_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3 > +RELEASE_CLANGDWARF_ARM_DLINK_FLAGS = DEF(CLANGDWARF_ARM_DLINK_FLAGS) -flto -Wl,-O3 -fuse-ld=lld -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm -Wl,--no-pie,--no-relax > > ################## > -# CLANG38 AARCH64 definitions > +# CLANGDWARF AARCH64 definitions > ################## > -DEFINE CLANG38_AARCH64_TARGET = -target aarch64-linux-gnu > -DEFINE CLANG38_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG38_AARCH64_TARGET) -mcmodel=small DEF(CLANG38_WARNING_OVERRIDES) > -DEFINE CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000 > - > -*_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) > -*_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > -*_CLANG38_AARCH64_APP_FLAGS = > -*_CLANG38_AARCH64_ASL_FLAGS = DEF(IASL_FLAGS) > -*_CLANG38_AARCH64_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > -*_CLANG38_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > - > -*_CLANG38_AARCH64_CC_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_ASM_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_PP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_VFRPP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_ASLCC_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_ASLPP_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_DLINK_PATH = ENV(CLANG38_BIN)clang > -*_CLANG38_AARCH64_ASLDLINK_PATH = ENV(CLANG38_BIN)clang > - > -*_CLANG38_AARCH64_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar > -*_CLANG38_AARCH64_RC_PATH = ENV(CLANG38_AARCH64_PREFIX)objcopy > - > -*_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > -*_CLANG38_AARCH64_ASLDLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS) > -*_CLANG38_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > -*_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000 > -*_CLANG38_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 > -*_CLANG38_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 > -*_CLANG38_AARCH64_PLATFORM_FLAGS = > -*_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS) > -*_CLANG38_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS) DEF(GCC_AARCH64_RC_BTI_FLAGS) > -*_CLANG38_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS) > -*_CLANG38_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_AARCH64_TARGET) > -*_CLANG38_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS) > - > - DEBUG_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1 > - DEBUG_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 > - NOOPT_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > - NOOPT_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) > -RELEASE_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3 > -RELEASE_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 > +DEFINE CLANGDWARF_AARCH64_TARGET = -target aarch64-linux-gnu > +DEFINE CLANGDWARF_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANGDWARF_AARCH64_TARGET) -mcmodel=small DEF(CLANGDWARF_WARNING_OVERRIDES) > +DEFINE CLANGDWARF_AARCH64_DLINK_FLAGS = DEF(CLANGDWARF_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000 > + > +*_CLANGDWARF_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) > +*_CLANGDWARF_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > +*_CLANGDWARF_AARCH64_APP_FLAGS = > +*_CLANGDWARF_AARCH64_ASL_FLAGS = DEF(IASL_FLAGS) > +*_CLANGDWARF_AARCH64_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) > +*_CLANGDWARF_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > + > +*_CLANGDWARF_AARCH64_CC_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_ASM_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_PP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_VFRPP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_ASLCC_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_ASLPP_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_DLINK_PATH = ENV(CLANGDWARF_BIN)clang > +*_CLANGDWARF_AARCH64_ASLDLINK_PATH = ENV(CLANGDWARF_BIN)clang > + > +*_CLANGDWARF_AARCH64_SLINK_PATH = ENV(CLANGDWARF_BIN)llvm-ar > +*_CLANGDWARF_AARCH64_RC_PATH = ENV(CLANGDWARF_BIN)llvm-objcopy > + > +*_CLANGDWARF_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > +*_CLANGDWARF_AARCH64_ASLDLINK_FLAGS = DEF(CLANGDWARF_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS) > +*_CLANGDWARF_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANGDWARF_AARCH64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments > +*_CLANGDWARF_AARCH64_DLINK_FLAGS = DEF(CLANGDWARF_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000 > +*_CLANGDWARF_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 > +*_CLANGDWARF_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 > +*_CLANGDWARF_AARCH64_PLATFORM_FLAGS = > +*_CLANGDWARF_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_AARCH64_TARGET) $(PLATFORM_FLAGS) > +*_CLANGDWARF_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS) DEF(GCC_AARCH64_RC_BTI_FLAGS) > +*_CLANGDWARF_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_AARCH64_TARGET) $(PLATFORM_FLAGS) > +*_CLANGDWARF_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_AARCH64_TARGET) > +*_CLANGDWARF_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS) > + > + DEBUG_CLANGDWARF_AARCH64_CC_FLAGS = DEF(CLANGDWARF_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1 > + DEBUG_CLANGDWARF_AARCH64_DLINK_FLAGS = DEF(CLANGDWARF_AARCH64_DLINK_FLAGS) -flto -Wl,-O1 -fuse-ld=lld -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wl,--no-pie,--no-relax > + NOOPT_CLANGDWARF_AARCH64_CC_FLAGS = DEF(CLANGDWARF_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O0 > + NOOPT_CLANGDWARF_AARCH64_DLINK_FLAGS = DEF(CLANGDWARF_AARCH64_DLINK_FLAGS) -fuse-ld=lld -Wl,--no-pie,--no-relax > +RELEASE_CLANGDWARF_AARCH64_CC_FLAGS = DEF(CLANGDWARF_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3 > +RELEASE_CLANGDWARF_AARCH64_DLINK_FLAGS = DEF(CLANGDWARF_AARCH64_DLINK_FLAGS) -flto -Wl,-O3 -fuse-ld=lld -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wl,--no-pie,--no-relax > > #################################################################################### > # > @@ -2888,25 +2795,25 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x22 > *_CLANGDWARF_IA32_ASLPP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang > *_CLANGDWARF_IA32_RC_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-rc > > -*_CLANGDWARF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET) > +*_CLANGDWARF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANGDWARF_IA32_TARGET) > *_CLANGDWARF_IA32_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -fuse-ld=lld -no-pie > -*_CLANGDWARF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET) > +*_CLANGDWARF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANGDWARF_IA32_TARGET) > *_CLANGDWARF_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS) > *_CLANGDWARF_IA32_OBJCOPY_FLAGS = > *_CLANGDWARF_IA32_NASM_FLAGS = -f elf32 > -*_CLANGDWARF_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET) > -*_CLANGDWARF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET) > -*_CLANGDWARF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET) > +*_CLANGDWARF_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > +*_CLANGDWARF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_IA32_TARGET) > > -DEBUG_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double > +DEBUG_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 DEF(CLANGDWARF_IA32_TARGET) -g -malign-double > DEBUG_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 > DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld -no-pie > > -RELEASE_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -malign-double > +RELEASE_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 DEF(CLANGDWARF_IA32_TARGET) -malign-double > RELEASE_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 > RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld -no-pie > > -NOOPT_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double > +NOOPT_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -O0 -march=i586 DEF(CLANGDWARF_IA32_TARGET) -g -malign-double > NOOPT_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 > NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -fuse-ld=lld -no-pie > > @@ -2924,25 +2831,25 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 - > *_CLANGDWARF_X64_ASLPP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang > *_CLANGDWARF_X64_RC_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-rc > > -*_CLANGDWARF_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET) > +*_CLANGDWARF_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANGDWARF_X64_TARGET) > *_CLANGDWARF_X64_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64 -fuse-ld=lld > -*_CLANGDWARF_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET) > +*_CLANGDWARF_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANGDWARF_X64_TARGET) > *_CLANGDWARF_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS) > *_CLANGDWARF_X64_OBJCOPY_FLAGS = > *_CLANGDWARF_X64_NASM_FLAGS = -f elf64 > -*_CLANGDWARF_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET) > -*_CLANGDWARF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET) > -*_CLANGDWARF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET) > +*_CLANGDWARF_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > +*_CLANGDWARF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWARF_X64_TARGET) > > -DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g > +DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANGDWARF_X64_TARGET) -g > DEBUG_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs > DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld > > -RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) > +RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANGDWARF_X64_TARGET) > RELEASE_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs > RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld > > -NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g > +NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANGDWARF_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANGDWARF_X64_TARGET) -g > NOOPT_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs > NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld >