summaryrefslogtreecommitdiff
path: root/sim/pyconfig
diff options
context:
space:
mode:
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):