Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 941146 - dev-lang/rust: drop the `profiler` USE.
Summary: dev-lang/rust: drop the `profiler` USE.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Rust Project
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2024-10-08 00:58 UTC by Matt Jolly
Modified: 2024-11-09 06:26 UTC (History)
1 user (show)

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 Matt Jolly gentoo-dev 2024-10-08 00:58:29 UTC
Upstream ship Rust with the profiler, and the rust-bin package (seemingly) _always_ includes it (https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cecf4748804bd1a878c94eb448540c29f2418c1a).

The dev-lang/rust build defaults do not include the profiler, and this is causing headaches in (e.g.) Chromium where its build system (doing silly Google things, admittedly) assumes the standard set of Rust libraries and fails during its setup/configure phase.

While testing a check for this in the Chromium ebuild I built rust a few times both with and without the profiler; I have not noticed a significant difference in compile time or image size.

Given that we're the ones deviating from the norm here, and that it does not pull in additional dependencies, request that the `profiler` USE be dropped and enabled everywhere unless there is some compelling reason to keep it (please document said reason).

Additionally, if there are other USE flags that do not pull in additional dependencies or cause huge increases in build time these should be assessed too.
Comment 1 Larry the Git Cow gentoo-dev 2024-11-09 06:26:38 UTC
The bug has been closed via the following commit(s):

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

commit a73b0b02a99e85e7aa87f9133b4f898b658c30a7
Author:     Matt Jolly <kangie@gentoo.org>
AuthorDate: 2024-11-03 01:36:26 +0000
Commit:     Matt Jolly <kangie@gentoo.org>
CommitDate: 2024-11-09 06:25:33 +0000

    dev-lang/rust{,-bin}: port to llvm-r1 and slot (-r100)
    
    Port to llvm-r1 to gain the fancy new `llvm_slot_{x}` USE flags
    which we use in the rust eclass to force a closer dependency on
    specific LLVM slots.
    
    Since Rust in Gentoo is only ever built against the one LLVM slot
    we are able to simplify the LLVM logic in the Rust ebuilds and use
    our knowledge of the LLVM -> Rust version mapping to enable
    slots for dev-lang/rust in a usable manner.
    
    Since Rust is now slotted and not managed entirely by eselect-rust
    each slot needs to be added to LDPATH.
    
    We also drop the `profiler` USE as it's inconsistent with what
    upstream ship by default and casues issues where other package's
    build systems assume that it exists.
    
    This commit also introduces dev-lang/rust-common which handles bash
    completions for slotted Rust.
    
    dev-lang/rust-bin:
    
    `LLVM_OPTIONAL` is used as we don't need to consume LLVM,
    we really just want the free IUSE.
    
    Closes: https://bugs.gentoo.org/941146
    Signed-off-by: Matt Jolly <kangie@gentoo.org>

 dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild  | 232 ++++++++
 dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild  | 242 ++++++++
 dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild  | 242 ++++++++
 dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild  | 244 ++++++++
 dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild  | 247 ++++++++
 dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild  | 251 ++++++++
 dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild  | 249 ++++++++
 dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild  | 251 ++++++++
 dev-lang/rust-common/Manifest                  |   4 +
 dev-lang/rust-common/metadata.xml              |  11 +
 dev-lang/rust-common/rust-common-1.81.0.ebuild |  53 ++
 dev-lang/rust-common/rust-common-1.82.0.ebuild |  54 ++
 dev-lang/rust/rust-1.71.1-r100.ebuild          | 734 +++++++++++++++++++++++
 dev-lang/rust/rust-1.74.1-r100.ebuild          | 770 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.75.0-r100.ebuild          | 773 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.77.1-r100.ebuild          | 771 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.79.0-r100.ebuild          | 774 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.80.1-r100.ebuild          | 773 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.81.0-r100.ebuild          | 774 ++++++++++++++++++++++++
 dev-lang/rust/rust-1.82.0-r100.ebuild          | 781 +++++++++++++++++++++++++
 20 files changed, 8230 insertions(+)