<br><br><br><div class="gmail_quote">2011/4/4 Andrew Bradford <span dir="ltr"><<a href="mailto:bradfa@gmail.com">bradfa@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On Fri, Apr 1, 2011 at 11:18 AM, Angel Ivan Castell Rovira<br>
<<a href="mailto:al004140@gmail.com">al004140@gmail.com</a>> wrote:<br>
> 2011/4/1 Andrew Bradford <<a href="mailto:bradfa@gmail.com">bradfa@gmail.com</a>><br>
>><br>
>> I found some patches that might help, one from OpenWRT relating to arm<br>
>> uClibc softfloat on GCC 4.5.1:<br>
>><br>
>> <a href="https://dev.openwrt.org/browser/trunk/toolchain/gcc/patches/4.5.1/810-arm-softfloat-libgcc.patch?rev=22450" target="_blank">https://dev.openwrt.org/browser/trunk/toolchain/gcc/patches/4.5.1/810-arm-softfloat-libgcc.patch?rev=22450</a><br>

>><br>
>> Another that looks basically the same from a developer on BusyBox but<br>
>> is listed for GCC 4.4.2:<br>
>> <a href="http://busybox.net/%7Ealdot/gcc/4.4.2/810-arm-softfloat-libgcc.patch" target="_blank">http://busybox.net/~aldot/gcc/4.4.2/810-arm-softfloat-libgcc.patch</a><br>
><br>
> Both patches seem to be the same. I have tested the one from "openwrt" with<br>
> gcc 4.5.2, and the issues reported yesterday at this forum seems to<br>
> reproduce exactly the same problem.<br>
<br>
</div>Ivan,<br>
<br>
I've got uClibc to build for armv4t soft float.  The patch I've used<br>
for gcc-4.5.2 looks a lot like the two I pointed out above.  I've put<br>
it at the end of this email and included a link below.  I got it from<br>
the buildroot 2011.02 release.  Apply to gcc before configuring<br>
gcc-static in the gcc-4.5.2 directory (not the gcc-build directory):<br>
<br>
patch -Np1 -i /path/to/810-arm-softfloat-libgcc.patch<br>
<br>
Patch online here:<br>
<a href="http://git.buildroot.net/buildroot/tree/toolchain/gcc/4.5.2/810-arm-softfloat-libgcc.patch" target="_blank">http://git.buildroot.net/buildroot/tree/toolchain/gcc/4.5.2/810-arm-softfloat-libgcc.patch</a><br>
<br>
Don't worry about the 4.4.0 version number, it'll apply and work fine.<br>
The patch should fall under GPLv2 (that's what the buildroot page<br>
says), just an FYI if you're distributing your tool chain binaries.<br>
<br>
I don't think the patch is needed when building gcc-final.<br>
<br>
If you are successful when using this patch, please let me know and<br>
I'll work to include it in the CLFS embedded book.<br>
<br>
See if that helps.<br>
-Andrew<br>
<br>
*************************************************************<br>
<br>
[PATCH] add the correct symbols to libgcc for uclibc arm softfloat<br>
<br>
Signed-off-by: Peter Korsgaard <<a href="mailto:jacmet@sunsite.dk">jacmet@sunsite.dk</a>><br>
---<br>
 gcc/config/arm/linux-elf.h |    2 +-<br>
 gcc/config/arm/t-linux     |    6 +++++-<br>
 2 files changed, 6 insertions(+), 2 deletions(-)<br>
<br>
Index: gcc-4.4.0/gcc/config/arm/t-linux<br>
===================================================================<br>
--- gcc-4.4.0.orig/gcc/config/arm/t-linux<br>
+++ gcc-4.4.0/gcc/config/arm/t-linux<br>
@@ -4,7 +4,11 @@<br>
<br>
 LIB1ASMSRC = arm/lib1funcs.asm<br>
 LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \<br>
-       _arm_addsubdf3 _arm_addsubsf3<br>
+       _arm_addsubdf3 _arm_addsubsf3 \<br>
+       _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \<br>
+       _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \<br>
+       _arm_negsf2 _arm_muldivsf3 _arm_cmpsf2 _arm_unordsf2 \<br>
+       _arm_fixsfsi _arm_fixunssfsi<br>
<br>
 # MULTILIB_OPTIONS = mhard-float/msoft-float<br>
 # MULTILIB_DIRNAMES = hard-float soft-float<br>
Index: gcc-4.4.0/gcc/config/arm/linux-elf.h<br>
===================================================================<br>
--- gcc-4.4.0.orig/gcc/config/arm/linux-elf.h<br>
+++ gcc-4.4.0/gcc/config/arm/linux-elf.h<br>
@@ -60,7 +60,7 @@<br>
    %{shared:-lc} \<br>
    %{!shared:%{profile:-lc_p}%{!profile:-lc}}"<br>
<br>
-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"<br>
+#define LIBGCC_SPEC "-lgcc"<br>
<br>
 #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"<br>
<div><div></div><div class="h5">_______________________________________________<br>
Clfs-support mailing list<br>
<a href="mailto:Clfs-support@lists.cross-lfs.org">Clfs-support@lists.cross-lfs.org</a><br>
<a href="http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org" target="_blank">http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org</a><br>
</div></div></blockquote></div><br><br clear="all"><br>Hello Mr. Andrew.<br><br>Yes! That patch fixes this problem. I just have finished to build the complete cross-toolchain right now  (also the gcc cross-compiler). I have obtained the same result using the second patch you told to me last Friday:<br>
<br><a href="http://busybox.net/%7Ealdot/gcc/4.4.2/810-arm-softfloat-libgcc.patch" target="_blank">http://busybox.net/~aldot/gcc/4.4.2/810-arm-softfloat-libgcc.patch</a><br><br>I made the mistake to compare visually both patches, and both of them  look exactly the same, but they are not equal, they have tiny but important differences... Unfortunately, I tested all the process with ''openwrt' patch, just the one it doesn't works (murphy's laws...). <br>
<br>So, this issue can be closed as solved.  I am really happy to obtain that working cross-toolchain from scratch.<br><br>I deeply appreciate all your useful help. <br>Thank you very much!! :-)<br><br>Best regards,<br>  -- Ivan<br>
<br>