[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4881796E12491D4BB15146FE0209CE6468174FFF@DE02WEMBXB.internal.synopsys.com>
Date: Wed, 17 Oct 2018 14:33:02 +0000
From: Alexey Brodkin <alexey.brodkin@...opsys.com>
To: "stable@...r.kernel.org" <stable@...r.kernel.org>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"Vineet Gupta" <vineet.gupta1@...opsys.com>,
Masahiro Yamada <yamada.masahiro@...ionext.com>,
Rob Herring <robh@...nel.org>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"linux-snps-arc@...ts.infradead.org"
<linux-snps-arc@...ts.infradead.org>
Subject: RE: [PATCH] ARC: Don't set CROSS_COMPILE in arch's Makefile
Hello,
> -----Original Message-----
> From: Alexey Brodkin [mailto:abrodkin@...opsys.com]
> Sent: Sunday, September 16, 2018 11:48 PM
> To: linux-snps-arc@...ts.infradead.org
> Cc: linux-kernel@...r.kernel.org; Vineet Gupta <vgupta@...opsys.com>; Alexey Brodkin <abrodkin@...opsys.com>; Masahiro
> Yamada <yamada.masahiro@...ionext.com>; Rob Herring <robh@...nel.org>
> Subject: [PATCH] ARC: Don't set CROSS_COMPILE in arch's Makefile
>
> There's not much sense in doing that because if user or
> his build-system didn't set CROSS_COMPILE we still may
> very well make incorrect guess.
>
> But as it turned out setting CROSS_COMPILE is not as harmless
> as one may think: with recent changes that implemented automatic
> discovery of __host__ gcc features unconditional setup of
> CROSS_COMPILE leads to failures on execution of "make xxx_defconfig"
> with absent cross-compiler, for more info see [1].
>
> Set CROSS_COMPILE as well gets in the way if we want only to build
> .dtb's (again with absent cross-compiler which is not really needed
> for building .dtb's), see [2].
>
> Note, we had to change LIBGCC assignment type from ":=" to "="
> so that is is resolved on its usage, otherwise if it is resolved
> at declaration time with missing CROSS_COMPILE we're getting this
> error message from host GCC:
> ------------------------->8-------------------------
> gcc: error: unrecognized command line option ‘-mmedium-calls’
> gcc: error: unrecognized command line option ‘-mno-sdata’; did you mean ‘-fno-stats’?
> ------------------------->8-------------------------
>
> [1] http://lists.infradead.org/pipermail/linux-snps-arc/2018-September/004308.html
> [2] http://lists.infradead.org/pipermail/linux-snps-arc/2018-September/004320.html
>
> Signed-off-by: Alexey Brodkin <abrodkin@...opsys.com>
> Cc: Masahiro Yamada <yamada.masahiro@...ionext.com>
> Cc: Rob Herring <robh@...nel.org>
> ---
> arch/arc/Makefile | 10 +---------
> 1 file changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> index 99cce77ab98f..5f6b67917dc2 100644
> --- a/arch/arc/Makefile
> +++ b/arch/arc/Makefile
> @@ -6,14 +6,6 @@
> # published by the Free Software Foundation.
> #
>
> -ifeq ($(CROSS_COMPILE),)
> -ifndef CONFIG_CPU_BIG_ENDIAN
> -CROSS_COMPILE := arc-linux-
> -else
> -CROSS_COMPILE := arceb-linux-
> -endif
> -endif
> -
> KBUILD_DEFCONFIG := nsim_700_defconfig
>
> cflags-y += -fno-common -pipe -fno-builtin -mmedium-calls -D__linux__
> @@ -79,7 +71,7 @@ cflags-$(disable_small_data) += -mno-sdata -fcall-used-gp
> cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mbig-endian
> ldflags-$(CONFIG_CPU_BIG_ENDIAN) += -EB
>
> -LIBGCC := $(shell $(CC) $(cflags-y) --print-libgcc-file-name)
> +LIBGCC = $(shell $(CC) $(cflags-y) --print-libgcc-file-name)
>
> # Modules with short calls might break for calls into builtin-kernel
> KBUILD_CFLAGS_MODULE += -mlong-calls -mno-millicode
> --
> 2.17.1
May we have this one back-ported to stable branches?
Upstream commit in Linus' tree is:
40660f1fcee8 ("ARC: build: Don't set CROSS_COMPILE in arch's Makefile").
Regards,
Alexey
Powered by blists - more mailing lists