patches/gcc/4.2.4/320-libgcc_eh.a.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 18:01:28 2011 +0200 (2011-07-17)
changeset 2895 86ea5204e9ce
permissions -rw-r--r--
libc/newlib: build newlib in the proper step

Currently, newlib is built in the start_file step, which is wrong, but was
needed when the baremetal integration was... well, 'unfinished'.

Now that we build the baremetal compiler from the final cc step, and a
proper core gcc in pass-1 and pass-2, we can move the newlib build to the
step do_libc, where it belongs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Vampirised from:
     2   http://landley.net/hg/aboriginal/file/7e0747a665ab/sources/patches/gcc-core-libgcceh.patch
     3 
     4 diff -durN gcc-4.2.2.orig/gcc/mklibgcc.in gcc-4.2.2/gcc/mklibgcc.in
     5 --- gcc-4.2.2.orig/gcc/mklibgcc.in	2006-07-04 22:20:01.000000000 +0200
     6 +++ gcc-4.2.2/gcc/mklibgcc.in	2011-08-31 16:24:03.674690016 +0200
     7 @@ -223,8 +223,8 @@
     8    if [ "$LIBUNWIND" ]; then
     9      libunwind_a=$dir/libunwind.a
    10    fi
    11 +  libgcc_eh_a=$dir/libgcc_eh.a
    12    if [ "$SHLIB_LINK" ]; then
    13 -    libgcc_eh_a=$dir/libgcc_eh.a
    14      libgcc_s_so=$dir/libgcc_s${SHLIB_EXT}
    15      if [ "$LIBUNWIND" ]; then
    16        libunwind_so=$dir/libunwind${SHLIB_EXT}
    17 @@ -889,11 +889,11 @@
    18    echo '	chmod 644'  ${ldir}/libgcov.a
    19    echo '	$(RANLIB_FOR_TARGET)' ${ldir}/libgcov.a
    20  
    21 -  if [ "$SHLIB_LINK" ]; then
    22 -    echo '	$(INSTALL_DATA)' ${dir}/libgcc_eh.a ${ldir}/
    23 -    echo '	chmod 644'  ${ldir}/libgcc_eh.a
    24 -    echo '	$(RANLIB_FOR_TARGET)' ${ldir}/libgcc_eh.a
    25 +  echo '	$(INSTALL_DATA)' ${dir}/libgcc_eh.a ${ldir}/
    26 +  echo '	chmod 644'  ${ldir}/libgcc_eh.a
    27 +  echo '	$(RANLIB_FOR_TARGET)' ${ldir}/libgcc_eh.a
    28  
    29 +  if [ "$SHLIB_LINK" ]; then
    30      shlib_slibdir_qual=
    31      os_multilib_dir=`$GCC_FOR_TARGET $flags --print-multi-os-directory`
    32      if [ "$os_multilib_dir" != . ]; then