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

Side by Side Diff: src/trusted/validator_arm/build.scons

Issue 10191011: Moving dgen_ scripts out of validator_arm into a common directory. (Closed)
Patch Set: Updates per code review. Created 8 years, 8 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
« no previous file with comments | « src/trusted/validator/dgen/optimize-table.py ('k') | src/trusted/validator_arm/dgen_core.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # -*- python -*- 1 # -*- python -*-
2 # Copyright (c) 2012 The Native Client Authors. All rights reserved. 2 # Copyright (c) 2012 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 os 6 import os
7 Import('env') 7 Import('env')
8 8
9 if not env.Bit('linux'): Return() 9 if not env.Bit('linux'): Return()
10 10
(...skipping 13 matching lines...) Expand all
24 # 24 #
25 # valgen : Regenerate any deleted source files. Note: some generated 25 # valgen : Regenerate any deleted source files. Note: some generated
26 # source files do understand dependencies and do not need to be 26 # source files do understand dependencies and do not need to be
27 # deleted before calling valgen. However, do not count on this, 27 # deleted before calling valgen. However, do not count on this,
28 # as some dependencies are not caught. To be safe, if you have 28 # as some dependencies are not caught. To be safe, if you have
29 # modified a file that effects source generation, run "valclean" 29 # modified a file that effects source generation, run "valclean"
30 # followed by a "valgen" to guarantee that generated sources are 30 # followed by a "valgen" to guarantee that generated sources are
31 # up to date. 31 # up to date.
32 gen_env = env.Clone(); 32 gen_env = env.Clone();
33 33
34 # Defines dgen directory inside of common arch-independent validator directory.
35 DGEN_SRC_DIR = '${MAIN_DIR}/src/trusted/validator/dgen'
36
34 # Defines this source directory. 37 # Defines this source directory.
35 GEN_SRC_DIR = '${MAIN_DIR}/src/trusted/validator_arm/gen' 38 GEN_SRC_DIR = '${MAIN_DIR}/src/trusted/validator_arm/gen'
36 39
37 # Defines the full file name for a generated file. 40 # Defines the full file name for a generated file.
38 def _gen_file(filename): 41 def _gen_file(filename):
39 return '%s/%s' % (GEN_SRC_DIR, filename) 42 return '%s/%s' % (GEN_SRC_DIR, filename)
40 43
44 # Defines the full file name for a file inside dgen directory.
45 def _dgen_dir_file(filename):
46 return '%s/%s' % (DGEN_SRC_DIR, filename)
47
41 # Set of generated source files. 48 # Set of generated source files.
42 GEN_LIST = [_gen_file(x) for x in 49 GEN_LIST = [_gen_file(x) for x in
43 ['arm32_decode.cc', 'arm32_decode.h', 50 ['arm32_decode.cc', 'arm32_decode.h',
44 'arm32_decode_named.cc' , 51 'arm32_decode_named.cc' ,
45 'arm32_decode_named_classes.h', 52 'arm32_decode_named_classes.h',
46 'arm32_decode_named_decoder.h', 53 'arm32_decode_named_decoder.h',
47 'arm32_decode_tests.cc']] 54 'arm32_decode_tests.cc']]
48 55
49 generate = False 56 generate = False
50 gen_env = env.Clone(); 57 gen_env = env.Clone();
51 if 'valgen' in COMMAND_LINE_TARGETS: generate = True 58 if 'valgen' in COMMAND_LINE_TARGETS: generate = True
52 if 'valclean' in COMMAND_LINE_TARGETS: generate = True 59 if 'valclean' in COMMAND_LINE_TARGETS: generate = True
53 60
54 if generate: 61 if generate:
55 gen_env.AlwaysBuild(gen_env.Alias('valgen', GEN_LIST)) 62 gen_env.AlwaysBuild(gen_env.Alias('valgen', GEN_LIST))
56 gen_env.AlwaysBuild( 63 gen_env.AlwaysBuild(
57 gen_env.Alias('valclean', action=[Delete(x) for x in GEN_LIST])) 64 gen_env.Alias('valclean', action=[Delete(x) for x in GEN_LIST]))
58 65
59 def _generate_source(filename): 66 def _generate_source(filename):
60 env.Command(target=filename, 67 env.Command(target=filename,
61 source=['armv7.table', 68 source=['armv7.table',
62 'generate_decoder.py', 69 _dgen_dir_file('generate_decoder.py'),
63 'dgen_core.py', 70 _dgen_dir_file('dgen_core.py'),
64 'dgen_input.py', 71 _dgen_dir_file('dgen_input.py'),
65 'dgen_opt.py', 72 _dgen_dir_file('dgen_opt.py'),
66 'dgen_output.py', 73 _dgen_dir_file('dgen_output.py'),
67 'dgen_decoder_output.py', 74 _dgen_dir_file('dgen_decoder_output.py'),
68 'dgen_test_output.py', 75 _dgen_dir_file('dgen_test_output.py'),
69 ], 76 ],
70 action=['${SOURCES[1].abspath} ${SOURCES[0].abspath} ' 77 action=['${SOURCES[1].abspath} ${SOURCES[0].abspath} '
71 '${TARGET.abspath} Arm32DecoderState']) 78 '${TARGET.abspath} Arm32DecoderState'])
72 79
73 for f in GEN_LIST: 80 for f in GEN_LIST:
74 _generate_source(f) 81 _generate_source(f)
75 82
76 env.ComponentLibrary('arm_validator_core', 83 env.ComponentLibrary('arm_validator_core',
77 ['address_set.cc', 84 ['address_set.cc',
78 'inst_classes.cc', 85 'inst_classes.cc',
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 EXTRA_LIBS=['decoder_test_tools', 'arm_validator_core']) 167 EXTRA_LIBS=['decoder_test_tools', 'arm_validator_core'])
161 168
162 decoder_test_node = gtest_env.CommandTest( 169 decoder_test_node = gtest_env.CommandTest(
163 'arm32_decode_tests.out', 170 'arm32_decode_tests.out',
164 command=[decoder_tests_exe], 171 command=[decoder_tests_exe],
165 scale_timeout=100) 172 scale_timeout=100)
166 173
167 gtest_env.AddNodeToTestSuite(decoder_test_node, 174 gtest_env.AddNodeToTestSuite(decoder_test_node,
168 ['huge_tests', 'arm_decoder_tests'], 175 ['huge_tests', 'arm_decoder_tests'],
169 'run_arm_decoder_tests') 176 'run_arm_decoder_tests')
OLDNEW
« no previous file with comments | « src/trusted/validator/dgen/optimize-table.py ('k') | src/trusted/validator_arm/dgen_core.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698