Remove any reference to libfloat. That has gone once and for all.
Rationale:
Most of the time, soft-float problems are caused by this sucker of gcc:
it has support for soft float for all of the targets I've tried so far,
but does not activate this code until you dwelve into half a dozen of
files to make it accept to build and link the support code...
So, yes: gcc has soft-float support. And again, yes: gcc is a sucker.
1 Enable building a pure soft-float compiler without the need for a software
2 floating point library.
4 diff -dur gcc-4.0.4.orig/gcc/config.gcc gcc-4.0.4/gcc/config.gcc
5 --- gcc-4.0.4.orig/gcc/config.gcc 2007-02-02 19:12:28.000000000 +0100
6 +++ gcc-4.0.4/gcc/config.gcc 2007-02-02 19:12:07.000000000 +0100
8 tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines"
11 - tmake_file="${tmake_file} arm/t-arm arm/t-linux"
12 + tmake_file="${tmake_file} arm/t-arm arm/t-linux arm/t-arm-elf"
13 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"