From 0be8985c6e6bf224be25831273adc95ebac610b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jukka=20Jyl=C3=A4nki?= Date: Sun, 13 Nov 2016 03:33:33 +0300 Subject: [PATCH] Add metasdks 'sdk-nightly-latest', 'sdk-nightly-latest-32bit' and 'sdk-nightly-latest-64bit' which install the most recent available Nightly SDK. --- emsdk | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/emsdk b/emsdk index d45f72d..6b5964a 100755 --- a/emsdk +++ b/emsdk @@ -1325,13 +1325,15 @@ def is_os_64bit(): # http://stackoverflow.com/questions/2208828/detect-64bit-os- def find_latest_32bit_sdk(): for sdk in reversed(sdks): # Newest SDK is always at the end of the list. if not hasattr(sdk, 'bitness') or sdk.bitness == 32: # If no 'bitness' field, it means the SDK is universal. - return sdk + if not 'nightly' in sdk.version: + return sdk return None def find_latest_64bit_sdk(): for sdk in reversed(sdks): # Newest SDK is always at the end of the list. if not hasattr(sdk, 'bitness') or sdk.bitness == 64: # If no 'bitness' field, it means the SDK is universal. - return sdk + if not 'nightly' in sdk.version: + return sdk return None def find_latest_sdk(): @@ -1340,6 +1342,26 @@ def find_latest_sdk(): else: return find_latest_32bit_sdk() +def find_latest_nightly_32bit_sdk(): + for sdk in reversed(sdks): # Newest SDK is always at the end of the list. + if not hasattr(sdk, 'bitness') or sdk.bitness == 32: # If no 'bitness' field, it means the SDK is universal. + if 'nightly' in sdk.version: + return sdk + return None + +def find_latest_nightly_64bit_sdk(): + for sdk in reversed(sdks): # Newest SDK is always at the end of the list. + if not hasattr(sdk, 'bitness') or sdk.bitness == 64: # If no 'bitness' field, it means the SDK is universal. + if 'nightly' in sdk.version: + return sdk + return None + +def find_latest_nightly_sdk(): + if is_os_64bit(): + return find_latest_nightly_64bit_sdk() + else: + return find_latest_nightly_32bit_sdk() + # Finds the best-matching python tool for use. def find_used_python(): for t in reversed(tools): # Find newest tool first - those are always at the end of the list. @@ -1865,6 +1887,12 @@ def main(): sys.argv[i] = str(find_latest_32bit_sdk()) elif sys.argv[i] == 'latest-64bit': sys.argv[i] = str(find_latest_64bit_sdk()) + elif sys.argv[i] == 'sdk-nightly-latest': + sys.argv[i] = str(find_latest_nightly_sdk()) + elif sys.argv[i] == 'sdk-nightly-latest-32bit': + sys.argv[i] = str(find_latest_nightly_32bit_sdk()) + elif sys.argv[i] == 'sdk-nightly-latest-64bit': + sys.argv[i] = str(find_latest_nightly_64bit_sdk()) if cmd == 'list': print('')