
Hi Masahiro,
On 11.10.2013 13:29, Masahiro Yamada wrote:
My question is: Where can I get suitable toolchains for all architectures supported by U-Boot?
Gerhard Sittig told me this site: ftp://ftp.kernel.org/pub/tools/crosstool/
But I could not get the crosstool for some architectures (nds32, nios2) in this site.
I tried to compile as much boards as possible with crosstools I could download from the site.
arm, avr32, sandbox, x86 are perfect! I successfully compiled all board without any warnings.
For the other architectures, I can't compile at least some boards.
Mike Frysinger (unfortunately not active with U-Boot development any more) did some work on cross-toolchain builds. With nice and small packages. Please take a look at this thread:
http://marc.info/?l=u-boot&m=132164771013203&w=1
Here a link to the binaries:
http://dev.gentoo.org/~vapier/u-boot/
Its a bit outdated, but better than nothing. Perhaps its possible to generate more current toolchain versions easily? Mike?
This means the toolchain I chose was not appropriate or a bug in the source code.
So, I'd like to suggest: We collect pre-built toolchains for all architectures on U-Boot ftp site. They become RECOMMENDED toolchans, which means it is garanteed all boards should be successfully compiled with such toolchains.
Its usually recommended to use the ELDK toolchains. But yes, not all architectures are supported right now.
At least custodians must have a suitable toolchain because they routinely build boards of their assigned architecture. If it is impossible to upload it to U-Boot ftp site, the link should be prepared to another download site.
If there are some variations (for ex. soft/hard float) for supported cross tools, all of them should be collected.
My basic idea is: Building all boards should be easy enough for everyone. Of course basic skills of U-boot is required, but arch-specific skills should not be required just for compile.
If everyone can do this compiling check, it should be done automatically. The crontab daemon can do it and send the result to this mailing list. (everyday? once a week? every time u-boot/master is updated?)
We will soon notice a broken board before someone raise the flag. When a board is found to be broken, notification e-mail should also be sent to the architecture custodian and board maintainer (if the board is not orphan).
The board maintainer (written in boards.cfg) is responsible to fix the broken board. The custodian should guide this.
Now we have the Active/Orphan status in the first column of boards.cfg.
I'd like to suggest new status:
Active: can be compiled without any warnings Warn: still can be compiled, but with warnings Broken: cannot be compiled
Suggestion for better terms is welcome :-)
(BTW, I'd like to abolish Orphan status. We can refer the last column for the board maintainer. If it is blank, it means unknown maintainer.)
If we notice a newly broken board, we should change the status in boards.cfg from Active to Warn or Broken.
If nobody fix the board for a long time (3 month or so?), it should go to the scrap yard.
I like this idea.
To sum up my suggestion,
- Collect pre-built suitable crosstools for all architectures on U-boot ftp site.
Perhaps Mike's work can be used as a starting point for this?
Thanks, Stefan