Clean up and simplify existing mach bootstrap

- Default to interactive mode and remove the `--interactive` flag
- Use `--force` to skip interactivity
- Change MSVC dependency storage organization on disk: put each version
  into its own folder and directly refer to the versioned folders,
  providing immutability and making the installation list redundant
- Reuse `host_triple()` function to fix broken bootstrapper dispatching
- Simplify code:
  - Remove or inline many unused and redudant functions and variables
  - Prefer plain functions to classes
  - Consolidate into fewer files, remove unnecessary bootstrapper/ dir
- Improve Python style
- Sort dependency list
This commit is contained in:
Aneesh Agrawal 2017-01-13 23:11:34 -05:00
parent ef900cbdcb
commit 60a1503b29
9 changed files with 137 additions and 281 deletions

26
python/servo/packages.py Normal file
View file

@ -0,0 +1,26 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.
WINDOWS_GNU = set([
"diffutils",
"make",
"mingw-w64-x86_64-toolchain",
"mingw-w64-x86_64-freetype",
"mingw-w64-x86_64-icu",
"mingw-w64-x86_64-nspr",
"mingw-w64-x86_64-ca-certificates",
"mingw-w64-x86_64-expat",
"mingw-w64-x86_64-cmake",
"patch",
"patchutils",
"python2-setuptools",
"tar",
])
WINDOWS_MSVC = {
"cmake": "3.6.1",
"moztools": "0.0.1-5",
"ninja": "1.7.1",
"openssl": "1.0.1t-vs2015",
}