Index | Thread | Search

From:
Jeremie Courreges-Anglas <jca@wxcvbn.org>
Subject:
Re: Fixed gcc PROPERTIES detection
To:
Rafael Sadowski <rafael@sizeofvoid.org>
Cc:
Stuart Henderson <stu@spacehopper.org>, ports@openbsd.org
Date:
Sun, 26 Oct 2025 00:50:14 +0200

Download raw body.

Thread
For the record,

On Sat, Oct 25, 2025 at 11:43:02AM +0200, Rafael Sadowski wrote:
> On Sat Oct 25, 2025 at 09:56:12AM +0100, Stuart Henderson wrote:
> > These GCC49_ARCHS are "archs where ports-gcc >4.9 exists". GCC4_ARCHS is a
> > totally different thing, "archs where the compiler in base is gcc 4", the
> > two are not interchangeable.
> 
> Thank you for the explanation. From my point of view, it is
> certainly confusing.

The "gcc49" naming is confusing because it embeds a version.  But that
doesn't change the fact that it is about a different compiler and that
the property is populated according to a different list (GCC49_ARCHS).
I still think we should rename the variable and property.

> > freebasic: I don't see why this is conditional, the port only builds on
> > ports-gcc archs. "XXX only pulls this if it actually exists" doesn't make
> > much sense.

Yep.

> > The various gcc4.port.mk files should have a MODGCC4_CDEP or
> > similar (similar to MODGCC4_CPPDEP) that ports can use so they don't need to
> > hardcode versions (as in the RUN_DEPENDS) and then free basic can use that.
> > 
> > numpy: I don't think that needs to be conditional either?

For numpy: at some point riscv64 didn't have gcc49 support, but I
managed to build numpy without fortran support, as it would
automatically fall back on bundle of C files converted using
f2c.  This was also useful at some point for aarch64:

  -.if ${PROPERTIES:Mgcc49}
  +# XXX - disable on aarch64 until fortran compiler is fixed
  +.if ${PROPERTIES:Mgcc49} && ${MACHINE_ARCH} != aarch64

Nowadays both aarch64 and riscv64 have gcc49/fortran support.  The
other archs lacking gcc49 also don't have clang support so they have
no modern C compiler at all; and numpy requires a compiler newer than
base-gcc anyway:

  ERROR: Problem encountered: NumPy requires GCC >= 8.4

Already committed, but that was ok jca@.  Thanks!

-- 
jca