On Tue, Aug 05, 2025 at 01:00:20AM +0200, Kirill A. Korinsky wrote:
> On Mon, 04 Aug 2025 10:03:18 +0200,
> Kirill A. Korinsky <kir...@korins.ky> wrote:
> > 
> > ports@,
> > 
> > here is a work-in-progress update for lang/gcc to version 15.x, and I
> > would like to ask for your help with testing.
> > 
> > I've also attached the intermediate versions which I've created during
> > this process to update patches.
> > 
> > To make this update possible, I had to sacrifice the dlang. Starting
> > with gcc-12, the build process requires a working GDC to bootstrap
> > itself. Attempting to use the GDC from gcc-11 results in the error:
> > 
> > /build/pobj/gcc-12.4.0/gcc-12.4.0/libphobos/libdruntime/core/sys/openbsd/execinfo.d:156:1:
> >  error: declaration expected, not 'module'
> >   156 | module core.sys.openbsd.execinfo;
> >       | ^
> > 
> > Furthermore, my investigation revealed that dlang has been broken since
> > at least version 7.5, as it fails to compile a simple program:
> > 
> > $ cat test.d
> > import std.stdio;
> > 
> > void main()
> > {
> >     writeln("Hello, World!");
> > }
> > $ egdc test.d
> > ld: error: undefined symbol: fiber_switchContext
> > >>> referenced by fiber.d:1643 
> > >>> (/usr/obj/ports/gcc-11.2.0/gcc-11.2.0/libphobos/libdruntime/core/thread/fiber.d:1643)
> > >>>               fiber.o:(_D4core6thread5fiber5Fiber9switchOutMFNbNiZv) in 
> > >>> archive 
> > >>> /usr/local/lib/gcc/x86_64-unknown-openbsd/11.2.0/../../../libgphobos.a
> > >>> referenced by fiber.d:1610 
> > >>> (/usr/obj/ports/gcc-11.2.0/gcc-11.2.0/libphobos/libdruntime/core/thread/fiber.d:1610)
> > >>>               fiber.o:(_D4core6thread5fiber5Fiber8switchInMFNbNiZv) in 
> > >>> archive 
> > >>> /usr/local/lib/gcc/x86_64-unknown-openbsd/11.2.0/../../../libgphobos.a
> > collect2: error: ld returned 1 exit status
> > $
> > 
> > Given this, removing dlang to unblock the GCC update seems acceptable.
> > 
> > I have successfully tested the new GCC on -current/amd64 by building the
> > port and compiling some basic C++ programs.
> > 
> > I'm now requesting help to test this update on other archs. I'll handle
> > arm64, but I don't have access to other archs. I would appreciate it if you
> > could either test or provide me with access to do so myself.
> > 
> > If gcc-15 fails, please try the previous intermediate versions I've
> > attached to see if any of them work.
> > 
> > Please note that I have not cleaned up the patches yet; my priority was
> > to get the update functional. I plan to simplify them as a next step.
> > 
> 
> Build on arm64 discovers a few missed pices. Here an updated gcc-15 port.

Already spotted by phessler: dbxelf.h should be dropped from
patches/patch-gcc_config_gcc and from PFRAG.$arch on all
architectures.  Could you please add that to your update to gcc-15.2?

> Keep in mind that an update for devel/gas might be needed
> https://marc.info/?l=openbsd-ports&m=175433400115355&w=2

Updating gas would be a nice thing anyway, but did you spot any
misbehavior with gcc-15, or any changelog entry regarding a minimum
gas version required?

-- 
jca

Reply via email to