[U-Boot-Users] Incisive changes to U-Boot build environment

Wolfgang Denk wd at denx.de
Mon Sep 4 01:51:10 CEST 2006


Hello everybody,

I just checked in some incisive changes to the U-Boot build  environ-
ment.  The new build scheme is based on the linux 2.6 kernel approach
and supports  two  options  when  building  u-boot  objects  to  some
external directory.

1) Add O= to the make command line, e.g. 'make O=/tmp/build all'

2) Set environment variable BUILD_DIR and use regular 'make all'

Command line 'O=' setting overrides BUILD_DIR environment variable.

Tests included building all targets  and  comparing  the  results  to
those  produced  by  a  build  on a baseline tree. Modifications were
tested in a more detailed way for 16 targets, 5 of  which  were  also
loaded and tested on a target board.

Problems found (and fixed):

*) tools/easylogo - that is a standalone build, but we fixed easylogo.c
build error.

*) tools/Makefile.win32 - we left this file untouched as we do not have
a  way of testing it, and also it seems to be a standalone Makefile.

*) .depend target was moved to to a separate file rules.mk, that is now
included when needed.

*) We added few targets like env, gdbtools and updater to the main
Makefile, that creates a more convenient way of building tools
subdirectories.

*) tools/env - Makefile modified but builds only on target.

*) updater - fixed build errors in:
 tools/updater/flash.c
 tools/updater/update.c

*) We extended support for a LOG directory, which now can be located
outside of the source tree. To use something different than the default
'LOG' directory MAKEALL_LOGDIR environment variable can be set to point
to the other location.

*) not integrated with u-boot build and left untouched:
./cpu/mpc824x/drivers/i2o/Makefile      - Motorola Makefile
./cpu/mpc824x/drivers/dma/Makefile      - Motorola Makefile

*) board/netstar/crcit binary was removed from the tree and added to the
clean target.

*) Some targets were broken and required more attention, those which
currently do not compile are:

ppc)
AmigaOne3GSE

arm)
ixdp425 ixdpg425 pdnb3
The above targets do not compile due to problems when building
cpu/ixp/npe/libnpe.a, because of missing `IxNpeMicrocode.c' source
file (unsolved licensing issues).

omap2420h4 pxa255_idp

coldfire)
Coldfire builds were broken. We investigated this and found
that it's caused by by the following commit:

Commit: 9acb626fc145e7327f94fd77f927dce08dd978a8
Author: Heiko Schocher <hs at pollux.denx.de> czw, 20 kwi 2006 08:42:42 +0200

    Add MCF5282 support (without preloader)
    relocate ichache_State to ram
    u-boot can run from internal flash
    Add EB+MCF-EV123 board support.
    Add m68k Boards to MAKEALL
    Patch from Jens Scharsig, 08 Aug 2005

We fixed the build problems to be able verify our modifications but
we are not able to test them. 


This is a request to all board maintainers to help  testing  the  new
code,  resp.  to  fix  the  remaining  problems  (especially  for the
abovementioned boards which are broken right now).

Thanks in advance.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
It is wrong always, everywhere and for everyone to  believe  anything
upon  insufficient  evidence.  - W. K. Clifford, British philosopher,
circa 1876




More information about the U-Boot mailing list