From 6389107e19e7807f28de4020f8ad3cc2a1f11bfc Mon Sep 17 00:00:00 2001 From: Xidorn Quan Date: Fri, 8 Jul 2016 17:10:58 +1000 Subject: [PATCH] Detect python2.7.exe on windows Latest python2 package on msys2 installs the executable file to python2.7.exe rather than python27.exe. --- components/style/build.rs | 7 ++++++- ports/geckolib/build.rs | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/components/style/build.rs b/components/style/build.rs index 0f824c498c8..23ee9d55e07 100644 --- a/components/style/build.rs +++ b/components/style/build.rs @@ -11,6 +11,10 @@ use walkdir::WalkDir; #[cfg(windows)] fn find_python() -> String { + if Command::new("python2.7.exe").arg("--version").output().is_ok() { + return "python2.7.exe".to_owned(); + } + if Command::new("python27.exe").arg("--version").output().is_ok() { return "python27.exe".to_owned(); } @@ -19,7 +23,8 @@ fn find_python() -> String { return "python.exe".to_owned(); } - panic!("Can't find python (tried python27.exe and python.exe)! Try fixing PATH or setting the PYTHON env var"); + panic!(concat!("Can't find python (tried python2.7.exe, python27.exe, and python.exe)! ", + "Try fixing PATH or setting the PYTHON env var")); } #[cfg(not(windows))] diff --git a/ports/geckolib/build.rs b/ports/geckolib/build.rs index 17da2b459e4..fbcedacde80 100644 --- a/ports/geckolib/build.rs +++ b/ports/geckolib/build.rs @@ -8,6 +8,10 @@ use std::process::{Command, exit}; #[cfg(windows)] fn find_python() -> String { + if Command::new("python2.7.exe").arg("--version").output().is_ok() { + return "python2.7.exe".to_owned(); + } + if Command::new("python27.exe").arg("--version").output().is_ok() { return "python27.exe".to_owned(); } @@ -16,7 +20,8 @@ fn find_python() -> String { return "python.exe".to_owned(); } - panic!("Can't find python (tried python27.exe and python.exe)! Try fixing PATH or setting the PYTHON env var"); + panic!(concat!("Can't find python (tried python2.7.exe, python27.exe, and python.exe)! ", + "Try fixing PATH or setting the PYTHON env var")); } #[cfg(not(windows))]