@@ -31,7 +31,7 @@ pub(crate) enum InstallMethod<'a> {
3131 dest : & ' a CustomToolchainName ,
3232 cfg : & ' a Cfg < ' a > ,
3333 } ,
34- Dist ( DistOptions < ' a > ) ,
34+ Dist ( DistOptions < ' a > , bool ) ,
3535}
3636
3737impl InstallMethod < ' _ > {
@@ -46,10 +46,13 @@ impl InstallMethod<'_> {
4646 match self {
4747 InstallMethod :: Copy { .. }
4848 | InstallMethod :: Link { .. }
49- | InstallMethod :: Dist ( DistOptions {
50- old_date_version : None ,
51- ..
52- } ) => debug ! ( "installing toolchain {}" , self . dest_basename( ) ) ,
49+ | InstallMethod :: Dist (
50+ DistOptions {
51+ old_date_version : None ,
52+ ..
53+ } ,
54+ _,
55+ ) => debug ! ( "installing toolchain {}" , self . dest_basename( ) ) ,
5356 _ => debug ! ( "updating existing install for '{}'" , self . dest_basename( ) ) ,
5457 }
5558
@@ -64,10 +67,13 @@ impl InstallMethod<'_> {
6467 true => {
6568 debug ! ( "toolchain {} installed" , self . dest_basename( ) ) ;
6669 match self {
67- InstallMethod :: Dist ( DistOptions {
68- old_date_version : Some ( ( _, v) ) ,
69- ..
70- } ) => UpdateStatus :: Updated ( v. clone ( ) ) ,
70+ InstallMethod :: Dist (
71+ DistOptions {
72+ old_date_version : Some ( ( _, v) ) ,
73+ ..
74+ } ,
75+ _,
76+ ) => UpdateStatus :: Updated ( v. clone ( ) ) ,
7177 InstallMethod :: Copy { .. }
7278 | InstallMethod :: Link { .. }
7379 | InstallMethod :: Dist { .. } => UpdateStatus :: Installed ,
@@ -102,9 +108,9 @@ impl InstallMethod<'_> {
102108 utils:: symlink_dir ( src, path) ?;
103109 Ok ( true )
104110 }
105- InstallMethod :: Dist ( opts) => {
111+ InstallMethod :: Dist ( opts, skip_std ) => {
106112 let prefix = & InstallPrefix :: from ( path. to_owned ( ) ) ;
107- let maybe_new_hash = dist:: update_from_dist ( prefix, opts) . await ?;
113+ let maybe_new_hash = dist:: update_from_dist ( prefix, opts, * skip_std ) . await ?;
108114
109115 if let Some ( hash) = maybe_new_hash {
110116 if let Some ( hash_file) = opts. update_hash {
@@ -123,17 +129,20 @@ impl InstallMethod<'_> {
123129 match self {
124130 InstallMethod :: Copy { cfg, .. } => cfg,
125131 InstallMethod :: Link { cfg, .. } => cfg,
126- InstallMethod :: Dist ( DistOptions { cfg, .. } ) => cfg,
132+ InstallMethod :: Dist ( DistOptions { cfg, .. } , _ ) => cfg,
127133 }
128134 }
129135
130136 fn local_name ( & self ) -> LocalToolchainName {
131137 match self {
132138 InstallMethod :: Copy { dest, .. } => ( * dest) . into ( ) ,
133139 InstallMethod :: Link { dest, .. } => ( * dest) . into ( ) ,
134- InstallMethod :: Dist ( DistOptions {
135- toolchain : desc, ..
136- } ) => ( * desc) . into ( ) ,
140+ InstallMethod :: Dist (
141+ DistOptions {
142+ toolchain : desc, ..
143+ } ,
144+ _,
145+ ) => ( * desc) . into ( ) ,
137146 }
138147 }
139148
@@ -145,11 +154,14 @@ impl InstallMethod<'_> {
145154 match self {
146155 InstallMethod :: Copy { cfg, dest, .. } => cfg. toolchain_path ( & ( * dest) . into ( ) ) ,
147156 InstallMethod :: Link { cfg, dest, .. } => cfg. toolchain_path ( & ( * dest) . into ( ) ) ,
148- InstallMethod :: Dist ( DistOptions {
149- cfg,
150- toolchain : desc,
151- ..
152- } ) => cfg. toolchain_path ( & ( * desc) . into ( ) ) ,
157+ InstallMethod :: Dist (
158+ DistOptions {
159+ cfg,
160+ toolchain : desc,
161+ ..
162+ } ,
163+ _,
164+ ) => cfg. toolchain_path ( & ( * desc) . into ( ) ) ,
153165 }
154166 }
155167}
0 commit comments