Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 910164 - media-libs/embree-3.13.5: fails to build with clang LTO: string sub-command REPLACE requires at least four arguments
Summary: media-libs/embree-3.13.5: fails to build with clang LTO: string sub-command R...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sebastian Parborg
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2023-07-09 14:01 UTC by Violet Purcell
Modified: 2023-07-26 08:00 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,254.33 KB, text/x-log)
2023-07-09 14:01 UTC, Violet Purcell
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Violet Purcell 2023-07-09 14:01:15 UTC
Created attachment 865309 [details]
build.log

This seems to be some sort of issue with LTO symbol visibility, since running "objdump -C -t" on one of the static archives created without LTO shows the correct symbol table, while with LTO it produces no output.

Steps to reproduce:
1. Use LLVM/musl profile.
2. Add -flto=thin to CXXFLAGS
3. emerge -av media-libs/embree

emerge --info:
Portage 3.0.49 (python 3.12.0-beta-3, default/linux/amd64/23.0/musl/llvm, [unavailable], musl-1.2.4, 6.3.10-gentoo-dist x86_64)
=================================================================
System uname: Linux-6.3.10-gentoo-dist-x86_64-AMD_Ryzen_7_7700X_8-Core_Processor-with-libc
KiB Mem:    31978980 total,   8839800 free
KiB Swap:   33554428 total,  33507388 free
Head commit of repository gentoo: c75b687ef09f4ebb1287a28be60dc441c9b46486

Head commit of repository catcream: 0b53195d6485e370791f8c91fbb99a6fd895c8b8

Head commit of repository gensix: 8f83bfeabaed799cf9e2f77e3446b6990d94409e

Head commit of repository guru: 981117d78139d5011776a5d243920dd6a348b8c1

Head commit of repository haskell: 14a3049a385695eb665fbc439c557cafbe45cd97

Head commit of repository musl: 3c3b356a62beef9feb5aedfa67f93ef38509b139

Head commit of repository mv: 23a053c2f8f710bcd5062f065063b9df8fe6119c

Head commit of repository t2: a47c307b18fccd03d186b64a41de1d91874b8073

Head commit of repository vimproved: 2e07f43bfb3bb48093c9e7fc6d060c050af2fb6a

sh dash 0.5.12
ld LLD 17.0.0 (compatible with GNU linkers)
app-misc/pax-utils:       1.3.7::gentoo
app-shells/bash:          5.2_p15-r6::gentoo
dev-java/java-config:     2.3.1-r1::gentoo
dev-lang/perl:            5.38.0::gentoo
dev-lang/python:          3.11.4::gentoo, 3.12.0_beta3::gentoo
dev-lang/rust:            1.70.0-r1::vimproved
dev-util/cmake:           3.26.4-r1::gentoo
dev-util/meson:           1.1.1::gentoo
sys-apps/baselayout:      2.14::gentoo
sys-apps/sandbox:         2.35::gentoo
sys-devel/autoconf:       2.13-r8::gentoo, 2.71-r6::gentoo
sys-devel/automake:       1.16.5-r1::gentoo
sys-devel/clang:          15.0.7-r3::gentoo, 16.0.6::gentoo, 17.0.0_pre20230705::gentoo
sys-devel/libtool:        2.4.7-r1::gentoo
sys-devel/lld:            15.0.7::gentoo, 16.0.6::gentoo, 17.0.0_pre20230705::gentoo
sys-devel/llvm:           15.0.7-r3::gentoo, 16.0.6::gentoo, 17.0.0_pre20230705::gentoo
sys-devel/make:           4.4.1-r1::gentoo
sys-kernel/linux-headers: 6.4::gentoo (virtual/os-headers)
sys-libs/musl:            1.2.4::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo/gentoo.git
    priority: -1000
    volatile: False

catcream
    location: /var/db/repos/catcream
    sync-type: git
    sync-uri: https://github.com/alfredfo/catcream_repo.git
    masters: gentoo
    volatile: False

crossdev
    location: /var/db/repos/crossdev
    masters: gentoo
    volatile: False

gensix
    location: /var/db/repos/gensix
    sync-type: git
    sync-uri: https://codeberg.org/vimproved/gensix.git
    masters: gentoo
    volatile: False

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo/guru.git
    masters: gentoo
    volatile: False

haskell
    location: /var/db/repos/haskell
    sync-type: git
    sync-uri: https://github.com/gentoo-haskell/gentoo-haskell.git
    masters: gentoo
    volatile: False

musl
    location: /var/db/repos/musl
    sync-type: git
    sync-uri: https://github.com/gentoo/musl.git
    masters: gentoo
    volatile: False

mv
    location: /var/db/repos/mv
    sync-type: git
    sync-uri: https://github.com/vaeth/mv-overlay.git
    masters: gentoo
    volatile: False

t2
    location: /var/db/repos/t2
    sync-type: git
    sync-uri: https://codeberg.org/vimproved/t2-overlay.git
    masters: gentoo
    volatile: False

vimproved
    location: /var/db/repos/vimproved
    sync-type: git
    sync-uri: https://codeberg.org/vimproved/overlay.git
    masters: gentoo guru haskell
    volatile: False

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE"
ADDR2LINE="llvm-addr2line"
AR="llvm-ar"
AS="clang -c"
CBUILD="x86_64-gentoo-linux-musl"
CC="clang"
CFLAGS="-march=native -O3 -pipe -flto=thin"
CHOST="x86_64-gentoo-linux-musl"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CPP="clang-cpp"
CXX="clang++"
CXXFLAGS="-march=native -O3 -pipe -flto=thin"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync warn-on-large-env xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="charset.alias /usr/share/locale/locale.alias"
LANG="en_US.UTF-8"
LD="ld.lld"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed "
LEX="reflex"
MAKEOPTS="-j16"
NM="llvm-nm"
OBJCOPY="llvm-objcopy"
OBJDUMP="llvm-objdump"
PKGDIR="/var/cache/binpkgs"
PORTAGE_COMPRESS="gzip"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
RANLIB="llvm-ranlib"
READELF="llvm-readelf"
SHELL="/bin/bash"
STRINGS="llvm-strings"
STRIP="llvm-strip"
USE="acl amd64 bash-completion bzip2 clang crypt dist-kernel elogind grub iconv ipv6 jack libtirpc llvm-libunwind lzma ncurses nptl pam pcre pipewire qt6 readline screencast seccomp ssl test-rust unicode vaapi vulkan wayland xattr zlib zstd" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512f avx512dq avx512cd avx512bw avx512vl avx512vbmi f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" ELIBC="musl" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="luajit" LUA_TARGETS="luajit" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby32" VIDEO_CARDS="amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
YACC="byacc"
Unset:  ARFLAGS, ASFLAGS, CCLD, CONFIG_SHELL, CPPFLAGS, CTARGET, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RUSTFLAGS, SIZE, YFLAGS
Comment 1 Larry the Git Cow gentoo-dev 2023-07-26 08:00:21 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=958acb2ffefb980fb7be3cfcfd5c667e567184d4

commit 958acb2ffefb980fb7be3cfcfd5c667e567184d4
Author:     Violet Purcell <vimproved@inventati.org>
AuthorDate: 2023-07-09 14:06:50 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2023-07-26 08:00:18 +0000

    media-libs/embree: Filter LTO with clang
    
    Closes: https://bugs.gentoo.org/910164
    Signed-off-by: Violet Purcell <vimproved@inventati.org>
    Closes: https://github.com/gentoo/gentoo/pull/31811
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 media-libs/embree/embree-3.13.4.ebuild | 5 ++++-
 media-libs/embree/embree-3.13.5.ebuild | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)