config.gcc (sh*-superh-elf, [...]): Use newlib.h when building with libgloss.
authorJ"orn Rennecke <joern.rennecke@st.com>
Fri, 10 Mar 2006 16:07:29 +0000 (16:07 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Fri, 10 Mar 2006 16:07:29 +0000 (16:07 +0000)
* config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.h
when building with libgloss.
(sh*elf): Implement --without-fp option.
(sh64-superh-linux*): Don't multilib.

From-SVN: r111933

gcc/ChangeLog
gcc/config.gcc

index bac513fbad064ce0200d06c3e7bff721fb4b5ccd..d1f4a0ce6f145077a9e84c6d4f225337c8eca846 100644 (file)
@@ -1,3 +1,10 @@
+2006-03-10  J"orn Rennecke <joern.rennecke@st.com>
+
+       * config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.h
+       when building with libgloss.
+       (sh*elf): Implement --without-fp option.
+       (sh64-superh-linux*): Don't multilib. 
+
 2006-03-10  J"orn Rennecke <joern.rennecke@st.com>
 
        * struct-equiv.c (rtx_equiv_p): Fix POST_MODIFY case.
index e9d46c1a027da44c8241b6c0731032af221df456..2255830ab4d5876cba5faca341133108e0e8155f 100644 (file)
@@ -1940,7 +1940,16 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
        sh*-*-kaos*)    tm_file="${tm_file} sh/embed-elf.h kaos.h sh/kaos-sh.h"
                        ;;
        sh*-*-netbsd*)  tm_file="${tm_file} netbsd.h netbsd-elf.h sh/netbsd-elf.h" ;;
-       *)              tm_file="${tm_file} sh/embed-elf.h" ;;
+       sh*-superh-elf) if test x$with_libgloss != xno; then
+                               with_libgloss=yes
+                               tm_file="${tm_file} sh/newlib.h"
+                       fi
+                       tm_file="${tm_file} sh/embed-elf.h" ;;
+       *)              if test x$with_newlib = xyes \
+                          && test x$with_libgloss = xyes; then
+                               tm_file="${tm_file} sh/newlib.h"
+                       fi
+                       tm_file="${tm_file} sh/embed-elf.h" ;;
        esac
        case ${target} in
        sh5*-*-netbsd*)
@@ -1994,6 +2003,20 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
        sh2*)                   sh_cpu_target=sh2 ;;
        *)                      sh_cpu_target=sh1 ;;
        esac
+       # did the user say --without-fp ?
+       if test x$with_fp = xno; then
+               case ${sh_cpu_target} in
+               sh5-*media)     sh_cpu_target=${sh_cpu_target}-nofpu ;;
+               sh4al | sh1)    ;;
+               sh4a* )         sh_cpu_target=sh4a-nofpu ;;
+               sh4*)           sh_cpu_target=sh4-nofpu ;;
+               sh3*)           sh_cpu_target=sh3 ;;
+               sh2a*)          sh_cpu_target=sh2a-nofpu ;;
+               sh2*)           sh_cpu_target=sh2 ;;
+               *)      echo --without-fp not available for $target: ignored
+               esac
+               tm_defines="$tm_defines STRICT_NOFPU=1"
+       fi
        sh_cpu_default="`echo $with_cpu|sed s/^m/sh/|tr A-Z_ a-z-`"
        case $sh_cpu_default in
        sh5-64media-nofpu | sh5-64media | \
@@ -2008,6 +2031,7 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
        sh_multilibs=${with_multilib_list}
        if test x${sh_multilibs} = x ; then
                case ${target} in
+               sh64-superh-linux* | \
                sh[1234]*)      sh_multilibs=${sh_cpu_target} ;;
                sh64* | sh5*)   sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;;
                sh-superh-*)    sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
@@ -2015,6 +2039,9 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
                sh*-*-netbsd*)  sh_multilibs=m3,m3e,m4 ;;
                *) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;;
                esac
+               if test x$with_fp = xno; then
+                       sh_multilibs="`echo $sh_multilibs|sed -e s/m4/sh4-nofpu/ -e s/,m4-[^,]*//g -e s/,m[23]e// -e s/m2a,m2a-single/m2a-nofpu/ -e s/m5-..m....,//g`"
+               fi
        fi
        target_cpu_default=SELECT_`echo ${sh_cpu_default}|tr a-z- A-Z_`
        tm_defines=${tm_defines}' SH_MULTILIB_CPU_DEFAULT=\"'`echo $sh_cpu_default|sed s/sh/m/`'\"'