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

Side by Side Diff: tests/pnacl_dynamic_loading/nacl.scons

Issue 1832623002: PNaCl Dynamic Linking: Using unordered_set to disallow duplicate modules. (Closed) Base URL: https://chromium.googlesource.com/native_client/src/native_client.git@master
Patch Set: Added AddBySoname/SetSonameSearchPaths, tested in pll_loader_test Created 4 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 unified diff | Download patch
OLDNEW
1 # -*- python -*- 1 # -*- python -*-
2 # Copyright (c) 2014 The Native Client Authors. All rights reserved. 2 # Copyright (c) 2014 The Native Client Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 Import('env') 6 Import('env')
7 7
8 if not env.Bit('bitcode'): 8 if not env.Bit('bitcode'):
9 Return() 9 Return()
10 # Translating the PSO to an ELF DSO doesn't work on x86-64 yet. The 10 # Translating the PSO to an ELF DSO doesn't work on x86-64 yet. The
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 105
106 test_pll_a = MakeAndTranslatePll('test_pll_a', 'test_pll_a.c') 106 test_pll_a = MakeAndTranslatePll('test_pll_a', 'test_pll_a.c')
107 test_pll_b = MakeAndTranslatePll('test_pll_b', 'test_pll_b.c') 107 test_pll_b = MakeAndTranslatePll('test_pll_b', 'test_pll_b.c')
108 108
109 pll_loader_test = env.ComponentProgram( 109 pll_loader_test = env.ComponentProgram(
110 'pll_loader_test', ['pll_loader_test.cc'], 110 'pll_loader_test', ['pll_loader_test.cc'],
111 EXTRA_LIBS=['${NONIRT_LIBS}', 'pll_loader_lib']) 111 EXTRA_LIBS=['${NONIRT_LIBS}', 'pll_loader_lib'])
112 112
113 node = env.CommandSelLdrTestNacl( 113 node = env.CommandSelLdrTestNacl(
114 'pll_loader_test.out', pll_loader_test, 114 'pll_loader_test.out', pll_loader_test,
115 [test_pll_a, test_pll_b, test_pll_tls], 115 [Dir('.').abspath, 'test_pll_a.so', 'test_pll_b.so', 'test_pll_tls.so'],
116 # Add '-a' to enable filesystem access for opening DSOs. 116 # Add '-a' to enable filesystem access for opening DSOs.
117 sel_ldr_flags=['-a']) 117 sel_ldr_flags=['-a'])
118 # Since we are passing sonames (rather than scons objects) to the
119 # pll_loader_test, these dependencies must be made explicit.
120 Depends(node, test_pll_a)
Mark Seaborn 2016/03/26 00:30:11 An alternative is: CommandSelLdrTestNacl(..., ext
Sean Klein 2016/03/26 00:47:25 Done.
121 Depends(node, test_pll_b)
122 Depends(node, test_pll_tls)
118 env.AddNodeToTestSuite( 123 env.AddNodeToTestSuite(
119 node, ['small_tests', 'toolchain_tests'], 124 node, ['small_tests', 'toolchain_tests'],
120 'run_pll_loader_test', is_broken=is_broken) 125 'run_pll_loader_test', is_broken=is_broken)
121 126
122 127
123 pll_libc = env.Command( 128 pll_libc = env.Command(
124 'libc${OBJSUFFIX}', 129 'libc${OBJSUFFIX}',
125 # libnacl should come first so that it can override definitions in libc. 130 # libnacl should come first so that it can override definitions in libc.
126 [env.File('${LIB_DIR}/libnacl.a'), 131 [env.File('${LIB_DIR}/libnacl.a'),
127 env.File('${NACL_SDK_LIB}/libc.a'), 132 env.File('${NACL_SDK_LIB}/libc.a'),
(...skipping 14 matching lines...) Expand all
142 147
143 node = env.CommandSelLdrTestNacl( 148 node = env.CommandSelLdrTestNacl(
144 'pll_hello_world_test.out', pll_loader, 149 'pll_hello_world_test.out', pll_loader,
145 [translated_pll_libc, translated_pll_hello_world], 150 [translated_pll_libc, translated_pll_hello_world],
146 # Add '-a' to enable filesystem access for opening DSOs. 151 # Add '-a' to enable filesystem access for opening DSOs.
147 sel_ldr_flags=['-a'], 152 sel_ldr_flags=['-a'],
148 stdout_golden=env.File('../hello_world/hello_world.stdout')) 153 stdout_golden=env.File('../hello_world/hello_world.stdout'))
149 env.AddNodeToTestSuite( 154 env.AddNodeToTestSuite(
150 node, ['small_tests', 'toolchain_tests'], 155 node, ['small_tests', 'toolchain_tests'],
151 'run_pll_hello_world_test', is_broken=is_broken) 156 'run_pll_hello_world_test', is_broken=is_broken)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698