Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(113)

Unified Diff: SConstruct

Issue 9696046: Add test running support for tests generated as pexes. (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: suggestions Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | site_scons/site_tools/naclsdk.py » ('j') | site_scons/site_tools/naclsdk.py » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: SConstruct
diff --git a/SConstruct b/SConstruct
index 919b1c771fe3d87a0b5f3d01dab074fbfc9d47fb..7a46dc5d08dc0760b564dabbe9b0a859158f3bed 100755
--- a/SConstruct
+++ b/SConstruct
@@ -1192,6 +1192,9 @@ def CommandValidatorTestNacl(env, name, image,
if validator_flags is None:
validator_flags = []
+ if env.Bit('pnacl_stop_with_pexe'):
robertm 2012/03/13 21:53:15 I am not a big fan of the "late kill", it would be
(google.com) Derek Schuff 2012/03/13 21:59:27 Maybe... until someone else tries to add another v
+ return []
+
command = [validator] + validator_flags + [image]
return CommandTest(env, name, command, size, **extra)
@@ -1950,6 +1953,19 @@ def ShouldUseVerboseOptions(extra):
# ----------------------------------------------------------
DeclareBit('tests_use_irt', 'Non-browser tests also load the IRT image', False)
+# Translate the given pexe. Return the name of the translated nexe and
Mark Seaborn 2012/03/13 22:16:55 Sentence not completed.
+def GetTranslatedNexe(env, pexe):
+ pexe_name = pexe.abspath
+ nexe_name = pexe_name[:pexe_name.index('.pexe')] + '.nexe'
+ trans_flags = []
Mark Seaborn 2012/03/13 22:16:55 trans_flag is not used.
+ trans_cmd = ('${TRANSLATE} ${TRANSLATEFLAGS} -Wl,-L${LIB_DIR} %s -o %s' %
+ (pexe_name, nexe_name))
+
+ pexe_node = env.Command(nexe_name, pexe_name, trans_cmd)
+ return nexe_name, pexe_node
Mark Seaborn 2012/03/13 22:16:55 In the call sites, nexe_name is not used.
+
+pre_base_env.AddMethod(GetTranslatedNexe)
+
def CommandSelLdrTestNacl(env, name, nexe,
args = None,
log_verbosity=2,
@@ -1971,7 +1987,15 @@ def CommandSelLdrTestNacl(env, name, nexe,
env['TRUSTED_ENV'].Bit('windows')):
return []
- command = [nexe]
+ if (env.Bit('pnacl_stop_with_pexe') and env['NACL_BUILD_FAMILY'] != 'TRUSTED'):
+ # The nexe is actually a pexe. translate it before we run it
+ nexe_name, pexe_node = GetTranslatedNexe(env, nexe)
+ command = [nexe_name]
+ extra_deps = [pexe_node]
+ else:
+ command = [nexe]
+ extra_deps = []
+
if args is not None:
command += args
@@ -2025,7 +2049,8 @@ def CommandSelLdrTestNacl(env, name, nexe,
env.MakeVerboseExtraOptions(name, log_verbosity, extra)
node = CommandTest(env, name, command, size, posix_path=True,
- wrapper_program_prefix=wrapper_program_prefix, **extra)
+ wrapper_program_prefix=wrapper_program_prefix,
+ extra_deps=extra_deps, **extra)
if env.Bit('tests_use_irt'):
env.Alias('irt_tests', node)
return node
« no previous file with comments | « no previous file | site_scons/site_tools/naclsdk.py » ('j') | site_scons/site_tools/naclsdk.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698