diff mbox series

[v2,2/2] kbuild: consolidate Clang compiler flags

Message ID 1541473495-25262-2-git-send-email-yamada.masahiro@socionext.com
State Accepted
Commit 238bcbc4e07fad2fff99c5b157d0c37ccd4d093c
Headers show
Series [v2,1/2] kbuild: add -no-integrated-as Clang option unconditionally | expand

Commit Message

Masahiro Yamada Nov. 6, 2018, 3:04 a.m. UTC
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@socionext.com>

---

Changes in v2:
 - Use := flavor instead of = because $(CLANG_FLAGS) is expanded soon anyway

 Makefile | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

-- 
2.7.4

Comments

Nick Desaulniers Nov. 9, 2018, 6:29 p.m. UTC | #1
On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada
<yamada.masahiro@socionext.com> 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@socionext.com>

> ---

>

> 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@google.com>

Tested-by: Nick Desaulniers <ndesaulniers@google.com>


Would you mind waiting for a tested-by from Stefan, and maybe an ack
from Greg (added to cc)?
-- 
Thanks,
~Nick Desaulniers
Greg Hackmann Nov. 9, 2018, 6:34 p.m. UTC | #2
On 11/09/2018 10:29 AM, Nick Desaulniers wrote:
> On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada

> <yamada.masahiro@socionext.com> 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@socionext.com>

>> ---

>>

>> 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@google.com>

> Tested-by: Nick Desaulniers <ndesaulniers@google.com>

> 

> Would you mind waiting for a tested-by from Stefan, and maybe an ack

> from Greg (added to cc)?

> 


Acked-by: Greg Hackmann <ghackmann@google.com>
Masahiro Yamada Nov. 11, 2018, 2:03 p.m. UTC | #3
On Sat, Nov 10, 2018 at 3:35 AM Greg Hackmann <ghackmann@google.com> wrote:
>

> On 11/09/2018 10:29 AM, Nick Desaulniers wrote:

> > On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada

> > <yamada.masahiro@socionext.com> 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@socionext.com>

> >> ---

> >>

> >> 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@google.com>

> > Tested-by: Nick Desaulniers <ndesaulniers@google.com>

> >

> > Would you mind waiting for a tested-by from Stefan, and maybe an ack

> > from Greg (added to cc)?

> >

>

> Acked-by: Greg Hackmann <ghackmann@google.com>



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?




--
Best Regards
Masahiro Yamada
Michael Ellerman Nov. 12, 2018, 1:05 a.m. UTC | #4
Masahiro Yamada <yamada.masahiro@socionext.com> writes:
> On Sat, Nov 10, 2018 at 3:35 AM Greg Hackmann <ghackmann@google.com> wrote:

>>

>> On 11/09/2018 10:29 AM, Nick Desaulniers wrote:

>> > On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada

>> > <yamada.masahiro@socionext.com> 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@socionext.com>

>> >> ---

>> >>

>> >> 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@google.com>

>> > Tested-by: Nick Desaulniers <ndesaulniers@google.com>

>> >

>> > Would you mind waiting for a tested-by from Stefan, and maybe an ack

>> > from Greg (added to cc)?

>> >

>>

>> Acked-by: Greg Hackmann <ghackmann@google.com>

>

>

> 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
Masahiro Yamada Nov. 12, 2018, 3:28 a.m. UTC | #5
On Mon, Nov 12, 2018 at 10:05 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
>

> Masahiro Yamada <yamada.masahiro@socionext.com> writes:

> > On Sat, Nov 10, 2018 at 3:35 AM Greg Hackmann <ghackmann@google.com> wrote:

> >>

> >> On 11/09/2018 10:29 AM, Nick Desaulniers wrote:

> >> > On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada

> >> > <yamada.masahiro@socionext.com> 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@socionext.com>

> >> >> ---

> >> >>

> >> >> 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@google.com>

> >> > Tested-by: Nick Desaulniers <ndesaulniers@google.com>

> >> >

> >> > Would you mind waiting for a tested-by from Stefan, and maybe an ack

> >> > from Greg (added to cc)?

> >> >

> >>

> >> Acked-by: Greg Hackmann <ghackmann@google.com>

> >

> >

> > 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.



OK, I will.


Joel,
If you send v2, I will merge it to kbuild tree.



Thanks.



-- 
Best Regards
Masahiro Yamada
Joel Stanley Nov. 12, 2018, 4:22 a.m. UTC | #6
On Mon, 12 Nov 2018 at 13:59, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>

> On Mon, Nov 12, 2018 at 10:05 AM Michael Ellerman <mpe@ellerman.id.au> wrote:

> >

> > Masahiro Yamada <yamada.masahiro@socionext.com> writes:

> > > On Sat, Nov 10, 2018 at 3:35 AM Greg Hackmann <ghackmann@google.com> wrote:

> > >>

> > >> On 11/09/2018 10:29 AM, Nick Desaulniers wrote:

> > >> > On Mon, Nov 5, 2018 at 7:05 PM Masahiro Yamada

> > >> > <yamada.masahiro@socionext.com> 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@socionext.com>

> > >> >> ---

> > >> >>

> > >> >> 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@google.com>

> > >> > Tested-by: Nick Desaulniers <ndesaulniers@google.com>

> > >> >

> > >> > Would you mind waiting for a tested-by from Stefan, and maybe an ack

> > >> > from Greg (added to cc)?

> > >> >

> > >>

> > >> Acked-by: Greg Hackmann <ghackmann@google.com>

> > >

> > >

> > > 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.

>

>

> OK, I will.

>

>

> Joel,

> If you send v2, I will merge it to kbuild tree.


Thanks, I've done that now.

Cheers,

Joel
Masahiro Yamada Nov. 13, 2018, 11:25 p.m. UTC | #7
On Tue, Nov 6, 2018 at 12:06 PM Masahiro Yamada
<yamada.masahiro@socionext.com> 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@socionext.com>

> ---



Applied to linux-kbuild.


> 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

>



-- 
Best Regards
Masahiro Yamada
diff mbox series

Patch

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