Massive PORTS_REVISION bump after making gcc-9.1 default

Lorenzo Salvadore phascolarctos at protonmail.ch
Sun Jul 28 19:12:16 UTC 2019


‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Sunday 28 July 2019 20:56, Gerald Pfeifer <gerald at pfeifer.com> wrote:

> On Sun, 28 Jul 2019, Kevin Oberman wrote:
>
> > The description of the commit states:
> > This includes ports
> >
> > -   with USE_GCC=yes or USE_GCC=any,
> > -   with USES=fortran,
> > -   using Mk/bsd.octave.mk which in turn features USES=fortran, and
> > -   with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
> >     c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
> >     plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
> >
> >
> > This would appear to me like it did catch a great many ports which are
> > not build with or any anything to do will gcc, though I am not sure.
>
> These ports may not use GCC on your system, or even the majority of
> systems, but there are systems and situations where they do, and bumping
> PORTREVISION is a global binary decision for each port considered.
>
> > E.g. I thought that USES=compiler:c11 and similar were asking for
> > c11 semantics from whatever compiler was used but
>
> Let's look at your example. ports/Mk/Uses/compiler.mk has the following
> on USES=compiler:c11:
>
> .if ${_COMPILER_ARGS:Mc11}
> .if !${COMPILER_FEATURES:Mc11}
> .if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) ||
> (${ARCH} != amd64 && ${ARCH} != i386) # clang not always supported on Tier-2
> USE_GCC= yes
> CHOSEN_COMPILER_TYPE= gcc
> .elif ${COMPILER_TYPE} == gcc
>
> That is, if a user has set a preference for GCC or for non x86/x86-64
> platforms, GCC is used.
>
> And if there is one legitimate configuration on the planet where a
> PORTREVISION bump is required, we have to perform it in our repository.
>
> (This is not saying I may not have made a mistake somewhere, but in
> general those bumps do appear necessary.)
>
> Gerald

It might be useful to add a command to pkg that bumps PORTREVISION
for installed packages without really building them again, for those cases
when users know that they are not affected by the bump.
I think at the moment this is possible only by manually modifying
/var/db/pkg/local.sqlite (I never tried).

Lorenzo Salvadore.


More information about the freebsd-ports mailing list