forked from Mirror/wren
74 lines
2.0 KiB
Python
74 lines
2.0 KiB
Python
|
|
#!/usr/bin/env python
|
||
|
|
|
||
|
|
# Downloads GYP and libuv into deps/.
|
||
|
|
#
|
||
|
|
# Run this manually to update the vendored copies of GYP and libuv that are
|
||
|
|
# committed in the Wren repo.
|
||
|
|
|
||
|
|
from __future__ import print_function
|
||
|
|
|
||
|
|
import sys
|
||
|
|
|
||
|
|
from util import clean_dir, remove_dir, replace_in_file, run
|
||
|
|
|
||
|
|
LIB_UV_VERSION = "v1.10.0"
|
||
|
|
LIB_UV_DIR = "deps/libuv"
|
||
|
|
|
||
|
|
|
||
|
|
def main(args):
|
||
|
|
# Delete it if already there so we ensure we get the correct version if the
|
||
|
|
# version number in this script changes.
|
||
|
|
clean_dir("deps")
|
||
|
|
|
||
|
|
print("Cloning libuv...")
|
||
|
|
run([
|
||
|
|
"git", "clone", "--quiet", "--depth=1",
|
||
|
|
"https://github.com/libuv/libuv.git",
|
||
|
|
LIB_UV_DIR
|
||
|
|
])
|
||
|
|
|
||
|
|
print("Getting tags...")
|
||
|
|
run([
|
||
|
|
"git", "fetch", "--quiet", "--depth=1", "--tags"
|
||
|
|
], cwd=LIB_UV_DIR)
|
||
|
|
|
||
|
|
print("Checking out libuv " + LIB_UV_VERSION + "...")
|
||
|
|
run([
|
||
|
|
"git", "checkout", "--quiet", LIB_UV_VERSION
|
||
|
|
], cwd=LIB_UV_DIR)
|
||
|
|
|
||
|
|
|
||
|
|
# TODO: Pin gyp to a known-good commit. Update a previously downloaded gyp
|
||
|
|
# if it doesn't match that commit.
|
||
|
|
print("Downloading gyp...")
|
||
|
|
run([
|
||
|
|
"git", "clone", "--quiet", "--depth=1",
|
||
|
|
"https://chromium.googlesource.com/external/gyp.git",
|
||
|
|
LIB_UV_DIR + "/build/gyp"
|
||
|
|
])
|
||
|
|
|
||
|
|
# We don't need all of libuv and gyp's various support files.
|
||
|
|
print("Deleting unneeded files...")
|
||
|
|
remove_dir("deps/libuv/build/gyp/buildbot")
|
||
|
|
remove_dir("deps/libuv/build/gyp/infra")
|
||
|
|
remove_dir("deps/libuv/build/gyp/samples")
|
||
|
|
remove_dir("deps/libuv/build/gyp/test")
|
||
|
|
remove_dir("deps/libuv/build/gyp/tools")
|
||
|
|
remove_dir("deps/libuv/docs")
|
||
|
|
remove_dir("deps/libuv/img")
|
||
|
|
remove_dir("deps/libuv/samples")
|
||
|
|
remove_dir("deps/libuv/test")
|
||
|
|
|
||
|
|
# We are going to commit libuv and GYP in the main Wren repo, so we don't
|
||
|
|
# want them to be their own repos.
|
||
|
|
remove_dir("deps/libuv/.git")
|
||
|
|
remove_dir("deps/libuv/build/gyp/.git")
|
||
|
|
|
||
|
|
# Libuv's .gitignore ignores GYP, but we want to commit it.
|
||
|
|
replace_in_file("deps/libuv/.gitignore",
|
||
|
|
"/build/gyp",
|
||
|
|
"# /build/gyp (We do want to commit GYP in Wren's repo)")
|
||
|
|
|
||
|
|
|
||
|
|
main(sys.argv)
|