Subject: Re: moving g77 to the ports system
To: Igor Sobrado <sobrado@string1.ciencias.uniovi.es>
From: Bill Studenmund <wrstuden@netbsd.org>
List: tech-userlevel
Date: 01/03/2003 10:26:13
On Fri, 3 Jan 2003, Igor Sobrado wrote:

> > On Thu, 2 Jan 2003, Igor Sobrado wrote:
> >
> > > It is practically dropped by GNU, they are developing a new compiler,
> >
> > Do you have a posting or message indicating it was dropped? Just because a
> > g95 is under development doesn't mean g77 has been dropped. Dropped would
> > mean that if I get recent gcc sources g77 isn't there.
>
> Hello Bill!
>
> Yes, it is now in maintenance mode.  Only _small_ fixes "might"
> be applied.  Look for example at:

Maintenance mode != dropped. dropped is it's not in the releases.

> But, please, do not misunderstand what am I saying. I DO NOT SAY IT MUST
> BE MOVED TO THE PKGSRC SYSTEM BECAUSE ITS LACK OF SUPPORT, there are nice
> programs that were not updated in the last ten years and are great
> products.  What I am saying is that:
>
>   - It is not required in the base system (NetBSD does not need it
>     to build a new kernel, or the world itself)
>
>   - There is a small number of users that need it.  All the research
>     groups I know at my old department prefer buying commercial
>     FORTRAN compilers (Fujitsu, and HP ones).

Yes, and they asked to have it.

>   - It is currently in a very bad status, and it will not be improved,
>     only fixed.  It has been declared "in maintenance mode" before
>     being a mature product.  See other posts on this mailing list.

So far, we have that g77 is not a good fortran compiler, and not many
folks need fortran.

> I cannot understand why g77 users cannot add it from the pkgsrc
> (where a most recent release of GCC is available by now).  Because it

And now for one big reason to keep it in the base system: we are not
running stock GCC. We have a number of patches to our code to get it
working on all of the different CPUs we support. While we are trying to
(and lately doing a good job of) getting these changes back to GCC
development, we haven't in the past. Also, fixes in NetBSD-current go into
GCC-current, which is still in a great state of flux. So to get a stable
compiler that works well on NetBSD, you need to use what's in our tree.

So to split g77 out, we would need to make a package of OUR g77, and
release it. That's a lot of extra work. Just keeping it in the base system
makes it much easier to maintain.

> is required to build other software packages?  Well, in this case
> gtk, qt, Motif, and so on should be added to the base system too.
> At least those libraries and tools that do not require X support...
> One of the keys with pkgsrc is that it is aware about the requirements
> of software being build.

> I cannot see the problem about moving it to pkgsrc.
>
> > > and g77 is frozen since mid-90.  That compiler does not support
> > > FORTRAN-related standards.  It has known bugs and, as I observed
> > > above, it is a FORTRAN 77 compiler with "some" FORTRAN 90 extensions.
> > > A fully standards-compliant compiler will be nice.
> >
> > Do you have one we can use?
>
> A fully ANSI compliant FORTRAN compiler?  Sorry, I do not know about it.
> Perhaps Intel compilers will do a nice job in NetBSD/i386,
> but not when running NetBSD in one of the other 35 currently
> supported platforms.  But that is not a reason to provide g77 in
> the base system.

While that might have been a reason to not add it, we have added it.
People see value in having it. Perhaps only a small amount of value, but
it's there. If g77 were perceived to have negative net value, we'd remove
it. I don't think you've convinced us it's at negative value yet, though.

> No, moving a package to the pkgsrc system is not dropping that package.
> Has NetBSD dropped Gnome, KDE, nmh, or TeX?  I hope that the answer
> will be no.

The difference is that you're talking about dropping g77 and keeping the
rest of our compiler suite, when we think of g77 as tightly-bound with the
others. It would be more like having some of KDE in the base, and the
less-commonally-used parts in pkgsrc.

> > We put it in for a reason. You have not addressed that reason. Your case
> > for removing g77 will go much farther if you can explain to everyone how
> > that reason doesn't apply.
>
> The reason is not running a second gcc compiler, am I wrong?
>
> I do not see why g77 users cannot build a new (and updated) GCC
> release from pkgsrc.  Most users do it now only to get an updated
> gcc, or g++.

See above. With stock GCC sources, you either have an under-developement
compiler, or you don't have all our fixes.

> That means that Java, and others compilers that are now being added
> to GCC 3.x *will be* in the NetBSD base system if the GNU Compiler
> Collection is upgraded?

Probably. But that's more Jason's call.

Take care,

Bill