USE_GCC=any -> USE_GCC=yes (was: svn commit: r504198 - head/Mk)
Gerald Pfeifer
gerald at pfeifer.com
Thu Jul 4 21:17:04 UTC 2019
On Thu, 4 Jul 2019, Mark Linimon wrote:
> But ... what I understand is that "any" means "it's ok to use base
> gcc". That was always the intended difference to "yes" which means
> "you *must* use a recent gcc" [e.g. from ports].
>
> I don't really see why we need to add the dependency on a newer gcc
> if the version in base suffices. What am I missing here?
I think we agree that nearly all FreeBSD users and developers are on
amd64 (or i386)
When a port maintainer or committer sets USE_GCC=any she and (nearly)
everyone else therefore uses GCC 8 as of today.
When that port is then built on powerpc64, USE_GCC=any implies the age
old GCC 4.2 in base, and thus the build is attempted with a compiler
very, very different from what the original maintainer/committer/testers
and users had.
> (Granted, this distinction becomes meaningless in FreeBSD e.g. 13 when
> base gcc is deleted -- but we will still be supporting 11/12 for quite
> some time to come.)
And rejoicing there will be! :)
>>> Most ports just need USES=compiler:*.
>> Yes, and that's where we should take action as well.
> And by default we have been doing that -- unless it is *known* that
> the port simply won't build with clang and thus requires USE_GCC.
> OTOH there has been recently pushback that "you could have done the
> same thing more minimally by" (specifying c99, etc.)
>
> The problem is, we've tried to take the fastest route to getting as
> large a set of packages built as possible. Thus:
>
> Mon Nov 19 13:48:26 UTC 2018 11304
> Sun Jun 16 06:10:04 UTC 2019 27953
>
> but again, a) we're getting pushback; b) in any case, work has to be
> done on ~120 ports to fix the "powerpc means gcc" assumption, which
> will soon be smashed in -CURRENT (per above).
>
> (Frankly, except for the latter I would leave the whole issue alone.
> Even if we spend ~1hr/port to prove that c99 is "more minimal", that's
> still ~100 hours.)
I'm not proposing to make things more complicated or increase effort.
I'm proposing for USE_GCC=any to behave exactly the same on powerpc64
as it has been on amd64/i386 for years: Imply usage of a modern version
of GCC coming from the ports tree.
That is: let's align powerpc64 with amd64/i386 instead of being different.
Makes sense?
Gerald
More information about the svn-ports-head
mailing list