Add Binaryen tags to manifest list.
This commit is contained in:
29
emsdk
29
emsdk
@@ -25,6 +25,7 @@ else:
|
|||||||
emsdk_packages_url = urljoin(emsdk_master_server, 'packages/')
|
emsdk_packages_url = urljoin(emsdk_master_server, 'packages/')
|
||||||
|
|
||||||
emscripten_git_repo = 'https://github.com/kripken/emscripten/'
|
emscripten_git_repo = 'https://github.com/kripken/emscripten/'
|
||||||
|
binaryen_git_repo = 'https://github.com/WebAssembly/binaryen/'
|
||||||
|
|
||||||
# Enable this to do very verbose printing about the different steps that are being run. Useful for debugging.
|
# Enable this to do very verbose printing about the different steps that are being run. Useful for debugging.
|
||||||
VERBOSE = bool(os.getenv('EMSDK_VERBOSE')) if os.getenv('EMSDK_VERBOSE') != None else False
|
VERBOSE = bool(os.getenv('EMSDK_VERBOSE')) if os.getenv('EMSDK_VERBOSE') != None else False
|
||||||
@@ -1426,6 +1427,25 @@ def fetch_emscripten_tags():
|
|||||||
else:
|
else:
|
||||||
print('Done. No tagged releases available.')
|
print('Done. No tagged releases available.')
|
||||||
|
|
||||||
|
print('Fetching all tags from Binaryen Github repository...')
|
||||||
|
tags = run_get_output([GIT(), 'ls-remote', '--tags', binaryen_git_repo])
|
||||||
|
if tags[0] != 0: return False # failed to get tags?
|
||||||
|
tags = tags[1]
|
||||||
|
binaryen_tags = []
|
||||||
|
for t in tags.split('\n'):
|
||||||
|
try:
|
||||||
|
t = t[t.index('refs/tags/') + len('refs/tags/'):].strip()
|
||||||
|
if '.' in t:
|
||||||
|
binaryen_tags += [t]
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
binaryen_tags = sorted(binaryen_tags, cmp=version_compare)
|
||||||
|
open(sdk_path('binaryen-tags.txt'), 'w').write('\n'.join(binaryen_tags))
|
||||||
|
if len(binaryen_tags) > 0:
|
||||||
|
print('Done. ' + str(len(binaryen_tags)) + ' tagged Binaryen releases available, latest is ' + binaryen_tags[-1] + '.')
|
||||||
|
else:
|
||||||
|
print('Done. No tagged Binaryen releases available.')
|
||||||
|
|
||||||
def os_name_for_llvm_location():
|
def os_name_for_llvm_location():
|
||||||
if WINDOWS: return 'win'
|
if WINDOWS: return 'win'
|
||||||
if LINUX: return 'linux'
|
if LINUX: return 'linux'
|
||||||
@@ -1456,6 +1476,12 @@ def load_emscripten_tags():
|
|||||||
except:
|
except:
|
||||||
return []
|
return []
|
||||||
|
|
||||||
|
def load_binaryen_tags():
|
||||||
|
try:
|
||||||
|
return open(sdk_path('binaryen-tags.txt'), 'r').read().split('\n')
|
||||||
|
except:
|
||||||
|
return []
|
||||||
|
|
||||||
def remove_prefix(s, prefix):
|
def remove_prefix(s, prefix):
|
||||||
if s.startswith(prefix): return s[len(prefix):]
|
if s.startswith(prefix): return s[len(prefix):]
|
||||||
else: return s
|
else: return s
|
||||||
@@ -1493,6 +1519,7 @@ def load_sdk_manifest():
|
|||||||
return
|
return
|
||||||
|
|
||||||
emscripten_tags = load_emscripten_tags()
|
emscripten_tags = load_emscripten_tags()
|
||||||
|
binaryen_tags = load_binaryen_tags()
|
||||||
llvm_32bit_nightlies = list(reversed(load_llvm_32bit_nightlies()))
|
llvm_32bit_nightlies = list(reversed(load_llvm_32bit_nightlies()))
|
||||||
llvm_64bit_nightlies = list(reversed(load_llvm_64bit_nightlies()))
|
llvm_64bit_nightlies = list(reversed(load_llvm_64bit_nightlies()))
|
||||||
emscripten_nightlies = list(reversed(load_emscripten_nightlies()))
|
emscripten_nightlies = list(reversed(load_emscripten_nightlies()))
|
||||||
@@ -1531,6 +1558,8 @@ def load_sdk_manifest():
|
|||||||
# Expand the metapackages that refer to tags or nightlies.
|
# Expand the metapackages that refer to tags or nightlies.
|
||||||
if '%tag%' in t.version:
|
if '%tag%' in t.version:
|
||||||
expand_category_param('%tag%', emscripten_tags, t, is_sdk=False)
|
expand_category_param('%tag%', emscripten_tags, t, is_sdk=False)
|
||||||
|
elif '%binaryen_tag%' in t.version:
|
||||||
|
expand_category_param('%binaryen_tag%', binaryen_tags, t, is_sdk=False)
|
||||||
elif '%nightly-llvm-64bit%' in t.version:
|
elif '%nightly-llvm-64bit%' in t.version:
|
||||||
expand_category_param('%nightly-llvm-64bit%', llvm_64bit_nightlies, t, is_sdk=False)
|
expand_category_param('%nightly-llvm-64bit%', llvm_64bit_nightlies, t, is_sdk=False)
|
||||||
elif '%nightly-llvm-32bit%' in t.version:
|
elif '%nightly-llvm-32bit%' in t.version:
|
||||||
|
|||||||
@@ -647,11 +647,43 @@
|
|||||||
"activated_cfg": "EMSCRIPTEN_ROOT='%installation_dir%';EMSCRIPTEN_NATIVE_OPTIMIZER='%installation_dir%%generator_prefix%_64bit_optimizer/%cmake_build_type_on_win%optimizer%.exe%'",
|
"activated_cfg": "EMSCRIPTEN_ROOT='%installation_dir%';EMSCRIPTEN_NATIVE_OPTIMIZER='%installation_dir%%generator_prefix%_64bit_optimizer/%cmake_build_type_on_win%optimizer%.exe%'",
|
||||||
"activated_path": "%installation_dir%",
|
"activated_path": "%installation_dir%",
|
||||||
"activated_env": "EMSCRIPTEN=%installation_dir%",
|
"activated_env": "EMSCRIPTEN=%installation_dir%",
|
||||||
"cmake_build_type": "RelWithDebInfo",
|
"cmake_build_type": "Release",
|
||||||
"custom_install_script": "build_optimizer",
|
"custom_install_script": "build_optimizer",
|
||||||
"custom_is_installed_script": "is_optimizer_installed",
|
"custom_is_installed_script": "is_optimizer_installed",
|
||||||
"custom_uninstall_script": "uninstall_optimizer"
|
"custom_uninstall_script": "uninstall_optimizer"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "binaryen",
|
||||||
|
"version": "tag-%binaryen_tag%",
|
||||||
|
"bitness": 32,
|
||||||
|
"append_bitness": false,
|
||||||
|
"windows_url": "https://github.com/WebAssembly/binaryen/archive/%binaryen_tag%.zip",
|
||||||
|
"unix_url": "https://github.com/WebAssembly/binaryen/archive/%binaryen_tag%.tar.gz",
|
||||||
|
"zipfile_prefix": "binaryen-e",
|
||||||
|
"activated_cfg": "BINARYEN_ROOT='%installation_dir%%generator_prefix%_64bit_binaryen'",
|
||||||
|
"activated_path": "%installation_dir%",
|
||||||
|
"activated_env": "BINARYEN_ROOT=%installation_dir%%generator_prefix%_64bit_binaryen",
|
||||||
|
"cmake_build_type": "Release",
|
||||||
|
"custom_install_script": "build_binaryen",
|
||||||
|
"custom_is_installed_script": "is_binaryen_installed",
|
||||||
|
"custom_uninstall_script": "uninstall_binaryen"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "binaryen",
|
||||||
|
"version": "tag-%binaryen_tag%",
|
||||||
|
"bitness": 64,
|
||||||
|
"append_bitness": false,
|
||||||
|
"windows_url": "https://github.com/WebAssembly/binaryen/archive/%binaryen_tag%.zip",
|
||||||
|
"unix_url": "https://github.com/WebAssembly/binaryen/archive/%binaryen_tag%.tar.gz",
|
||||||
|
"zipfile_prefix": "binaryen-e",
|
||||||
|
"activated_cfg": "BINARYEN_ROOT='%installation_dir%%generator_prefix%_64bit_binaryen'",
|
||||||
|
"activated_path": "%installation_dir%",
|
||||||
|
"activated_env": "BINARYEN_ROOT=%installation_dir%%generator_prefix%_64bit_binaryen",
|
||||||
|
"cmake_build_type": "Release",
|
||||||
|
"custom_install_script": "build_binaryen",
|
||||||
|
"custom_is_installed_script": "is_binaryen_installed",
|
||||||
|
"custom_uninstall_script": "uninstall_binaryen"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "emscripten",
|
"id": "emscripten",
|
||||||
"version": "nightly-%nightly-emscripten%",
|
"version": "nightly-%nightly-emscripten%",
|
||||||
@@ -721,6 +753,21 @@
|
|||||||
"custom_is_installed_script": "is_optimizer_installed",
|
"custom_is_installed_script": "is_optimizer_installed",
|
||||||
"custom_uninstall_script": "uninstall_optimizer"
|
"custom_uninstall_script": "uninstall_optimizer"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "binaryen",
|
||||||
|
"version": "master",
|
||||||
|
"bitness": 32,
|
||||||
|
"append_bitness": false,
|
||||||
|
"url": "https://github.com/WebAssembly/binaryen/",
|
||||||
|
"git_branch": "master",
|
||||||
|
"activated_cfg": "BINARYEN_ROOT='%installation_dir%%generator_prefix%_32bit_binaryen'",
|
||||||
|
"activated_path": "%installation_dir%",
|
||||||
|
"activated_env": "BINARYEN_ROOT=%installation_dir%%generator_prefix%_32bit_binaryen",
|
||||||
|
"cmake_build_type": "Release",
|
||||||
|
"custom_install_script": "build_binaryen",
|
||||||
|
"custom_is_installed_script": "is_binaryen_installed",
|
||||||
|
"custom_uninstall_script": "uninstall_binaryen"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "binaryen",
|
"id": "binaryen",
|
||||||
"version": "master",
|
"version": "master",
|
||||||
@@ -731,7 +778,7 @@
|
|||||||
"activated_cfg": "BINARYEN_ROOT='%installation_dir%%generator_prefix%_64bit_binaryen'",
|
"activated_cfg": "BINARYEN_ROOT='%installation_dir%%generator_prefix%_64bit_binaryen'",
|
||||||
"activated_path": "%installation_dir%",
|
"activated_path": "%installation_dir%",
|
||||||
"activated_env": "BINARYEN_ROOT=%installation_dir%%generator_prefix%_64bit_binaryen",
|
"activated_env": "BINARYEN_ROOT=%installation_dir%%generator_prefix%_64bit_binaryen",
|
||||||
"cmake_build_type": "RelWithDebInfo",
|
"cmake_build_type": "Release",
|
||||||
"custom_install_script": "build_binaryen",
|
"custom_install_script": "build_binaryen",
|
||||||
"custom_is_installed_script": "is_binaryen_installed",
|
"custom_is_installed_script": "is_binaryen_installed",
|
||||||
"custom_uninstall_script": "uninstall_binaryen"
|
"custom_uninstall_script": "uninstall_binaryen"
|
||||||
|
|||||||
Reference in New Issue
Block a user