Message ID | 20190307021125.8530-4-nylon7@andestech.com |
---|---|
State | Changes Requested |
Headers | show |
Series | Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support | expand |
Nylon, All, On 2019-03-07 10:11 +0800, Nylon Chen spake thusly: > Signed-off-by: Che-Wei Chuang <cnoize@andestech.com> > Signed-off-by: Greentime Hu <greentime@andestech.com> > Signed-off-by: Nylon Chen <nylon7@andestech.com> > --- > support/config-fragments/autobuild/br-andes-nds32.config | 9 +++++++++ > support/config-fragments/autobuild/toolchain-configs.csv | 1 + > 2 files changed, 10 insertions(+) > create mode 100644 support/config-fragments/autobuild/br-andes-nds32.config > > diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config > new file mode 100644 > index 0000000000..cd093a20f9 > --- /dev/null > +++ b/support/config-fragments/autobuild/br-andes-nds32.config > @@ -0,0 +1,9 @@ > +BR2_nds32=y > +BR2_TOOLCHAIN_EXTERNAL=y > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" I was going to add my reviewd-by tag, but then I notice that this repository does not seem to be affilated with AndesTech, but it looks like a "random" guy dropped a bunch of stuff. Yet, there are release notes to explain how to reproduce the toolchain: https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases 1. The source code of each component for this toolchain are located at the following path. a. gcc: path: https://github.com/andestech/gcc.git branch: nds32-8.1.0-upstream b. binutils path: https://github.com/andestech/binutils.git branch: nds32-binutils-2.30-branch-open c. glibc path: https://github.com/andestech/glibc.git branch: nds32-glibc-2.27-v0 d. Linux path: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git branch: master 2. User can manually generate this toolchain though build-toochain.sh in following git repo. https://github.com/andestech/build_script.git 3. The git commit ID of each component in Andes internel git tree. binutils-2.30 : ee457e8114f09c1b4df7c834ad58b02c9f43c139 gcc-8.1.0: 260e4b4bbb7f32b483482573c92c8caacf5c17ab linux-v4.17-rc3: 6da6c0db5316275015e8cc2959f12a17584aeb64 glibc-2.27: e9f2165793aaf2f033a6cebff389ebbba5d799bd The instructions in 2. do not seem to deconected from what we do. There is this one weird trick about build ing libgcc, but maybe it can be coaxed into working to build with the Buildroot internal toolchain? Apart from the weird location of the toolchain: Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN. > +BR2_TOOLCHAIN_EXTERNAL_GCC_8=y > +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux" > diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv > index 3681bc519f..7a3b91df27 100644 > --- a/support/config-fragments/autobuild/toolchain-configs.csv > +++ b/support/config-fragments/autobuild/toolchain-configs.csv > @@ -25,6 +25,7 @@ support/config-fragments/autobuild/armv5-ctng-linux-gnueabi.config,x86 > support/config-fragments/autobuild/arm-aarch64.config,x86_64 > support/config-fragments/autobuild/armv7-ctng-linux-gnueabihf.config,x86 > support/config-fragments/autobuild/br-aarch64-glibc.config,x86_64 > +support/config-fragments/autobuild/br-andes-nds32.config,x86 > support/config-fragments/autobuild/br-arc-full-internal.config,any > support/config-fragments/autobuild/br-arc-internal-glibc.config,any > support/config-fragments/autobuild/br-arcle-hs38.config,x86_64 > -- > 2.18.0 > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
Yann, All, Again, Thank you for your comment. On Fri, Mar 15, 2019 at 06:42:50AM +0800, Yann E. MORIN wrote: > Nylon, All, > > On 2019-03-07 10:11 +0800, Nylon Chen spake thusly: > > Signed-off-by: Che-Wei Chuang <cnoize@andestech.com> > > Signed-off-by: Greentime Hu <greentime@andestech.com> > > Signed-off-by: Nylon Chen <nylon7@andestech.com> > > --- > > support/config-fragments/autobuild/br-andes-nds32.config | 9 +++++++++ > > support/config-fragments/autobuild/toolchain-configs.csv | 1 + > > 2 files changed, 10 insertions(+) > > create mode 100644 support/config-fragments/autobuild/br-andes-nds32.config > > > > diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config > > new file mode 100644 > > index 0000000000..cd093a20f9 > > --- /dev/null > > +++ b/support/config-fragments/autobuild/br-andes-nds32.config > > @@ -0,0 +1,9 @@ > > +BR2_nds32=y > > +BR2_TOOLCHAIN_EXTERNAL=y > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > > +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > > +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" I think I misunderstood the meaning of Thomas Petazzo. I thought that as long as the pre-build remote toolcahin is given.(So I used our own pre-build remote toolchain) It may take a few more days, we will contribute glibc back to upstream, and then we can compile it internally using buildroot. So in the next version(v4), I will remove this patch first. > > I was going to add my reviewd-by tag, but then I notice that this > repository does not seem to be affilated with AndesTech, but it > looks like a "random" guy dropped a bunch of stuff. > > Yet, there are release notes to explain how to reproduce the toolchain: > > https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases > > 1. The source code of each component for this toolchain are located at > the following path. > a. gcc: > path: https://github.com/andestech/gcc.git > branch: nds32-8.1.0-upstream > b. binutils > path: https://github.com/andestech/binutils.git > branch: nds32-binutils-2.30-branch-open > c. glibc > path: https://github.com/andestech/glibc.git > branch: nds32-glibc-2.27-v0 > d. Linux > path: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > branch: master > > 2. User can manually generate this toolchain though build-toochain.sh > in following git repo. > https://github.com/andestech/build_script.git > > 3. The git commit ID of each component in Andes internel git tree. > binutils-2.30 : ee457e8114f09c1b4df7c834ad58b02c9f43c139 > gcc-8.1.0: 260e4b4bbb7f32b483482573c92c8caacf5c17ab > linux-v4.17-rc3: 6da6c0db5316275015e8cc2959f12a17584aeb64 > glibc-2.27: e9f2165793aaf2f033a6cebff389ebbba5d799bd > > The instructions in 2. do not seem to deconected from what we do. There > is this one weird trick about build ing libgcc, but maybe it can be > coaxed into working to build with the Buildroot internal toolchain? > > Apart from the weird location of the toolchain: > > Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> > > Regards, > Yann E. MORIN. > > > +BR2_TOOLCHAIN_EXTERNAL_GCC_8=y > > +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux" > > diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv > > index 3681bc519f..7a3b91df27 100644 > > --- a/support/config-fragments/autobuild/toolchain-configs.csv > > +++ b/support/config-fragments/autobuild/toolchain-configs.csv > > @@ -25,6 +25,7 @@ support/config-fragments/autobuild/armv5-ctng-linux-gnueabi.config,x86 > > support/config-fragments/autobuild/arm-aarch64.config,x86_64 > > support/config-fragments/autobuild/armv7-ctng-linux-gnueabihf.config,x86 > > support/config-fragments/autobuild/br-aarch64-glibc.config,x86_64 > > +support/config-fragments/autobuild/br-andes-nds32.config,x86 > > support/config-fragments/autobuild/br-arc-full-internal.config,any > > support/config-fragments/autobuild/br-arc-internal-glibc.config,any > > support/config-fragments/autobuild/br-arcle-hs38.config,x86_64 > > -- > > 2.18.0 > > > > _______________________________________________ > > buildroot mailing list > > buildroot@busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------'
Hello Nylon, On Thu, 21 Mar 2019 10:51:03 +0800 Nylon Chen <nylon7@andestech.com> wrote: > > > diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config > > > new file mode 100644 > > > index 0000000000..cd093a20f9 > > > --- /dev/null > > > +++ b/support/config-fragments/autobuild/br-andes-nds32.config > > > @@ -0,0 +1,9 @@ > > > +BR2_nds32=y > > > +BR2_TOOLCHAIN_EXTERNAL=y > > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > > > +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > > > +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" > I think I misunderstood the meaning of Thomas Petazzo. > > I thought that as long as the pre-build remote toolcahin is given.(So I used our own pre-build remote toolchain) > > It may take a few more days, we will contribute glibc back to upstream, and then we can compile it internally using buildroot. It is perfectly fine to use a pre-built toolchain, I think what Yann explained is that since the source code of gcc/binutils/glibc/linux is available, it makes sense to *also* support building the toolchain with Buildroot. Also, it is not mandatory for the glibc support to be in upstream glibc. We support architectures for which the gcc, binutils or libc support is not yet fully upstreamed. For example, for RISC-V 32-bit, we're using a non-upstream glibc. Best regards, Thomas
Nylon, Thomas, All, On 2019-03-21 08:51 +0100, Thomas Petazzoni spake thusly: > On Thu, 21 Mar 2019 10:51:03 +0800 > Nylon Chen <nylon7@andestech.com> wrote: > > > > > diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config > > > > new file mode 100644 > > > > index 0000000000..cd093a20f9 > > > > --- /dev/null > > > > +++ b/support/config-fragments/autobuild/br-andes-nds32.config > > > > @@ -0,0 +1,9 @@ > > > > +BR2_nds32=y > > > > +BR2_TOOLCHAIN_EXTERNAL=y > > > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > > > > +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > > > > +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" > > I think I misunderstood the meaning of Thomas Petazzo. > > > > I thought that as long as the pre-build remote toolcahin is given.(So I used our own pre-build remote toolchain) > > > > It may take a few more days, we will contribute glibc back to upstream, and then we can compile it internally using buildroot. > > It is perfectly fine to use a pre-built toolchain, I think what Yann > explained is that since the source code of gcc/binutils/glibc/linux is > available, it makes sense to *also* support building the toolchain with > Buildroot. Exactly, yes. But that can come later, in a followup series. Regards, Yann E. MORIN. > Also, it is not mandatory for the glibc support to be in upstream > glibc. We support architectures for which the gcc, binutils or libc > support is not yet fully upstreamed. For example, for RISC-V 32-bit, > we're using a non-upstream glibc. > > Best regards, > > Thomas > -- > Thomas Petazzoni, CTO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com
Yann, Thomas, All, On Thu, Mar 21, 2019 at 12:12:10PM +0100, Yann E. MORIN wrote: > Nylon, Thomas, All, > > On 2019-03-21 08:51 +0100, Thomas Petazzoni spake thusly: > > On Thu, 21 Mar 2019 10:51:03 +0800 > > Nylon Chen <nylon7@andestech.com> wrote: > > > > > > > diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config > > > > > new file mode 100644 > > > > > index 0000000000..cd093a20f9 > > > > > --- /dev/null > > > > > +++ b/support/config-fragments/autobuild/br-andes-nds32.config > > > > > @@ -0,0 +1,9 @@ > > > > > +BR2_nds32=y > > > > > +BR2_TOOLCHAIN_EXTERNAL=y > > > > > +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > > > > > +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > > > > > +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" > > > I think I misunderstood the meaning of Thomas Petazzo. > > > > > > I thought that as long as the pre-build remote toolcahin is given.(So I used our own pre-build remote toolchain) > > > > > > It may take a few more days, we will contribute glibc back to upstream, and then we can compile it internally using buildroot. > > > > It is perfectly fine to use a pre-built toolchain, I think what Yann > > explained is that since the source code of gcc/binutils/glibc/linux is > > available, it makes sense to *also* support building the toolchain with > > Buildroot. > > Exactly, yes. > > But that can come later, in a followup series. > > Regards, > Yann E. MORIN. > In order to get rid of rework. I prefer to send glibc to upstream and then come to this patch. > > Also, it is not mandatory for the glibc support to be in upstream > > glibc. We support architectures for which the gcc, binutils or libc > > support is not yet fully upstreamed. For example, for RISC-V 32-bit, > > we're using a non-upstream glibc. > > > > Best regards, > > > > Thomas > > -- > > Thomas Petazzoni, CTO, Bootlin > > Embedded Linux and Kernel engineering > > https://bootlin.com > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------' > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
diff --git a/support/config-fragments/autobuild/br-andes-nds32.config b/support/config-fragments/autobuild/br-andes-nds32.config new file mode 100644 index 0000000000..cd093a20f9 --- /dev/null +++ b/support/config-fragments/autobuild/br-andes-nds32.config @@ -0,0 +1,9 @@ +BR2_nds32=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz" +BR2_TOOLCHAIN_EXTERNAL_GCC_8=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux" diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv index 3681bc519f..7a3b91df27 100644 --- a/support/config-fragments/autobuild/toolchain-configs.csv +++ b/support/config-fragments/autobuild/toolchain-configs.csv @@ -25,6 +25,7 @@ support/config-fragments/autobuild/armv5-ctng-linux-gnueabi.config,x86 support/config-fragments/autobuild/arm-aarch64.config,x86_64 support/config-fragments/autobuild/armv7-ctng-linux-gnueabihf.config,x86 support/config-fragments/autobuild/br-aarch64-glibc.config,x86_64 +support/config-fragments/autobuild/br-andes-nds32.config,x86 support/config-fragments/autobuild/br-arc-full-internal.config,any support/config-fragments/autobuild/br-arc-internal-glibc.config,any support/config-fragments/autobuild/br-arcle-hs38.config,x86_64