On Thu, Aug 8, 2019 at 2:07 PM Guillaume Tucker <guillaume.tucker@xxxxxxxxxxxxx> wrote: > > Only use gcc/g++ for HOSTCC, HOSTCXX and CC by default if they are not > already defined in the environment. This fixes cases such as building > host tools with clang without having gcc installed. > > The issue was initially hit when running merge_config.sh with clang > only as it failed to build "HOSTCC scripts/basic/fixdep". Thanks for the patch. I don't quite follow the exact error. When building with Clang, I usually do: $ make CC=clang HOSTCC=clang ... are you trying to fix the case where you do: $ make CC=clang ... <no HOSTCC set> when GCC is not installed? Because if so, I think it would be easier to just specify HOSTCC=clang, but maybe I'm misunderstanding the issue? > > Signed-off-by: Guillaume Tucker <guillaume.tucker@xxxxxxxxxxxxx> > --- > Makefile | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/Makefile b/Makefile > index 23cdf1f41364..c8608126750d 100644 > --- a/Makefile > +++ b/Makefile > @@ -400,8 +400,8 @@ HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS 2>/dev/null) > HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS 2>/dev/null) > HOST_LFS_LIBS := $(shell getconf LFS_LIBS 2>/dev/null) > > -HOSTCC = gcc > -HOSTCXX = g++ > +HOSTCC ?= gcc > +HOSTCXX ?= g++ > KBUILD_HOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 \ > -fomit-frame-pointer -std=gnu89 $(HOST_LFS_CFLAGS) \ > $(HOSTCFLAGS) > @@ -412,7 +412,7 @@ KBUILD_HOSTLDLIBS := $(HOST_LFS_LIBS) $(HOSTLDLIBS) > # Make variables (CC, etc...) > AS = $(CROSS_COMPILE)as > LD = $(CROSS_COMPILE)ld > -CC = $(CROSS_COMPILE)gcc > +CC ?= $(CROSS_COMPILE)gcc > CPP = $(CC) -E > AR = $(CROSS_COMPILE)ar > NM = $(CROSS_COMPILE)nm > -- > 2.20.1 > -- Thanks, ~Nick Desaulniers