summaryrefslogtreecommitdiff
path: root/sim/pyconfig
diff options
context:
space:
mode:
authorKevin Lim <ktlim@umich.edu>2005-02-11 17:54:42 -0500
committerKevin Lim <ktlim@umich.edu>2005-02-11 17:54:42 -0500
commit79e83cea971bf346a5b0d6e88541e502a614c777 (patch)
treee1561f7044a4b3ee79a960d57451716af53387b5 /sim/pyconfig
parentc4d0ebd25cc5f0657b99543ff2df30d1a86f3ad5 (diff)
parent10ee909fbd895b588bf01021af98e81a3ae40fc0 (diff)
downloadgem5-79e83cea971bf346a5b0d6e88541e502a614c777.tar.xz
Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5 --HG-- extra : convert_revision : 11832134b169aa827a1d03c96ef89edddf4b3dab
Diffstat (limited to 'sim/pyconfig')
-rw-r--r--sim/pyconfig/SConscript2
-rw-r--r--sim/pyconfig/m5config.py16
2 files changed, 13 insertions, 5 deletions
diff --git a/sim/pyconfig/SConscript b/sim/pyconfig/SConscript
index 5708ac9a8..9154d3b99 100644
--- a/sim/pyconfig/SConscript
+++ b/sim/pyconfig/SConscript
@@ -170,7 +170,7 @@ EmbedMap %(name)s("%(fname)s",
/* namespace */ }
'''
-embedded_py_files = ['m5config.py']
+embedded_py_files = ['m5config.py', '../../util/pbs/jobfile.py']
objpath = os.path.join(env['SRCDIR'], 'objects')
for root, dirs, files in os.walk(objpath, topdown=True):
for i,dir in enumerate(dirs):
diff --git a/sim/pyconfig/m5config.py b/sim/pyconfig/m5config.py
index 4e3a4103c..9a48e2fa4 100644
--- a/sim/pyconfig/m5config.py
+++ b/sim/pyconfig/m5config.py
@@ -28,19 +28,20 @@ from __future__ import generators
import os, re, sys, types
noDot = False
try:
- import pydot
+ import pydot
except:
- noDot = True
+ noDot = True
env = {}
env.update(os.environ)
def panic(*args, **kwargs):
- sys.exit(*args, **kwargs)
+ print >>sys.stderr, 'panic:', string
+ sys.exit(1)
def AddToPath(path):
path = os.path.realpath(path)
- if os.path.isdir(path):
+ if os.path.isdir(path) and path not in sys.path:
sys.path.append(path)
def Import(path):
@@ -349,6 +350,13 @@ class MetaConfigNode(type):
for p,v in c._values.iteritems():
if not values.has_key(p):
values[p] = v
+ for p,v in c._params.iteritems():
+ if not values.has_key(p) and hasattr(v, 'default'):
+ v.valid(v.default)
+ v = v.default
+ cls._setvalue(p, v)
+ values[p] = v
+
return values
def _getvalue(cls, name, default = AttributeError):