aboutsummaryrefslogtreecommitdiffstats
path: root/python/servo/package_commands.py
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2017-04-18 06:10:46 -0500
committerGitHub <noreply@github.com>2017-04-18 06:10:46 -0500
commit7413c716fb954c1dd27c39929e27bd7b4b188720 (patch)
tree38ce0f2be745c2dec043d1c236e1e15e024a128a /python/servo/package_commands.py
parent349ddb555a8be9daad691a201f72682a141e34e4 (diff)
parent0730888fbe26c133c3c9e8b013a46c2cd5e59a8c (diff)
downloadservo-7413c716fb954c1dd27c39929e27bd7b4b188720.tar.gz
servo-7413c716fb954c1dd27c39929e27bd7b4b188720.zip
Auto merge of #16505 - aneeshusa:stop-mach-bootstrap-from-segfaulting, r=Wafflespeanut
Stop mach bootstrap from segfaulting <!-- Please describe your changes on the following line: --> See the commit message for details; the top-level import of Mako causes `./mach bootstrap` to segfault in glibc while exiting, seems to have to do with the native `_speedups.so` library of MarkupSafe, a Mako dependency. Needed for servo/saltfs#631. cc @emilio to make sure this is OK for stylo (e.g. #13171) --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #12103 (github issue number if applicable). <!-- Either: --> - [ ] There are tests for these changes OR - [x] These changes do not require tests because the test is part of servo/saltfs#631 <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- 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/16505) <!-- Reviewable:end -->
Diffstat (limited to 'python/servo/package_commands.py')
-rw-r--r--python/servo/package_commands.py18
1 files changed, 7 insertions, 11 deletions
diff --git a/python/servo/package_commands.py b/python/servo/package_commands.py
index 2551844e4b5..68569838c4c 100644
--- a/python/servo/package_commands.py
+++ b/python/servo/package_commands.py
@@ -9,36 +9,30 @@
from __future__ import print_function, unicode_literals
-import sys
-import os.path as path
-sys.path.append(path.join(path.dirname(sys.argv[0]), "components", "style", "properties", "Mako-0.9.1.zip"))
-
import json
import os
+import os.path as path
import shutil
import subprocess
-import mako.template
-
-from mach.registrar import Registrar
from mach.decorators import (
CommandArgument,
CommandProvider,
Command,
)
-
-from mako.template import Template
+from mach.registrar import Registrar
+# Note: mako cannot be imported at the top level because it breaks mach bootstrap
from servo.command_base import (
archive_deterministically,
BuildNotFound,
cd,
CommandBase,
+ find_dep_path_newest,
is_macosx,
is_windows,
get_browserhtml_path,
)
-from servo.command_base import find_dep_path_newest
def delete(path):
@@ -221,6 +215,7 @@ class PackageCommands(CommandBase):
raise Exception("Error occurred when getting Servo version: " + stderr)
version = "Nightly version: " + version
+ import mako.template
template_path = path.join(dir_to_resources, 'Credits.rtf.mako')
credits_path = path.join(dir_to_resources, 'Credits.rtf')
with open(template_path) as template_file:
@@ -299,8 +294,9 @@ class PackageCommands(CommandBase):
change_prefs(dir_to_resources, "windows")
# generate Servo.wxs
+ import mako.template
template_path = path.join(dir_to_root, "support", "windows", "Servo.wxs.mako")
- template = Template(open(template_path).read())
+ template = mako.template.Template(open(template_path).read())
wxs_path = path.join(dir_to_msi, "Servo.wxs")
open(wxs_path, "w").write(template.render(
exe_path=target_dir,