tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: proposal for setting minimum upgraded compiler version



On Sat, 15 Jul 2023 at 09:00, nia <nia%netbsd.org@localhost> wrote:
>
> On the topic of whether old GCCs are "useful":
>
> Based on past discussion, I believe it was decided that in NetBSD's case,
> a verison of GCC identical to base should be used to provide a Fortran
> compiler. This would mean keeping at least GCC 7 around for NetBSD 9.
>
> A while ago, I removed gcc48/gcc49/gcc5 becaue I determined them
> non-useful for bootstrapping because GCC versions as high as 10 can be
> built with only a c++98 compiler (same as versions as low as gcc48).
>
> Additionally, these compilers weren't useful on RHEL derivatives
> because they couldn't be built with FORTIFY_SOURCE, which in many
> cases we are enforcing by default in pkgsrc.
>
> I would argue that gcc6 should go because it's no longer useful.
> GCC 8 and GCC 9 could also go from the infrastructure now.
>
> I'd also argue that for consistency's sake, and for reasons
> of better testing and reproducibility, it makes sense to primarily
> focus on providing GCC versions that were included in a NetBSD
> release, as well as more recent versions.

At one point we also kept some older gcc versions around as the latest
version available for older os platforms (HP-UX/IRIX/AIX etc).

Most of those maxed out around gcc 4.8 and 5.x, so the end result
today would have been a gcc version which would not be able to build
most of pkgsrc, plus those versions have already been removed, so I
think we can safely say that ship has sailed.

However, it may be useful to acknowledge explicitly that pkgsrc will
retire older gcc versions unless someone has a specific need for a gcc
version for a given os platform.

To that end if anyone is running pkgsrc on a platform which cannot
build gcc12, it may be worth adding a comment to the Makefile for the
last supported gcc version so it will not be removed in future without
potential additional discussion.

It may also be time to take a pass through the bootstrap/README.${os}
and drop those with only ancient compilers, and add warning notes to
others with "not quite so ancient" compilers

(and I would support picking the most recent possible
MIN_UPGRADED_GCC_VERSION for any given platform, unless there are
specific other factors)

David


Home | Main Index | Thread Index | Old Index