Re: [RFC] Update to current automake/autoconf/libtool versions (take 2)

Nathanael Nerode
2003-01-12T16:14:13Z

Klee Dienes wrote:
> The following is the current state-of-the art of my autoconf-2.5x
> conversion of the gcc/gdb/binutils repositories. It updates the
> following directories:
>
> common: libiberty
> src: bfd binutils gas gdb gprof ld mmalloc opcodes rda sim utils
> gcc: boehm-gc fastjar gcc libf2c libffi libjava libobjc
> libstdc++-v3 zlib
>
> It does *not* update the following directories:
>
> common: include texinfo config etc contrib
'include' shouldn't have a makefile.
'texinfo' is either imported from outside, or doesn't have a makefile.
'config' doesn't have one.
'contrib' shouldn't have one.
I'm not sure about 'etc', but I think it shouldn't.

> src: blt cgen cpu dejagnu expect intl itcl iwidgets libgloss
> libgui newlib readline tcl tk winsup sid"
I don't know anything about 'blt', but it's not built by the top level,
so shouldn't be an issue.
'cgen' isn't built by the top level currently (although it will be again
sometime in the future) so it's not an issue either.
'dejagnu' is imported from outside, so we shouldn't touch it.
'expect' is imported from outside.
I don't know about 'intl'.
'itcl' is imported from outside. (I think it still is, anyway.)
I don't know about 'iwidgets', but it's not built by the top level, so I
don't think we have to worry about it.
--> 'libgloss' actually needs to be done, I'm afraid.
--> I'm not sure about the status of 'libgui'.
--> 'newlib' actually needs to be done as well.
'readline' is imported from outside.
'tcl' is imported from outside.
'tk' is imported from outside.
--> 'winsup' is Cygwin. It should be done, sometime.
--> 'sid' should be done.

> gcc: libbanshee libchill libio libmudflap libstdc++"
'libbanshee' is branch only; the branch maintainer should do this.
'libchill' is dead.
'libio' is dead.
'libmudflap' is branch only; the branch maintainer should do this.
'libstdc++' is dead.

In other words, excellent work. :-)
I'll try to make a pass at the remaining directories, but I'm not sure
when I'll get to them.

I'd like to see some version of this in sooner rather than later;
incremental fixes are easier from this point than from the current
point, and it would be nice if it went in during gcc 'stage 1' when
major destabilizing changes are allowed.

> autoconf: 2.57 (with the attached patch)
Think you can submit the patch to the autoconf maintainers and get it
into mainline autoconf?

>top-diffs.txt Patches to top-level files in both 'src' and gcc.
Honestly, I've wanted to make the ${x_alias}-->${x} change for the
directory names for a *long* time, but
a) it has to be done synchronously in all subdirectories and
b) it changes developer-visible behavior for cross builds (canonical
name rather than specified name)

If I could get buy-in from gcc, gdb, and binutils for a patch doing just
that, I would put it in right now (and make your diffs for autoconf 2.57
conversion rather shorter). I never submitted it 'cause I figured it
would not be popular.

An alternative, if perhaps sillier, scheme would be to create new
autoconf macros to find the ${build_subdir} and ${target_subdir} values,
and put it in a file included by everyone who cares.

But it's *much* simpler to always use the canonicalized names.

--Nathanael