From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by mx.groups.io with SMTP id smtpd.web11.16895.1678376860736383826 for ; Thu, 09 Mar 2023 07:47:40 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bsdio.com header.s=fm2 header.b=cIQyS4gA; spf=pass (domain: bsdio.com, ip: 66.111.4.29, mailfrom: rebecca@bsdio.com) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 151945C010B; Thu, 9 Mar 2023 10:47:40 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Thu, 09 Mar 2023 10:47:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdio.com; h=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=fm2; t= 1678376860; x=1678463260; bh=esuaUJ2nIS6mxT/1TUmBlelGK+sJKuQiq+s qN4fjm18=; b=cIQyS4gAQRtI0jRfTN4BjcUmG8RIfDw+RXudNnc4xmXrt0xomkw QoqLo6Wtcjsnvp1QFFuRcIZDioHsu8rsQLrE15QsJUbV67n2qiGNQOVUHKmHM6Oj 2o/yKmv5uSqLgyuZ0S4pppkrabUX1Q7UOgBex3YGdJkspMB2uePP5AfUjYnrHaPK G+1JtInoO+Ig6tBYCDusx+b/QoKVRFg20KzXrepmUXSOn4wvLqWTyUzfCZdHkcLE 2Emrh/8SShly/cDYP1pPXO1r/F9RPOe8j/C+CeLhYQIYE80EJSkMnNlSGN2aKi/r DN+86II8HLlCZVwUQQTwRS1Wyg0mzkYxGow== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=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=fm1; t=1678376860; x= 1678463260; bh=esuaUJ2nIS6mxT/1TUmBlelGK+sJKuQiq+sqN4fjm18=; b=F D59AWVqhf4qYJDIOQ5C5d0XfUhlHYZkuojL9gGPExGMlTpXzI85yp7FPSB4SjcJF +mKZ3JEZKDuE8sUI0faZy7fE2DozdbDCqfSWN/C8eVSfTmgzhEjSsioRzUXUdqSc 2Tuldu1MzCw/kKsv8a6Ts6ZWeaIMpeVxM6FDqJWGAkZC4RBOq1RIEgdejbnK5LCL wf8uO9QHPkT/ssFXh3u3nSGKFlF/+GEDHRdGP875Ku5/ak02agFUWue/BMHNpZNc JTdH1mcImWQ6lb3q3fGKiRhT6H2t80E9tFj9w81y9d/Z6SrWJNSF4Q3dCMUbpIr5 xztgQNttKvWtpECC9MArA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvdduiedgjeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvfhfhjggtgfesthejredttdefjeenucfhrhhomheptfgvsggv tggtrgcuvehrrghnuceorhgvsggvtggtrgessghsughiohdrtghomheqnecuggftrfgrth htvghrnhepudegjeegleduleegjeetheeliedujefhuddtkeefkeeugfeiheetffejiedt ieetnecuffhomhgrihhnpehtihgrnhhotghorhgvrdhorhhgnecuvehluhhsthgvrhfuih iivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprhgvsggvtggtrgessghsughiohdr tghomh X-ME-Proxy: Feedback-ID: i5b994698:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 9 Mar 2023 10:47:38 -0500 (EST) Message-ID: <8788f630-10db-a079-b4d6-f5e7910177c5@bsdio.com> Date: Thu, 9 Mar 2023 08:47:38 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [edk2-devel] [PATCH 0/3] BaseTools: allow users to override CC and CXX on the make command line To: devel@edk2.groups.io, Andrew Fish , Leif Lindholm , Michael D Kinney , Bob Feng , Liming Gao , Yuwei Chen References: <20230217035101.880854-1-rebecca@quicinc.com> From: "Rebecca Cran" In-Reply-To: <20230217035101.880854-1-rebecca@quicinc.com> Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Could I get some reviews on this please? Thanks. Rebecca Cran On 2/16/23 8:50 PM, Rebecca Cran wrote: > Currently, the BaseTools Makefiles use BUILD_CC and BUILD_CXX, which > doesn't allow users to override the compiler to use in the expected way > by running e.g. "make CC=clang-17 CXX=clang++-17". clang/llvm support > was added in https://bugzilla.tianocore.org/show_bug.cgi?id=2842 in a > way that required users to run "make CXX=llvm" and have clang and clang++ > executables under $(CLANG_BIN). As far as I know this isn't a standard > way of telling a build system to use clang, and so is likely difficult > to discover by users. > > This patch series fixes that, and as a side effect allows the clang > analyzer to run via "scan-build make". > > Since clang 17 defaults to C++17 or newer where the 'register' keyword > is deprecated and the warning turned into an error, override the > version used when building C++ code via "-std=c++14". > > Rebecca Cran (3): > BaseTools: Allow users to specify compiler to use with make CC= CXX= > BaseTools: Improve detection of users wanting to build using clang > BaseTools: Build against C++14 when building with clang > > BaseTools/Source/C/DevicePath/GNUmakefile | 7 ++- > BaseTools/Source/C/LzmaCompress/GNUmakefile | 2 +- > BaseTools/Source/C/Makefiles/app.makefile | 2 +- > BaseTools/Source/C/Makefiles/footer.makefile | 6 +- > BaseTools/Source/C/Makefiles/header.makefile | 59 ++++++++++---------- > BaseTools/Source/C/VfrCompile/GNUmakefile | 19 ++++--- > BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile | 20 +++---- > BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile | 31 +++++----- > BaseTools/Source/Python/Workspace/DscBuildData.py | 2 +- > 9 files changed, 76 insertions(+), 72 deletions(-) >