2021-05-01 17:44:18

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 1/2] kbuild: remove ARCH=sh64 support from top Makefile

Commit 37744feebc08 ("sh: remove sh5 support") removed the SUPERH64
support entirely.

Remove the left-over code from the top Makefile.

Signed-off-by: Masahiro Yamada <[email protected]>
---

Makefile | 5 -----
1 file changed, 5 deletions(-)

diff --git a/Makefile b/Makefile
index 3597fd75d5b5..cbf4b18cf51c 100644
--- a/Makefile
+++ b/Makefile
@@ -399,11 +399,6 @@ ifeq ($(ARCH),sparc64)
SRCARCH := sparc
endif

-# Additional ARCH settings for sh
-ifeq ($(ARCH),sh64)
- SRCARCH := sh
-endif
-
export cross_compiling :=
ifneq ($(SRCARCH),$(SUBARCH))
cross_compiling := 1
--
2.27.0


2021-05-01 17:45:38

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 2/2] arch: use cross_compiling to check whether it is a cross build or not

'cross_compiling' is defined by the top Makefile and available for
arch Makefiles to check whether it is a cross build or not. A good
thing is the variable name 'cross_compiling' is self-documenting.

This is a simple replacement for m68k, mips, sh, for which $(ARCH)
and $(SRCARCH) always match.

No functional change is intended for xtensa, either.

This is rather a fix for parisc because arch/parisc/Makefile defines
UTS_MATCHINE depending on CONFIG_64BIT, therefore cc-cross-prefix
is not working in Kconfig time.

Signed-off-by: Masahiro Yamada <[email protected]>
---

arch/m68k/Makefile | 2 +-
arch/mips/Makefile | 2 +-
arch/parisc/Makefile | 2 +-
arch/sh/Makefile | 2 +-
arch/xtensa/Makefile | 6 +-----
5 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/arch/m68k/Makefile b/arch/m68k/Makefile
index ea14f2046fb4..82620f14124d 100644
--- a/arch/m68k/Makefile
+++ b/arch/m68k/Makefile
@@ -16,7 +16,7 @@

KBUILD_DEFCONFIG := multi_defconfig

-ifneq ($(SUBARCH),$(ARCH))
+ifdef cross_compiling
ifeq ($(CROSS_COMPILE),)
CROSS_COMPILE := $(call cc-cross-prefix, \
m68k-linux-gnu- m68k-linux- m68k-unknown-linux-gnu-)
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index e71d587af49c..258234c35a09 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -50,7 +50,7 @@ tool-archpref = $(64bit-tool-archpref)
UTS_MACHINE := mips64
endif

-ifneq ($(SUBARCH),$(ARCH))
+ifdef cross_compiling
ifeq ($(CROSS_COMPILE),)
CROSS_COMPILE := $(call cc-cross-prefix, $(tool-archpref)-linux- $(tool-archpref)-linux-gnu- $(tool-archpref)-unknown-linux-gnu-)
endif
diff --git a/arch/parisc/Makefile b/arch/parisc/Makefile
index 7d9f71aa829a..aed8ea29268b 100644
--- a/arch/parisc/Makefile
+++ b/arch/parisc/Makefile
@@ -41,7 +41,7 @@ endif

export LD_BFD

-ifneq ($(SUBARCH),$(UTS_MACHINE))
+ifdef cross_compiling
ifeq ($(CROSS_COMPILE),)
CC_SUFFIXES = linux linux-gnu unknown-linux-gnu
CROSS_COMPILE := $(call cc-cross-prefix, \
diff --git a/arch/sh/Makefile b/arch/sh/Makefile
index 3bcbf52fb30e..44bcb80e791a 100644
--- a/arch/sh/Makefile
+++ b/arch/sh/Makefile
@@ -9,7 +9,7 @@
# License. See the file "COPYING" in the main directory of this archive
# for more details.
#
-ifneq ($(SUBARCH),$(ARCH))
+ifdef cross_compiling
ifeq ($(CROSS_COMPILE),)
CROSS_COMPILE := $(call cc-cross-prefix, sh-linux- sh-linux-gnu- sh-unknown-linux-gnu-)
endif
diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index ba9fee75e675..e9c8f064c44d 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -19,12 +19,8 @@ variant-y := $(patsubst "%",%,$(CONFIG_XTENSA_VARIANT_NAME))
VARIANT = $(variant-y)
export VARIANT

-# Test for cross compiling
-
ifneq ($(VARIANT),)
- COMPILE_ARCH = $(shell uname -m)
-
- ifneq ($(COMPILE_ARCH), xtensa)
+ ifdef cross_compiling
ifndef CROSS_COMPILE
CROSS_COMPILE = xtensa_$(VARIANT)-
endif
--
2.27.0

2021-05-01 21:19:49

by Arnd Bergmann

[permalink] [raw]
Subject: Re: [PATCH 1/2] kbuild: remove ARCH=sh64 support from top Makefile

On Sat, May 1, 2021 at 7:26 PM Masahiro Yamada <[email protected]> wrote:
>
> Commit 37744feebc08 ("sh: remove sh5 support") removed the SUPERH64
> support entirely.
>
> Remove the left-over code from the top Makefile.
>
> Signed-off-by: Masahiro Yamada <[email protected]>

Good catch!

Acked-by: Arnd Bergmann <[email protected]>

2021-05-03 18:07:36

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH 2/2] arch: use cross_compiling to check whether it is a cross build or not

Hi Yamada-san,

On Sat, May 1, 2021 at 7:26 PM Masahiro Yamada <[email protected]> wrote:
> 'cross_compiling' is defined by the top Makefile and available for
> arch Makefiles to check whether it is a cross build or not. A good
> thing is the variable name 'cross_compiling' is self-documenting.
>
> This is a simple replacement for m68k, mips, sh, for which $(ARCH)
> and $(SRCARCH) always match.
>
> No functional change is intended for xtensa, either.
>
> This is rather a fix for parisc because arch/parisc/Makefile defines
> UTS_MATCHINE depending on CONFIG_64BIT, therefore cc-cross-prefix
> is not working in Kconfig time.
>
> Signed-off-by: Masahiro Yamada <[email protected]>

> arch/m68k/Makefile | 2 +-

Acked-by: Geert Uytterhoeven <[email protected]>

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2021-05-03 18:07:36

by Helge Deller

[permalink] [raw]
Subject: Re: [PATCH 2/2] arch: use cross_compiling to check whether it is a cross build or not

On 5/1/21 7:24 PM, Masahiro Yamada wrote:
> 'cross_compiling' is defined by the top Makefile and available for
> arch Makefiles to check whether it is a cross build or not. A good
> thing is the variable name 'cross_compiling' is self-documenting.
>
> This is a simple replacement for m68k, mips, sh, for which $(ARCH)
> and $(SRCARCH) always match.
>
> No functional change is intended for xtensa, either.
>
> This is rather a fix for parisc because arch/parisc/Makefile defines
> UTS_MATCHINE depending on CONFIG_64BIT, therefore cc-cross-prefix
> is not working in Kconfig time.
>
> Signed-off-by: Masahiro Yamada <[email protected]>
> arch/m68k/Makefile | 2 +-
> arch/mips/Makefile | 2 +-
> arch/parisc/Makefile | 2 +-

Acked-by: Helge Deller <[email protected]> # parisc

Thanks!
Helge

2021-05-04 09:48:21

by Max Filippov

[permalink] [raw]
Subject: Re: [PATCH 2/2] arch: use cross_compiling to check whether it is a cross build or not

On Sat, May 1, 2021 at 10:25 AM Masahiro Yamada <[email protected]> wrote:
>
> 'cross_compiling' is defined by the top Makefile and available for
> arch Makefiles to check whether it is a cross build or not. A good
> thing is the variable name 'cross_compiling' is self-documenting.
>
> This is a simple replacement for m68k, mips, sh, for which $(ARCH)
> and $(SRCARCH) always match.
>
> No functional change is intended for xtensa, either.
>
> This is rather a fix for parisc because arch/parisc/Makefile defines
> UTS_MATCHINE depending on CONFIG_64BIT, therefore cc-cross-prefix
> is not working in Kconfig time.
>
> Signed-off-by: Masahiro Yamada <[email protected]>
> ---
>
> arch/m68k/Makefile | 2 +-
> arch/mips/Makefile | 2 +-
> arch/parisc/Makefile | 2 +-
> arch/sh/Makefile | 2 +-
> arch/xtensa/Makefile | 6 +-----
> 5 files changed, 5 insertions(+), 9 deletions(-)

Acked-by: Max Filippov <[email protected]> # xtensa

--
Thanks.
-- Max

2021-05-05 21:57:42

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH 1/2] kbuild: remove ARCH=sh64 support from top Makefile

On Sun, May 2, 2021 at 6:19 AM Arnd Bergmann <[email protected]> wrote:
>
> On Sat, May 1, 2021 at 7:26 PM Masahiro Yamada <[email protected]> wrote:
> >
> > Commit 37744feebc08 ("sh: remove sh5 support") removed the SUPERH64
> > support entirely.
> >
> > Remove the left-over code from the top Makefile.
> >
> > Signed-off-by: Masahiro Yamada <[email protected]>
>
> Good catch!
>
> Acked-by: Arnd Bergmann <[email protected]>


Applied to linux-kbuild.
--
Best Regards
Masahiro Yamada

2021-05-06 12:18:32

by Rob Landley

[permalink] [raw]
Subject: Re: [PATCH 2/2] arch: use cross_compiling to check whether it is a cross build or not

On 5/1/21 12:24 PM, Masahiro Yamada wrote:
> 'cross_compiling' is defined by the top Makefile and available for
> arch Makefiles to check whether it is a cross build or not. A good
> thing is the variable name 'cross_compiling' is self-documenting.
>
> This is a simple replacement for m68k, mips, sh, for which $(ARCH)
> and $(SRCARCH) always match.
>
> No functional change is intended for xtensa, either.
>
> This is rather a fix for parisc because arch/parisc/Makefile defines
> UTS_MATCHINE depending on CONFIG_64BIT, therefore cc-cross-prefix
> is not working in Kconfig time.
>
> Signed-off-by: Masahiro Yamada <[email protected]>

Tried the patch in my sh build, the result built and booted.

Tested-by: Rob Landley <[email protected]>

Rob