Instead of creating a new python process to run traceflags.py,

just directly exec the file and generate the flags

--HG--
extra : convert_revision : d648ca7348404ded5337db327adafccbd2ae40c8
This commit is contained in:
Nathan Binkert 2007-03-26 21:07:32 -07:00
parent 01ac962a06
commit d8ca2d3b16
2 changed files with 20 additions and 17 deletions

View file

@ -30,10 +30,26 @@
Import('*')
# base/traceflags.{cc,hh} are generated from base/traceflags.py.
# $TARGET.base will expand to "<build-dir>/base/traceflags".
env.Command(['traceflags.hh', 'traceflags.cc'], 'traceflags.py',
'python $SOURCE $TARGET.base')
def make_cc(target, source, env):
assert(len(source) == 1)
assert(len(target) == 1)
traceflags = {}
execfile(str(source[0]), traceflags)
func = traceflags['gen_cc']
func(str(target[0]))
def make_hh(target, source, env):
assert(len(source) == 1)
assert(len(target) == 1)
traceflags = {}
execfile(str(source[0]), traceflags)
func = traceflags['gen_hh']
func(str(target[0]))
env.Command('traceflags.hh', 'traceflags.py', make_hh)
env.Command('traceflags.cc', 'traceflags.py', make_cc)
Source('annotate.cc')
Source('bigint.cc')

View file

@ -350,16 +350,3 @@ const char *Trace::flagStrings[] =
print >>ccfile, '};'
ccfile.close()
if __name__ == '__main__':
# This file generates the header and source files for the flags
# that control the tracing facility.
import sys
if len(sys.argv) != 2:
print "%s: Need argument (basename of cc/hh files)" % sys.argv[0]
sys.exit(1)
gen_hh(sys.argv[1] + '.hh')
gen_cc(sys.argv[1] + '.cc')