diff options
-rw-r--r-- | SConscript | 7 | ||||
-rw-r--r-- | python/SConscript (renamed from sim/pyconfig/SConscript) | 4 | ||||
-rw-r--r-- | python/m5/__init__.py | 7 | ||||
-rw-r--r-- | python/m5/config.py (renamed from sim/pyconfig/m5config.py) | 14 | ||||
-rw-r--r-- | python/m5/objects/AlphaConsole.mpy (renamed from objects/AlphaConsole.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/AlphaTLB.mpy (renamed from objects/AlphaTLB.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/BadDevice.mpy (renamed from objects/BadDevice.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/BaseCPU.mpy (renamed from objects/BaseCPU.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/BaseCache.mpy (renamed from objects/BaseCache.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/BaseSystem.mpy (renamed from objects/BaseSystem.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Bus.mpy (renamed from objects/Bus.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/CoherenceProtocol.mpy (renamed from objects/CoherenceProtocol.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Device.mpy (renamed from objects/Device.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/DiskImage.mpy (renamed from objects/DiskImage.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Ethernet.mpy (renamed from objects/Ethernet.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Ide.mpy (renamed from objects/Ide.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/IntrControl.mpy (renamed from objects/IntrControl.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/MemTest.mpy (renamed from objects/MemTest.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Pci.mpy (renamed from objects/Pci.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/PhysicalMemory.mpy (renamed from objects/PhysicalMemory.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Platform.mpy (renamed from objects/Platform.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Process.mpy (renamed from objects/Process.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Repl.mpy (renamed from objects/Repl.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Root.mpy (renamed from objects/Root.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/SimConsole.mpy (renamed from objects/SimConsole.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/SimpleDisk.mpy (renamed from objects/SimpleDisk.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Tsunami.mpy (renamed from objects/Tsunami.mpy) | 0 | ||||
-rw-r--r-- | python/m5/objects/Uart.mpy (renamed from objects/Uart.mpy) | 0 | ||||
-rw-r--r-- | sim/main.cc | 2 | ||||
-rwxr-xr-x | test/genini.py | 13 |
30 files changed, 28 insertions, 19 deletions
diff --git a/SConscript b/SConscript index 19f84f913..cff240a69 100644 --- a/SConscript +++ b/SConscript @@ -183,6 +183,9 @@ base_sources = Split(''' mem/trace/mem_trace_writer.cc mem/trace/m5_writer.cc + python/pyconfig.cc + python/embedded_py.cc + sim/builder.cc sim/configfile.cc sim/debug.cc @@ -199,8 +202,6 @@ base_sources = Split(''' sim/stat_control.cc sim/trace_context.cc sim/universe.cc - sim/pyconfig/pyconfig.cc - sim/pyconfig/embedded_py.cc ''') # MySql sources @@ -376,7 +377,7 @@ env.Command(Split('''arch/alpha/decoder.cc # SConscript-local is the per-config build, which just copies some # header files into a place where they can be found. SConscript('libelf/SConscript-local', exports = 'env', duplicate=0) -SConscript('sim/pyconfig/SConscript', exports = ['env'], duplicate=0) +SConscript('python/SConscript', exports = ['env'], duplicate=0) # This function adds the specified sources to the given build diff --git a/sim/pyconfig/SConscript b/python/SConscript index 2799ef64f..81bc52286 100644 --- a/sim/pyconfig/SConscript +++ b/python/SConscript @@ -193,8 +193,8 @@ EmbedMap %(name)s("%(fname)s", /* namespace */ } ''' -embedded_py_files = ['m5config.py', 'importer.py', '../../util/pbs/jobfile.py'] -objpath = os.path.join(env['SRCDIR'], 'objects') +embedded_py_files = [ 'mpy_importer.py', '../util/pbs/jobfile.py' ] +objpath = os.path.join(env['SRCDIR'], 'python/m5') for root, dirs, files in os.walk(objpath, topdown=True): for i,dir in enumerate(dirs): if dir == 'SCCS': diff --git a/python/m5/__init__.py b/python/m5/__init__.py new file mode 100644 index 000000000..7cb3a32c6 --- /dev/null +++ b/python/m5/__init__.py @@ -0,0 +1,7 @@ +from mpy_importer import * +from config import * +from objects import * + +cpp_classes = MetaSimObject.cpp_classes +cpp_classes.sort() + diff --git a/sim/pyconfig/m5config.py b/python/m5/config.py index e6201b3ad..33e329f3f 100644 --- a/sim/pyconfig/m5config.py +++ b/python/m5/config.py @@ -27,7 +27,7 @@ from __future__ import generators import os, re, sys, types, inspect -from importer import AddToPath, LoadMpyFile +from mpy_importer import AddToPath, LoadMpyFile noDot = False try: @@ -449,7 +449,7 @@ class MetaConfigNode(type): # Print instance info to .ini file. def instantiate(cls, name, parent = None): - instance = Node(name, cls, cls.type, parent, isParamContext(cls)) + instance = Node(name, cls, parent, isParamContext(cls)) if hasattr(cls, 'check'): cls.check() @@ -584,10 +584,13 @@ class NodeParam(object): class Node(object): all = {} - def __init__(self, name, realtype, type, parent, paramcontext): + def __init__(self, name, realtype, parent, paramcontext): self.name = name self.realtype = realtype - self.type = type + if isSimObject(realtype): + self.type = realtype.type + else: + self.type = None self.parent = parent self.children = [] self.child_names = {} @@ -1298,6 +1301,3 @@ class SimObject(ConfigNode): type = 'SimObject' from objects import * - -cpp_classes = MetaSimObject.cpp_classes -cpp_classes.sort() diff --git a/objects/AlphaConsole.mpy b/python/m5/objects/AlphaConsole.mpy index 79918a01e..79918a01e 100644 --- a/objects/AlphaConsole.mpy +++ b/python/m5/objects/AlphaConsole.mpy diff --git a/objects/AlphaTLB.mpy b/python/m5/objects/AlphaTLB.mpy index 8e7cd62cc..8e7cd62cc 100644 --- a/objects/AlphaTLB.mpy +++ b/python/m5/objects/AlphaTLB.mpy diff --git a/objects/BadDevice.mpy b/python/m5/objects/BadDevice.mpy index 35a12e0bf..35a12e0bf 100644 --- a/objects/BadDevice.mpy +++ b/python/m5/objects/BadDevice.mpy diff --git a/objects/BaseCPU.mpy b/python/m5/objects/BaseCPU.mpy index 484fcccd6..484fcccd6 100644 --- a/objects/BaseCPU.mpy +++ b/python/m5/objects/BaseCPU.mpy diff --git a/objects/BaseCache.mpy b/python/m5/objects/BaseCache.mpy index 98a422e30..98a422e30 100644 --- a/objects/BaseCache.mpy +++ b/python/m5/objects/BaseCache.mpy diff --git a/objects/BaseSystem.mpy b/python/m5/objects/BaseSystem.mpy index 1cbdf4e99..1cbdf4e99 100644 --- a/objects/BaseSystem.mpy +++ b/python/m5/objects/BaseSystem.mpy diff --git a/objects/Bus.mpy b/python/m5/objects/Bus.mpy index 025d69785..025d69785 100644 --- a/objects/Bus.mpy +++ b/python/m5/objects/Bus.mpy diff --git a/objects/CoherenceProtocol.mpy b/python/m5/objects/CoherenceProtocol.mpy index f3b0026b7..f3b0026b7 100644 --- a/objects/CoherenceProtocol.mpy +++ b/python/m5/objects/CoherenceProtocol.mpy diff --git a/objects/Device.mpy b/python/m5/objects/Device.mpy index 47f8db1cb..47f8db1cb 100644 --- a/objects/Device.mpy +++ b/python/m5/objects/Device.mpy diff --git a/objects/DiskImage.mpy b/python/m5/objects/DiskImage.mpy index 80ef7b072..80ef7b072 100644 --- a/objects/DiskImage.mpy +++ b/python/m5/objects/DiskImage.mpy diff --git a/objects/Ethernet.mpy b/python/m5/objects/Ethernet.mpy index 088df4b93..088df4b93 100644 --- a/objects/Ethernet.mpy +++ b/python/m5/objects/Ethernet.mpy diff --git a/objects/Ide.mpy b/python/m5/objects/Ide.mpy index ce760ad96..ce760ad96 100644 --- a/objects/Ide.mpy +++ b/python/m5/objects/Ide.mpy diff --git a/objects/IntrControl.mpy b/python/m5/objects/IntrControl.mpy index 1ef5a17ee..1ef5a17ee 100644 --- a/objects/IntrControl.mpy +++ b/python/m5/objects/IntrControl.mpy diff --git a/objects/MemTest.mpy b/python/m5/objects/MemTest.mpy index af14ed9c3..af14ed9c3 100644 --- a/objects/MemTest.mpy +++ b/python/m5/objects/MemTest.mpy diff --git a/objects/Pci.mpy b/python/m5/objects/Pci.mpy index caa3c52ff..caa3c52ff 100644 --- a/objects/Pci.mpy +++ b/python/m5/objects/Pci.mpy diff --git a/objects/PhysicalMemory.mpy b/python/m5/objects/PhysicalMemory.mpy index d1e4ad4b4..d1e4ad4b4 100644 --- a/objects/PhysicalMemory.mpy +++ b/python/m5/objects/PhysicalMemory.mpy diff --git a/objects/Platform.mpy b/python/m5/objects/Platform.mpy index d0510eaf8..d0510eaf8 100644 --- a/objects/Platform.mpy +++ b/python/m5/objects/Platform.mpy diff --git a/objects/Process.mpy b/python/m5/objects/Process.mpy index 6a91c09c2..6a91c09c2 100644 --- a/objects/Process.mpy +++ b/python/m5/objects/Process.mpy diff --git a/objects/Repl.mpy b/python/m5/objects/Repl.mpy index fff5a2a02..fff5a2a02 100644 --- a/objects/Repl.mpy +++ b/python/m5/objects/Repl.mpy diff --git a/objects/Root.mpy b/python/m5/objects/Root.mpy index 0e531054b..0e531054b 100644 --- a/objects/Root.mpy +++ b/python/m5/objects/Root.mpy diff --git a/objects/SimConsole.mpy b/python/m5/objects/SimConsole.mpy index fb74f1775..fb74f1775 100644 --- a/objects/SimConsole.mpy +++ b/python/m5/objects/SimConsole.mpy diff --git a/objects/SimpleDisk.mpy b/python/m5/objects/SimpleDisk.mpy index c4dd5435b..c4dd5435b 100644 --- a/objects/SimpleDisk.mpy +++ b/python/m5/objects/SimpleDisk.mpy diff --git a/objects/Tsunami.mpy b/python/m5/objects/Tsunami.mpy index cfe23977e..cfe23977e 100644 --- a/objects/Tsunami.mpy +++ b/python/m5/objects/Tsunami.mpy diff --git a/objects/Uart.mpy b/python/m5/objects/Uart.mpy index 76ee8805f..76ee8805f 100644 --- a/objects/Uart.mpy +++ b/python/m5/objects/Uart.mpy diff --git a/sim/main.cc b/sim/main.cc index c15d24453..ee59cb83b 100644 --- a/sim/main.cc +++ b/sim/main.cc @@ -51,6 +51,7 @@ #include "base/time.hh" #include "cpu/base_cpu.hh" #include "cpu/full_cpu/smt.hh" +#include "python/pyconfig.hh" #include "sim/async.hh" #include "sim/builder.hh" #include "sim/configfile.hh" @@ -61,7 +62,6 @@ #include "sim/stat_control.hh" #include "sim/stats.hh" #include "sim/universe.hh" -#include "sim/pyconfig/pyconfig.hh" using namespace std; diff --git a/test/genini.py b/test/genini.py index f4d1575db..025ba998a 100755 --- a/test/genini.py +++ b/test/genini.py @@ -30,12 +30,10 @@ from os.path import join as joinpath, realpath mypath = sys.path[0] sys.path.append(joinpath(mypath, '..')) +sys.path.append(joinpath(mypath, '../python')) sys.path.append(joinpath(mypath, '../util/pbs')) -sys.path.append(joinpath(mypath, '../sim/pyconfig')) -from importer import AddToPath, LoadMpyFile - -AddToPath('.') +pathlist = [ '.' ] try: opts, args = getopt.getopt(sys.argv[1:], '-E:I:') @@ -50,11 +48,14 @@ try: value = arg[offset+1:] os.environ[name] = value if opt == '-I': - AddToPath(arg) + pathlist.append(arg) except getopt.GetoptError: sys.exit('Improper Usage') -from m5config import * +from m5 import * + +for path in pathlist: + AddToPath(path) for arg in args: LoadMpyFile(arg) |