Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v5 0/4] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support
Date: Thu, 18 Apr 2019 11:00:25 +0200	[thread overview]
Message-ID: <20190418110025.6e34ff9e@windsurf> (raw)
In-Reply-To: <20190418083910.GA20517@app09>

Hello Nylon,

On Thu, 18 Apr 2019 16:39:10 +0800
Nylon Chen <nylon7@andestech.com> wrote:

> >    Build failure: http://autobuild.buildroot.net/results/1b1/1b18acb11db4d6c4198deb7385aff3d4d524c37e/build-end.log
> >    Commit to disable binutils on nds32: https://git.buildroot.org/buildroot/commit/?id=b45a703078e6f3be096f24ac63848490d32d0d29
> >   
> I got two methods can resolve this problem
> 
> 1.package/binutils/binutils.mk
> 
> +ifeq ($(BR2_nds32),y)
> +GNU_TARGET_NAME=nds32le-linux
> +endif
> +
> 
> 2.package/Makefile.in
> 
> +ifeq ($(BR2_nds32),y)
> +GNU_TARGET_NAME=$(ARCH)le-$(TARGET_OS)
> +else
> GNU_TARGET_NAME = $(ARCH)-$(TARGET_VENDOR)-$(TARGET_OS)-$(LIBC)$(ABI)
> +endif

Ah, so the correct tuple for your architecture is nds32le, not nds32 ?

If that's correct, then the right change is:

diff --git a/arch/Config.in.nds32 b/arch/Config.in.nds32
index 9c5db20e6f..f268883662 100644
--- a/arch/Config.in.nds32
+++ b/arch/Config.in.nds32
@@ -1,5 +1,5 @@
 config BR2_ARCH
-       default "nds32"
+       default "nds32le"
 
 config BR2_GCC_TARGET_ARCH
        default "v3"

So that ARCH is directly equal to nds32le. Since the architecture at
the kernel level is known as nds32, you will also want the following
change:

diff --git a/Makefile b/Makefile
index 522c0b0606..86e444da98 100644
--- a/Makefile
+++ b/Makefile
@@ -439,6 +439,7 @@ KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
        -e s/arceb/arc/ \
        -e s/arm.*/arm/ -e s/sa110/arm/ \
        -e s/aarch64.*/arm64/ \
+       -e s/nds32.*/nds32/ \
        -e s/or1k/openrisc/ \
        -e s/parisc64/parisc/ \
        -e s/powerpc64.*/powerpc/ \

> >  - The libffi library does not have support for nds32 as well, so I
> >    made sure that we don't try to build configurations that include
> >    libffi on nds32. Are you planning on adding nds32 support to libffi
> >    upstream ?
> >  
> We have no plans at the moment. 

OK. I think you should plan to have libffi support. Without libffi, you
can't build libglib, which means a huge set of Linux
libraries/applications can't be built for your platform. Another thing
that requires libffi is Python, so without libffi support for nds32,
you can't build Python.

See https://github.com/libffi/libffi for the upstream source code. And
see https://github.com/libffi/libffi/tree/master/src for all the
folders containing architecture specific code. There is not that much
architecture specific code.

Of course, there is no urgency: Buildroot autobuilders will not try to
build any configuration that include libffi. But it means that a lot of
packages are not tested, and also that a lot of the Linux software
ecosystem is not usable on nds32.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

      reply	other threads:[~2019-04-18  9:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-16  7:25 [Buildroot] [PATCH v5 0/4] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Nylon Chen
2019-04-16  7:25 ` [Buildroot] [PATCH v5 1/4] arch: add support for Andes 32-bit(nds32) Nylon Chen
2019-04-17  7:49   ` Thomas Petazzoni
2019-04-16  7:25 ` [Buildroot] [PATCH v5 2/4] configs/andes_nds32_ae3xx: new defconfig Nylon Chen
2019-04-17  7:53   ` Thomas Petazzoni
2019-04-16  7:25 ` [Buildroot] [PATCH v5 3/4] toolchain-external-andes-nds32: new package Nylon Chen
2019-04-17  7:52   ` Thomas Petazzoni
2019-04-16  7:25 ` [Buildroot] [PATCH v5 4/4] support/config-fragments/autobuild: test the Andes nds32 toolchain Nylon Chen
2019-04-17  7:53   ` Thomas Petazzoni
2019-04-17 19:22 ` [Buildroot] [PATCH v5 0/4] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Thomas Petazzoni
2019-04-18  8:39   ` Nylon Chen
2019-04-18  9:00     ` Thomas Petazzoni [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190418110025.6e34ff9e@windsurf \
    --to=thomas.petazzoni@bootlin.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox