Re: Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-30 Thread Hans-Peter Nilsson
On Tue, 29 Mar 2011, Joseph S. Myers wrote:
> Other cleanups here:

> cris*-*-none acts just like cris*-*-elf in
> config.gcc so it's appropriate to make the "*" subcase of cris*-*-* act
> like the -elf case;

'k.

> mmix-*-* disabled "libgloss", i.e. libgloss for the
> host, which is never built anyway.

Whoops, my bad.  Odd that it worked anyway, but I'm not certain
I added that due to actual breakage.

All bits fine by me.

brgds, H-P


Re: Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-30 Thread Joseph S. Myers
On Wed, 30 Mar 2011, Richard Earnshaw wrote:

> > 2011-03-29  Joseph Myers  
> > 
> 
> > (arm-*-coff): Don't disable libgcj.
> > (arm*-*-linux-gnueabi): Remove useless assignment.
> > (arm-*-riscix*): Don't disable libgcj.
> 
> 
> RISC iX support was removed from GCC years ago.  Looks like a tiny
> fragment left over that wasn't cleaned up.  The other bits are fine with
> me.

The RISC iX case is much like the Solaris/PowerPC one I commented on in 
: it appears 
there is still assembler support.  What I'm doing here is simply cleaning 
things up by removing mentions of *GCC* directories for targets without 
GCC support (often ones where GCC support was removed long ago).

It's quite possible that some obsolete targets should have their binutils 
(and newlib) support removed, leading to further toplevel simplification 
(gdb has been more active in pruning unmaintained targets - but it's also 
the case that a proliferation of targets is more likely to cause problems 
there than in binutils and newlib).  But I think it's really for the 
binutils maintainers to work out what they think is worth removing.

-- 
Joseph S. Myers
jos...@codesourcery.com


Re: Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-30 Thread Richard Earnshaw

On Tue, 2011-03-29 at 20:55 +, Joseph S. Myers wrote:
> This patch continues cleaning up the toplevel configure.ac, in particular 
> as regards cases handling GCC libraries for targets where GCC is no longer 
> (or never was) supported.
> 
> The principle there, as discussed for the original deprecated targets 
> removal patch, is that in the absence of GCC support for a target it 
> doesn't matter exactly how toplevel is configured to build GCC libraries 
> (or other GCC-related directories) for that target - builds will and 
> should fail if GCC is included in the source tree - so toplevel 
> configure.ac should be set up for maximal simplicity.  In most cases that 
> means no explicit mention of GCC libraries for such a target; in some 
> cases it means removing the target entry altogether so that another case 
> becomes active instead (possibly the *-*-* case that disables libgcj 
> only).
> 
> In general cases just disabling libgcj are redundant with the *-*-* case 
> unless they prevent some other case being active for the target, and so 
> are removed.  There were also a couple of removed cases for targets with 
> no support in GCC or src at all (romp-*-*, vax-*-vms) - if there's no 
> support in GCC or src, it's right that a build should fail trying to build 
> whatever sources you have there, and silly for toplevel to try disabling 
> everything because nothing is supported.
> 
> Other cleanups here: noconfigdirs="$noconfigdirs" is completely useless 
> and was removed; c54x*-*-* is always mapped to tic54x-*-* by config.sub so 
> that case can be simplified; cris*-*-none acts just like cris*-*-elf in 
> config.gcc so it's appropriate to make the "*" subcase of cris*-*-* act 
> like the -elf case; mmix-*-* disabled "libgloss", i.e. libgloss for the 
> host, which is never built anyway.
> 
> OK to commit?
> 
> 2011-03-29  Joseph Myers  
> 

>   (arm-*-coff): Don't disable libgcj.
>   (arm*-*-linux-gnueabi): Remove useless assignment.
>   (arm-*-riscix*): Don't disable libgcj.


RISC iX support was removed from GCC years ago.  Looks like a tiny
fragment left over that wasn't cleaned up.  The other bits are fine with
me.

R.




Re: Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-29 Thread Ralf Wildenhues
* Joseph S. Myers wrote on Tue, Mar 29, 2011 at 10:55:41PM CEST:
> --- configure.ac  (revision 171675)
> +++ configure.ac  (working copy)

> @@ -565,9 +562,7 @@
>  ;;
>*-*-kaos*)
>  # Remove unsupported stuff on all kaOS configurations.
> -skipdirs="target-libiberty ${libgcj} target-libstdc++-v3"
> -skipdirs="$skipdirs target-libobjc"
> -skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc 
> target-zlib"
> +skipdirs="target-libiberty"

This error existed before your patch, but it might be a good idea to fix
it while at it: skipdirs should only be appended to here, not
overridden.

>  noconfigdirs="$noconfigdirs target-libgloss"
>  ;;
>*-*-netbsd*)

Other than that, I don't see issues with the patch; but again, I'm not
really qualified to judge CPU portability issues.

Thanks,
Ralf


Re: Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-29 Thread Joseph S. Myers
On Tue, 29 Mar 2011, Joseph S. Myers wrote:

> Other cleanups here:

Also: bfin-*-* had code relating to target-bsp and target-cygmon, but 
there is no actual Makefile.* support for building those, so the code 
relating to them in configure.ac is removed.

-- 
Joseph S. Myers
jos...@codesourcery.com


Continue toplevel cleanup (GCC library handling for unsupported targets etc.)

