Skip to content

Commit 3fa5f1b

Browse files
Merge #312
312: Fall back to using `cargo` on the host when no image is found. r=reitermarkus a=reitermarkus Co-authored-by: Markus Reiter <[email protected]>
2 parents c9f7927 + caa5b8f commit 3fa5f1b

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

src/docker.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ pub fn run(target: &Target,
171171
.run_and_get_status(verbose)
172172
}
173173

174-
fn image(toml: Option<&Toml>, target: &Target) -> Result<String> {
174+
pub fn image(toml: Option<&Toml>, target: &Target) -> Result<String> {
175175
if let Some(toml) = toml {
176176
if let Some(image) = toml.image(target)?.map(|s| s.to_owned()) {
177177
return Ok(image)
@@ -181,8 +181,8 @@ fn image(toml: Option<&Toml>, target: &Target) -> Result<String> {
181181
let triple = target.triple();
182182

183183
if !DOCKER_IMAGES.contains(&triple) {
184-
bail!("cross does not provide docker image for {} target, \
185-
specify a custom image in Cross.toml", triple);
184+
bail!("`cross` does not provide a Docker image for target {}, \
185+
specify a custom image in `Cross.toml`.", triple);
186186
}
187187

188188
let version = env!("CARGO_PKG_VERSION");

src/main.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,15 @@ fn run() -> Result<ExitStatus> {
277277

278278
let needs_interpreter = args.subcommand.map(|sc| sc.needs_interpreter()).unwrap_or(false);
279279

280-
if target.needs_docker() &&
280+
let image_exists = match docker::image(toml.as_ref(), &target) {
281+
Ok(_) => true,
282+
Err(err) => {
283+
eprintln!("Warning: {} Falling back to `cargo` on the host.", err);
284+
false
285+
},
286+
};
287+
288+
if image_exists && target.needs_docker() &&
281289
args.subcommand.map(|sc| sc.needs_docker()).unwrap_or(false) {
282290
if version_meta.needs_interpreter() &&
283291
needs_interpreter &&

0 commit comments

Comments
 (0)