aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2016-07-08 11:14:48 -0700
committerGitHub <noreply@github.com>2016-07-08 11:14:48 -0700
commit35a23bfef394fe451879f09979167b048a7bdc88 (patch)
tree7bc826ea658673d9ee6f1ad007dff8c74126f690
parent12260b24d0e97ee33116d4b730203e5a2619a499 (diff)
parent6519d06b235858376c16807cee579171b77e3535 (diff)
downloadservo-35a23bfef394fe451879f09979167b048a7bdc88.tar.gz
servo-35a23bfef394fe451879f09979167b048a7bdc88.zip
Auto merge of #12338 - upsuper:win-geckolib-fix, r=bholley
Fix geckolib build for Windows It contains several fixes to make `./mach build-geckolib` work on Windows. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12338) <!-- Reviewable:end -->
-rw-r--r--components/style/build.rs7
-rw-r--r--components/style/properties/build.py2
-rw-r--r--ports/geckolib/build.rs7
-rw-r--r--python/servo/build_commands.py3
4 files changed, 15 insertions, 4 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/components/style/properties/build.py b/components/style/properties/build.py
index 28a9b59019f..eeb78817f3f 100644
--- a/components/style/properties/build.py
+++ b/components/style/properties/build.py
@@ -6,7 +6,7 @@ import json
import os.path
import sys
-BASE = os.path.dirname(__file__)
+BASE = os.path.dirname(__file__.replace('\\', '/'))
sys.path.insert(0, os.path.join(BASE, "Mako-0.9.1.zip"))
sys.path.insert(0, BASE) # For importing `data.py`
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))]
diff --git a/python/servo/build_commands.py b/python/servo/build_commands.py
index f43f234a3a2..7a4dba41cfa 100644
--- a/python/servo/build_commands.py
+++ b/python/servo/build_commands.py
@@ -368,9 +368,10 @@ class MachCommands(CommandBase):
opts += ["--release"]
build_start = time()
+ env = self.build_env()
with cd(path.join("ports", "geckolib")):
ret = call(["cargo", "build"] + opts,
- env=self.build_env(), verbose=verbose)
+ env=env, verbose=verbose)
elapsed = time() - build_start
# Generate Desktop Notification if elapsed-time > some threshold value