1.39.16 (#503)
Also update precompiled lib tests, for the new cache logic.
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"latest": "1.39.15",
|
"latest": "1.39.16",
|
||||||
"releases": {
|
"releases": {
|
||||||
|
"1.39.16": "ae5001fac3849895a873e422a2a80afc90f3b798",
|
||||||
"1.39.15": "3880c744c068986d4ee781a61f7b2e820043e11f",
|
"1.39.15": "3880c744c068986d4ee781a61f7b2e820043e11f",
|
||||||
"1.39.14": "574ad04affb82cc36a32dd89b2a87bea4fb30eba",
|
"1.39.14": "574ad04affb82cc36a32dd89b2a87bea4fb30eba",
|
||||||
"1.39.13": "7b3cd38017f7c582cfa3ac24a9f12aa6a8dca51f",
|
"1.39.13": "7b3cd38017f7c582cfa3ac24a9f12aa6a8dca51f",
|
||||||
|
|||||||
@@ -11,6 +11,14 @@ MACOS = sys.platform == 'darwin'
|
|||||||
|
|
||||||
assert 'EM_CONFIG' in os.environ, "emsdk should be activated before running this script"
|
assert 'EM_CONFIG' in os.environ, "emsdk should be activated before running this script"
|
||||||
|
|
||||||
|
LIBC = os.environ['EM_CACHE'] + '/wasm/libc.a'
|
||||||
|
|
||||||
|
# Remove the EM_CACHE environment variable. It interferes with testing since
|
||||||
|
# it would otherwise be fixed for the duration of the script and we expect
|
||||||
|
# "emsdk activate" to be able switch between SDKs during the running of this
|
||||||
|
# script.
|
||||||
|
del os.environ['EM_CACHE']
|
||||||
|
|
||||||
emconfig = os.environ['EM_CONFIG']
|
emconfig = os.environ['EM_CONFIG']
|
||||||
upstream_emcc = os.path.join('upstream', 'emscripten', 'emcc')
|
upstream_emcc = os.path.join('upstream', 'emscripten', 'emcc')
|
||||||
fastcomp_emcc = os.path.join('fastcomp', 'emscripten', 'emcc')
|
fastcomp_emcc = os.path.join('fastcomp', 'emscripten', 'emcc')
|
||||||
@@ -80,8 +88,6 @@ int main() {
|
|||||||
|
|
||||||
TAGS = json.loads(open('emscripten-releases-tags.txt').read())
|
TAGS = json.loads(open('emscripten-releases-tags.txt').read())
|
||||||
|
|
||||||
LIBC = os.environ['EM_CACHE'] + '/wasm/libc.a'
|
|
||||||
|
|
||||||
# Tests
|
# Tests
|
||||||
|
|
||||||
print('test .emscripten contents (latest was installed/activated in test.sh)')
|
print('test .emscripten contents (latest was installed/activated in test.sh)')
|
||||||
@@ -95,31 +101,27 @@ print('building proper system libraries')
|
|||||||
|
|
||||||
|
|
||||||
def test_lib_building(emcc, use_asmjs_optimizer):
|
def test_lib_building(emcc, use_asmjs_optimizer):
|
||||||
def test_build(args, expected=None, unexpected=None):
|
cache_building_messages = ['generating system library: ']
|
||||||
|
|
||||||
|
def test_build(args, expected):
|
||||||
|
if expected:
|
||||||
|
expected = cache_building_messages
|
||||||
|
unexpected = []
|
||||||
|
else:
|
||||||
|
expected = []
|
||||||
|
unexpected = cache_building_messages
|
||||||
checked_call_with_output(emcc + ' hello_world.c' + args,
|
checked_call_with_output(emcc + ' hello_world.c' + args,
|
||||||
expected=expected,
|
expected=expected,
|
||||||
unexpected=unexpected,
|
unexpected=unexpected,
|
||||||
stderr=subprocess.STDOUT)
|
stderr=subprocess.STDOUT)
|
||||||
|
|
||||||
# by default we ship libc, struct_info, and the asm.js optimizer, as they
|
# The emsdk ships all system libraries so we don't expect to see any
|
||||||
# are important for various reasons (libc takes a long time to build;
|
# cache population unless we explicly --clear-cache.
|
||||||
# struct_info is a bootstrap product so if the user's setup is broken it's
|
test_build('', expected=False)
|
||||||
# confusing; the asm.js optimizer is a native application so it needs a
|
check_call(emcc + ' --clear-cache')
|
||||||
# working native local build environment). otherwise we don't ship every
|
test_build(' -O2', expected=True)
|
||||||
# single lib, so some building is expected on first run.
|
test_build(' -s WASM=0', expected=False)
|
||||||
|
test_build(' -O2 -s WASM=0', expected=False)
|
||||||
unexpected_system_libs = ['generating system library: libc.',
|
|
||||||
'generating system asset: optimizer']
|
|
||||||
if use_asmjs_optimizer:
|
|
||||||
unexpected_system_libs += ['generating system asset: generated_struct_info.json']
|
|
||||||
|
|
||||||
first_time_system_libs = ['generating system library: libdlmalloc.']
|
|
||||||
|
|
||||||
test_build('', expected=first_time_system_libs,
|
|
||||||
unexpected=unexpected_system_libs)
|
|
||||||
test_build(' -O2', unexpected=unexpected_system_libs + first_time_system_libs)
|
|
||||||
test_build(' -s WASM=0', unexpected=unexpected_system_libs + first_time_system_libs)
|
|
||||||
test_build(' -O2 -s WASM=0', unexpected=unexpected_system_libs + first_time_system_libs)
|
|
||||||
|
|
||||||
|
|
||||||
def run_emsdk(cmd):
|
def run_emsdk(cmd):
|
||||||
|
|||||||
Reference in New Issue
Block a user