net/ipxe in openbsd-wip seems to require the GNU linker.
2.17 from base just segfaults (certainly too old) and ld.lld(1) complains
differently, depending on what/how I build stuff:
- ld: error: section .text file range overlaps with .shstrtab
- ld: error: output file too large: 18446744073709485768 bytes
When using gld built with the diff below, ipxe.efi links fine.
Is there a reason disable it?
If udesirable by default, but a FLAVOR be acceptable that is not hooked up,
but can be depended upon in ports like ipxe needing it?
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/binutils/Makefile,v
diff -u -p -r1.21 Makefile
--- Makefile 19 Oct 2025 23:54:27 -0000 1.21
+++ Makefile 20 Nov 2025 08:30:38 -0000
@@ -2,7 +2,7 @@ COMMENT = GNU binary utilities
# keep version synchronized with devel/gas
DISTNAME = binutils-2.45
-REVISION = 0
+REVISION = 1
EXTRACT_SUFX = .tar.bz2
CATEGORIES = devel
@@ -28,7 +28,6 @@ CONFIGURE_STYLE = gnu
CONFIGURE_ARGS += --disable-gas \
--disable-gprof \
- --disable-ld \
--disable-libctf \
--disable-nls \
--disable-install-libbfd \
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/binutils/pkg/PLIST,v
diff -u -p -r1.4 PLIST
--- pkg/PLIST 24 Sep 2025 17:03:55 -0000 1.4
+++ pkg/PLIST 20 Nov 2025 08:30:38 -0000
@@ -3,6 +3,8 @@
@bin bin/gar
@bin bin/gc++filt
@bin bin/gelfedit
+@bin bin/gld
+@bin bin/gld.bfd
@bin bin/gnm
@bin bin/gobjcopy
@bin bin/gobjdump
@@ -12,12 +14,17 @@
@bin bin/gstrings
@bin bin/gstrip
@info info/binutils.info
+@info info/ld.info
+@info info/ldint.info
@info info/sframe-spec.info
+lib/bfd-plugins/
+@so lib/bfd-plugins/libdep.so
@man man/man1/gaddr2line.1
@man man/man1/gar.1
@man man/man1/gc++filt.1
@comment @man man/man1/gdlltool.1
@man man/man1/gelfedit.1
+@man man/man1/gld.1
@man man/man1/gnm.1
@man man/man1/gobjcopy.1
@man man/man1/gobjdump.1