Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 694028 - =dev-lang/rust-1.34.2 USE="system-llvm wasm" requires llvm_targets_WebAssembly on rust package
Summary: =dev-lang/rust-1.34.2 USE="system-llvm wasm" requires llvm_targets_WebAssembl...
Status: RESOLVED CANTFIX
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: 2019-09-11 10:06 UTC by Jan Henke
Modified: 2019-09-11 17:28 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Henke 2019-09-11 10:06:04 UTC
The required use enforces setting llvm_targets_WebAssembly on the rust ebuild if the wasm use flag is set as well . This is useful only if LLVM is build as part of the ebuild itself. When using the system-llvm use flag, it should enforce LLVM being build with llvm_targets_WebAssembly, but should not require it on the rust ebuild.

Currently:
wasm? ( llvm_targets_WebAssembly )

Should be (not 100% on the syntax):
wasm? ( 
     !system-llvm? ( llvm_targets_WebAssembly )
      system-llvm? ( sys-devel/llvm[llvm_targets_WebAssembly] )
)
Comment 1 Georgy Yakovlev archtester gentoo-dev 2019-09-11 16:42:06 UTC
it already requires it, it's in LLVM_DEPEND block, which gets added to common depend, which gets added to both depend and rdepend =)


sys-devel/llvm:8[llvm_targets_WebAssembly?]
Comment 2 Georgy Yakovlev archtester gentoo-dev 2019-09-11 16:45:22 UTC
and for rust ebuild itself, it's portage limitation.

same things happens with python targets.
you can build package without python useflag, but still with python_targets expand active.
Comment 3 Jan Henke 2019-09-11 16:49:16 UTC
Okay, then I will close it, if there is no way around it. It just feels strange, that I still need to enable a use flag, which I specifically ask for not to matter.

Hopefully the system-llvm because the default soon, so the extra use flags for llvm are gone from the rust ebuild.
Comment 4 Georgy Yakovlev archtester gentoo-dev 2019-09-11 17:28:49 UTC
sometimes rust-upstream carries cherry-picked codegen patches to llvm and we had bugs because of that.

llvm-8 gone stable, I'm going to stabilize more recent rust soon and maybe look at unmasking system-llvm flag on stable, depending on what patches they have for llvm in the tree for 1.37, but if there are too many patches I'll keep it stable-masked.