View previous topic :: View next topic |
Author |
Message |
darkii n00b

Joined: 26 Aug 2021 Posts: 39
|
Posted: Wed Mar 05, 2025 7:18 pm Post subject: [SOLVED] set unstable LLVM_SLOT |
|
|
i have built a testing x86_64-gentoo-linux-musl system for a testing 21.0.0_pre* llvm toolchain, using a split-usr/musl/llvm profile
earlier i was able to set custom LLVM_SLOT in make.conf but it stopped working and emerge --info just shows empty LLVM_SLOT
now i want to build dev-util/spirv-llvm-translator-21.0.0_pre20250201::gentoo but the constraint of LLVM_SLOT="(-21)" prevents me for doing so
hereby the question: how do i reenable my ability to set custom LLVM_SLOT manually, or, more preferrably is it possible to set unstable LLVM_SLOT somehow
Code: | LIBTOOL="rlibtool"
MAKEFLAGS="LIBTOOL=${LIBTOOL}"
MAKE="make LIBTOOL=${LIBTOOL}"
CC=clang-21
CXX=clang++-21
#cflags
COMMON_FLAGS="-march=core2 -O3 -pipe -falign-functions=32 -flto=thin -fomit-frame-pointer -fno-math-errno -fno-trapping-math -Wno-error=format-truncation"
POLLY_FLAGS=" -mllvm -polly -mllvm -polly-run-dce -mllvm -polly-run-inliner -mllvm -polly-ast-use-context -mllvm -polly-detect-keep-going -mllvm -polly-vectorizer=stripmine -mllvm -polly-invariant-load-hoisting -Wno-unused-command-line-argument"
FASTER_FLAGS="-fno-trapping-math -Ofast"
HARDENED_FLAGS="-fPIC -D_FORTIFY_SOURCE=2 -fstack-clash-protection -fstack-protector-strong -ffunction-sections -fdata-sections -Wformat"
#-Werror=format-security"
STRICTER_FLAGS="-Werror=implicit-function-declaration -Werror=implicit-int -Werror=int-conversion -Werror=incompatible-pointer-types"
CFLAGS="${COMMON_FLAGS} " #${POLLY_FLAGS}"
CXXFLAGS="${COMMON_FLAGS} " #${POLLY_FLAGS}"
FCFLAGS="${COMMON_FLAGS} " #${POLLY_FLAGS}"
FFLAGS="${COMMON_FLAGS} " #${POLLY_FLAGS}"
LDFLAGS="-fuse-ld=lld -march=core2 -flto=thin -Wl,--lto-O3,-O3,--as-needed,--gc-sections,--icf=safe,-zrelro,-znow -pie"
#go flags
CGO_CFLAGS="${COMMON_FLAGS}"
CGO_CXXFLAGS="${COMMON_FLAGS}"
CGO_FCFLAGS="${COMMON_FLAGS}"
CGO_FFLAGS="${COMMON_FLAGS}"
CGO_LDFLAGS="${LDFLAGS}"
GOOS="linux"
GOARCH="amd64"
GOAMD64="v1"
#rust flags
#RUSTC_WRAPPER=/usr/bin/sccache
RUSTFLAGS="-Clinker=clang -Copt-level=3 -Ctarget-feature=-crt-static -Ccodegen-units=1 -Clinker-plugin-lto -Clink-arg=-flto=thin -Clink-args=-Wl,--lto-O3,-O3,--as-needed,--gc-sections,--icf=safe,-zrelro,-znow -Cllvm-args=--polly -Cllvm-args=--polly-run-dce -Cllvm-args=--polly-run-inliner -Cllvm-args=--polly-ast-use-context -Cllvm-args=--polly-detect-keep-going -Cllvm-args=--polly-vectorizer=stripmine -Cllvm-args=--polly-invariant-load-hoisting -Cllvm-args=--polly-opt-fusion=max"
#cpu flags
CPU_FLAGS_X86="fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx mmxext fxsr sse sse2 sse3 ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm pti tpr_shadow vnmi flexpriority vpid dtherm ida"
#portage configure options
ACCEPT_LICENSE="@FREE"
ACCEPT_KEYWORDS="~amd64"
#CCACHE_DIR="/var/cache/ccace"
CMAKE_MAKEFILE_GENERATOR="ninja"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--load-average=3 --verbose"
FEATURES="candy clean-logs downgrade-backup split-log parallel-fetch unmerge-logs sandbox"
LUA_TARGETS="luajit"
LUA_SINGLE_TARGET="luajit"
LLVM_SLOT="21"
#doesnt work ^^^
MAKEOPTS="-j2 -l2"
NINJAOPTS="-j2 -l2"
PKGDIR="/var/cache/binpkgs"
#PORTAGE_BINHOST="ssh://root@192.168.0.108/backups/clang-musl/var/cache/binpkgs"
PORTAGE_ELOG_SYSTEM="echo save"
PORTAGE_IONICE_COMMAND="ionice -c2 -n0 -p \${PID}"
PORTAGE_NICENESS="-1"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=500"
PORTDIR="/var/db/repos/gentoo"
POSTSYNC_JOBS="2"
PYTHON_TARGETS="python3_11 python3_12"
PYTHON_SINGLE_TARGET="python3_12"
RUBY_TARGETS="ruby31"
#SCCACHE_DIR=/var/cache/sccache
#SCCACHE_MAX_FRAME_LENGTH=104857600
#hardware opts
CHOST_amd64="x86_64-gentoo-linux-musl"
CHOST="x86_64-gentoo-linux-musl"
VIDEO_CARDS="intel"
INPUT_DEVICES="libinput"
MICROCODE_SIGNATURES="-S"
#use flags
USE="X -Xaw3d -accessibility -afs alsa -ao -apache2 -aqua -atm -apparmor -appindicator -bash-completion -bidi big-endian bindist -blas -bluetooth branding -build -cairo -calendar -cdb -cdinstall -cdr -cgi -cjk -clamav clang -colord -connman -coreaudio -cracklib -cups custom-cflags -cvs -dbi -dbm dbus -debug -dedicated default-libcxx default-lld -dist-kernel -djvu -doc -dts -dvb -dvd -dvdr -eds elogind -emacs -emboss -examples -expat -fam ffmpeg -fftw -firebird -fltk -fortran -freetds -freewnn -geoip -geolocation -ggi -gif -gimp git -gles2-only -glut -gmp -gnome -gnome-keyring -gold -gnuplot -gtk -gtk-doc -guile -handbook -hardened -hdf5 -headers-only -heif -hscolour -ibm -iconv -icu -ieee1394 imagemagick -infiniband -inotify -iodbc -ios -ipod -jack -jbig -jemalloc -joystick -kde -kerberos -kwallet -lapack -lash -libedit -libnotify -libsamplerate -lirc -livecd llvm-libunwind lto lz4 -m17n-lib -maildir -matroska -mbox -mikmod -milter -minimal -mms -mng -mono -motif -mpi -mplayer -mssql -musepack -musicbrainz -neXt -netcdf -networkmanager -nls -nntp -nsplugin -oci8 -ofx -kpentype-compat pam pcmcia -pda pdf -pie -plasma png policykit polly -portaudio posix -ppds -prefix -profile pulseaudio -qdbm -qmail-spp -qt5 qt6 -quicktime -radius -raw -rdp -samba -savedconfig -scanner -sdl -seccomp -selinux -semantic-desktop -skey -slang -snappy -sndfile -snmp -soap sound -source -sox -speex -spell -sqlite -sql -startup-notification -static -static-libs -svg -svga -symlink -systemd system-llvm -tcl -tcmalloc -telemetry -test -test-rust -theora -tidy -tiff -timidity -tk usb -vaapi -vala -vanilla -vdpau -sig -vhosts videos vim-syntax -vorbis -wayland webkit wifi -wmf -wxwidgets -x264 -xcomposite -xemacs -xface xft -xine xinerama -xinetd -xmp -xosd -xpm -xscreensaver zsh-completion zstd"
#other opts
ALSA_PCM_PLUGINS="*"
QEMU_USER_TARGETS="x86_64"
LINGUALS="en en_GB"
L10N="en_GB"
LC_MESSAGES=C
#mirrors
GENTOO_MIRRORS="rsync://mirror.leaseweb.com/gentoo/ https://ftp.agdsn.de/gentoo rsync://ftp-stud.hs-esslingen.de/gentoo/ rsync://ftp.belnet.be/gentoo/gentoo/ http://ftp.free.fr/mirrors/ftp.gentoo.org/ rsync://mirror.aarnet.edu.au/pub/gentoo/ ftp://mirrors.dotsrc.org/gentoo/ ftp://tux.rainside.sk/gentoo/ ftp://gentoo.mirror.web4u.cz/ ftp://ftp.halifax.rwth-aachen.de/gentoo/ rsync://rsync.ru.gentoo.org/gentoo-portage" |
make.conf used ^^^
Code: |
# Live 9999 version
x11-misc/picom **
media-libs/mesa **
dev-util/intel_clc **
#sys-fs/zfs-kmod **
sys-auth/elogind::pg_overlay **
# LLVM/Clang 21 testing!
=dev-python/lit-21.0.0_pre* **
=dev-util/spirv-llvm-translator-21.0.0_pre* **
=llvm-core/lldb-21.0.0_pre* **
=llvm-core/clang-21.0.0_pre* **
=llvm-core/clang-common-21.0.0_pre* **
=llvm-core/clang-runtime-21.0.0_pre* **
=llvm-core/clang-toolchain-symlinks-21* **
=llvm-core/libclc-21.0.0_pre* **
=llvm-core/lld-21.0.0_pre* **
=llvm-core/lld-toolchain-symlinks-21* **
=llvm-core/llvm-21.0.0_pre* **
=llvm-core/llvm-common-21.0.0_pre* **
=llvm-core/llvmgold-21* **
=llvm-core/llvm-toolchain-symlinks-21* **
=llvm-core/polly-21.0.0_pre* **
=llvm-runtimes/offload-21.0.0_pre* **
=llvm-runtimes/compiler-rt-21.0.0_pre* **
=llvm-runtimes/compiler-rt-sanitizers-21.0.0_pre* **
=llvm-runtimes/libcxx-21.0.0_pre* **
=llvm-runtimes/libcxxabi-21.0.0_pre* **
=llvm-runtimes/openmp-21.0.0_pre* **
=llvm-runtimes/libunwind-21.0.0_pre* **
# Release candidate
=dev-python/lit-21.0.0_rc* **
=dev-util/spirv-llvm-translator-21.0.0_rc* **
=llvm-core/clang-21.0.0_rc* **
=llvm-core/clang-common-21.0.0_rc* **
=llvm-core/clang-runtime-21.0.0_rc* **
=llvm-core/clang-toolchain-symlinks-21* **
=llvm-core/lld-21.0.0_rc* **
=llvm-core/libclc-21.0.0_rc* **
=llvm-core/lld-toolchain-symlinks-21* **
=llvm-core/llvm-21.0.0_rc* **
=llvm-core/llvm-common-21.0.0_rc* **
=llvm-core/llvmgold-21* **
=llvm-core/llvm-toolchain-symlinks-21* **
=llvm-core/lldb-21.0.0_rc* **
=llvm-core/polly-21.0.0_rc* **
=llvm-runtimes/offload-21.0.0_rc* **
=llvm-runtimes/compiler-rt-21.0.0_rc* **
=llvm-runtimes/compiler-rt-sanitizers-21.0.0_rc* **
=llvm-runtimes/libcxx-21.0.0_rc* **
=llvm-runtimes/libcxxabi-21.0.0_rc* **
=llvm-runtimes/openmp-21.0.0_rc* **
=llvm-runtimes/libunwind-21.0.0_rc* ** |
package.accept_keywords ^^^
Code: |
emerge -a spirv-llvm-translator --autounmask
* IMPORTANT: 27 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
These are the packages that would be merged, in order:
Calculating dependencies )
!!! Problem resolving dependencies for dev-util/spirv-llvm-translator
... done!
Dependency resolution took 3.13 s (backtrack: 0/20).
!!! The ebuild selected to satisfy "spirv-llvm-translator" has unmet requirements.
- dev-util/spirv-llvm-translator-21.0.0_pre20250201::gentoo USE="-test" LLVM_SLOT="(-21)"
The following REQUIRED_USE flag constraints are unsatisfied:
llvm_slot_21
The above constraints are a subset of the following complete expression:
exactly-one-of ( llvm_slot_21 ) |
Last edited by darkii on Wed Mar 05, 2025 7:56 pm; edited 1 time in total |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 54967 Location: 56N 3W
|
Posted: Wed Mar 05, 2025 7:42 pm Post subject: |
|
|
darkii,
Code: | ev-util/spirv-llvm-translator-21.0.0_pre20250201::gentoo but the constraint of LLVM_SLOT="(-21)" |
The () means forced by your profile. the - in -21 means off.
Changing that is a two step process.
1. Remove the force
2. Set the flag on.
At present, LLVM_SLOT="(-21) is forced for everyone by /var/db/repos/gentoo/profiles/base/use.mask:llvm_slot_21
You need to override that locally with in /etc/portage/profile/use.mask to unmask llvm_slot_21 globally or per package in /etc/portage/profile/package.use.mask
That addresses the force. See https://wiki.gentoo.org/wiki//etc/portage/profile/use.mask.
It looks like you have done the rest already _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
darkii n00b

Joined: 26 Aug 2021 Posts: 39
|
Posted: Wed Mar 05, 2025 7:55 pm Post subject: |
|
|
yaay, thank you very much for directing me to use.mask, im kind-of ashamed i forgot about such capabilities of portage nevertheless it did fixed the issue (this and adding the spirv-headers to unstable because i forgot to do that earlier as well ) |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|