Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 921683 - dev-lang/rust-1.74.1[-system-llvm] with LLVM_TARGETS="DirectX SPIRV" fails to build
Summary: dev-lang/rust-1.74.1[-system-llvm] with LLVM_TARGETS="DirectX SPIRV" fails to...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Rust Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-09 23:25 UTC by i.Dark_Templar
Modified: 2024-02-14 10:26 UTC (History)
3 users (show)

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


Attachments
build.log.bz2 (build.log.bz2,80.23 KB, application/x-bzip)
2024-01-09 23:26 UTC, i.Dark_Templar
Details

Note You need to log in before you can comment on or make changes to this bug.
Description i.Dark_Templar 2024-01-09 23:25:10 UTC
When building rust with bundled LLVM and DirectX or SPIRV targets enabled, it fails to build with messages like:

CMake Error at CMakeLists.txt:925 (message):
  The target `DirectX' is experimental and must be passed via
  LLVM_EXPERIMENTAL_TARGETS_TO_BUILD.


Reproducible: Always

Steps to Reproduce:
1. LLVM_TARGETS="X86 DirectX SPIRV" USE="-system-llvm" emerge -1av dev-lang/rust

Actual Results:  
Build fails

Expected Results:  
Build should succeed or portage should say that this combination of options is not allowed.

Didn't test if it builds fine with USE="system-llvm".

emerge --info dev-lang/rust
Portage 3.0.59 (python 3.11.7-final-0, default/linux/amd64/17.1/desktop, gcc-13, glibc-2.38-r9, 6.1.67-gentoo-v66 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.1.67-gentoo-v66-x86_64-12th_Gen_Intel-R-_Core-TM-_i9-12900K-with-glibc2.38
KiB Mem:    65628972 total,  42191644 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Tue, 09 Jan 2024 09:15:01 +0000
Head commit of repository gentoo: 27abecd9e56ed5c56c7f1ddea29d32831225eeb6
Timestamp of repository steam-overlay: Tue, 09 Jan 2024 06:48:07 +0000
Head commit of repository steam-overlay: 6858fe18152f51aa874c4f68a0b49543246d7434

Head commit of repository dt-overlay-patches: d39fc5ba56c9d8875f8eba10d851c8c352df4a92

sh bash 5.1_p16-r6
ld GNU ld (Gentoo 2.41 p4) 2.41.0
app-misc/pax-utils:        1.3.5::gentoo
app-shells/bash:           5.1_p16-r6::gentoo
dev-lang/perl:             5.38.2-r1::gentoo
dev-lang/python:           3.11.7::gentoo, 3.12.1::gentoo
dev-lang/rust:             1.74.1::gentoo
dev-util/cmake:            3.27.9::gentoo
dev-util/meson:            1.3.0-r2::gentoo
sys-apps/baselayout:       2.14-r1::gentoo
sys-apps/openrc:           0.52.1::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-devel/autoconf:        2.13-r7::gentoo, 2.71-r6::gentoo
sys-devel/automake:        1.16.5-r1::gentoo
sys-devel/binutils:        2.41-r3::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           16.0.6::gentoo, 17.0.6::gentoo
sys-devel/gcc:             13.2.1_p20230826::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/lld:             17.0.6::gentoo
sys-devel/llvm:            16.0.6::gentoo, 17.0.6::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.38-r9::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.de.gentoo.org/gentoo-portage/
    priority: -1000
    volatile: True
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: --no-progress --no-verbose --no-motd
    sync-rsync-verify-max-age: 24

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

dt-overlay-crossdev
    location: /var/db/repos/dt-overlay-crossdev
    masters: gentoo
    priority: 50
    volatile: False

dt-overlay-patches
    location: /var/db/repos/dt-overlay-patches
    sync-openpgp-key-refresh: no
    sync-type: git
    sync-uri: https://github.com/iDarkTemplar/dt-overlay-patches.git
    masters: gentoo
    priority: 50
    volatile: False
    sync-git-verify-commit-signature: Yes

dt-overlay-private
    location: /var/db/repos/dt-overlay-private
    masters: gentoo
    priority: 50
    volatile: False

Installed sets: @alsa, @archive-tools, @audacious, @bootloader-grub, @connman, @devel-editors, @devel-packages, @devel-tools, @devel-tools-x11, @fcitx, @filesystem-tools, @filesystem-tools-android, @fonts, @fonts-extra, @fortune, @gstreamer, @hardware-cpu-intel, @hardware-tools, @hardware-tools-x11, @ibus, @image-tools, @kde5, @language-tools, @lxc, @mail-server, @mail-server-local, @media, @media-converters, @mingw, @network-analyzers, @network-tools, @network-tools-extra, @opengl-devel, @opengl-utils, @plymouth, @portage-tools, @portage-tools-dev, @portage-tools-extra, @power-utils, @printers, @pulseaudio, @qt6-meta, @sane, @system-admin-utils, @system-admin-utils-extra, @system-daemons, @system-daemons-extra, @system-utils, @system-utils-extra, @tesseract, @text-utils, @virtualbox, @vpn, @vulkan-utils, @wine, @wireless-tools, @x11-core, @x11-extras, @x11-utils
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=alderlake -mtune=alderlake -mabm -mshstk -mno-cldemote -mno-kl -mno-sgx -mno-widekl -O2 -pipe -fomit-frame-pointer -fwrapv"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /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/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=alderlake -mtune=alderlake -mabm -mshstk -mno-cldemote -mno-kl -mno-sgx -mno-widekl -O2 -pipe -fomit-frame-pointer -fwrapv"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --binpkg-respect-use=y --autounmask=n --complete-graph=y --keep-going --quiet-build=y"
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="binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live distlocks ebuild-locks fakeroot fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.leaseweb.com/gentoo/ http://mirror.eu.oneandone.net/linux/distributions/gentoo/gentoo/ https://ftp.fau.de/gentoo http://ftp.fau.de/gentoo http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/"
INSTALL_MASK="    /usr/share/applications/discord.desktop  /usr/share/applications/steam.desktop  /etc/xdg/menus/applications-merged/wine.menu /usr/share/applications/wine-browsedrive.desktop /usr/share/applications/wine-notepad.desktop /usr/share/applications/wine-uninstaller.desktop /usr/share/applications/wine-winecfg.desktop /usr/share/desktop-directories/wine-Programs-Accessories.directory /usr/share/desktop-directories/wine-Programs.directory /usr/share/desktop-directories/wine-wine.directory /usr/share/applications/winetricks.desktop "
LANG="ru_RU.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
MAKEOPTS="-j24"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--no-progress --no-verbose --no-motd"
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"
SHELL="/bin/bash"
USE="X a52 aac acl acpi alsa amd64 amr apm ares bash-completion bidi bluetooth bluray branding bzip2 c++0x cairo caps cdda cdio cdr cleartype cli connman cracklib crypt cue cups cxx dbus designer dga dirac dri dts dvd dvdr egl elogind encode exif faad fbcon ffmpeg filecaps flac fontconfig fontforge freetype fribidi gif gles2 gme gmp gpm grub gtk gtkstyle gui ibus iconv icu idn imlib inotify ipv6 jadetex jpeg kde lcms libass libdvdcss libtirpc lzma lzo mad matroska mmap mng mp3 mp4 mpeg multilib ncurses network nfs nls nptl offensive ogg openal opengl openmp opus pam pango pcmcia pcntl pcre pdf pic plasma plymouth png policykit posix postproc ppds private-headers projectm pulseaudio qml qt5 qt6 raw readline schroedinger seccomp sftp sndfile sockets sound spell split-usr ssl startup-notification svg system-cairo system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite test-rust tga theora threads tiff truetype udev udisks unicode upower usb utils vaapi vdpau vorbis vpx vulkan wavpack wayland wifi wma x264 xattr xcb xcomposite xft xinerama xpm xscreensaver xv xvid zlib zstd" ABI_X86="64 32" ADA_TARGET="gnat_2021" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio 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 f16c fma3 mmx mmxext pclmul popcnt sha sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="evdev joystick libinput" KERNEL="linux" L10N="ru en de ja" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LLVM_TARGETS="AMDGPU" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby31" SANE_BACKENDS="escl" VIDEO_CARDS="vesa vga amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

dev-lang/rust-1.74.1::gentoo was built with the following:
USE="clippy lto rust-src rustfmt system-bootstrap (-big-endian) -debug -dist -doc (-llvm-libunwind) (-miri) (-nightly) (-parallel-compiler) (-profiler) -rust-analyzer (-system-llvm) -test -verify-sig -wasm" ABI_X86="32 (64) (-x32)" CPU_FLAGS_X86="sse2" LLVM_TARGETS="AMDGPU BPF NVPTX WebAssembly (X86) -AArch64 -ARC -ARM -AVR -CSKY -DirectX -Hexagon -Lanai -LoongArch -M68k -MSP430 -Mips -PowerPC -RISCV -SPIRV -Sparc -SystemZ -VE -XCore -Xtensa"
FEATURES="fakeroot buildpkg-live binpkg-logs pkgdir-index-trusted pid-sandbox userpriv network-sandbox fixlafiles usersandbox xattr sandbox multilib-strict usersync distlocks preserve-libs ebuild-locks unknown-features-warn protect-owned news userfetch merge-sync binpkg-dostrip qa-unresolved-soname-deps sfperms parallel-fetch ipc-sandbox unmerge-logs binpkg-docompress strict unmerge-orphans"
Comment 1 i.Dark_Templar 2024-01-09 23:26:58 UTC
Created attachment 881795 [details]
build.log.bz2

Full build log
Comment 2 Zhixu Liu 2024-01-11 11:09:43 UTC
diff --git a/dev-lang/rust/rust-1.74.1.ebuild b/dev-lang/rust/rust-1.74.1.ebuild
index c623e2cd593d..ebcaaed05b29 100644
--- a/dev-lang/rust/rust-1.74.1.ebuild
+++ b/dev-lang/rust/rust-1.74.1.ebuild
@@ -358,7 +358,7 @@ src_configure() {
                assertions = $(toml_usex debug)
                ninja = true
                targets = "${LLVM_TARGETS// /;}"
-               experimental-targets = ""
+               experimental-targets = "all"
                link-shared = $(toml_usex system-llvm)
                $(if is_libcxx_linked; then
                        # https://bugs.gentoo.org/732632