Re: [PATCH v4 1/2] Makefile: infer --target from ARCH for CC=clang

From: Nick Desaulniers
Date: Fri Jul 30 2021 - 17:58:57 EST


On Fri, Jul 30, 2021 at 2:54 PM Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
>
> On Fri, Jul 30, 2021 at 1:17 PM Nick Desaulniers
> <ndesaulniers@xxxxxxxxxx> wrote:
> >
> > +ifeq ($(SRCARCH),arm)
> > +CLANG_FLAGS += --target=arm-linux-gnueabi
> ..,.
>
> Ugh.
>
> A wise man once said: "All problems in computer science can be solved
> with another level of indirection".
>
> Just do it like this:
>
> CLANG_TARGET_FLAGS_arm = arm-linux-gnueabi
> CLANG_TARGET_FLAGS_hexagon = hexagon-linux-gnu
> ..
> CLANG_TARGET_FLAGS = $(CLANG_TARGET_FLAGS_$(ARCH))
>
> Which is a lot denser and simpler.
>
> And then the only if-statement can be something along the lines of
>
> ifeq ($(CLANG_TARGET_FLAGS),)
> $(error Specify clang target flags)
> else
> CLANG_FLAGS += --target=$(CLANG_TARGET_FLAGS)
> endif

D'oh, just sent v5 before seeing this. SGTM will work on v6.

>
> Plus add *random handwaving* about all the details for CROSS_COMPILE
> and friends.
>
> Linus



--
Thanks,
~Nick Desaulniers