mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Allow bootstrap to be run before anything else is installed
This commit is contained in:
parent
6b75aa47cb
commit
e72e08ea9c
5 changed files with 40 additions and 9 deletions
|
@ -224,11 +224,29 @@ def _is_windows():
|
|||
return sys.platform == 'win32'
|
||||
|
||||
|
||||
class DummyContext(object):
|
||||
pass
|
||||
|
||||
|
||||
def bootstrap_command_only(topdir):
|
||||
from servo.bootstrap import bootstrap
|
||||
|
||||
context = DummyContext()
|
||||
context.topdir = topdir
|
||||
force = False
|
||||
if len(sys.argv) == 3 and sys.argv[2] == "-f":
|
||||
force = True
|
||||
bootstrap(context, force)
|
||||
return 0
|
||||
|
||||
|
||||
def bootstrap(topdir):
|
||||
_ensure_case_insensitive_if_windows()
|
||||
|
||||
topdir = os.path.abspath(topdir)
|
||||
|
||||
len(sys.argv) > 1 and sys.argv[1] == "bootstrap"
|
||||
|
||||
# We don't support paths with Unicode characters for now
|
||||
# https://github.com/servo/servo/issues/10002
|
||||
try:
|
||||
|
|
|
@ -49,11 +49,16 @@ def install_linux_deps(context, pkgs_ubuntu, pkgs_fedora, force):
|
|||
command.append('-y')
|
||||
print("Installing missing dependencies...")
|
||||
run_as_root(command + pkgs)
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def install_salt_dependencies(context, force):
|
||||
pkgs_apt = ['build-essential', 'libssl-dev', 'libffi-dev', 'python-dev']
|
||||
pkgs_dnf = ['gcc', 'libffi-devel', 'python-devel', 'openssl-devel']
|
||||
install_linux_deps(context, pkgs_apt, pkgs_dnf, force)
|
||||
if not install_linux_deps(context, pkgs_apt, pkgs_dnf, force):
|
||||
print("Dependencies are already installed")
|
||||
|
||||
|
||||
def gstreamer(context, force=False):
|
||||
cur = os.curdir
|
||||
|
@ -62,6 +67,9 @@ def gstreamer(context, force=False):
|
|||
os.chdir(gstdir)
|
||||
subprocess.call(["bash", "gstreamer.sh"])
|
||||
os.chdir(cur)
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def linux(context, force=False):
|
||||
# Please keep these in sync with the packages in README.md
|
||||
|
@ -98,11 +106,13 @@ def linux(context, force=False):
|
|||
else:
|
||||
pkgs_apt += ["libssl1.0-dev"]
|
||||
|
||||
install_linux_deps(context, pkgs_apt, pkgs_dnf, force)
|
||||
installed_something = install_linux_deps(context, pkgs_apt, pkgs_dnf, force)
|
||||
|
||||
if not check_gstreamer_lib():
|
||||
gstreamer(context, force)
|
||||
installed_something |= gstreamer(context, force)
|
||||
|
||||
if not installed_something:
|
||||
print("Dependencies were already installed!")
|
||||
|
||||
|
||||
def salt(context, force=False):
|
||||
|
|
|
@ -20,7 +20,6 @@ import StringIO
|
|||
import sys
|
||||
import zipfile
|
||||
import urllib2
|
||||
import certifi
|
||||
|
||||
|
||||
try:
|
||||
|
@ -30,6 +29,7 @@ except ImportError:
|
|||
|
||||
# The cafile parameter was added in 2.7.9
|
||||
if HAS_SNI and sys.version_info >= (2, 7, 9):
|
||||
import certifi
|
||||
STATIC_RUST_LANG_ORG_DIST = "https://static.rust-lang.org/dist"
|
||||
URLOPEN_KWARGS = {"cafile": certifi.where()}
|
||||
else:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue