From nobody Fri May 17 05:54:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+100298+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100298+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=quicinc.com ARC-Seal: i=1; a=rsa-sha256; t=1676605899; cv=none; d=zohomail.com; s=zohoarc; b=MmCf1WemMDWL1Iq+ryEEdjOLNt98Br7+xwCibw7naTY3JCeigczuh+HDnXb6GfZOxFkrXXcyttyLFPtEtZZ0ScQzs4U6Nm0fot1FYCsvVnHWKoJ3dE9nMvmBmLMW3rx6hfuTl3J73HnY5vJJw8zugBPb815872h2QDFRvjA7vnY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1676605899; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=KPlRhe5E+18i25e7Gcym3tgopRtGgLsiEfHLH/vxAz4=; b=UftDCqIYe10sTTDe6CVqGcnMmOh7HShxH4OdWVR7lfjm+XguLIAIq9gYJXh0bAPubc+d1D4TNiWNdhohWFocYASxKxpE4HjBjpfBZqrEBsLUcIx6AJA/82lKl/lrCzzKthxTL/3bHoBg41SuAdW8v7rE7v1h9L/CIh3Ra9ZHIXM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100298+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1676605899627951.7643189762844; Thu, 16 Feb 2023 19:51:39 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id d1QEYY1788612xZBDO1yzDtm; Thu, 16 Feb 2023 19:51:39 -0800 X-Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by mx.groups.io with SMTP id smtpd.web10.30623.1676605898226981955 for ; Thu, 16 Feb 2023 19:51:38 -0800 X-Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 31GL62pT011518; Fri, 17 Feb 2023 03:51:16 GMT X-Received: from nalasppmta01.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3nshmgaj4d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:15 +0000 X-Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA01.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 31H3pEW9030535 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:14 GMT X-Received: from linbox.qualcomm.com (10.80.80.8) by nalasex01a.na.qualcomm.com (10.47.209.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Thu, 16 Feb 2023 19:51:14 -0800 From: "Rebecca Cran" To: , Andrew Fish , Leif Lindholm , Michael D Kinney , Bob Feng , Liming Gao , "Yuwei Chen" CC: Rebecca Cran Subject: [edk2-devel] [PATCH 1/3] BaseTools: Allow users to specify compiler to use with make CC= CXX= Date: Thu, 16 Feb 2023 20:50:59 -0700 Message-ID: <20230217035101.880854-2-rebecca@quicinc.com> In-Reply-To: <20230217035101.880854-1-rebecca@quicinc.com> References: <20230217035101.880854-1-rebecca@quicinc.com> MIME-Version: 1.0 X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To nalasex01a.na.qualcomm.com (10.47.209.196) X-QCInternal: smtphost X-Proofpoint-ORIG-GUID: JN8SiOxdoI43m2HZmCrZlI-aczSrBRTq X-Proofpoint-GUID: JN8SiOxdoI43m2HZmCrZlI-aczSrBRTq Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,quic_rcran@quicinc.com X-Gm-Message-State: VxqNQr9d2kzzKF2LGvKkG3Cax1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1676605899; bh=cAPsnFEJ6gP+54vpcX06wrd/t0vIM9rlPr9MSp8Zbk0=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=WHCnCnH2dNgvYdFaZVP1cH5dKXbbA78g7heYsfQTpY8sFHD1KOwh4TXkQ5ZoVSv0QUx XBtvwUocAsHaPMi9ZNzpTUvCSozZlUROPQ7zzLxCua2IErYqxhksGKWEmcqIjlR7uQeHW VGd6RXlV2h0Nxajq57+AaHDad6phaEom5Yk= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1676605901313100001 Content-Type: text/plain; charset="utf-8" In https://bugzilla.tianocore.org/show_bug.cgi?id=3D2842 clang support was added by having users specify "make CXX=3Dllvm" when building BaseTools. The Makefile then sees that and sets CC=3D$(CLANG_BIN)clang and CXX=3D$(CLANG_BIN)clang++. That requires that the executables 'clang' and 'clang++' exist and for example aren't named 'clang-17' and 'clang++-17'. Also, it's an unusual way of specifying the compiler, since many users will expect to be able to override CC and CXX on the make command line. Rework the BaseTools Makefiles removing the 'BUILD_' prefix (BUILD_CC and BUILD_CXX) and using the standard name 'LDFLAGS' instead of 'LFLAGS'. This allows clang to be used by running 'make -C BaseTools CC=3Dclang CXX=3Dclang++'. This also requires reworking the gcc support, since $(CC) has a default value of 'cc', so the '?=3D' syntax won't override it. Fix this by checking if $(CC) has its original value, and if so overriding the environment. Signed-off-by: Rebecca Cran --- BaseTools/Source/C/DevicePath/GNUmakefile | 4 +- 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 | 52 ++++++++++--------= -- BaseTools/Source/C/VfrCompile/GNUmakefile | 14 +++--- BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile | 18 +++---- BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile | 28 +++++------ BaseTools/Source/Python/Workspace/DscBuildData.py | 2 +- 9 files changed, 64 insertions(+), 64 deletions(-) diff --git a/BaseTools/Source/C/DevicePath/GNUmakefile b/BaseTools/Source/C= /DevicePath/GNUmakefile index 13b54ead65ac..3afc7fc0504e 100644 --- a/BaseTools/Source/C/DevicePath/GNUmakefile +++ b/BaseTools/Source/C/DevicePath/GNUmakefile @@ -13,12 +13,12 @@ OBJECTS =3D DevicePath.o UefiDevicePathLib.o DevicePath= FromText.o DevicePathUtili =20 include $(MAKEROOT)/Makefiles/app.makefile =20 -GCCVERSION =3D $(shell $(BUILD_CC) -dumpversion | awk -F'.' '{print $$1}') +GCCVERSION =3D $(shell $(CC) -dumpversion | awk -F'.' '{print $$1}') ifneq ("$(GCCVERSION)", "5") ifneq ($(CXX), llvm) ifneq ($(DARWIN),Darwin) # gcc 12 trips over device path handling -BUILD_CFLAGS +=3D -Wno-error=3Dstringop-overflow +CFLAGS +=3D -Wno-error=3Dstringop-overflow endif endif endif diff --git a/BaseTools/Source/C/LzmaCompress/GNUmakefile b/BaseTools/Source= /C/LzmaCompress/GNUmakefile index c837e7782373..a00ef4bc8061 100644 --- a/BaseTools/Source/C/LzmaCompress/GNUmakefile +++ b/BaseTools/Source/C/LzmaCompress/GNUmakefile @@ -24,4 +24,4 @@ OBJECTS =3D \ =20 include $(MAKEROOT)/Makefiles/app.makefile =20 -BUILD_CFLAGS +=3D -D_7ZIP_ST +CFLAGS +=3D -D_7ZIP_ST diff --git a/BaseTools/Source/C/Makefiles/app.makefile b/BaseTools/Source/C= /Makefiles/app.makefile index 6a2a8f5e8a0e..506343a6e0b4 100644 --- a/BaseTools/Source/C/Makefiles/app.makefile +++ b/BaseTools/Source/C/Makefiles/app.makefile @@ -15,7 +15,7 @@ APPLICATION =3D $(MAKEROOT)/bin/$(APPNAME) all: $(MAKEROOT)/bin $(APPLICATION) =20 $(APPLICATION): $(OBJECTS) - $(LINKER) -o $(APPLICATION) $(BUILD_LFLAGS) $(OBJECTS) -L$(MAKEROOT)/libs= $(LIBS) + $(LINKER) -o $(APPLICATION) $(LDFLAGS) $(OBJECTS) -L$(MAKEROOT)/libs $(LI= BS) =20 $(OBJECTS): $(MAKEROOT)/Include/Common/BuildVersion.h =20 diff --git a/BaseTools/Source/C/Makefiles/footer.makefile b/BaseTools/Sourc= e/C/Makefiles/footer.makefile index 85c3374224f2..7546da8cf5a0 100644 --- a/BaseTools/Source/C/Makefiles/footer.makefile +++ b/BaseTools/Source/C/Makefiles/footer.makefile @@ -15,13 +15,13 @@ install: $(MAKEROOT)/libs-$(HOST_ARCH) $(LIBRARY) cp $(LIBRARY) $(MAKEROOT)/libs-$(HOST_ARCH) =20 $(LIBRARY): $(OBJECTS) - $(BUILD_AR) crs $@ $^ + $(AR) crs $@ $^ =20 %.o : %.c - $(BUILD_CC) -c $(BUILD_CPPFLAGS) $(BUILD_CFLAGS) $< -o $@ + $(CC) -c $(CPPFLAGS) $(CFLAGS) $< -o $@ =20 %.o : %.cpp - $(BUILD_CXX) -c $(BUILD_CPPFLAGS) $(BUILD_CXXFLAGS) $< -o $@ + $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $< -o $@ =20 .PHONY: clean clean: diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Sourc= e/C/Makefiles/header.makefile index 4e88a4fbd86b..347918c7d4fa 100644 --- a/BaseTools/Source/C/Makefiles/header.makefile +++ b/BaseTools/Source/C/Makefiles/header.makefile @@ -45,19 +45,19 @@ CYGWIN:=3D$(findstring CYGWIN, $(shell uname -s)) LINUX:=3D$(findstring Linux, $(shell uname -s)) DARWIN:=3D$(findstring Darwin, $(shell uname -s)) ifeq ($(CXX), llvm) -BUILD_CC ?=3D $(CLANG_BIN)clang -BUILD_CXX ?=3D $(CLANG_BIN)clang++ -BUILD_AS ?=3D $(CLANG_BIN)clang -BUILD_AR ?=3D $(CLANG_BIN)llvm-ar -BUILD_LD ?=3D $(CLANG_BIN)llvm-ld -else -BUILD_CC ?=3D gcc -BUILD_CXX ?=3D g++ -BUILD_AS ?=3D gcc -BUILD_AR ?=3D ar -BUILD_LD ?=3D ld +CC ?=3D $(CLANG_BIN)clang +CXX ?=3D $(CLANG_BIN)clang++ +AS ?=3D $(CLANG_BIN)clang +AR ?=3D $(CLANG_BIN)llvm-ar +LD ?=3D $(CLANG_BIN)llvm-ld +else ifeq ($(origin CC),default) +CC =3D gcc +CXX =3D g++ +AS =3D gcc +AR =3D ar +LD =3D ld endif -LINKER ?=3D $(BUILD_CC) +LINKER ?=3D $(CC) ifeq ($(HOST_ARCH), IA32) ARCH_INCLUDE =3D -I $(MAKEROOT)/Include/Ia32/ =20 @@ -81,34 +81,34 @@ $(error Bad HOST_ARCH) endif =20 INCLUDE =3D $(TOOL_INCLUDE) -I $(MAKEROOT) -I $(MAKEROOT)/Include/Common -= I $(MAKEROOT)/Include/ -I $(MAKEROOT)/Include/IndustryStandard -I $(MAKEROO= T)/Common/ -I .. -I . $(ARCH_INCLUDE) -BUILD_CPPFLAGS =3D $(INCLUDE) +CPPFLAGS =3D $(INCLUDE) =20 # keep EXTRA_OPTFLAGS last BUILD_OPTFLAGS =3D -O2 $(EXTRA_OPTFLAGS) =20 ifeq ($(DARWIN),Darwin) # assume clang or clang compatible flags on OS X -BUILD_CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror \ +CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror \ -Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib= -g else ifeq ($(CXX), llvm) -BUILD_CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwrapv \ +CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwrapv \ -fno-delete-null-pointer-checks -Wall -Werror \ -Wno-deprecated-declarations -Wno-self-assign \ -Wno-unused-result -nostdlib -g else -BUILD_CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwrapv \ +CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwrapv \ -fno-delete-null-pointer-checks -Wall -Werror \ -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict \ -Wno-unused-result -nostdlib -g endif endif ifeq ($(CXX), llvm) -BUILD_LFLAGS =3D -BUILD_CXXFLAGS =3D -Wno-deprecated-register -Wno-unused-result +LDFLAGS =3D +CXXFLAGS =3D -Wno-deprecated-register -Wno-unused-result else -BUILD_LFLAGS =3D -BUILD_CXXFLAGS =3D -Wno-unused-result +LDFLAGS =3D +CXXFLAGS =3D -Wno-unused-result endif ifeq ($(HOST_ARCH), IA32) # @@ -117,18 +117,18 @@ ifeq ($(HOST_ARCH), IA32) # so only do this is uname -m returns i386. # ifeq ($(DARWIN),Darwin) - BUILD_CFLAGS +=3D -arch i386 - BUILD_CPPFLAGS +=3D -arch i386 - BUILD_LFLAGS +=3D -arch i386 + CFLAGS +=3D -arch i386 + CPPFLAGS +=3D -arch i386 + LDFLAGS +=3D -arch i386 endif endif =20 # keep BUILD_OPTFLAGS last -BUILD_CFLAGS +=3D $(BUILD_OPTFLAGS) -BUILD_CXXFLAGS +=3D $(BUILD_OPTFLAGS) +CFLAGS +=3D $(BUILD_OPTFLAGS) +CXXFLAGS +=3D $(BUILD_OPTFLAGS) =20 # keep EXTRA_LDFLAGS last -BUILD_LFLAGS +=3D $(EXTRA_LDFLAGS) +LDFLAGS +=3D $(EXTRA_LDFLAGS) =20 .PHONY: all .PHONY: install diff --git a/BaseTools/Source/C/VfrCompile/GNUmakefile b/BaseTools/Source/C= /VfrCompile/GNUmakefile index fc329944b992..9fbaaaba21d7 100644 --- a/BaseTools/Source/C/VfrCompile/GNUmakefile +++ b/BaseTools/Source/C/VfrCompile/GNUmakefile @@ -17,9 +17,9 @@ TOOL_INCLUDE =3D -I Pccts/h OBJECTS =3D AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.= o VfrSyntax.o \ VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o ifeq ($(CXX), llvm) -VFR_CPPFLAGS =3D -Wno-deprecated-register -DPCCTS_USE_NAMESPACE_STD $(BUIL= D_CPPFLAGS) +VFR_CPPFLAGS =3D -Wno-deprecated-register -DPCCTS_USE_NAMESPACE_STD $(CPPF= LAGS) else -VFR_CPPFLAGS =3D -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS) +VFR_CPPFLAGS =3D -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS) endif # keep BUILD_OPTFLAGS last VFR_CXXFLAGS =3D $(BUILD_OPTFLAGS) @@ -27,7 +27,7 @@ VFR_CXXFLAGS =3D $(BUILD_OPTFLAGS) # keep EXTRA_LDFLAGS last VFR_LFLAGS =3D $(EXTRA_LDFLAGS) =20 -LINKER =3D $(BUILD_CXX) +LINKER =3D $(CXX) =20 EXTRA_CLEAN_OBJECTS =3D EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrT= okens.h VfrLexer.cpp VfrLexer.h VfrSyntax.cpp tokens.h =20 @@ -60,16 +60,16 @@ Pccts/dlg/dlg: BIN_DIR=3D'.' $(MAKE) -C Pccts/dlg =20 ATokenBuffer.o: Pccts/h/ATokenBuffer.cpp - $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ + $(CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ =20 DLexerBase.o: Pccts/h/DLexerBase.cpp - $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ + $(CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ =20 AParser.o: Pccts/h/AParser.cpp - $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ + $(CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ =20 VfrSyntax.o: VfrSyntax.cpp - $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ + $(CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@ =20 clean: localClean =20 diff --git a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile b/BaseTools= /Source/C/VfrCompile/Pccts/antlr/makefile index 559b1c99f1ef..558d2f7b0111 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile +++ b/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile @@ -157,7 +157,7 @@ PCCTS_H=3D../h # $(DLG) -C2 parser.dlg scan.c # #set.$(OBJ_EXT): $(SET)/set.c -# $(BUILD_CC) $(BUILD_CFLAGS) -c $(OUT_OBJ)set.$(OBJ_EXT) $(SET)/set.c +# $(CC) $(CFLAGS) -c $(OUT_OBJ)set.$(OBJ_EXT) $(SET)/set.c =20 =20 =20 @@ -165,17 +165,17 @@ PCCTS_H=3D../h # UNIX (default) # ifeq ($(CXX), llvm) -BUILD_CC?=3D$(CLANG_BIN)clang -else -BUILD_CC?=3Dgcc +CC?=3D$(CLANG_BIN)clang +else ifeq ($(origin CC),default) +CC=3Dgcc endif COPT=3D-O ANTLR=3D${BIN_DIR}/antlr DLG=3D${BIN_DIR}/dlg OBJ_EXT=3Do OUT_OBJ =3D -o -BUILD_CFLAGS=3D $(COPT) -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN $(COTHER) -= DZZLEXBUFSIZE=3D65536 -BUILD_CPPFLAGS=3D +CFLAGS=3D $(COPT) -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN $(COTHER) -DZZLEX= BUFSIZE=3D65536 +CPPFLAGS=3D # # SGI Users, use this CFLAGS # @@ -184,7 +184,7 @@ OBJ=3Dantlr.o scan.o err.o bits.o build.o fset2.o fset.= o gen.o \ globals.o hash.o lex.o main.o misc.o set.o pred.o egman.o mrhoist.= o fcache.o =20 $(BIN_DIR)/antlr : $(OBJ) $(SRC) - $(BUILD_CC) $(BUILD_CFLAGS) -o $(BIN_DIR)/antlr $(OBJ) + $(CC) $(CFLAGS) -o $(BIN_DIR)/antlr $(OBJ) =20 # what files does PCCTS generate (both ANTLR and DLG) PCCTS_GEN=3Dantlr.c scan.c err.c tokens.h mode.h parser.dlg stdpccts.h rem= ap.h @@ -207,10 +207,10 @@ scan.o : scan.c mode.h tokens.h # $(DLG) -C2 parser.dlg scan.c =20 set.o : $(SET)/set.c - $(BUILD_CC) $(BUILD_CFLAGS) -c -o set.o $(SET)/set.c + $(CC) $(CFLAGS) -c -o set.o $(SET)/set.c =20 %.o : %.c=20 - $(BUILD_CC) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $< -o $@ + $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ =20 # # ****** These next targets are common to UNIX and PC world ******** diff --git a/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile b/BaseTools/S= ource/C/VfrCompile/Pccts/dlg/makefile index 5a3561edecd4..e214b35ab5e1 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile +++ b/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile @@ -35,7 +35,7 @@ PCCTS_H=3D../h # #$(LIBS: =3D +^ #) -#$(DEF_FILE) $(LFLAGS) ; +#$(DEF_FILE) $(LDFLAGS) ; #<< # bind $@ c:\os2\doscalls.lib # copy *.exe ..\bin @@ -59,7 +59,7 @@ PCCTS_H=3D../h #$@ /Tde /c # #$(LIBS) -#$(DEF_FILE) $(LFLAGS) ; +#$(DEF_FILE) $(LDFLAGS) ; #| # copy *.exe ..\bin # @@ -83,7 +83,7 @@ PCCTS_H=3D../h # #$(LIBS: =3D +^ #) -#$(DEF_FILE) $(LFLAGS) ; +#$(DEF_FILE) $(LDFLAGS) ; #<< # copy *.exe ..\bin # @@ -115,22 +115,22 @@ PCCTS_H=3D../h # UNIX # ifeq ($(CXX), llvm) -BUILD_CC?=3D$(CLANG_BIN)clang -else -BUILD_CC?=3Dcc +CC?=3D$(CLANG_BIN)clang +else ifeq ($(origin CC),default) +CC=3Dcc endif COPT=3D-O ANTLR=3D${BIN_DIR}/antlr DLG=3D${BIN_DIR}/dlg -BUILD_CFLAGS=3D $(COPT) -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN -DZZLEXBUFS= IZE=3D65536 -BUILD_CPPFLAGS=3D +CFLAGS=3D $(COPT) -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN -DZZLEXBUFSIZE=3D= 65536 +CPPFLAGS=3D OBJ_EXT=3Do OUT_OBJ =3D -o OBJ =3D dlg_p.o dlg_a.o main.o err.o set.o support.o output.o \ relabel.o automata.o =20 $(BIN_DIR)/dlg : $(OBJ) $(SRC) - $(BUILD_CC) $(BUILD_CFLAGS) -o $(BIN_DIR)/dlg $(OBJ) + $(CC) $(CFLAGS) -o $(BIN_DIR)/dlg $(OBJ) =20 SRC =3D dlg_p.c dlg_a.c main.c err.c $(SET)/set.c support.c output.c \ relabel.c automata.c @@ -142,19 +142,19 @@ SRC =3D dlg_p.c dlg_a.c main.c err.c $(SET)/set.c sup= port.c output.c \ # $(DLG) -C2 parser.dlg dlg_a.c =20 dlg_p.$(OBJ_EXT) : dlg_p.c dlg.h tokens.h mode.h - $(BUILD_CC) $(BUILD_CFLAGS) -c dlg_p.c + $(CC) $(CFLAGS) -c dlg_p.c =20 dlg_a.$(OBJ_EXT) : dlg_a.c dlg.h tokens.h mode.h - $(BUILD_CC) $(BUILD_CFLAGS) -c dlg_a.c + $(CC) $(CFLAGS) -c dlg_a.c =20 main.$(OBJ_EXT) : main.c dlg.h - $(BUILD_CC) $(BUILD_CFLAGS) -c main.c + $(CC) $(CFLAGS) -c main.c =20 set.$(OBJ_EXT) : $(SET)/set.c - $(BUILD_CC) -c $(BUILD_CFLAGS) $(SET)/set.c + $(CC) -c $(CFLAGS) $(SET)/set.c =20 %.o : %.c=20 - $(BUILD_CC) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $< -o $@ + $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ =20 lint: lint *.c diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py b/BaseTools/= Source/Python/Workspace/DscBuildData.py index 73c6ee40061b..8fd949dc50b6 100644 --- a/BaseTools/Source/Python/Workspace/DscBuildData.py +++ b/BaseTools/Source/Python/Workspace/DscBuildData.py @@ -89,7 +89,7 @@ PcdMakefileHeader =3D ''' ''' =20 WindowsCFLAGS =3D 'CFLAGS =3D $(CFLAGS) /wd4200 /wd4034 /wd4101 ' -LinuxCFLAGS =3D 'BUILD_CFLAGS +=3D -Wno-pointer-to-int-cast -Wno-unused-va= riable ' +LinuxCFLAGS =3D 'CFLAGS +=3D -Wno-pointer-to-int-cast -Wno-unused-variable= ' PcdMakefileEnd =3D ''' !INCLUDE $(BASE_TOOLS_PATH)\Source\C\Makefiles\ms.common !INCLUDE $(BASE_TOOLS_PATH)\Source\C\Makefiles\ms.app --=20 2.30.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#100298): https://edk2.groups.io/g/devel/message/100298 Mute This Topic: https://groups.io/mt/97022154/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 05:54:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+100297+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100297+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=quicinc.com ARC-Seal: i=1; a=rsa-sha256; t=1676605892; cv=none; d=zohomail.com; s=zohoarc; b=fWf8YaKQiaCoiwThPgOqw9w0Lks+5YC8V7eOJ8/WgsMwCbff7TgtRYK8mrA/wcP6M1K6NmYMFbLYnj+71mjVlbweb1OCqw6KVETxkr9vuyK2VB7wtysw/gENys3uDRAJmNizcuJKMbwF0G1O1RO7DwUEZ8TLgtpUc26DtRGfldM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1676605892; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=clPlI1/y/GSniwN2j1dhZub/SDk/GTTDCtGEeS29v2g=; b=ifGrtrN0iEkpGyrCRkwZ5QaiOxCkDpUNOQiyY38Gyv5aZPp2Mh9QMDrIpUXcr0NeGVtGTYZjJj1WftNW1Xq3YZF4yKw+p3O26eHG2GE5Tkp5p1kG8rA0xpTVDy0Mh7fJ9t18X8bVPhEMF9Ut+92iuijLdAOho3cRNWAKHbERSbE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100297+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1676605892374830.5639838375778; Thu, 16 Feb 2023 19:51:32 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id x4zjYY1788612xY4k2qpOtTb; Thu, 16 Feb 2023 19:51:32 -0800 X-Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by mx.groups.io with SMTP id smtpd.web11.31086.1676605891387094109 for ; Thu, 16 Feb 2023 19:51:31 -0800 X-Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 31H2T0Wn018861; Fri, 17 Feb 2023 03:51:16 GMT X-Received: from nalasppmta02.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3nsft5turu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:16 +0000 X-Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA02.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 31H3pFgY002447 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:15 GMT X-Received: from linbox.qualcomm.com (10.80.80.8) by nalasex01a.na.qualcomm.com (10.47.209.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Thu, 16 Feb 2023 19:51:14 -0800 From: "Rebecca Cran" To: , Andrew Fish , Leif Lindholm , Michael D Kinney , Bob Feng , Liming Gao , "Yuwei Chen" CC: Rebecca Cran Subject: [edk2-devel] [PATCH 2/3] BaseTools: Improve detection of users wanting to build using clang Date: Thu, 16 Feb 2023 20:51:00 -0700 Message-ID: <20230217035101.880854-3-rebecca@quicinc.com> In-Reply-To: <20230217035101.880854-1-rebecca@quicinc.com> References: <20230217035101.880854-1-rebecca@quicinc.com> MIME-Version: 1.0 X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To nalasex01a.na.qualcomm.com (10.47.209.196) X-QCInternal: smtphost X-Proofpoint-ORIG-GUID: 3jS-GlKYADZngu3XBF8uqZaHOY8qNDK6 X-Proofpoint-GUID: 3jS-GlKYADZngu3XBF8uqZaHOY8qNDK6 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,quic_rcran@quicinc.com X-Gm-Message-State: sYSf5hg6nzKVENHPQVJqNVtEx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1676605892; bh=GYW2LzN6nQ6A6K27bi6VrADIZXfV+CODWBIVN2jg23o=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=kT1uFmF0cGWsnLpRaNMLzWH/bm9PlGH7sojFEyKyfQjnPqmiNxF71qspJyDCYDaxxtI KVJhaJtpXYw0zobZLhrrs01JCKU+o987uT+AXHOlHqx3MpBFeOkHSwI+HGJKDcpx4TWiR wx6zHQok9pHvUHsYkBcITpwlYaKX1T3rCws= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1676605893260100002 Content-Type: text/plain; charset="utf-8" In https://bugzilla.tianocore.org/show_bug.cgi?id=3D2842 clang support was added by having users specify "make CXX=3Dllvm" when building BaseTools. Improve the detection of when a user wants to use the clang toolchain: instead of checking if CXX=3Dllvm (which in most cases doesn't make sense, because the C++ compiler won't be run via an 'llvm' command), run '$(CC) --version | grep clang' to see if the compiler's version string contains 'clang', and if so configure the environment. This provides flexibility to specify for example CC=3Dclang-17 CXX=3Dclang++-17 if multiple versions are installed. Signed-off-by: Rebecca Cran --- BaseTools/Source/C/DevicePath/GNUmakefile | 3 ++- BaseTools/Source/C/Makefiles/header.makefile | 7 ++++--- BaseTools/Source/C/VfrCompile/GNUmakefile | 3 ++- BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile | 2 +- BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile | 3 ++- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/BaseTools/Source/C/DevicePath/GNUmakefile b/BaseTools/Source/C= /DevicePath/GNUmakefile index 3afc7fc0504e..f61b1b2f171d 100644 --- a/BaseTools/Source/C/DevicePath/GNUmakefile +++ b/BaseTools/Source/C/DevicePath/GNUmakefile @@ -14,8 +14,9 @@ OBJECTS =3D DevicePath.o UefiDevicePathLib.o DevicePathFr= omText.o DevicePathUtili include $(MAKEROOT)/Makefiles/app.makefile =20 GCCVERSION =3D $(shell $(CC) -dumpversion | awk -F'.' '{print $$1}') +CLANG :=3D $(shell $(CC) --version | grep clang) ifneq ("$(GCCVERSION)", "5") -ifneq ($(CXX), llvm) +ifeq ($(CLANG),) ifneq ($(DARWIN),Darwin) # gcc 12 trips over device path handling CFLAGS +=3D -Wno-error=3Dstringop-overflow diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Sourc= e/C/Makefiles/header.makefile index 347918c7d4fa..bcc2791998b0 100644 --- a/BaseTools/Source/C/Makefiles/header.makefile +++ b/BaseTools/Source/C/Makefiles/header.makefile @@ -44,7 +44,8 @@ endif CYGWIN:=3D$(findstring CYGWIN, $(shell uname -s)) LINUX:=3D$(findstring Linux, $(shell uname -s)) DARWIN:=3D$(findstring Darwin, $(shell uname -s)) -ifeq ($(CXX), llvm) +CLANG:=3D$(shell $(CC) --version | grep clang) +ifneq ($(CLANG),) CC ?=3D $(CLANG_BIN)clang CXX ?=3D $(CLANG_BIN)clang++ AS ?=3D $(CLANG_BIN)clang @@ -91,7 +92,7 @@ ifeq ($(DARWIN),Darwin) CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror \ -Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib= -g else -ifeq ($(CXX), llvm) +ifneq ($(CLANG),) CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwrapv \ -fno-delete-null-pointer-checks -Wall -Werror \ -Wno-deprecated-declarations -Wno-self-assign \ @@ -103,7 +104,7 @@ CFLAGS =3D -MD -fshort-wchar -fno-strict-aliasing -fwra= pv \ -Wno-unused-result -nostdlib -g endif endif -ifeq ($(CXX), llvm) +ifneq ($(CLANG),) LDFLAGS =3D CXXFLAGS =3D -Wno-deprecated-register -Wno-unused-result else diff --git a/BaseTools/Source/C/VfrCompile/GNUmakefile b/BaseTools/Source/C= /VfrCompile/GNUmakefile index 9fbaaaba21d7..fdd19f55f77e 100644 --- a/BaseTools/Source/C/VfrCompile/GNUmakefile +++ b/BaseTools/Source/C/VfrCompile/GNUmakefile @@ -16,7 +16,8 @@ TOOL_INCLUDE =3D -I Pccts/h #OBJECTS =3D VfrSyntax.o VfrServices.o DLGLexer.o EfiVfrParser.o ATokenBuf= fer.o DLexerBase.o AParser.o OBJECTS =3D AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.= o VfrSyntax.o \ VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o -ifeq ($(CXX), llvm) +CLANG:=3D$(shell $(CC) --version | grep clang) +ifneq ($(CLANG),) VFR_CPPFLAGS =3D -Wno-deprecated-register -DPCCTS_USE_NAMESPACE_STD $(CPPF= LAGS) else VFR_CPPFLAGS =3D -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS) diff --git a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile b/BaseTools= /Source/C/VfrCompile/Pccts/antlr/makefile index 558d2f7b0111..42b603571fab 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile +++ b/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile @@ -164,7 +164,7 @@ PCCTS_H=3D../h # # UNIX (default) # -ifeq ($(CXX), llvm) +ifneq ($(CLANG),) CC?=3D$(CLANG_BIN)clang else ifeq ($(origin CC),default) CC=3Dgcc diff --git a/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile b/BaseTools/S= ource/C/VfrCompile/Pccts/dlg/makefile index e214b35ab5e1..69dac6a59789 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile +++ b/BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile @@ -114,7 +114,8 @@ PCCTS_H=3D../h # # UNIX # -ifeq ($(CXX), llvm) +CLANG:=3D$(shell $(CC) --version | grep clang) +ifneq ($(CLANG),) CC?=3D$(CLANG_BIN)clang else ifeq ($(origin CC),default) CC=3Dcc --=20 2.30.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#100297): https://edk2.groups.io/g/devel/message/100297 Mute This Topic: https://groups.io/mt/97022153/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 05:54:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+100295+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100295+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=quicinc.com ARC-Seal: i=1; a=rsa-sha256; t=1676605886; cv=none; d=zohomail.com; s=zohoarc; b=Eejpf9whm0HfL3tslNdaH8hHCHNIbO2oBZz2s9ko7Ua+xTz6MjyQ0zTUBPjvA+uS2YY1hBM6gJ4omk/pzKcSZ92dUayUepEaLQijAuzG65g77tK8FQWS57oXJDlaFnxEkOClqOF2WxefnSwjeEMxhc9XsX7ta+VZP5AcCxoh0ds= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1676605886; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=Ds6PlAucXbXcSC7o0VHQxncvLV0uWx/0RhcN2jLAfoc=; b=HjVoPR3dD5j73DJn6kRdXv6ovm+OQD02L5o9Imv08nf+QQHqfkKcCkQlJhmBNMiNKmp6eFT5GdH5h0HWEQmPcrmp265hbOFECIilqSzGTriugPTl+Dm/V6wLQFKr3ZQh3bBqN4k4yss/C7P1cC9ExJRULRj9nwINLxOGKu8uMzo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+100295+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1676605886813795.8169474239372; Thu, 16 Feb 2023 19:51:26 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id LIDTYY1788612xWcw9ljGmFB; Thu, 16 Feb 2023 19:51:26 -0800 X-Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) by mx.groups.io with SMTP id smtpd.web11.31084.1676605885815720148 for ; Thu, 16 Feb 2023 19:51:25 -0800 X-Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 31H2b2A9025227; Fri, 17 Feb 2023 03:51:17 GMT X-Received: from nalasppmta04.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3ns0hkn3vv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:16 +0000 X-Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA04.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 31H3pGOi016390 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 17 Feb 2023 03:51:16 GMT X-Received: from linbox.qualcomm.com (10.80.80.8) by nalasex01a.na.qualcomm.com (10.47.209.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Thu, 16 Feb 2023 19:51:15 -0800 From: "Rebecca Cran" To: , Andrew Fish , Leif Lindholm , Michael D Kinney , Bob Feng , Liming Gao , "Yuwei Chen" CC: Rebecca Cran Subject: [edk2-devel] [PATCH 3/3] BaseTools: Build against C++14 when building with clang Date: Thu, 16 Feb 2023 20:51:01 -0700 Message-ID: <20230217035101.880854-4-rebecca@quicinc.com> In-Reply-To: <20230217035101.880854-1-rebecca@quicinc.com> References: <20230217035101.880854-1-rebecca@quicinc.com> MIME-Version: 1.0 X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To nalasex01a.na.qualcomm.com (10.47.209.196) X-QCInternal: smtphost X-Proofpoint-ORIG-GUID: R0CZXMQN1ZhloiWubsTijVZn-EUjgGYV X-Proofpoint-GUID: R0CZXMQN1ZhloiWubsTijVZn-EUjgGYV Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,quic_rcran@quicinc.com X-Gm-Message-State: pwrhc6s8OdEUfd0fOioPcWo7x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1676605886; bh=ZWR/KE41dm+fdcWl291iL7ADoFFMOiHSlzEARHrhk0E=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=AMUi6DpWdkqqIjpS/zw39VcPhvEagwQW5FdVF8Fn2zQ4x+nBZRmmCR8zspVz9YaCU1H o7SxRUg5AnADNyrXAP9dqN3x7L/oy5HEzWKd0pMMAKeRCYcin7qrJbaH9M7Gc81hVVkHT H9uD29/d4jyPfpAHQ+ezCIevd7Gfl6m7fZM= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1676605887190100001 Content-Type: text/plain; charset="utf-8" clang 17 defaults to C++17, where the 'register' keyword is deprecated and the warning changed to an error. To avoid build errors, compile against C++14 by specifying '-std=3Dc++14' in CXXFLAGS. Signed-off-by: Rebecca Cran Acked-by: Gerd Hoffmann --- BaseTools/Source/C/Makefiles/header.makefile | 2 +- BaseTools/Source/C/VfrCompile/GNUmakefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Sourc= e/C/Makefiles/header.makefile index bcc2791998b0..1bf003523baf 100644 --- a/BaseTools/Source/C/Makefiles/header.makefile +++ b/BaseTools/Source/C/Makefiles/header.makefile @@ -106,7 +106,7 @@ endif endif ifneq ($(CLANG),) LDFLAGS =3D -CXXFLAGS =3D -Wno-deprecated-register -Wno-unused-result +CXXFLAGS =3D -Wno-deprecated-register -Wno-unused-result -std=3Dc++14 else LDFLAGS =3D CXXFLAGS =3D -Wno-unused-result diff --git a/BaseTools/Source/C/VfrCompile/GNUmakefile b/BaseTools/Source/C= /VfrCompile/GNUmakefile index fdd19f55f77e..7d851c38887c 100644 --- a/BaseTools/Source/C/VfrCompile/GNUmakefile +++ b/BaseTools/Source/C/VfrCompile/GNUmakefile @@ -23,7 +23,7 @@ else VFR_CPPFLAGS =3D -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS) endif # keep BUILD_OPTFLAGS last -VFR_CXXFLAGS =3D $(BUILD_OPTFLAGS) +VFR_CXXFLAGS =3D $(BUILD_OPTFLAGS) -std=3Dc++14 =20 # keep EXTRA_LDFLAGS last VFR_LFLAGS =3D $(EXTRA_LDFLAGS) --=20 2.30.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#100295): https://edk2.groups.io/g/devel/message/100295 Mute This Topic: https://groups.io/mt/97022150/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-