lld-16 has support for compressing debug sections, and that collides
with devel/dwz which errors out when encountering an already compressed
debug section.

[...]
>>> Running package in lang/ruby/3.2 at 1699550663.60
===> lang/ruby/3.2
`/usr/ports/pobj/ruby-3.2.2/fake-amd64/.fake_done' is up to date.
> Extracting debug info from 
> /usr/ports/pobj/ruby-3.2.2/fake-amd64/usr/local/lib/ruby/3.2/x86_64-openbsd/bigdecimal.so
dwz: 
/usr/ports/pobj/ruby-3.2.2/fake-amd64/usr/local/lib/ruby/3.2/x86_64-openbsd/.debug/bigdecimal.so.dbg:
 Found compressed .debug_loc section, not attempting dwz compression
*** Error 1 in /usr/ports/pobj/ruby-3.2.2/fake-amd64 (debug-pkg/Makefile:34 
'/usr/ports/pobj/ruby-3.2.2/fake-amd64/usr/local/lib/ruby/3.2/x86_64-openbsd/.debug/bigdecimal.so.dbg')
[...]

Here's a diff to keep on using dwz like in other ports, something that
supposedly works on all architectures (though I doubt that we ever tried
to activate DEBUG_PACKAGES on ld.bfd archs).  With this,
lang/ruby/3.[12] build and package fine.

ok?


Index: Makefile.inc
===================================================================
RCS file: /home/cvs/ports/lang/ruby/Makefile.inc,v
diff -u -p -r1.32 Makefile.inc
--- Makefile.inc        25 Sep 2023 17:07:32 -0000      1.32
+++ Makefile.inc        9 Nov 2023 19:06:27 -0000
@@ -38,6 +38,8 @@ CONFIGURE_ARGS +=     --enable-shared \
                        --without-baseruby \
                        --without-bundled-libffi \
                        --disable-option-checking
+# dwz errors out if it encounters an already compressed debug section
+CONFIGURE_ARGS +=      --with-compress-debug-sections=no
 
 CONFIGURE_ENV +=       LIBruby${BINREV}_VERSION=${LIBruby${BINREV}_VERSION} \
                        PREFIX="${PREFIX}" \


-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to