This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PATCH [tree-ssa-20020619-branch]: Support *-*-freebsd*.


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 ----


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]