mirror of
https://github.com/denoland/deno.git
synced 2024-12-22 23:34:47 -05:00
Use prebuilt V8 library by default.
This still retains the ability to build V8 from scratch, with an number of configurations. The prebuilt binaries were created using DENO_BUILD_MODE=release ./tools/build.py v8
This commit is contained in:
parent
65cce40a89
commit
89096c9210
6 changed files with 90 additions and 0 deletions
2
prebuilt/.gitignore
vendored
Normal file
2
prebuilt/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
*.a
|
||||||
|
*.lib
|
1
prebuilt/linux64/libv8.a.sha1
Normal file
1
prebuilt/linux64/libv8.a.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
3728bfff7eb91e4e2c96999d974573e4d697e663
|
1
prebuilt/mac/libv8.a.sha1
Normal file
1
prebuilt/mac/libv8.a.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
597ca3bbcdc6edbaf23905988f9ca9911bb23250
|
1
prebuilt/win/v8.lib.sha1
Normal file
1
prebuilt/win/v8.lib.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
052b261b8f8a7fc3f1babeb510d5bd73af0bcece
|
54
tools/gcloud_upload.py
Executable file
54
tools/gcloud_upload.py
Executable file
|
@ -0,0 +1,54 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
# Prereq:
|
||||||
|
# - gcloud auth login
|
||||||
|
# - gcloud config set project deno-223616
|
||||||
|
# This program uploads the specified file to GCloud Storage in the denoland
|
||||||
|
# bucket. It places a checksum file into the current directory using the base
|
||||||
|
# filename of the specified file.
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import hashlib
|
||||||
|
from util import root_path, run
|
||||||
|
from third_party import tp
|
||||||
|
|
||||||
|
|
||||||
|
def print_usage():
|
||||||
|
print "Usage: ./tools/gcloud_upload.py target/release/obj/third_party/v8/libv8.a"
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
|
def compute_sha1(filename):
|
||||||
|
m = hashlib.sha1()
|
||||||
|
with open(filename) as f:
|
||||||
|
m.update(f.read())
|
||||||
|
return m.hexdigest()
|
||||||
|
|
||||||
|
|
||||||
|
def main(argv):
|
||||||
|
if len(argv) != 2:
|
||||||
|
print_usage()
|
||||||
|
os.chdir(root_path)
|
||||||
|
|
||||||
|
filename = sys.argv[1]
|
||||||
|
basename = os.path.basename(filename)
|
||||||
|
|
||||||
|
sha1 = compute_sha1(filename)
|
||||||
|
print sha1
|
||||||
|
|
||||||
|
gs_url = "gs://denoland/" + sha1
|
||||||
|
|
||||||
|
#gsutil = tp("depot_tools/gsutil.py")
|
||||||
|
gsutil = "gsutil" # standalone installation
|
||||||
|
|
||||||
|
run([gsutil, "cp", filename, gs_url])
|
||||||
|
run([gsutil, "acl", "ch", "-u", "AllUsers:R", gs_url])
|
||||||
|
|
||||||
|
target_filename = basename + ".sha1"
|
||||||
|
with open(target_filename, 'w') as f:
|
||||||
|
f.write(sha1)
|
||||||
|
print "Wrote", target_filename
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.exit(main(sys.argv))
|
31
tools/prebuilt.py
Normal file
31
tools/prebuilt.py
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
import sys
|
||||||
|
from util import run
|
||||||
|
from third_party import tp, google_env
|
||||||
|
|
||||||
|
|
||||||
|
def download_v8_prebuilt():
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
sha1_file = "prebuilt/win/v8.lib.sha1"
|
||||||
|
elif sys.platform.startswith('linux'):
|
||||||
|
sha1_file = "prebuilt/linux64/libv8.a.sha1"
|
||||||
|
elif sys.platform == 'darwin':
|
||||||
|
sha1_file = "prebuilt/mac/libv8.a.sha1"
|
||||||
|
|
||||||
|
run([
|
||||||
|
"python",
|
||||||
|
tp('depot_tools/download_from_google_storage.py'),
|
||||||
|
'--platform=' + sys.platform,
|
||||||
|
'--no_auth',
|
||||||
|
'--bucket=denoland',
|
||||||
|
'--sha1_file',
|
||||||
|
sha1_file,
|
||||||
|
],
|
||||||
|
env=google_env())
|
||||||
|
|
||||||
|
|
||||||
|
def load():
|
||||||
|
download_v8_prebuilt()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.exit(load())
|
Loading…
Reference in a new issue