| Index: ppapi/native_client/tests/nacl_browser/untrusted_crash_dump/nacl.scons
|
| diff --git a/ppapi/native_client/tests/nacl_browser/untrusted_crash_dump/nacl.scons b/ppapi/native_client/tests/nacl_browser/untrusted_crash_dump/nacl.scons
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e38a101d2fc14c6b7852345b69315f7730fcec0f
|
| --- /dev/null
|
| +++ b/ppapi/native_client/tests/nacl_browser/untrusted_crash_dump/nacl.scons
|
| @@ -0,0 +1,60 @@
|
| +# -*- python -*-
|
| +# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +Import('env')
|
| +
|
| +# TODO(bradnelson): Enable for PNaCl (figure out a way to get full frames
|
| +# with PNaCl).
|
| +is_broken = (env.Bit('bitcode') or
|
| + env.Bit('running_on_valgrind'))
|
| +
|
| +# Keep frame pointers so we get a nice stack trace.
|
| +# Set -O0 as otherwise some of the layers in the test case get optimized away.
|
| +env.Append(CCFLAGS=['-O0', '-fno-omit-frame-pointer', '-g'])
|
| +env['COMPONENT_STATIC'] = not env.Bit('nacl_glibc')
|
| +env['ENV']['NACL_UNTRUSTED_EXCEPTION_HANDLING'] = '1'
|
| +
|
| +# Similar stuff, but in the browser.
|
| +# Confusingly, chrome_browser_tests are in nacl_env rather than nacl_irt_env,
|
| +# so we check for the IRT being used, but (oddly) not the irt specific env
|
| +# (test_use_irt).
|
| +if not env.Bit('tests_use_irt'):
|
| + untrusted_crash_dump_test = env.ComponentProgram(
|
| + 'inbrowser_untrusted_crash_dump_test',
|
| + env.ComponentObject(
|
| + 'inbrowser_untrusted_crash_dump_test',
|
| + '${MAIN_DIR}/tests/untrusted_crash_dump/untrusted_crash_dump_test.c'),
|
| + EXTRA_LIBS=['untrusted_crash_dump_lib',
|
| + 'untrusted_crash_dump',
|
| + 'platform', 'gio', 'imc', 'imc_syscalls',
|
| + '${PTHREAD_LIBS}'])
|
| +
|
| + crash_dump = ('${TARGET_ROOT}/test_results/'
|
| + 'inbrowser_untrusted_crash_dump_test.stdout')
|
| + run_test = env.PPAPIBrowserTester(
|
| + 'inbrowser_untrusted_crash_dump_test_run.out',
|
| + url='untrusted_crash_dump.html',
|
| + nmfs=['untrusted_crash_dump_test.nmf'],
|
| + nacl_exe_stdout={
|
| + 'file': crash_dump,
|
| + },
|
| + files=[untrusted_crash_dump_test,
|
| + env.File('untrusted_crash_dump.html')])
|
| + env.AlwaysBuild(run_test)
|
| + node = env.Command(
|
| + 'inbrowser_untrusted_crash_dump_test.out',
|
| + ['${MAIN_DIR}/tests/untrusted_crash_dump/untrusted_crash_dump_test.py',
|
| + crash_dump, untrusted_crash_dump_test,
|
| + '${STAGING_DIR}/untrusted_crash_dump_test.nmf'],
|
| + '${PYTHON} ${SOURCES} ${ADDR2LINE} '
|
| + '${LIB_DIR} ${NACL_SDK_LIB} ${TARGET_FULLARCH}')
|
| + env.AddNodeToTestSuite(
|
| + node, ['chrome_browser_tests'],
|
| + 'run_inbrowser_untrusted_crash_dump_test',
|
| + is_broken=env.PPAPIBrowserTesterIsBroken() or
|
| + # TODO(bradnelson): Once we have proper support for running
|
| + # in Chrome, remove this limitation.
|
| + env.Bit('disable_dynamic_plugin_loading') or
|
| + is_broken)
|
|
|