-
Notifications
You must be signed in to change notification settings - Fork 8
Default feature specification #13
Copy link
Copy link
Open
Labels
S-needs-designStatus: needs design workStatus: needs design workfeaturesIssues related to Cargo featuresIssues related to Cargo featuresimplementationImplementation exploration and tracking issuesImplementation exploration and tracking issuesplan before stabilizationThis needs a plan for how to address before stabilization, but does not need to be implemented.This needs a plan for how to address before stabilization, but does not need to be implemented.
Metadata
Metadata
Assignees
Labels
S-needs-designStatus: needs design workStatus: needs design workfeaturesIssues related to Cargo featuresIssues related to Cargo featuresimplementationImplementation exploration and tracking issuesImplementation exploration and tracking issuesplan before stabilizationThis needs a plan for how to address before stabilization, but does not need to be implemented.This needs a plan for how to address before stabilization, but does not need to be implemented.
Type
Fields
Give feedbackNo fields configured for issues without a type.
This issue is for working through the implementation issues for determining the default set of
cfgvalues for the standard library.Currently the default set is driven by the rust build system, which uses the config.toml file which is configured by various parts of the CI scripts. The build system sets Cargo features (such as here)
to control how the standard library is built.
The build system also sets environment variables (like
LLVM_CONFIGfor sanitizers), which are picked up by build scripts.Currently Cargo has no way of knowing which features or environment variables to set. They change per platform, and based on build configuration settings.
Some rough ideas on how to approach this: