The following reply was made to PR toolchain/47503; it has been noted by GNATS.
From: "Valeriy E. Ushakov" <uwe%stderr.spb.ru@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: toolchain/47503: Request automated addition of gfortran to base
compiler set
Date: Tue, 5 Feb 2013 17:18:38 +0400
On Mon, Feb 04, 2013 at 22:55:08 +0000, Jason Bacon wrote:
> RHEL and CentOS already include gfortran in the base, so a GCC package
> is unnecessary here.
Does a typical Linux distribution even have a "base" in the same sense
we speak about base system in BSDs? My impression from my limited
exposure is that in NetBSD terms their "base" gcc is what we would
call a gcc package.
> We could get by with a GCC package on NetBSD, but since GCC 4.5 is now
> being used as the base compiler, and pkgsrc already contains the logic
> to use a base gfortran if it's present, I think it would make sense to
> have gfortran in the base (at least as an option). This would ensure
> object code compatibility with code compiled by the base gcc and g++ as
> well.
Are there some known ABI issues between recent 4.x series, or is it
more in the bad vibes area? (I use it as a neutral technical (sic!:)
term here)
> I think it would take fewer man-hours in the long run to put it
> in the base, and the end result would be cleaner and safer.
... for as long as gfortran in gcc 4.5 is considered ok, until some
horrible bug that triggers only under rare conditions makes it
unsuitable because you can't trust it any more.
... or when gcc 4.N+1 has optimizer improvements that cut you batch
wall time by days and you absolutely want to use 4.N+1 instead of that
old base 4.5
... or until we decide to upgrade the base compiler to, say, gcc 4.7
and it turns out newer gfortran have issues.
I'm sure pkgsrc folks can continute the list.
From the base system persepective I'd say it would take fewer
man-hours in the long run to make sure gfortran packages work smoothly.
. de facto, optional code tends to bit-root
. de jure, once in base, optional code is, effectively, mandatory
. it's "mandatory optional" on *all* ports, including those no-one
would ever going to use for HPC (vax heyday is over; jornada 680
cluster?)
. it will have to be in the standard builds, so limited resources of
netbsd autobuid cluster will be spent on building it (for all
ports).
. we will have to solve *exactly the same* ABI compatibility issues
(if any) during base gcc upgrade as pkgsrc needs to solve for a gcc
pacakge.
So the last item is the same for base and pkgsrc and all previous
items are extra work for base.
It's most likely that my perception of this problem is affected by my
wearing base-hacker hat (mine might have -5 penalty to wisdom and
cursed), so, please, excuse me if this mail might come across as a bit
antagonistic - it's not inteded that way.
-uwe