Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 May 2023 05:56:50 +0000
From:      bugzilla-noreply@freebsd.org
To:        desktop@FreeBSD.org
Subject:   [Bug 270421] graphics/librsvg2-rust: 2.56.0 Fails to compile because of LLVM version mismatch
Message-ID:  <bug-270421-39348-zev64YxShs@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-270421-39348@https.bugs.freebsd.org/bugzilla/>
References:  <bug-270421-39348@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D270421

throwaway_vthgwq4@protonmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |throwaway_vthgwq4@protonmai
                   |                            |l.com

--- Comment #4 from throwaway_vthgwq4@protonmail.com ---
I have similar here with -CURRENT (base LLVM 15) and Rust using LLVM 16:

[...]
cargo --locked build --verbose  --release --bin rsvg-convert
libtool: link: /usr/bin/nm -B   ./.libs/librsvg_c_api.a | /usr/bin/sed -n -e
 's/^.*[         ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[         ][      ]*\([_A-Za-
z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /usr/bin/sed '/ __gnu_lto/d' | /usr/bin/sed
 's/.* //' | sort | uniq > .libs/librsvg-2.exp
/usr/bin/nm: error:
./.libs/librsvg_c_api.a(rsvg-6aae7815bd5a5a95.rsvg.f7c38f4e-cgu.0.rcgu.o):
Unknown attribute kind (86) (Producer: 'LLVM16.0.3' Reader: 'LLVM 15.0.7')
[...]

/usr/bin/nm is detected in configure script:

[...]
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
[...]

To avoid Rust LLVM and nm version match, try (adjust 16 for Rust LLVM versi=
on
in use):

diff --git a/graphics/librsvg2-rust/Makefile b/graphics/librsvg2-rust/Makef=
ile
--- a/graphics/librsvg2-rust/Makefile
+++ b/graphics/librsvg2-rust/Makefile
@@ -13,7 +13,8 @@ WWW=3D          https://live.gnome.org/LibRsvg

 LICENSE=3D       LGPL20

-BUILD_DEPENDS=3D rst2man:textproc/py-docutils
+BUILD_DEPENDS=3D rst2man:textproc/py-docutils \
+               llvm-nm16:devel/llvm16
 LIB_DEPENDS=3D   libfontconfig.so:x11-fonts/fontconfig \
                libfreetype.so:print/freetype2 \
                libharfbuzz.so:print/harfbuzz \
@@ -30,7 +31,7 @@ CONFIGURE_ARGS=3D       --disable-Bsymbolic \
                --disable-dependency-tracking \
                --disable-static \
                --enable-vala
-CONFIGURE_ENV=3D ${CARGO_ENV}
+CONFIGURE_ENV=3D ${CARGO_ENV} NM=3D/usr/local/bin/llvm-nm16
 MAKE_ENV=3D      ${CARGO_ENV}
 CARGO_ENV=3D     RUST_TARGET=3D${CARGO_BUILD_TARGET}
 CARGO_BUILD=3D   no

Alternatively, investigate if parts of librsvg2-rust invoking cargo directly
(rg 'CARGO_RELEASE_ARGS' in WRKDIR) could opt-out either from LTO (maybe
ThinLTO is partly used, and switching to fat LTO would help) or build.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-270421-39348-zev64YxShs>