2011-03-29 Thread Joseph S. Myers
This patch continues cleaning up the toplevel configure.ac, in particular 
as regards cases handling GCC libraries for targets where GCC is no longer 
(or never was) supported.

The principle there, as discussed for the original deprecated targets 
removal patch, is that in the absence of GCC support for a target it 
doesn't matter exactly how toplevel is configured to build GCC libraries 
(or other GCC-related directories) for that target - builds will and 
should fail if GCC is included in the source tree - so toplevel 
configure.ac should be set up for maximal simplicity.  In most cases that 
means no explicit mention of GCC libraries for such a target; in some 
cases it means removing the target entry altogether so that another case 
becomes active instead (possibly the *-*-* case that disables libgcj 
only).

In general cases just disabling libgcj are redundant with the *-*-* case 
unless they prevent some other case being active for the target, and so 
are removed.  There were also a couple of removed cases for targets with 
no support in GCC or src at all (romp-*-*, vax-*-vms) - if there's no 
support in GCC or src, it's right that a build should fail trying to build 
whatever sources you have there, and silly for toplevel to try disabling 
everything because nothing is supported.

Other cleanups here: noconfigdirs="$noconfigdirs" is completely useless 
and was removed; c54x*-*-* is always mapped to tic54x-*-* by config.sub so 
that case can be simplified; cris*-*-none acts just like cris*-*-elf in 
config.gcc so it's appropriate to make the "*" subcase of cris*-*-* act 
like the -elf case; mmix-*-* disabled "libgloss", i.e. libgloss for the 
host, which is never built anyway.

OK to commit?

2011-03-29  Joseph Myers  

* configure.ac (*-*-chorusos): Don't disable libgcj.
(*-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*):
Remove case.
(*-*-kaos*): Don't disable GCC libraries, zlib or fastjar.
(arm-*-coff): Don't disable libgcj.
(arm*-*-linux-gnueabi): Remove useless assignment.
(arm-*-riscix*): Don't disable libgcj.
(bfin-*-*): Don't enable target-bsp and target-cygmon depending on
configuration.
(c4x-*-* | tic4x-*-*): Don't disable GCC libraries.
(c54x*-*-*): Remove case.
(tic54x-*-*): Don't disable GCC or GCC libraries.
(cris-*-* | crisv32-*-*): Don't handle *-*-aout.  Change *-*-elf
to *.
(d10v-*-*): Don't disable GCC libraries.
(d30v-*-*): Don't disable libgcj.
(h8500-*-*): Don't disable GCC libraries.
(i960-*-*): Don't disable libgcj.
(i[[3456789]]86-*-linux*): Don't handle *-*-*libc1*.
(i[[3456789]]86-*-sco3.2v5*, i[[3456789]]86-*-sco*,
i[[3456789]]86-*-sysv4*, i[[3456789]]86-*-beos*): Don't disable
libgcj.
(m68k-*-coff*): Remove case.
(mmix-*-*): Don't disable libgloss on host.
(mn10200-*-*, mn10300-*-*): Remove cases.
(powerpc*-*-winnt* | powerpc*-*-pe*, powerpcle-*-solaris*,
powerpc-*-beos*, m68k-apollo-*, mips*-*-irix5*, mips*-*-bsd*):
Don't disable libgcj.
(romp-*-*): Remove case.
(sparclite-*-*, sparc-*-sunos4*): Don't disable libgcj.
(sparc-*-solaris2.[[0-6]] | sparc-*-solaris2.[[0-6]].*): Remove
case.
(v810-*-*): Don't disable GCC libraries.
(v850*-*-*, vax-*-vms, xtensa*-*-*): Remove cases.
(ip2k-*-*): Don't disable GCC libraries.
* configure: Regenerate.

Index: configure.ac
===
--- configure.ac(revision 171675)
+++ configure.ac(working copy)
@@ -521,7 +521,7 @@
 
 case "${target}" in
   *-*-chorusos)
-noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+noconfigdirs="$noconfigdirs target-newlib target-libgloss"
 ;;
   powerpc-*-darwin*)
 noconfigdirs="$noconfigdirs ld gas gdb gprof"
@@ -543,9 +543,6 @@
   *-*-dragonfly*)
 noconfigdirs="$noconfigdirs target-newlib target-libgloss"
 ;;
-  *-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*)
-noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
-;;
   *-*-freebsd*)
 noconfigdirs="$noconfigdirs target-newlib target-libgloss"
 if test "x$with_gmp" = x && test "x$with_gmp_dir" = x \
@@ -565,9 +562,7 @@
 ;;
   *-*-kaos*)
 # Remove unsupported stuff on all kaOS configurations.
-skipdirs="target-libiberty ${libgcj} target-libstdc++-v3"
-skipdirs="$skipdirs target-libobjc"
-skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc 
target-zlib"
+skipdirs="target-libiberty"
 noconfigdirs="$noconfigdirs target-libgloss"
 ;;
   *-*-netbsd*)
@@ -636,7 +631,6 @@
 noconfigdirs="$noconfigdirs target-libgloss"
 ;;
   arm-*-coff)
-noconfigdirs="$noconfigdirs ${libgcj}"
 libgloss_dir=arm
 ;;
   arm-*-elf* | arm*-*-eabi* )
@@ -644,7 +638,6 @@