In https://bugzilla.tianocore.org/show_bug.cgi?id=2842 clang support was added by having users specify "make CXX=llvm" when building BaseTools. The Makefile then sees that and sets CC=$(CLANG_BIN)clang and CXX=$(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=clang CXX=clang++'. Signed-off-by: Rebecca Cran <rebecca@quicinc.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
ANTLR 1.33 This directory contains the files necessary to build ANTLR. If you do a "make scrub", ANTLR will have to run on antlr.g and DLG will have to run on parser.dlg. Either (1) ANTLR uses the previous antlr in that directory to rebuild itself (2) Needs to find antlr on the search path You will find that running "antlr -gh antlr.g" will result in about 10 ambiguity warnings. These are normal. Don't worry. If you do a "make clean" right after installation, ANTLR and DLG should not need to run; only the C files will compile. Don't forget to go into the makefile to uncomment the appropriate definitions for your OS/architecture/compiler or see the appropriate NOTES.?? file.