@@ -75,6 +75,7 @@ pub(crate) fn main() {
75
75
} ;
76
76
77
77
let mut out_dir = PathBuf :: from ( "." ) ;
78
+ let mut download_dir = None ;
78
79
let mut channel = "release" ;
79
80
let mut sysroot_kind = SysrootKind :: Clif ;
80
81
let mut use_unstable_features = true ;
@@ -84,7 +85,12 @@ pub(crate) fn main() {
84
85
"--out-dir" => {
85
86
out_dir = PathBuf :: from ( args. next ( ) . unwrap_or_else ( || {
86
87
arg_error ! ( "--out-dir requires argument" ) ;
87
- } ) )
88
+ } ) ) ;
89
+ }
90
+ "--download-dir" => {
91
+ download_dir = Some ( PathBuf :: from ( args. next ( ) . unwrap_or_else ( || {
92
+ arg_error ! ( "--download-dir requires argument" ) ;
93
+ } ) ) ) ;
88
94
}
89
95
"--debug" => channel = "debug" ,
90
96
"--sysroot" => {
@@ -139,7 +145,9 @@ pub(crate) fn main() {
139
145
out_dir = current_dir. join ( out_dir) ;
140
146
let dirs = path:: Dirs {
141
147
source_dir : current_dir. clone ( ) ,
142
- download_dir : out_dir. join ( "download" ) ,
148
+ download_dir : download_dir
149
+ . map ( |dir| current_dir. join ( dir) )
150
+ . unwrap_or_else ( || out_dir. join ( "download" ) ) ,
143
151
build_dir : out_dir. join ( "build" ) ,
144
152
dist_dir : out_dir. join ( "dist" ) ,
145
153
frozen,
0 commit comments