On 1/28/15 10:55 , Wolfgang Denk wrote:
Dear Richard,
In message <[email protected]> you wrote:
* the CFLAGS are obsolete and produce copious warnings from the compiler
What makes you think so?
Which part of
CFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types"
looks obsolete or bad to you?
This part: " -mcpu=8548 -mabi=spe -mspe" from the CC/CXX/CPP definition.
At least, that's the part gcc complains about.
(-pipe is a minor quibble. It makes for slightly faster builds on
single core machines but the error messages in many cases are
inscrutable. On machines with multiple cores, (that's just about
everything these days, no?), and /tmp on tmpfs, there isn't really any
speed advantage. But we can write that off to personal preference.)
* the LDFLAGS aren't ld flags at all, but rather ld flags in disguise
as CFLAGS, (-Wl,etc). If there's any build system that needs them
in this form, that build system is, IMO, broken. In any case,
LDFLAGS like this break the kernel because ld proper doesn't accept
the -Wl, form.
Well, this is your opinion. ...
In any case, we inherit this setting from mainline Yocto; it is not a
design decision or problem introduced by the ELDK.
Ok, fair enough.
Perhaps there are extra notes needed then. Because these clearly need
to be /unset/ for building some things.
* the kernel, at least the version and port I'm using, overwrites the
environment version of most of these environment variables anyway.
To pass one, I have to do it on the command line.
This is true for some settings, but as you will notice it is not true
for things like ARCH, CROSS_COMPILE, LDFLAGS and some others.
Yes. I didn't look closely. The overwrite I saw was in
arch/powerpc/Makefile so it's possible the powerpc is unique in this.
The env file /was/ useful as a source of hints, though. And I managed to
get my kernel built by passing "CC=$(CROSS_PREFIX)-gcc
--sysroot=/opt/eldk-5.6/powerpc-e500v2/sysroots/ppce500v2" on the make
command line.
I think this is neither correct nor needed. The kernel build does not
need sysroot for building. If yours does, it ust be pretty much
different from mainline.
How else does an eldk-5.6 e500v2 gcc find it's libgcc.a?
--rich
_______________________________________________
eldk mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/eldk