Re: [PATCH v2 2/2] kbuild: consolidate Clang compiler flags

From: Michael Ellerman
Date: Sun Nov 11 2018 - 20:05:47 EST


Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> writes:
> On Sat, Nov 10, 2018 at 3:35 AM Greg Hackmann <ghackmann@xxxxxxxxxx> wrote:
>>
>> On 11/09/2018 10:29 AM, Nick Desaulniers wrote:
>> > On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada
>> > <yamada.masahiro@xxxxxxxxxxxxx> wrote:
>> >>
>> >> Collect basic Clang options such as --target, --prefix, --gcc-toolchain,
>> >> -no-integrated-as into a single variable CLANG_FLAGS so that it can be
>> >> easily reused in other parts of Makefile.
>> >>
>> >> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
>> >> ---
>> >>
>> >> Changes in v2:
>> >> - Use := flavor instead of = because $(CLANG_FLAGS) is expanded soon anyway
>> >>
>> >> Makefile | 13 ++++++-------
>> >> 1 file changed, 6 insertions(+), 7 deletions(-)
>> >>
>> >> diff --git a/Makefile b/Makefile
>> >> index da11700..e173a73 100644
>> >> --- a/Makefile
>> >> +++ b/Makefile
>> >> @@ -487,18 +487,17 @@ endif
>> >>
>> >> ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),)
>> >> ifneq ($(CROSS_COMPILE),)
>> >> -CLANG_TARGET := --target=$(notdir $(CROSS_COMPILE:%-=%))
>> >> +CLANG_FLAGS := --target=$(notdir $(CROSS_COMPILE:%-=%))
>> >> GCC_TOOLCHAIN_DIR := $(dir $(shell which $(LD)))
>> >> -CLANG_PREFIX := --prefix=$(GCC_TOOLCHAIN_DIR)
>> >> +CLANG_FLAGS += --prefix=$(GCC_TOOLCHAIN_DIR)
>> >> GCC_TOOLCHAIN := $(realpath $(GCC_TOOLCHAIN_DIR)/..)
>> >> endif
>> >> ifneq ($(GCC_TOOLCHAIN),)
>> >> -CLANG_GCC_TC := --gcc-toolchain=$(GCC_TOOLCHAIN)
>> >> +CLANG_FLAGS += --gcc-toolchain=$(GCC_TOOLCHAIN)
>> >> endif
>> >> -KBUILD_CFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) $(CLANG_PREFIX)
>> >> -KBUILD_AFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) $(CLANG_PREFIX)
>> >> -KBUILD_CFLAGS += -no-integrated-as
>> >> -KBUILD_AFLAGS += -no-integrated-as
>> >> +CLANG_FLAGS += -no-integrated-as
>> >> +KBUILD_CFLAGS += $(CLANG_FLAGS)
>> >> +KBUILD_AFLAGS += $(CLANG_FLAGS)
>> >> endif
>> >>
>> >> RETPOLINE_CFLAGS_GCC := -mindirect-branch=thunk-extern -mindirect-branch-register
>> >> --
>> >> 2.7.4
>> >>
>> >
>> > Thanks for this patch, Masahiro, it's a good simplification.
>> > Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
>> > Tested-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
>> >
>> > Would you mind waiting for a tested-by from Stefan, and maybe an ack
>> > from Greg (added to cc)?
>> >
>>
>> Acked-by: Greg Hackmann <ghackmann@xxxxxxxxxx>
>
>
> Thanks for your review!
>
>
> So, how to organize this series, and Joel's one together?
>
> I'd like Joel to use this series as a base for his work.
> (https://lore.kernel.org/patchwork/patch/1006696/)
>
> It will be much cleaner.
>
>
> Shall I merge all the patches to kbuild tree, or
> maybe will they go through powerpc tree?

Joel's changes are fairly small so you may as well merge them along with
the rest of the series, if that's OK with you and Joel.

cheers