
Hi Bin,
On 14 December 2014 at 19:59, Bin Meng bmeng.cn@gmail.com wrote:
Hi Simon,
On Sun, Dec 14, 2014 at 11:44 PM, Simon Glass sjg@chromium.org wrote:
Hi Bin,
On 14 December 2014 at 08:09, Bin Meng bmeng.cn@gmail.com wrote:
Hi Simon,
On Sun, Dec 14, 2014 at 1:35 PM, Simon Glass sjg@chromium.org wrote:
Hi Bin,
I see the following problem when trying to build crownbay:
./tools/buildman/buildman crownbay -se boards.cfg is up to date. Nothing to do. Summary of current source for 1 boards (1 thread, 32 jobs per thread) x86: + crownbay +{standard input}: Assembler messages: +{standard input}:136: Error: can't open M0220661105.inc for reading: No such file or directory +make[3]: *** [arch/x86/cpu/queensbay/tnc_car.o] Error 1 +make[2]: *** [arch/x86/cpu/queensbay] Error 2 +make[1]: *** [arch/x86/cpu] Error 2 +make: *** [sub-make] Error 2
Can you please take a look?
I have pushed the test code to u-boot-x86/testing.
I am not familiar with the buildman. I switched to the u-boot-x86/testing branch and did the same command as you:
$ ./tools/buildman/buildman crownbay -se WARNING: no status info for 'beagle_x15' WARNING: no maintainers for 'beagle_x15' WARNING: no status info for 'stv0991' WARNING: no maintainers for 'stv0991' WARNING: no status info for 'socfpga_socrates' WARNING: no maintainers for 'socfpga_socrates' Summary of current source for 1 boards (1 thread, 24 jobs per thread) (no errors to report)
In order to build (rather than summarise results) take off the -se.
$ ./tools/buildman/buildman crownbay boards.cfg is up to date. Nothing to do. Building current source for 1 boards (1 thread, 24 jobs per thread) 0 0 1 /1 crownbay
Seems nothing wrong?
That means 1 failure out of 1 build. It should show up red.
/tools/buildman/buildman crownbay -e
will show you errors.
My ~/.buildman is as follows:
$ cat ~/.buildman [toolchain] root: /
[toolchain-alias] x86: i386
[make-flags]
I did a u-boot.rom build for crownbay from the u-boot root directory and it builds fine.
Based on the error message you gave, it looks like buildman is trying to cd into the 'arch/x86/cpu/queensbay/' directory and build it from there? What exact command build is using? The error message is related to tnc_car.S line#126
125 ucode_start: 126 .include "arch/x86/cpu/queensbay/M0220661105.inc" 127 ucode_size = ( . - ucode_start)
So if the build is started from 'arch/x86/cpu/queensbay directory', the build will fail. But if started from u-boot root directory, there will be no problem.
Well buildman just uses the normal build system. If you need to include files then they will have to go either in the same directory or in the include/asm/arch directory.
Well, the .include search path is controlled by -I option passed to the gnu assembler. The "arch/x86/cpu/queensbay/M0220661105.inc" path can only be recognized if the U-Boot build is started from root. But based on the error message you gave, looks like buildman did not start the build from the root directory.
Are you using a cross-compiler? Are you using an in-tree build? How do you build it>
Yes, a cross-compiler (64-bit) to produce the 32-bit U-Boot codes. The build I used is:
in the U-Boot root $ make crownbay_defconfig $ make
OK, try:
$ make O=crownbay crownbay_defconfig $ make O=crownbay
Regards, Simon