aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ports/cef/Cargo.lock6
-rw-r--r--ports/gonk/Cargo.lock6
-rw-r--r--python/servo/post_build_commands.py24
3 files changed, 35 insertions, 1 deletions
diff --git a/ports/cef/Cargo.lock b/ports/cef/Cargo.lock
index 1f6f4a99305..42ec9dd1f06 100644
--- a/ports/cef/Cargo.lock
+++ b/ports/cef/Cargo.lock
@@ -128,6 +128,11 @@ version = "0.3.20"
source = "git+https://github.com/ende76/brotli-rs#c243045b88b2d2924c35269586fa9b770184c74c"
[[package]]
+name = "browserhtml"
+version = "0.1.2"
+source = "git+https://github.com/browserhtml/browserhtml?branch=gh-pages#120c811302a9993f3aad103fbb695847693969ea"
+
+[[package]]
name = "byteorder"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1660,6 +1665,7 @@ name = "servo"
version = "0.0.1"
dependencies = [
"bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "browserhtml 0.1.2 (git+https://github.com/browserhtml/browserhtml?branch=gh-pages)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
"compositing 0.0.1",
diff --git a/ports/gonk/Cargo.lock b/ports/gonk/Cargo.lock
index c9ad8eb2782..dc732ac44a5 100644
--- a/ports/gonk/Cargo.lock
+++ b/ports/gonk/Cargo.lock
@@ -121,6 +121,11 @@ version = "0.3.20"
source = "git+https://github.com/ende76/brotli-rs#c243045b88b2d2924c35269586fa9b770184c74c"
[[package]]
+name = "browserhtml"
+version = "0.1.2"
+source = "git+https://github.com/browserhtml/browserhtml?branch=gh-pages#120c811302a9993f3aad103fbb695847693969ea"
+
+[[package]]
name = "byteorder"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1642,6 +1647,7 @@ name = "servo"
version = "0.0.1"
dependencies = [
"bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "browserhtml 0.1.2 (git+https://github.com/browserhtml/browserhtml?branch=gh-pages)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
"compositing 0.0.1",
diff --git a/python/servo/post_build_commands.py b/python/servo/post_build_commands.py
index ea6020de809..c1c3f73dc69 100644
--- a/python/servo/post_build_commands.py
+++ b/python/servo/post_build_commands.py
@@ -9,6 +9,7 @@
from __future__ import print_function, unicode_literals
+from glob import glob
import os
import os.path as path
import subprocess
@@ -32,6 +33,18 @@ def read_file(filename, if_exists=False):
return f.read()
+def find_dep_path_newest(package, bin_path):
+ deps_path = path.join(path.split(bin_path)[0], "build")
+ with cd(deps_path):
+ print(os.getcwd())
+ candidates = glob(package + '-*')
+ candidates = (path.join(deps_path, c) for c in candidates)
+ candidate_times = sorted(((path.getmtime(c), c) for c in candidates), reverse=True)
+ if len(candidate_times) > 0:
+ return candidate_times[0][1]
+ return None
+
+
@CommandProvider
class PostBuildCommands(CommandBase):
@Command('run',
@@ -50,10 +63,12 @@ class PostBuildCommands(CommandBase):
'have no effect without this.')
@CommandArgument('--debugger', default=None, type=str,
help='Name of debugger to use.')
+ @CommandArgument('--browserhtml', '-b', action='store_true',
+ help='Launch with Browser.html')
@CommandArgument(
'params', nargs='...',
help="Command-line arguments to be passed through to Servo")
- def run(self, params, release=False, dev=False, android=None, debug=False, debugger=None):
+ def run(self, params, release=False, dev=False, android=None, debug=False, debugger=None, browserhtml=False):
env = self.build_env()
env["RUST_BACKTRACE"] = "1"
@@ -110,6 +125,13 @@ class PostBuildCommands(CommandBase):
# Prepend the debugger args.
args = ([command] + self.debuggerInfo.args +
args + params)
+ elif browserhtml:
+ browserhtml_path = find_dep_path_newest('browserhtml', args[0])
+ if browserhtml_path is None:
+ print("Could not find browserhtml package; perhaps you haven't built Servo.")
+ return 1
+ args = args + ['-w', '-b', '--pref', 'dom.mozbrowser.enabled',
+ path.join(browserhtml_path, 'out', 'index.html')]
else:
args = args + params