summaryrefslogtreecommitdiff
path: root/sim/pyconfig
diff options
context:
space:
mode:
authorRon Dreslinski <rdreslin@umich.edu>2005-03-10 11:56:07 -0500
committerRon Dreslinski <rdreslin@umich.edu>2005-03-10 11:56:07 -0500
commite51850f1d2c7c754ee11612c9b663d8af0a54400 (patch)
tree8f10dcfce3669f37801d39b47c48070ab964de65 /sim/pyconfig
parentffaba200d1078f19a1d56af803420a79a96f7fe2 (diff)
parent331460dfe88af6b026c30277d2904cf87ce37743 (diff)
downloadgem5-e51850f1d2c7c754ee11612c9b663d8af0a54400.tar.xz
Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/timing_L1 --HG-- extra : convert_revision : a5ee8e5187503203058da35ca44918f1ff7ae1eb
Diffstat (limited to 'sim/pyconfig')
-rw-r--r--sim/pyconfig/SConscript5
-rw-r--r--sim/pyconfig/m5config.py35
2 files changed, 9 insertions, 31 deletions
diff --git a/sim/pyconfig/SConscript b/sim/pyconfig/SConscript
index 95785d372..2799ef64f 100644
--- a/sim/pyconfig/SConscript
+++ b/sim/pyconfig/SConscript
@@ -147,6 +147,7 @@ def MakeEmbeddedPyFile(target, source, env):
def MakeDefinesPyFile(target, source, env):
target = file(str(target[0]), 'w')
+ print >>target, "import os"
defines = env['CPPDEFINES']
if isinstance(defines, list):
for var in defines:
@@ -158,11 +159,11 @@ def MakeDefinesPyFile(target, source, env):
if not isinstance(key, basestring):
panic("invalid type for define: %s" % type(key))
- print >>target, "env['%s'] = '%s'" % (key, val)
+ print >>target, "os.environ['%s'] = '%s'" % (key, val)
elif isinstance(defines, dict):
for key,val in defines.iteritems():
- print >>target, "env['%s'] = '%s'" % (key, val)
+ print >>target, "os.environ['%s'] = '%s'" % (key, val)
else:
panic("invalid type for defines: %s" % type(defines))
diff --git a/sim/pyconfig/m5config.py b/sim/pyconfig/m5config.py
index b5617c8ae..e6201b3ad 100644
--- a/sim/pyconfig/m5config.py
+++ b/sim/pyconfig/m5config.py
@@ -246,7 +246,6 @@ class MetaConfigNode(type):
cls._params = {}
cls._values = {}
cls._enums = {}
- cls._disable = {}
cls._bases = [c for c in cls.__mro__ if isConfigNode(c)]
cls._anon_subclass_counter = 0
@@ -382,15 +381,6 @@ class MetaConfigNode(type):
def _setvalue(cls, name, value):
cls._values[name] = value
- def _getdisable(cls, name):
- for c in cls._bases:
- if c._disable.has_key(name):
- return c._disable[name]
- return False
-
- def _setdisable(cls, name, value):
- cls._disable[name] = value
-
def __getattr__(cls, attr):
if cls._isvalue(attr):
return Value(cls, attr)
@@ -465,9 +455,6 @@ class MetaConfigNode(type):
cls.check()
for key,value in cls._getvalues().iteritems():
- if cls._getdisable(key):
- continue
-
if isConfigNode(value):
cls.add_child(instance, key, value)
if issequence(value):
@@ -477,15 +464,11 @@ class MetaConfigNode(type):
for pname,param in cls._getparams().iteritems():
try:
- if cls._getdisable(pname):
- continue
-
- try:
- value = cls._getvalue(pname)
- except:
- print 'Error getting %s' % pname
- raise
+ value = cls._getvalue(pname)
+ except:
+ panic('Error getting %s' % pname)
+ try:
if isConfigNode(value):
value = instance.child_objects[value]
elif issequence(value):
@@ -814,16 +797,10 @@ class Value(object):
return self.obj._getvalue(self.attr)
def __setattr__(self, attr, value):
- if attr == 'disable':
- self.obj._setdisable(self.attr, value)
- else:
- setattr(self._getattr(), attr, value)
+ setattr(self._getattr(), attr, value)
def __getattr__(self, attr):
- if attr == 'disable':
- return self.obj._getdisable(self.attr)
- else:
- return getattr(self._getattr(), attr)
+ return getattr(self._getattr(), attr)
def __getitem__(self, index):
return self._getattr().__getitem__(index)