This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH [tree-ssa-20020619-branch]: Support *-*-freebsd*.
- From: Loren James Rittle <rittle at latour dot rsch dot comm dot mot dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: dnovillo at redhat dot com
- Date: Fri, 13 Feb 2004 21:02:19 -0600 (CST)
- Subject: PATCH [tree-ssa-20020619-branch]: Support *-*-freebsd*.
- Reply-to: rittle at labs dot mot dot com
I was recruited to get tree-ssa-20020619-branch working on
*-*-freebsd* before the mainline merge. As committed to solve
currently known bootstrap problem on i386-unknown-freebsd4.9. Also
testing: alpha-unknown-freebsd5.2 and sparc64-unknown-freebsd5.2.
gcc/configure is not smart enough to detect that /usr/include/gmp.h is
bogus (for its purposes) yet /usr/local/include/gmp.h is fine. I
added something to handle our local port conventions (and I rejected
any idea of making this more general; perhaps gmp should be rolled
into the gcc tree before the tree-ssa merge). I also promoted into
the per-system configuration area to follow the lead of other BSDs.
* configure.in (*-*-freebsd*): Avoid crusty gmp.h.
(alpha*-*-*freebsd*, i[[3456789]]86-*-*freebsd*): Merge into above.
* configure: Rebuilt (with autoconf version 2.13).
Index: configure.in
===================================================================
RCS file: /cvs/gcc/gcc/configure.in,v
retrieving revision 1.161.2.37
diff -c -r1.161.2.37 configure.in
*** configure.in 13 Feb 2004 13:10:13 -0000 1.161.2.37
--- configure.in 14 Feb 2004 02:23:13 -0000
***************
*** 360,365 ****
--- 360,380 ----
*-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
+ *-*-freebsd* | *-*-kfreebsd*-gnu)
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss"
+ if test -f /usr/local/include/gmp.h; then
+ extra_host_args="--with-gmp=/usr/local"
+ fi
+
+ # Skip some stuff that's unsupported on some FreeBSD configurations.
+ case "${target}" in
+ i*86-*-*) ;;
+ alpha*-*-*) ;;
+ *)
+ noconfigdirs="$noconfigdirs ${libgcj}"
+ ;;
+ esac
+ ;;
*-*-kaos*)
# Remove unsupported stuff on all kaOS configurations.
skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-libf2c target-librx"
***************
*** 411,419 ****
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
- alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss"
- ;;
alpha*-*-*)
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
--- 426,431 ----
***************
*** 531,539 ****
;;
i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
- ;;
- i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
i[[3456789]]86-*-linux*)
# The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
--- 543,548 ----