Ian Lance Taylor wrote:
Mark Mitchell <[EMAIL PROTECTED]> writes:

I would strongly oppose downloading stuff during the build
process. We're not in the apt-get business; we can leave that to the
GNU/Linux distributions, the Cygwin distributors, etc.  If you want to
build a KDE application, you have to first build/download the KDE
libraries; why should GCC be different?

Because gcc is the first step in bringing up a new system.

I don't find this as persuasive as I used to. There aren't very many new host systems, and when there are, you get started with a cross compiler.

I disagree: the process of building gcc from a release (as opposed to
building the development version of gcc) really isn't complicated.
The only remotely non-standard thing that is required is GNU make.
Given that, all you need to do is "SRCDIR/configure; make".

OK, I agree: a native compiler, with no special options, isn't too hard. I don't think typing that sequence twice would be too hard either, though. :-)

I'm certainly not saying that we should pull out GMP and MPFR.  But I
am saying that we need to do much much better about making it easy for
people to build gcc.

I agree; I just don't think an external library is the problem. For example, the unfortunate tendency of broken C++ compilers to manifest as autoconf errors about "run-time test after link-time failure" (that's not the right error) in libstdc++ builds confused me a bunch. The fact that you can pass configure options that are silently ignored is a trap. I'm sure we don't have good documentation for all of the configuration options we do have. The way the libgcc Makefiles get constructed from shell scripts and the use of recursive make to invoke them confuses me, and the fact that "make" at the top level does things differently than "make" in the gcc/ directory also confuses me. IIRC, --with-cpu= works on some systems, but not others.

In other words, the situation that you're on a GNU/Linux system, and have to type "configure; make; make install" several times for several packages to GCC doesn't seem too bad to me. What seems bad, and off-putting to newcomers interested in working on the source, is that as soon as you get past that point it all gets very tangled very quickly.

But, that's just me. I wouldn't try to stop anybody from adding --with-gmp=http://www.gmp.org/gmp-7.3.tar.gz to the build system, even though I'd find it personally frightening. :-)

--
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713

Reply via email to