make dist vendoring configurable
Signed-off-by: onur-ozkan <work@onurozkan.dev>
This commit is contained in:
parent
bc486f31a6
commit
741b3164d8
@ -1011,11 +1011,7 @@ fn run(self, builder: &Builder<'_>) -> GeneratedTarball {
|
||||
write_git_info(builder.rust_info().info(), plain_dst_src);
|
||||
write_git_info(builder.cargo_info.info(), &plain_dst_src.join("./src/tools/cargo"));
|
||||
|
||||
// If we're building from git or tarball sources, we need to vendor
|
||||
// a complete distribution.
|
||||
if builder.rust_info().is_managed_git_subrepository()
|
||||
|| builder.rust_info().is_from_tarball()
|
||||
{
|
||||
if builder.config.dist_vendor {
|
||||
builder.require_and_update_all_submodules();
|
||||
|
||||
// Vendor all Cargo dependencies
|
||||
|
@ -308,6 +308,7 @@ pub struct Config {
|
||||
pub dist_compression_formats: Option<Vec<String>>,
|
||||
pub dist_compression_profile: String,
|
||||
pub dist_include_mingw_linker: bool,
|
||||
pub dist_vendor: bool,
|
||||
|
||||
// libstd features
|
||||
pub backtrace: bool, // support for RUST_BACKTRACE
|
||||
@ -933,6 +934,7 @@ struct Dist {
|
||||
compression_formats: Option<Vec<String>> = "compression-formats",
|
||||
compression_profile: Option<String> = "compression-profile",
|
||||
include_mingw_linker: Option<bool> = "include-mingw-linker",
|
||||
vendor: Option<bool> = "vendor",
|
||||
}
|
||||
}
|
||||
|
||||
@ -2028,13 +2030,19 @@ fn get_table(option: &str) -> Result<TomlConfig, toml::de::Error> {
|
||||
compression_formats,
|
||||
compression_profile,
|
||||
include_mingw_linker,
|
||||
vendor,
|
||||
} = dist;
|
||||
config.dist_sign_folder = sign_folder.map(PathBuf::from);
|
||||
config.dist_upload_addr = upload_addr;
|
||||
config.dist_compression_formats = compression_formats;
|
||||
set(&mut config.dist_compression_profile, compression_profile);
|
||||
set(&mut config.rust_dist_src, src_tarball);
|
||||
set(&mut config.dist_include_mingw_linker, include_mingw_linker)
|
||||
set(&mut config.dist_include_mingw_linker, include_mingw_linker);
|
||||
config.dist_vendor = vendor.unwrap_or_else(|| {
|
||||
// If we're building from git or tarball sources, enable it by default.
|
||||
config.rust_info.is_managed_git_subrepository()
|
||||
|| config.rust_info.is_from_tarball()
|
||||
});
|
||||
}
|
||||
|
||||
if let Some(r) = rustfmt {
|
||||
|
Loading…
Reference in New Issue
Block a user