Re: hppa vDSO and compiler (non-)support

From: Jiri Slaby
Date: Tue Mar 22 2022 - 05:20:09 EST


Hello,

On 21. 03. 22, 19:51, Helge Deller wrote:
* Jiri Slaby <jirislaby@xxxxxxxxxx>:
On 09. 03. 22, 6:48, Jiri Slaby wrote:
On 08. 03. 22, 15:51, Helge Deller wrote:
On 3/8/22 12:06, Jiri Slaby wrote:
since the "parisc: Add vDSO support" commit, I can no longer
cross-build a hppa kernel. I see two issues:

1) CROSS32_COMPILE detection doesn't work here, as openSUSE
provides hppa-suse-linux-* binaries. It's easy to overcome by
"CROSS32_COMPILE=hppa-suse-linux-"

...
Would it make sense to add the detection for SUSE too?

So, could 1) be fixed on the Kconfig side? Or should I (people running SUSE)
use "CROSS32_COMPILE=hppa-suse-linux-"?

Could you please try if this patch fixes it for you?

Works like a charm:
$ make V=1 O=../a/arch/parisc/ ARCH=parisc -j6 drivers/tty/serial/mux.o
...
> hppa-suse-linux-gcc <flags deleted> -o drivers/tty/serial/mux.o /home/latest/linux/drivers/tty/serial/mux.c
> if hppa-suse-linux-objdump -h drivers/tty/serial/mux.o | ...; fi

Thanks.

diff --git a/arch/parisc/Makefile b/arch/parisc/Makefile
index 2a9387a93592..7583fc39ab2d 100644
--- a/arch/parisc/Makefile
+++ b/arch/parisc/Makefile
@@ -42,7 +42,7 @@ export LD_BFD

# Set default 32 bits cross compilers for vdso
CC_ARCHES_32 = hppa hppa2.0 hppa1.1
-CC_SUFFIXES = linux linux-gnu unknown-linux-gnu
+CC_SUFFIXES = linux linux-gnu unknown-linux-gnu suse-linux
CROSS32_COMPILE := $(call cc-cross-prefix, \
$(foreach a,$(CC_ARCHES_32), \
$(foreach s,$(CC_SUFFIXES),$(a)-$(s)-)))
@@ -52,7 +52,7 @@ export CROSS32CC
# Set default cross compiler for kernel build
ifdef cross_compiling
ifeq ($(CROSS_COMPILE),)
- CC_SUFFIXES = linux linux-gnu unknown-linux-gnu
+ CC_SUFFIXES = linux linux-gnu unknown-linux-gnu suse-linux
CROSS_COMPILE := $(call cc-cross-prefix, \
$(foreach a,$(CC_ARCHES), \
$(foreach s,$(CC_SUFFIXES),$(a)-$(s)-)))

--
--
js
suse labs