From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D9EA9C00528 for ; Sat, 5 Aug 2023 20:49:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229956AbjHEUtD (ORCPT ); Sat, 5 Aug 2023 16:49:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41444 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229479AbjHEUtB (ORCPT ); Sat, 5 Aug 2023 16:49:01 -0400 Received: from 1wt.eu (ded1.1wt.eu [163.172.96.212]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 577EAE78; Sat, 5 Aug 2023 13:49:00 -0700 (PDT) Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id 375Kmj8j007515; Sat, 5 Aug 2023 22:48:45 +0200 Date: Sat, 5 Aug 2023 22:48:45 +0200 From: Willy Tarreau To: Zhangjin Wu Cc: arnd@arndb.de, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, tanyuan@tinylab.org, thomas@t-8ch.de Subject: Re: [PATCH v6 8/8] selftests/nolibc: customize CROSS_COMPILE for 32/64-bit powerpc Message-ID: <20230805204845.GA7300@1wt.eu> References: <2c3ac4542621ddc4b2cab006ae8e3a7b709921f1.1691259983.git.falcon@tinylab.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2c3ac4542621ddc4b2cab006ae8e3a7b709921f1.1691259983.git.falcon@tinylab.org> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Aug 06, 2023 at 02:47:09AM +0800, Zhangjin Wu wrote: > The little-endian powerpc64le compilers provided by Ubuntu and Fedora > are able to compile big endian kernel and big endian nolibc-test [1]. FWIW I'm wondering why focusing on these ones which have a different naming from the other ones, when I think that most users rely on the ones maintained by Arnd there: https://mirrors.edge.kernel.org/pub/tools/crosstool/ Yours is called powerpc64le while the one above is "powerpc64", it requires to make an exception for this one, I find this a bit odd. If someone wants to use their distro's cross toolchain, that's fine, but I think that it will depend on distros anyway and some may not even be provided (like loongarch) so I think it would make more sense to adopt the canonical naming from Arnd's toolchains above. It's not critical, but as you showed below, it makes building for ppc a little bit cumbersome: those "export" lines could be dropped when using the default names, and that's what we should document as the recommended way to test: > For example, it is able to build 64-bit nolibc-test with the big endian > powerpc64-linux-gcc crosstool from [2]: > > $ wget -c https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.1.0/x86_64-gcc-13.1.0-nolibc-powerpc64-linux.tar.xz > $ tar xvf x86_64-gcc-13.1.0-nolibc-powerpc64-linux.tar.xz > $ export PATH=$PWD/gcc-13.1.0-nolibc/powerpc64-linux/bin/:$PATH > > $ export CROSS_COMPILE_ppc=powerpc64-linux- > $ export CROSS_COMPILE_ppc64=powerpc64-linux- > $ export CROSS_COMPILE_ppc64le=powerpc64-linux- > $ for arch in ppc ppc64 ppc64le; do \ > make run-user XARCH=$arch | grep "status: "; \ > done Any opinion on this ? Thanks, Willy